行远-自迩

导航

边缘提取二—实例

 1 read_image (DoubleCircle, 'E:/学习/Halcon/玩套路之边缘检测/玩套路之边缘检测/DoubleCircle/double_circle.png')
 2 
 3 *获取ROI区域
 4 threshold (DoubleCircle, Regions, 0, 39)
 5 connection(Regions, ConnectedRegions)
 6 select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 99687.5, 200000)
 7 *形态学处理
 8 dilation_circle(SelectedRegions, RegionDilation, 5.5)
 9 * erosion_circle(SelectedRegions, RegionErosion, 5.5)
10 * closing_circle(SelectedRegions, RegionClosing, 15.5)
11 
12 * difference(RegionDilation, RegionErosion, RegionDifference)
13 *fill_up(RegionDifference, RegionFillUp)
14 closing_circle(SelectedRegions, RegionClosing, 5.5)
15 difference(RegionDilation, RegionClosing, RegionDifference)
16 
17 reduce_domain(DoubleCircle, RegionDifference, ImageReduced)
18 
19 edges_sub_pix(ImageReduced, Edges, 'canny',1.5, 5, 40)
20 smooth_contours_xld(Edges, SmoothedContours, 3)
21 segment_contours_xld(SmoothedContours, ContoursSplit, 'lines_circles', 5, 4, 2)
22 count_obj(ContoursSplit, Number)
23 dev_clear_window()
24 dev_display(ImageReduced)
25 dev_display(ContoursSplit)
26 for I:=0 to Number-1 by 1
27         select_obj(ContoursSplit, ObjectSelected, I+1)
28         get_contour_global_attrib_xld(ObjectSelected, 'cont_approx', Attrib)
29         if(Attrib == -1)
30             fit_line_contour_xld(ObjectSelected, 'tukey', -1, 0, 5, 2, RowBegin, ColBegin, RowEnd, ColEnd, Nr, Nc, Dist)
31             dev_set_color('red')
32             disp_line(3600, RowBegin, ColBegin, RowEnd, ColEnd)
33         elseif(Attrib == 1)
34             fit_circle_contour_xld(ObjectSelected, 'algebraic', -1, 0, 0, 3, 2, Row, Column, Radius, StartPhi, EndPhi, PointOrder)          
35             dev_set_color('green')
36             dev_set_draw('margin')
37             gen_circle(Circle, Row, Column, Radius)
38         endif
39 endfor

 

 此例就是按照上篇方法对轮廓的提取,

edges_sub_pix(ImageReduced, Edges, 'canny',1.5, 5, 40) 此算子,参数如何设置没有太多的理解。
get_contour_global_attrib_xld,算子第一次使用,感觉不同于上篇中提到的get_contour_attrib_xld,需要加强理解,比那个好用。
 

posted on 2022-04-09 22:41  行远-自迩  阅读(77)  评论(0编辑  收藏  举报