自测-code
read_image (Image001, './001.jpg')
get_image_size (Image001, Width, Height)
mean_image (Image001, ImageMean, Width/10, Height/10)
*图像相减-关键步骤处理
*ImageSub=(Image-ImageMean)*50+80
sub_image (ImageMean, Image001, ImageSub, 50, 80)
mean_image (ImageSub, ImageMean1, 15, 15)
*求内外圆
threshold (ImageMean1, Region1, 0, 30)
threshold (ImageMean1, Region, 200, 255)
union2 (Region1, Region, RegionUnion)
*开闭操作 去掉毛刺 连接整体
opening_circle (RegionUnion, RegionOpening, 3)
closing_circle (RegionOpening, RegionClosing, 20)
connection (RegionClosing, ConnectedRegions)
*特征选择
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 1000, 999999999)
fill_up (SelectedRegions, RegionFillUp)
select_shape (RegionFillUp, SelectedRegions1, 'circularity', 'and', 0.6, 1)
shape_trans (SelectedRegions1, RegionTrans, 'convex')
*求边界
erosion_circle (RegionTrans, RegionErosion, 2)
difference (RegionTrans, RegionErosion, RegionDifference)
difference (RegionFillUp, SelectedRegions, RegionDifference1)
shape_trans (RegionDifference1, RegionTrans1, 'ellipse')
erosion_circle (RegionTrans1, RegionErosion1, 2)
difference (RegionTrans1, RegionErosion1, RegionDifference2)
union2 (RegionDifference, RegionDifference2, RegionUnion1)
*显示
dev_display (Image001)
dev_display (RegionUnion1)
stop()