16.1 第一个示例

本节演示如何使用 C 语言创建一个简单的 HALCON 应用程序,有关更全面的说明,参见 "使用 HALCON/C 创建应用程序" 一章

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

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

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

    
    mkdir region_example
    cd region_example
    

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

    #include <stdio.h>
    #include <inttypes.h>
    
    #include <HalconC.h>
    
    int main()
    {
        Hobject img;
        read_image(&img, "pcb");
        
        Hobject region;
        threshold(img, &region, 0, 122);
        
        Hobject connected_regions;
        connection(region, &connected_regions);
        
        Hlong num_regions = 0;
        count_obj(connected_regions, &num_regions);
        
        printf("Number of Regions: \%" PRIdPTR "\n", num_regions);
    }
    

  6. 编译程序。

    详情参见 Windows 的 "在 Windows 下创建应用程序" 一节 和 Linux 的 "在 Linux 下创建应用程序" 一节

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

    ./region_example
    

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