利用Halcon均匀分割曲线,并标记法线方向。
原始图片:
处理效果如下所示:
代码:
read_image (Image, 'C:/Users/Sawyer/Desktop/13_36559_e7fc764b4adb61d.png')
edges_sub_pix (Image, Edges, 'canny', 1, 30, 60)
select_shape_xld (Edges, SelectedXLD, 'contlength', 'and', 602.75, 848.62)
**计算其中一侧边缘
*等分50份
Number:=50
select_obj (SelectedXLD, ObjectSelected, 1)
get_contour_xld (ObjectSelected, Row, Col)
get_contour_angle_xld (ObjectSelected, 'abs', 'range', 3, Angles)
dev_set_draw ('margin')
for Index := 0 to |Row|/Number by 1
gen_rectangle2 (Rectangle, Row[Number*Index], Col[Number*Index], Angles[Number*Index]+rad(90), 20, 10)
endfor