能够运行的,20.11版本的
时间: 2024-02-23 20:58:12 浏览: 89
以下是一个基于Halcon 20.11版本的程序,用于检测产品中心线到边缘的距离:
```
read_image(Image, 'product_image.jpg') //读取产品图像
reduce_domain(Image, Region) //缩小检测范围
get_image_size(Image, Width, Height)
create_rectangle1(Rectangle, 0, 0, Height-1, Width-1)
difference(Region, Rectangle, Region)
edges_sub_pix(Image, Edges, 'canny', 1, 20, 40) //提取边缘
select_shape_std(Edges, SelectedEdges, 'max_length', 100) //选择边缘线
fit_line_contour(SelectedEdges, 'tukey', -1, 0, 5, 2, Line) //拟合直线
get_line_contour(Line, Row1, Col1, Row2, Col2)
distance_pl(Row1, Col1, Row2, Col2, Distance) //计算直线长度
distance_pr(SelectedEdges, Row1, Col1, DistanceToEdge) //计算直线到边缘的距离
disp_image(Image)
dev_set_color('green')
disp_region(Region)
dev_set_color('blue')
disp_line(Row1, Col1, Row2, Col2)
dev_set_color('red')
disp_message(WindowHandle, DistanceToEdge, 'window', 12, 12, 'false')
```
该程序与之前的程序类似,主要区别在于Halcon 20.11版本使用了新的命名约定(例如`create_rectangle1`),部分函数的参数也有所变化(例如`disp_message`)。需要注意的是,该程序仅供参考,具体实现可能需要根据实际情况进行调整。
阅读全文