您的位置:首页 > 其它

halcon测量:用卡尺找边

2018-01-23 11:58 369 查看
一、首先把整体思路列出来:

1、读取一张图像

2、创建一个测量句柄

3、添加测量模型。本次找边,所以要添加一个线“Line”的模型

4、设置相关测量参数。比如:卡尺垂直于边的长度,卡尺的宽度,卡尺的个数,保留的卡尺个数,边缘最低对比度等。

5、开始找边

6、将找到的边界结果显示,同时获得每个卡尺找到的点坐标。

二、代码:

1、先找一张图像:



2、在halcon里输入代码:

*读图
read_image (Image, 'C:/Users/HS/Desktop/20171206114857.bmp')
get_image_size (Image, Width, Height)

*在我们要检的边界上画线
draw_line (200000, Row1, Column1, Row2, Column2)
shapeParam:= [Row1,Column1,Row2,Column2]

*创建句柄
create_metrology_model (MetrologyHandle)
set_metrology_model_image_size (MetrologyHandle, Width, Height)

*添加线模型
add_metrology_object_generic (MetrologyHandle, 'line', shapeParam, 20, 5, 1, 30, [], [], Index)

*设置参数,这里根据自己需求设置,这一坨用的都是同一个算子
set_metrology_object_param (MetrologyHandle, 'all', 'measure_transition', 'negative')
set_metrology_object_param (MetrologyHandle, 'all', 'num_measures',50)
set_metrology_object_param (MetrologyHandle, 'all', 'num_instances', 40)
set_metrology_object_param (MetrologyHandle, 'all', 'measure_sigma', 1)
set_metrology_object_param (MetrologyHandle, 'all', 'measure_length1', 80)
set_metrology_object_param (MetrologyHandle, 'all', 'measure_length2', 1)
set_metrology_object_param (MetrologyHandle, 'all', 'measure_threshold',50)
set_metrology_object_param (MetrologyHandle, 'all', 'measure_interpolation', 'bicubic')
set_metrology_object_param (MetrologyHandle, 'all', 'measure_select', 'all')
set_metrology_object_param (MetrologyHandle, 'all', 'min_score', 0.7)

*开始找边缘,顺便把边缘上卡尺找到的所有点坐标输出在ROW,Column里面(数组形式)
apply_metrology_model (Image, MetrologyHandle)
get_metrology_object_measures (Contours, MetrologyHandle, 'all', 'all', Row, Column)

*把点显示出来
gen_cross_contour_xld (Cross, Row, Column, 6, 0.785398)

*得到线的起点和终点坐标并显示出来
get_metrology_object_result (MetrologyHandle, 'all', 'all', 'result_type', 'all_param', Parameter)
get_metrology_object_result_contour (Contour, MetrologyHandle, 'all', 'all', 1.5)

/释放测量句柄
clear_metrology_model (MetrologyHandle)


三、操作过程:

1、读图



2、画线



3、找到边界



4、查看边界

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  halcon测量