《halcon学习笔记实例篇 长度和角度测量+.docx》由会员分享,可在线阅读,更多相关《halcon学习笔记实例篇 长度和角度测量+.docx(3页珍藏版)》请在三一办公上搜索。
1、halcon学习笔记实例篇 长度和角度测量+halcon学习笔记实例篇 长度和角度测量 实例二:长度和角度测量 素材图片: halcon代码: 1: *读取并截取图片 2: dev_close_window 3: read_image (Image, D:/MyFile/halcon/长度和角度测量/图.png) 4: crop_rectangle1 (Image, ImagePart, 75, 0, 400, 400) 5: get_image_size (ImagePart, Width, Height) 6: dev_open_window (0, 0, Width, Height, b
2、lack, WindowHandle) 7: dev_display (ImagePart) 8: 9: *获取图形的边界 10: threshold (ImagePart, Regions, 0, 112) 11: 12: *分离三角形和圆形 13: connection(Regions,ConnectedRegions) 14: sort_region(ConnectedRegions,SortedRegions,upper_left,true,column) 15: select_obj(SortedRegions,Circle,1) 16: select_obj(SortedRegio
3、ns,Triangle,2) 17: 18: *获取三角形各边的信息 19: skeleton(Triangle,TriangleSkeleton) 20: gen_contours_skeleton_xld(TriangleSkeleton,TriangleContours,1,filter) 21: segment_contours_xld(TriangleContours,ContoursSplit,lines_circles, 5, 4, 2) 22: select_contours_xld(ContoursSplit,SelectedContours, contour_length,
4、100, 999, -0.5, 0.5) 23: fit_line_contour_xld (SelectedContours, tukey, -1, 10, 5, 2, RowBegin, ColBegin, RowEnd, ColEnd, Nr, Nc, Dist) 24: 25: *计算三角形角度 26: angle_ll (RowBegin0, ColBegin0, RowEnd0, ColEnd0, RowBegin1, ColBegin1, RowEnd1, ColEnd1, Angle1) 27: angle_ll (RowBegin0, ColBegin0, RowEnd0,
5、ColEnd0, RowBegin2, ColBegin2, RowEnd2, ColEnd2, Angle2) 28: angle_ll (RowBegin1, ColBegin1, RowEnd1, ColEnd1, RowBegin2, ColBegin2, RowEnd2, ColEnd2, Angle3) 29: Angle1:=abs(deg(Angle1) 30: Angle2:=abs(deg(Angle2) 31: Angle3:=abs(deg(Angle3) 32: 33: *获取圆的信息 34: area_center(Circle,AreaCircle, RowCircle, ColumnCircle) 35: 36: *计算圆心到三角形各边的距离 37: Distance := 38: for Index := 0 to 2 by 1 39: distance_pl (RowCircle, ColumnCircle, RowBeginIndex, ColBeginIndex, RowEndIndex, ColEndIndex, ThisDistance) 40: Distance := Distance,ThisDistance 41: endfor
链接地址:https://www.31ppt.com/p-3157760.html