- list_files ('C:/Users/njtl003/Desktop/51halcon划痕图像', ['files','follow_links'], ImageFiles)
- tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
- for Index := 0 to |ImageFiles| - 1 by 1
- read_image (Image, ImageFiles[Index])
- binary_threshold (Image, Region, 'smooth_histo', 'light', UsedThreshold)
- opening_circle (Region, RegionOpening, 5.5)
- connection (RegionOpening, ConnectedRegions)
- select_shape_std (ConnectedRegions, SelectedRegions, 'max_area', 70)
- fill_up (SelectedRegions, RegionFillUp)
- shape_trans (RegionFillUp, RegionOuter, 'outer_circle')
- difference (RegionFillUp, SelectedRegions, RegionDifference)
- opening_circle (RegionDifference, RegionOpening1, 5.5)
- connection (RegionOpening1, ConnectedRegions1)
- select_shape_std (ConnectedRegions1, SelectedRegions1, 'max_area', 70)
- shape_trans (SelectedRegions1, RegionInner, 'outer_circle')
- difference (RegionOuter, RegionInner, RegionDifference1)
- erosion_circle (RegionDifference1, RegionErosion, 2.5)
- reduce_domain (Image, RegionErosion, ImageReduced)
- *检测线
- calculate_lines_gauss_parameters (3, 75, Sigma, Low, High)
- lines_gauss (ImageReduced, Lines, Sigma, Low, High, 'dark', 'true', 'bar-shaped', 'true')
- union_adjacent_contours_xld (Lines, UnionContours, 20, 1, 'attr_keep')
- union_collinear_contours_ext_xld (UnionContours, UnionContours1, 10, 1, 2, 0.1, 0, -1, 1, 1, 1, 1, 1, 0, 'attr_keep')
- select_contours_xld (UnionContours1, SelectedContours, 'contour_length', 50, 2000, -0.5, 0.5)
- dev_get_window (WindowHandle)
- dev_clear_window ()
- dev_display (Image)
- dev_display (SelectedContours)
- stop()
- endfor
复制代码 |