机器视觉图像形态学中的腐蚀、膨胀、开运算、闭运算
1.腐蚀
腐蚀(Erosion)是一种基本的图像处理操作,主要用于缩小或细化图像中的目标区域。它通过结构元素(Structuring Element)与图像进行交互,逐步消除边界像素,使目标区域向内收缩。
对于二值图像 I和结构元素 S,腐蚀操作定义为:
I⊖S={x∣Sx⊆I}
其中:
-
Sx 表示结构元素 S平移 x后的版本。
-
结果图像中的点 x 满足:当 S 的中心位于 x 时,SS 完全包含于原始图像 I 中。
作用效果
-
消除细小物体或噪声:移除比结构元素小的孤立点或毛刺。
-
分离粘连区域:使相连的物体断开。
-
平滑边界:使目标边缘向内收缩。
2.膨胀
膨胀(Dilation)是一种与腐蚀(Erosion)相对应的基本操作,主要用于扩大图像中的目标区域或填充区域内部的孔洞。它通过结构元素(Structuring Element)与图像进行交互,使目标区域向外扩展。
对于二值图像 II 和结构元素 SS,膨胀操作定义为:
I⊕S={x∣Sx∩I≠∅}
-
Sx 表示结构元素 S 平移 x 后的版本。
-
结果图像中的点 x 满足:当 S 的中心位于 x 时,S 与原始图像 I 至少有一个像素重叠。
2. 膨胀的作用效果
-
扩大目标区域:使目标边缘向外扩展。
-
填充小孔或断裂:连接接近但不连续的物体。
-
平滑边界:弥补腐蚀操作造成的收缩。
-
增强特征:如加粗线条或填充缺失部分。
应用场景
-
填充目标内部空洞(如医学图像中的细胞修复)。
-
连接断裂的边缘(如文档扫描中的文字增强)。
-
增加目标尺寸(如工业检测中的物体放大)。
-
形态学梯度(膨胀图 - 腐蚀图,用于边缘检测)。
3.开运算
开运算(Opening)是由腐蚀(Erosion)和膨胀(Dilation)按顺序组合而成的一种基本操作,主要用于去除小噪声、平滑物体轮廓,同时保持目标的主要形状不变。其核心思想是“先腐蚀后膨胀”。
对于二值图像 II 和结构元素 SS,开运算定义为:
I∘S=(I⊖S)⊕S
-
先腐蚀(Erosion):I⊖S(消除细小物体或毛刺)。
-
再膨胀(Dilation):(I⊖S)⊕S(恢复主体形状,但不再恢复被腐蚀掉的细节)。
开运算的作用效果
-
去除细小噪声或孤立点(比结构元素小的区域会被消除)。
-
断开狭窄的连接(使粘连物体分离)。
-
平滑物体边界(保留主体形状,但边缘更光滑)。
-
保留比结构元素更大的物体(仅影响比 SS 小的结构)
4.闭运算
闭运算(Closing)是另一种由膨胀(Dilation)和腐蚀(Erosion)顺序组合而成的基本操作,与开运算(Opening)相反,它主要用于填充小孔洞、连接断裂部分,同时保持目标的主要形状不变。其核心思想是“先膨胀后腐蚀”。
闭运算的定义
对于二值图像 II 和结构元素 S,闭运算定义为:
I∙S=(I⊕S)⊖S
即:
-
先膨胀(Dilation):I⊕S(填充孔洞或连接断裂部分)。
-
再腐蚀(Erosion):(I⊕S)⊖S(恢复主体形状,但不再分裂已连接的区域)。
闭运算的作用效果
-
填充目标内部的小孔洞(比结构元素小的孔会被填充)。
-
连接邻近的断裂部分(如断裂的边缘或文字笔画)。
-
平滑物体边界(向内填充缺口,使轮廓更连续)。
-
保留比结构元素更大的物体(仅影响比 SS 小的断裂或孔洞)。
应用场景
-
填充孔洞(如医学图像中的细胞修复、工业检测中的缺陷修补)。
-
连接断裂的边缘(如文档扫描中的文字笔画修复)。
-
平滑闭合区域(如地图中的湖泊或岛屿轮廓处理)。
-
预处理增强(为后续分割或特征提取提供连贯的目标区域)。