目录
创建测量矩形,获取测量句柄
gen_measure_rectangle2()
使用句柄进行测量
measure_pos()
修改参数Threshold
修改参数Transition
修改参数select
参数RowEdge,ColumnEdge,Distance
measure_pairs()
修改参数Transition
修改参数Select
intraDistance与interDistance
清除句柄
close_measure()
创建测量矩形,获取测量句柄
gen_measure_rectangle2()
gen_measure_arc()
使用句柄进行测量
measure_pos()
代码
read_image (Image, 'C:/Users/Public/Documents/MVTec/HALCON-19.05-Progress/examples/images/gasket/gasket_01.png')
dev_close_window ()
get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (2)
draw_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
gen_measure_rectangle2 (Row, Column, Phi, Length1, Length2, Width, Height, 'nearest_neighbor', MeasureHandle)
measure_pos (Image, MeasureHandle, 1, 30, 'all', 'all', RowEdge, ColumnEdge, Amplitude, Distance)
disp_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
disp_cross (WindowHandle, RowEdge, ColumnEdge, 20, 45)
修改参数Threshold
可以看到,当threshold大于黑色与灰色的灰度值差,那么将获取不了边沿点。
修改参数Transition
可以理解为positive为增加,就是灰度从小到大的点将被选择。
修改参数select
参数RowEdge,ColumnEdge,Distance
measure_pairs()
代码
read_image (Image, 'C:/Users/Public/Documents/MVTec/HALCON-19.05-Progress/examples/images/gasket/gasket_01.png')
dev_close_window ()
get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (2)
draw_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
gen_measure_rectangle2 (Row, Column, Phi, Length1, Length2, Width, Height, 'nearest_neighbor', MeasureHandle)
measure_pairs (Image, MeasureHandle, 1, 30, 'all', 'all', RowEdgeFirst, ColumnEdgeFirst, AmplitudeFirst, RowEdgeSecond, ColumnEdgeSecond, AmplitudeSecond, IntraDistance, InterDistance)
使用disp_cross()绘制得出的结果。
可见,此指令是以一对点为对象进行返回。
修改参数Transition
positive表示从黑到白的过度,而这过度,是指第一个点两边的灰度值变化,所以当第一个点为positive,那么点对中的第二点就必然是neagtive。
修改参数Select
intraDistance与interDistance
intraDistance表示点对之间的距离,而interDistance表示点对中的第二个点与另一组点对的第一个点之间的距离,也就是说点对间的距离。
清除句柄
close_measure()
当测量完成后,使用该算子可以清除内存中的测量句柄。