做公众号的网站有哪些功能,制作网站要多少费用,在线网站建设教程,最近国内外重大新闻事件例一#xff1a;毛刺在往外凸的面上 策略1#xff1a;分割出黑色部分#xff0c;然后通过开运算去掉毛刺#xff0c;再通过原黑色部分区域减去开运算之后的区域#xff0c;得到毛刺部分的区域。 1 read_image (Tu, C:/Users/xiahui/Desktop/tu.jpg)
2 binary_threshold (…例一毛刺在往外凸的面上 策略1分割出黑色部分然后通过开运算去掉毛刺再通过原黑色部分区域减去开运算之后的区域得到毛刺部分的区域。 1 read_image (Tu, C:/Users/xiahui/Desktop/tu.jpg)
2 binary_threshold (Tu, Region, max_separability, dark, UsedThreshold)
3 opening_circle (Region, RegionOpening, 50.5)
4 difference (Region, RegionOpening, RegionDifference)
5 dev_display (Tu)
6 dev_display (RegionDifference) 可以看到虽然毛刺被分割出来了但是多出了4块干扰的区域。原因是执行opening_circle时四个尖角被削平了。 开运算是先腐蚀再膨胀。腐蚀之后毛刺被削没了但是4个尖角大致保持以前的形状4个尖角再经过膨胀运算后就变得不尖了。 策略2分割出白色部分然后通过闭运算封闭凹槽再通过闭运算之后的区域减去原白色部分区域得到毛刺部分的区域。 1 read_image (Tu, C:/Users/xiahui/Desktop/tu.jpg)
2 binary_threshold (Tu, Region, max_separability, light, UsedThreshold)
3 closing_circle (Region, RegionClosing, 50.5)
4 difference (RegionClosing, Region, RegionDifference)
5 dev_display (Tu)
6 dev_display (RegionDifference) 分割效果很好。 例二毛刺在往内凹的面上 策略1分割出黑色部分然后通过开运算去掉毛刺再通过原黑色部分区域减去开运算之后的区域得到毛刺部分的区域。 1 read_image (Ao, C:/Users/xiahui/Desktop/ao.jpg)
2 binary_threshold (Ao, Region, max_separability, dark, UsedThreshold)
3 opening_circle (Region, RegionOpening, 50.5)
4 difference (Region, RegionOpening, RegionDifference)
5 dev_display (Ao)
6 dev_display (RegionDifference) 分割效果不佳现象和原因同例一。 策略2分割出白色部分然后通过闭运算封闭凹槽再通过闭运算之后的区域减去原白色部分区域得到毛刺部分的区域。 1 read_image (Ao, C:/Users/xiahui/Desktop/ao.jpg)
2 binary_threshold (Ao, Region, max_separability, light, UsedThreshold)
3 closing_circle (Region, RegionClosing, 50.5)
4 difference (RegionClosing, Region, RegionDifference)
5 dev_display (Ao)
6 dev_display (RegionDifference) 分割效果很好。 说明 以上的opening_circle (Region, RegionOpening, 50.5)可以用下面的代码来完全等效 set_system (tsp_clip_region, false)
erosion_circle (Region, RegionErosion1, 50.5)
dilation_circle (RegionErosion1, RegionDilation, 50.5) set_system (tsp_clip_region, false)的意思是当region一般是膨胀以后超过图像区域时不修剪region 下面我通过一些简单图形来观察开运算腐蚀—膨胀和闭运算膨胀—腐蚀的执行效果。 用腐蚀、膨胀算子来模拟开运算的过程 1 *模拟开运算
2 set_system (tsp_clip_region, false)
3 read_image (Rect, C:/Users/xiahui/Desktop/Rect.jpg)
4 binary_threshold (Rect, Region, max_separability, dark, UsedThreshold)
5 erosion_circle (Region, RegionErosion, 30.5)
6 dilation_circle (RegionErosion, RegionDilation, 30.5)
7 dev_display (Rect)
8 dev_display (RegionDilation) 这个星花腐蚀和膨胀值要小些不然没有上图的效果 用膨胀、腐蚀算子来模拟闭运算的过程 1 *模拟闭运算
2 set_system (tsp_clip_region, false)
3 read_image (Rect, C:/Users/xiahui/Desktop/rect.jpg)
4 binary_threshold (Rect, Region, max_separability, dark, UsedThreshold)
5 dilation_circle (Region, RegionDilation, 30.5)
6 erosion_circle (RegionDilation, RegionErosion, 30.5)
7 dev_display (Rect)
8 dev_display (RegionErosion) 矩形闭运算后可完全复原 正八边形闭运算后可完全复原 叠加在一起看看 无法复原 结论 1、膨胀会使尖角变平滑。2、对于凸多边形来说可用shape_trans (Region, RegionTrans, convex)生成凸多边形腐蚀以后region的外形特征保持不变矩形腐蚀以后仍是矩形三角形腐蚀以后还是三角形。 3、对于非凸多边形来说腐蚀以后region的外形特征大致保持不变但是如果region的尖角特别细则会腐蚀掉这样region的形状就会发生较大变化。 4、圆角腐蚀以后可能变成尖角。 5、开运算会使尖角变平滑。 6、对于凸多边形来说闭运算之后region不发生任何变化。 7、对于有凹槽的非凸多边形来说闭运算之后region的凹槽被填充。第一步膨胀过程中夹角变圆角第二步腐蚀过程中圆角又可能复原成了尖角见第4条。 转载于:https://www.cnblogs.com/xh6300/p/6397289.html