马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Halcon代码
- read_image (NinePointCalibration, 'D:/Desktop/halcon/ca74d-main/九点标定/NinePointCalibration.gif')
- rgb1_to_gray (NinePointCalibration, GrayImage)
- get_image_size (GrayImage, Width, Height)
- dev_display (GrayImage)
- * 获取当前显示的窗口句柄
- dev_get_window (WindowHandle)
- * 设置显示窗口的显示区域为整个图像大小
- * 参数:窗口左上角x坐标,窗口左上角y坐标,窗口高度,窗口宽度
- dev_set_part (0, 0, Height, Width)
- threshold (GrayImage, Regions, 0, 142)
- * 填充二值图像中的空洞(输入区域,输出填充后的区域)
- fill_up (Regions, RegionFillUp)
- * 开运算
- opening_circle (RegionFillUp, RegionOpening, 3.5)
- * 连接相邻的区域
- connection (RegionOpening, ConnectedRegions)
- * 根据形状特征(这里是面积)选择区域
- select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 2259.62, 5000)
- *对选择的区域按某一特征排序
- * 参数:输入区域,输出排序后的区域,排序特征('character'表示字符特征,这里按区域中心点排序),排序方向('true'表示升序),排序的参考方向(这里是按行排序)
- sort_region (SelectedRegions, SortedRegions, 'character', 'true', 'row')
- * 在排序后的区域中找到最小的外接圆
- * 参数:输入区域,输出圆心的行坐标,输出圆心的列坐标,输出圆的半径
- smallest_circle (SortedRegions, Row, Column, Radius)
-
- * 生成一个十字标记,用于标记找到的圆心位置
- * 参数:输出十字标记,十字中心点的行坐标,十字中心点的列坐标,十字标记的长度,十字标记的倾斜角度(0.785398弧度约等于45度)
- gen_cross_contour_xld (Cross, Row, Column, 50, 0.785398)
- * 显示原始灰度图像
- dev_display (GrayImage)
-
- * 显示生成的十字标记
- dev_display (Cross)
复制代码
- 图像读取:起首,我们使用read_image函数读取存储在指定路径的图像文件。这个函数将图像加载到内存中,以便后续处理。
- 灰度转换:由于许多图像处理算法在灰度图像上效果更好,我们使用rgb1_to_gray将RGB图像转换为灰度图像。
- 图像尺寸获取:使用get_image_size获取图像的宽度和高度,这对于后续设置显示窗口和盘算等很有用。
- 显示图像:dev_display用于在HALCON的图形窗口中显示图像。
- 设置显示区域:dev_set_part用于设置显示窗口的显示范围,这里设置为整个图像的巨细。
- 阈值分割:threshold函数将灰度图像转换为二值图像,通过设定一个阈值来区分前景和背景。
- 空洞添补:fill_up函数用于添补二值图像中的空洞,使前景区域更完整。
- 形态学开运算:opening_circle使用圆形布局元素对图像举行形态学开运算,可以去除小的噪声点。
- 区域连接:connection函数将相邻的前景区域连接起来。
- 外形选择:select_shape根据指定的外形特性(这里是面积)选择满足条件的区域。
- 区域排序:sort_region根据指定的特性对区域举行排序。
- 最小外接圆:smallest_circle在排序后的区域中找到最小的外接圆,这里我们假设这是我们要标志的目标圆形区域。
- 生成十字标志:gen_cross_contour_xld生成一个十字标志,用于标志找到的圆心位置。
- 显示标志:最后,使用dev_display显示原始图像和生成的十字标志。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |