Halcon之膨胀,腐蚀,开闭运算

膨胀:对边界点进行扩充,填充空洞,使边界向外部扩张的过程。

腐蚀:消除物体边界点,使边界向内部收缩的过程,把小于结构元素的物体去除掉.

开运算:先腐蚀后膨胀的过程称为开运算,作用:去除孤立的小点,毛刺,消除小物体,平滑较大物体边界,同时不改变其面积.(此处的不改变其面积是有条件的,即结构元素设置的必须要合理)

闭运算:先膨胀后腐蚀的过程是闭运算。作用:填充物体内细小的空洞,连接临近物体,平滑边界,同时不改变其面积。(此处的不改变其面积是有条件的,即结构元素设置的必须要合理)

膨胀与腐蚀的主要作用:

(1)消除噪声

(2)分割(isolate)出独立的图像元素,在图像中连接(join)相邻的元素

(3)寻找图像中明显的极大值或极小值区域

(4)求出图像的梯度

Notice:

膨胀和腐蚀是对白色部分(高两部分)而言的,不是黑色部分,膨胀是图像中的高亮部分进行膨胀,类似于“领域扩张”,效果图拥有比原图更大的高亮区域;腐蚀是原图中的高亮部分被腐蚀,类似于“领域被蚕食”,效果图拥有比原图更小的高亮区域

膨胀

腐蚀

read_image (Image,'Fabrik')

*使用固定的阈值分割图像

threshold (Image, Region, 128, 255)

*使相邻的区域连接成为一个整体,连通处理

connection (Region, ConnectedRegions)

*根据面积过滤出我们需要提取的区域

select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 8000, 9000)

*使用矩形结构元素进行膨胀

dilation_rectangle1 (SelectedRegions, RegionDilation, 3, 3)

*使用圆形结构元素进行膨胀

dilation_circle (SelectedRegions, RegionDilation1, 2.5)

*使用矩形结构元素进行腐蚀

erosion_rectangle1 (SelectedRegions, RegionErosion, 3, 3)

*使用圆形结构元素进行腐蚀

erosion_circle (SelectedRegions, RegionErosion1,2.5)

*开运算

opening_rectangle1 (SelectedRegions, RegionOpening, 3, 3)

*闭运算

closing_rectangle1 (SelectedRegions, RegionClosing, 3, 3)

(0)

相关推荐