类型的形态学操作
形态是一个广泛的图像处理操作过程基于图像形状。形态学操作将一个结构化元素应用到一个输入图像,创建一个相同大小的输出图像。在形态学操作,输出图像中每个像素的值是基于输入图像中对应像素的比较与邻国。
形态学膨胀和侵蚀
最基本的形态学操作是扩张和侵蚀。扩张增加了像素在图像物体的边界,而侵蚀删除对象边界像素。像素的数量添加或删除的对象在一个图像的大小和形状取决于结构化元素用于处理图像。在形态学膨胀和腐蚀操作,任何给定的状态输出图像的像素是由规则应用到相应的输入图像的像素及其邻国。规则定义了用于处理像素操作扩张或一个侵蚀。此表列出了规则膨胀和腐蚀。
规则扩张和侵蚀
操作 |
规则 |
示例(原始和处理图像) |
---|---|---|
扩张 |
输出像素的值最大社区中所有像素的价值。在一个二进制图像,设置为一个像素 形态学膨胀使得物体更加可见并填入小洞的对象。线出现厚,形状显得更大。 |
|
侵蚀 |
输出像素的值最低社区中所有像素的价值。在一个二进制图像,设置为一个像素 形态学腐蚀去除漂浮像素和细线,因此只有实质性的对象仍然存在。剩余的线条显得更薄,形状看起来更小。 |
|
下面的图展示了一个二进制图像的膨胀。结构化元素定义了邻域的像素,环绕。扩张函数相应的规则适用于像素在附近,将值赋给相应的输出图像的像素。在图中,形态学膨胀函数设置输出像素的值1
因为在附近一个元素定义的结构化元素。有关更多信息,请参见结构化元素。
二进制图像的形态学膨胀
下图说明了这个处理灰度图像。扩张函数规则适用于环绕的邻居像素的兴趣。相应的输出图像像素的值被分配为最高价值在所有邻居像素。在图中,输出像素的值16
因为它是价值最高的社区定义的结构化元素。
灰度图像的形态学膨胀
基于膨胀和腐蚀操作
扩张和侵蚀往往是结合使用来实现图像处理操作。例如,一个形态学的定义开放图像是一种侵蚀,后跟一个扩张,都使用相同的结构化元素的操作。您可以组合扩张和侵蚀将小物体从图像和光滑的大对象的边界。
此表列出工具箱的功能执行常见的形态学操作是基于扩张和侵蚀。
函数 |
形态学的定义 |
示例(原始和处理图像) |
---|---|---|
表现形态。打开操作会侵蚀一个图像,然后膨胀侵蚀形象,都使用相同的结构化元素的操作。 形态开放有助于消除小物体和细线从一个图像,同时保留更大的物体的形状和大小的图像。例如,看到的使用开放形态提取大图像的特性。 |
|
|
执行形态学关闭。关闭操作扩张一个图像,然后侵蚀扩张形象,都使用相同的结构化元素的操作。 形态学关闭用于填充小洞在一个图像,同时保留大孔和对象的形状和大小的图像。 |
|
|
bwskel |
记下概要对象在一个二进制图像。骨架化侵蚀过程中所有对象的中心线不改变对象的基本结构,如孔的存在和分支。 |
|
bwperim |
找到周边的对象在一个二进制图像。一个像素是周长如果非零的一部分,它是连接到至少一个新鲜感像素。因此,室内孔的边缘被认为是对象边界的一部分。 |
|
bwhitmiss |
执行二进制hit-miss变换。hit-miss变换保留在一个二进制图像像素的社区一个结构元素的形状匹配和不匹配第二个不相交的结构元素的形状。 hit-miss变换可用于检测图像中的模式。 |
上面这个示例使用一个结构化元素与一个社区中心的权利,和第二个结构元素与下面一个社区和左边的中心。转换保存像素与邻国只有顶部和正确的。 |
imtophat |
执行一个形态上流社会的变换。上流社会的变换打开一幅图像,然后减去打开图像从原始图像。 上流社会的变换可以用来增强对比度的灰度图像非均匀照明。转换还可以隔离小明亮的对象在一个图像。 |
|
imbothat |
执行一个形态低帽变换。低帽变换关闭一个图像,然后从封闭的图像减去原始图像。 深比其他的低帽变换孤立像素像素在他们的社区。因此,变换可以用来找到一个灰度图像强度波谷。 |
|
另请参阅
imclose
|imopen
|imdilate
|imerode