数字图像处理读书报告10

更新时间:2023-09-25 03:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数字图像处理读书报告10 ——形态学图像处理

——钱增磊

前言:本章主要讲述了对图像形态的操作,形态包括边界、骨架、凸壳等,将这些形态提取出来是图像操作中的一个重要目的。本章主要涉及二值形态学和灰度形态学两个方面的操作。

一、二值图像形态学

1、腐蚀和膨胀

腐蚀作为集合A和B,表示为A?B的B对A的腐蚀定义为: A?B?{z|(B)z?Ac??}

表示首先对这个结构元SE旋转180度,这个和卷积的意义相同,然后用SE扫描图像A,SE的中心点在图像A中,而当结构元的边界与A的重合时,丢弃SE的中心点与SE边界元素相间的那部分A元素,然后沿着图像A边界一直扫描,直至腐蚀结束。

该操作如同“腐蚀”一般消除亮的区域,消除的大小将根据结构元的结构选取有关。 膨胀表示为A?B的B对A的膨胀定义为:

?)?A??} A?B?{z|(Bz表示先对这个结构元SE旋转180度,然后用SE扫描图像A,SE的中心点在图像A中,那么当SE的中心点在A的边界时,A的边界到SE的边界那一部分进行填充,然后沿着A的边界继续扫描,直至膨胀结束。

该操作如同“膨胀”一样,增强亮的区域,增强区域的大小和形状由SE的结构元的结构决定。

2、开操作与闭操作

膨胀会扩大一幅图像的组成部分,而腐蚀则会缩小一幅图像中的组成部分,那么将这两者组合起来操作便是开闭操作。

开操作是先进行腐蚀后进行膨胀,它可以先通过腐蚀割断或者消除小的亮的区域,然后再进行膨胀,把原图像亮的区域还原。如此便可以用来平滑物体的轮廓、断开较窄的瓶颈并消除细的突出物。

闭操作是先进行膨胀后进行腐蚀,它可以先通过膨胀链接一些断开的亮的区域,然后再进行腐蚀,把原图像的亮区域缩小还原。如此便与开操作相反,可以弥合较窄的间断和细长的沟壑,消除小的孔洞,填补轮廓线中的断裂。

3、击中击不中变换HMT

该变换是形状检测的一个基本工具,是根据两种变换,寻找某一个需要找到的图像位

置。在击中击不中变换中将结构元素分解成两个,一个定义为前景结构元素,一个定义为背景结构元素,定义如下:

B?(E,F)其中E,F的交集为空集 HMT的标准变换为: A?B?(A?E)?(Ac?F)

由于我们要找的目标是图像A的前景元素中的某一目标,所以我们先对A进行结构元素E的击中变换,也就是腐蚀操作,得到的目标集合先放在一边,然后对A的背景用结构元素F进行击不中变换,也是腐蚀操作,这样就得到了另一个目标集合,很显然所找的目标一定同时在两个目标当中,于是对两个集合取交操作,得到目标。

4、二值形态学基本算法

根据上述二值形态学的基本操作,可得到一些对二值形态学的基本应用。首先是边界提取。可以通过先对图像求解腐蚀操作,然后用原图像减去腐蚀的图像即可得到图像的边界,该边界属于图像的内边界,此操作表示为:

?(A)?A?(A?B)

第二个应用是孔洞填充,孔洞是一系列由前景像素相连接的边界所包围的一个背景区域,而且孔洞不像噪声点一样,它可大可小的,不能一次性用膨胀操作解决,要不断地使用迭代膨胀,为了防止孔洞外围的前景像素会因为膨胀操作而不断扩大,采用与原图像的补集相交,保证外围尺寸维持原样,操作为:

Xk?(Xk?1?B)?Ac

另一个应用是连通分量的提取,对于很多图像认为的可以看出来这些连通的分量,但是计算机却因为图像的断裂而不明显,连接两个分量的最好办法就是膨胀,但一次是不够的,采用迭代膨胀的方法,同样为了防止图像的扩大变形,我们将与原图像进行交集操作,这样就使得只有需要连接的地方才起到了膨胀的作用。

凸集表示在该集合中任意两点的直线段都在该集合的内部,任何集合S的凸壳就是表示包含于S的最小凸集,采用对它迭代的击中击不中变换,这里利用的结构元素B是采用四个不同方向的一维结构元,这样找到的凸壳可以满足其最小特性。

iXk?(Xk?1?Bi)?A,i?1,2,3,4

4C(A)??Di

i?1第五个应用是细化,我们依次通过将图像A进行B结构元的击中击不中变换,可以得到我们需要的去除的元素,然后对其求补集并与原图像进行交集操作,可得到细化后的图像,依次对其进行迭代操作,可得到完整的细化图像。其操作为:

A?B?A?(A?B)

c与细化相反的便是粗化操作,同样对A图像进行B结构元的击中击不中变换,找到需要填充的元素,然后将其与图像A进行并集的操作,如此便可得到粗化的图像,其操作为:

A?B?A?(A?B)

骨架的提取是形态学操作中的一大应用,首先一个具有几何形状的骨架可以有若干个分支骨架构成,所以会有

S(A)?k?0?S(A)

kK那么对于每一个骨架,我们采用对其进行迭代腐蚀的操作,使他变成一条细细的骨架线,其中K是A被腐蚀为空集前的最后一次迭代步骤,于是可得到操作为: Sk(A)?(A?kB)?(A?kB)?B

第八个应用是裁剪,它其实是对细化和骨架应用算法的补充,因为这些过程会保留一些寄生分量,因为需要用后处理来清楚这些寄生分量。首先进行细化操作,裁剪掉一些多出来的分支,得到集合:

X1?A?{B}

但是此操作会往往将这个原本的图案发生一些缺失,这个时候就需要进行原图案的复原操作,该操作先需要求得缺失分量的端点集合,采用对上述集合求击中击不中变换:

X2??(Xk?18k?B) 1然后以集合A作为限定器,对端点集合求膨胀运算恢复原图像: X3?(X2?H)?A

二、灰度图像形态学

往往有些时候二值图像的形态学操作本身就具有很大的局限性,它不能很好地去表示一个图像,所以就引出了对灰度图像的形态学操作,这里与二值图像很大的区别除了本身图像是具有灰度级之外,其操作的结构元也有平坦与不平坦结构元的区别,不平坦的结构元具有灰度的剖面。

1、腐蚀和膨胀

与二值图像的腐蚀和膨胀操作类似,如果用平坦的结构元对f图像进行腐蚀,定义为图像f中与结构元b重合区域的最小值。同理得到膨胀的操作与腐蚀相反,其操作为:

[f?b](x,y)?min{f(x?s,y?t)}

(s,t)?b [f?b](x,y)?max{f(x?s,y?t)}

(s,t)?b由于平坦结构元SE的腐蚀求图像与b重合的每个邻域的最小灰度值,因此亮特征尺寸将被

减小,而暗特征尺寸会增大,膨胀则相反。

那么对于非平坦结构元对图像f的腐蚀与膨胀的操作为:

[f?bN](x,y)?min{f(x?s,y?t)?b(s,t)?bNN(s,t)}

[f?bN](x,y)?max{f(x?s,y?t)?bN(s,t)}

(s,t)?bN图像的开操作与闭操作与二值图像的开闭操作相类似。 2、一些基本灰度级形态学算法

形态学的平滑:由于开操作抑制比结构元小的亮细节,而闭操作抑制暗细节,所以常常以形态学滤波的形式结合起来被用于图像平滑和噪声的去除。

形态学梯度:类似二值图像的边界提取,采用对其进行膨胀,然后对原图像进行腐蚀,最后两幅图像相减便可得到,由于灰度级有梯度的过渡过程,所以不采用原图像减去腐蚀图像的过程,操作为:

g?(f?b)?(f?b)

顶帽变换和底帽变换:通过进行开操作与闭操作可以删除一些分量图像,然后用原图像相减的办法将保存下这些被删除的分量图像,保证再调整原图像明亮的时候,保存原图像的特征形态。一般顶帽变换用于暗背景上的亮物体,底帽变换用于亮背景上的暗物体,其变换为:

That(f)?f?(f?b) Bhat(f)?(f?b)?f

粒度测定:对于一些有大有小的颗粒物体在图像上很难进行分割,而在形态学上可以间接用于估计颗粒的尺寸分布,而不需要识别并测量图像中的每个颗粒来进行测定。

纹理分割:对于有若干个有特征的集中区域,由于界限没有被明显的划分,可以根据采用开闭操作依次去除一些小尺寸的点,然后对剩下的区域采用相反的开闭操作将区域集中联系起来,得到区域形状,再利用梯度的算法得出边界加到原图像中,便可得到划分好的区域。

总结:本章介绍的形态学概念和技术构成了从一幅图像中提取感兴趣特征的一组强有力的工具,对比了二值图像与灰度图像的形态学操作的不同,为后一章的图像分割打下了很好的基础。

本文来源:https://www.bwwdw.com/article/5mkd.html

Top