Halcon几何ROI绘制实战:从交互式设计到自动化生成的完整解决方案
在工业视觉检测项目中,精确界定感兴趣区域(ROI)往往是整个流程的第一步关键环节。无论是芯片引脚检测、液晶屏划痕识别,还是机械零件尺寸测量,工程师们都需要在复杂图像中准确框定目标区域。Halcon作为机器视觉领域的标杆工具,提供了两套互补的ROI绘制方案:交互式手动绘制(draw_*算子)和程序化自动生成(gen_*算子)。本文将深入解析如何将这两种方式有机结合,构建"手绘-参数提取-自动复现"的高效工作流。
1. 交互式绘制基础与实战技巧
1.1 环境准备与基础绘制
开始前需要初始化Halcon环境并加载待处理图像。以下代码展示了标准初始化流程:
python复制read_image (Image, 'pcb_board_01.png')
get_image_size (Image, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
关键操作技巧:
- 保持窗口大小与图像尺寸一致可避免显示比例问题
- 在绘制前建议使用
dev_set_color('green')设置醒目绘制颜色 - 按鼠标右键可随时中止当前绘制操作
1.2 核心几何图形绘制方法
Halcon提供了多种基础几何图形的交互绘制功能,每种都有其特定参数体系:
- 圆形绘制:
draw_circle需要确定圆心(Row,Column)和半径(Radius) - 椭圆绘制:
draw_ellipse除了中心坐标,还需指定:- Phi:长轴方向角度(弧度制)
- Radius1/Radius2:长轴和短轴半径
- 矩形绘制:Halcon提供两种矩形绘制方式:
draw_rectangle1:通过左上和右下顶点确定draw_rectangle2:通过中心点、旋转角度和半边长确定
提示:旋转矩形(rectangle2)的方向角Phi遵循Halcon标准坐标系,0弧度表示水平向右,逆时针方向角度增加。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
