4.1 第一个示例

本节演示如何使用 C++ 创建一个简单的 HALCON 应用程序。有关更全面的描述,参见 "使用 HALCON/C++ 创建应用程序" 一章

任务是读取图像并计算其中的连接区域数,如 图 4.1 所示

图 4.1: 左图:印刷电路板的输入图像。中间:通过 threshold 找到的区域,红色。右图:连接区域,connection 的结果。

  1. 安装 HALCON 23.05
  2. 在系统中安装 C++11 或更新的工具链。
  3. 设置您所选择的 C++ 环境。
  4. 在 shell 中运行以下命令

    
    mkdir region_example
    cd region_example
    

  5. 创建名为 main.cpp 的文件,并将内容改为

    #include <iostream>
    
    #include <HalconCpp.h>
    
    using HalconCpp::HImage;
    using HalconCpp::HRegion;
    
    int main()
    {
        HImage img{"pcb"};
    
        HRegion region = img.Threshold(0, 122);
        Hlong numRegions = region.Connection().CountObj();
    
        std::cout << "Number of Regions: " << numRegions << '\n';
    }
    

  6. 编译程序

    详情参见 Windows 下的 "在 Windows 下创建可执行文件" 一节 和 Linux 下的 "在 Linux 下创建可执行文件" 一节

  7. 要运行应用程序,请在同一 shell 中键入以下命令:

    ./region_example
    

结果,您将看到以下输出 'Number of Regions: 43'