冈萨雷斯《数字图像处理》读书笔记(四)

目录

序言

一、集合论基础

1、集合的子集与相等

2、集合的基本运算符

3、集合的反射和平移

二、二值形态学的基本运算

1、腐蚀

2、膨胀

3、膨胀与腐蚀运算的对偶性

3、开运算与闭运算

4、一些基本的形态学算法

三、二值形态学图像处理

1、形态滤波

2、边界提取

3、区域填充

4、骨架提取

5、物体识别

四、灰度形态学基本运算

1、灰度腐蚀   

2、灰度膨胀

3、灰度开运算和灰度闭运算

五、灰度形态学处理算法

1、形态学平衡

2、形态学平衡

3、top—hot变换

序言
形态学图像处理 

将数学形态学作为工具从图像中提取表达和描绘区域形状的有用图像分量,如边界、骨架和凸壳等。最常见的有腐蚀和膨胀、开操作和闭操作、击中和击不中变换。本章一开始将讨论二值图像 的处理,之后将扩展到 灰度图像

形态学图像分析基本步骤

■提出所要描述的物体几何结构模式,即提取几何结构特征;

■根据结构模式选择相应的结构元素(简单又有最强的表现力) ;

■用选定的结构元对图像实行击中与否(HMT,Hit-Miss-Transform)变换,便得到比原始图像更显著突出物体特征信息的图像。如赋予相应变量,还可得到定量描述;

■经过形态学变换后的图像突出我们所需的信息,从而可以方便提取信息。

■综上,HMT是MM图像分析的核心运算。

在形态学算法设计中,结构元的选择十分重要,其形状、尺寸的选择是能否有效提取信息的关键。选择的几个基本原则:
■结构元必须在几何上比原图像简单,且有界;
■当选择性质相同或相似的结构元时,以选择极限情况为宜;
■结构元的凸性很重要,对非凸子集,由于连接两点的线段大部分位于集合的外面,故用非凸子集作为结构元将得不到什么信息。

数学形态学进行图像处理的基本思想是:用具有一定形态的结构元素探测目标图像,通过检验结构元素在图像目标中的可放性和填充方法的有效性,来获取有关图像形态结构的相关信息,进而达到对图像分析和识别的目的。

一、集合论基础
1、集合的子集与相等


且当且仅当和同时成立时,称集合A和B集合相等。

2、集合的基本运算符
集合的并

集合的交

集合的补

集合的差

3、集合的反射和平移
集合的反射
由集合A中所有元素相对于原点的反射元素组成的集合称为集合A的反射,记为 。

其中x表示集合A中的元素a对应的反射元素。

集合的反射图示:

集合的平移

由集合A中所有元素平移y= (y1, y2) 后组成的元素集合称为集合A的平移,记为


其中,x表示集合A中的元素a平移y后形成的元素。

集合平移图示:

二、二值形态学的基本运算
1、腐蚀
设A为目标图像,B为结构元素,则目标图像A被结构元素B腐蚀可定义为:

其中,y是一个表示集合平移的位移量。

腐蚀运算的含义是:每当在目标图像A中找到一个与结构元素B相同的子图像时,就把该子图像中与B的原点位置对应的那个像素位置标注为1,  图像A上标注出的所有这样的像素组成的集合,即为腐蚀运算的结果。简而言之,腐蚀运算的实质就是在目标图像中标出那些与结构元素相同的子图像的原点位置的像素。

注意,结构元素中的原点位置可以不为1,但要求目标图像中的子图像与结构元素B的原点对应的那个位置的像素值是1。

腐蚀运算的基本过程是:把结构元素B看作为一个卷积模板,每当结构元素平移到其原点位置与目标图像A中那些像素值为“1”的位置重合时,就判断被结构元素覆盖的子图像的其它像素的值是否都与结构元素相应位置的像素值相同;只有当其都相同时,就将结果图像中的那个与原点位置对应的像素位置的值置为“1”,否则置为0。

注意:当结构元素在目标图像上平移时,结构元素中的任何元素不能超出目标图像的范围。

腐蚀举例:

应用:利用腐蚀算法识别物体

2、膨胀
设A为目标图像,B为结构元素,则目标图像A被结构元素B膨胀可定义为:

其中,y是一个表示集合平移的位移量。

膨胀的含义:先对结构元素B做关于其原点的反射得到反射集合,  然后再在目标图像A上将平移y,  则那些平移后与目标图像A至少有1个非零公共元素相交时对应的的原点位置所组成的集合,就是膨胀运算的结果。

膨胀运算的基本过程:

(1)求结构元素B关于其原点的反射集合;

(2)每当结构元素在目标图像A.上平移后,结构元素与其覆盖的子图像中至少有一个元素相交时,就将目标图像中与结构元素的原点对应的那个位置的像素值置为“1”, 否则置为0。

注意:  (1)当结构元素中原点位置的值是0时,仍把它看作是0;而不再把它看作是1。

          (2)当结构元素在目标图像上平移时,允许结构元素中的非原点像素超出目标图像范围。

膨胀举例:

应用:利用膨胀运算填充目标区域中的小孔

3、膨胀与腐蚀运算的对偶性


即,对目标图像的膨胀运算,相当于对图像背景的腐蚀运算操作;对目标图像的腐蚀运算,相当于对图像背景的膨胀运算操作。

腐蚀运算与膨胀运算的对偶性示例:

3、开运算与闭运算
开运算

使用同一个结构元素对目标图像先进行腐蚀运算,然后再进行膨胀运算称为开运算。

结构元素B对目标图像A的开运算定义为:

举例:

闭运算

使用同一个结构元素对目标图像先进行膨胀运算,然后再进行腐蚀运算称为闭运算。

结构元素B对目标图像A的闭运算定义为:

举例:

开运算和闭运算的对偶性

闭运算可以使物体的轮廓线变得光滑,具有磨光物体内边界的作用;而开运算具有磨光图像外边界的作用。

4、一些基本的形态学算法
边界抽取(boundary extraction)

区域填充(region flling)

连接分量提取(extraction of connectedcomponents)

凸壳算法(convex hull)

细化(thinning)

粗化(thickening)

骨架(skeletons)

修剪(pruning)

三、二值形态学图像处理
1、形态滤波


2、边界提取


边界提取示例:

3、区域填充


对细胞图像的区域填充示例:

4、骨架提取
 

变体

1)细化
结果:在不破坏连通性的前提下,细化图像
算法实现:
1)做腐蚀操作,但不立刻删除像素,只打标记;

2)将不破坏连通性的标记点删掉;

3)重复执行,将产生细化结果

2)粗化
结果:  在不合并对象的前提下,粗化图像。
算法实现:
1)做膨胀操作,但不立刻添加像素,只打标记;

2)将不产生对象合并的标记点添加进来;

3)重复执行,将产生粗化结果

另一方案:将图像求反,执行细化,结果再求反

骨架提取实例:

5、物体识别


四、灰度形态学基本运算
       灰度形态学是二值形态学向灰度空间的自然扩展。在灰度形态学中,分别用图像函数f (x, y)和b (x, y)表示二值形态学中的目标图像A和结构元素B,并把f (x, y)称为输入图像,b (x, y)称为结构元素,函数中的(x, y)表示图像中像素点的坐标。
       二值形态学中用到的交和并运算在灰度形态学中分别用最大极值和最小极值运算代替。

1、灰度腐蚀   
  在灰度图像中,用结构元素b (x, y)对输入图像f (x, y)进行灰度腐蚀运算可表示为:

(fb)(s,t) = min{f(s+x,t+ y)-b(x,y)I(s+ x),(t+ y)∈;(x,y)∈}

      其中,和分别表示f (x, y)和b(x, y)的定义域。x和y必须位于结构元素的定义域之内,而平移参数(s+x)和(t+y)必须位于的f (x, y)的定义域之内。

      与二值图像腐蚀运算不同的是:被移动的是输入图像f (x, y)函数而不是结构元素b (x, y)。

      灰度腐蚀运算的特点:灰度腐蚀运算的计算是逐点进行的,  求某点的腐蚀运算结果就是:计算该点局部范围内各点与结构元素中对应点的灰度值之差,并选取其中的最小值作为该点的腐蚀结果。经腐蚀运算后,  图像边缘部分具有较大灰度值的点的灰度会降低,因此,边缘会向灰度值高的区域内部收缩。

灰度腐蚀运算示例:

灰度腐蚀运算的一维函数形式:

利用结构元素b (x)对目标图像f (x)的腐蚀过程是:在目标图像的下方“滑动”结构元素,结构元素所能达到的最大值所对应的原点位置的集合即为腐蚀的结果。

腐蚀运算过程示意图:

2、灰度膨胀
在灰度图像中,用结构元素b (x, y)对输入图像f(x,y)进行灰度膨胀运算可表示为: 

其中,和分别表示f (x, y)和b (x, y)的定义域。X和y必须位于结构元素的定义域之内,而平移参数(s+x)和(t+y)必须位于的f (x, y)的定义域之内。

需要注意的是:二值膨胀运算中要求目标图像集合和结构元素集合相交至少有一个元素。

灰度膨胀运算的特点:灰度膨胀运算的计算是逐点进行的,求某点的膨胀运算结果就是计算该点局部范围内各点与结构元素中对应点的灰度值之和,并选取其中的最大值作为该点的腐蚀结果。经膨胀运算后,图像边缘部分得到了延伸。

灰度膨胀运算示例:

灰度膨胀运算的一维函数形式:

膨胀运算过程示意图:

3、灰度开运算和灰度闭运算
灰度开运算
用结构元素b对灰度图像f进行开运算可表示为:
开运算可以通过将求出的所有结构元素的形态学平移都填入目标图像f下方的极大点来计算。如下图几何直观描述:

灰度闭运算
用结构元素b对灰度图像f进行闭运算可表示为:
闭运算可以通过求出所有结构元素的形态学平移与目标图像.上方的极小值点来计算。如下图几何直观描述:

五、灰度形态学处理算法
1、形态学平衡


对添加椒盐噪声的Lena图像的形态学平滑:

2、形态学平衡


使用空间梯度算子对形态学梯度算子对Lena图像进行处理的结果:

3、top—hot变换


 

 
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/qq_37692302/article/details/89448885

冈萨雷斯《数字图像处理》读书笔记(九)——形态学图像处理

形态学来自于生物学,研究动植物的形态和结构。运用在图像中可提取如边界、骨架和凸壳。初学形态学都是在二值化的图像上研究,之后可以扩展到灰度图像。

膨胀和腐蚀

数学形态学与集合论分不开,因为形态学中的操作是基于两个集合的,一个是待处理的像素集合,一个我们叫做结构元SE。SE的形状有多种,原点也有多种,但一般是重心,原点在腐蚀erode和膨胀dilate中表示当前要处理的像素点。像卷积一样,结构元会在图像上遍历,所以我们要对集合A填充,使得结构元的原点在A的边界时,结构元的整体都不会落在图像之外。到现在我们已经知道了形态学基本操作(腐蚀和膨胀)是基本流程和卷积类似,就是利用一个核对像素遍历。卷积是计算卷积核中对应像素乘积之和。腐蚀和膨胀则是基于两个集合的关系。

腐蚀运算的当前像素的结果是两个集合做逻辑与运算,如果SE所占区域和A的一部分是完全重合的,即SE完全属于集合A,那么这一点就取集合A内的值。腐蚀其实是击中击不中变换的简化。击中击不中变换可用于检测图像中目标形状的原点位置,使用的前提条件是图像中的物体之间是断开的,即每个物体被至少一个像素宽的背景像素所环绕。对A和A的补集分别利用D和W-D进行腐蚀,腐蚀结果的交集就是目标的原点。D就是目标,W-D代表与背景相联系的集合。

膨胀是两个集合做或运算,只要部分重合,就把当前像素设置为集合A中的值。膨胀的最简单应用之一是桥接裂缝。而膨胀在连接处细于结构元时会断开。膨胀的一个应用是条件膨胀,可用于孔洞填充,如图像中有一些球体,但是球体中有反光,利用孔洞填充可以消除反光。具体方法是在边界内找到初始点,利用结果元进行迭代,一次迭代是膨胀后与A的补集求交集,交集的目的是寻找背景点。当膨胀之后与A取交集,这时候取的是前景点,可以用于连通分量的提取。

注意我们描述待处理图像A和结构元都是把他们当做集合,膨胀和腐蚀的具体运算也是两个集合之间的关系进行运算,得到的结果也是当做一个集合进行描述。结果的集合是结构元在图中遍历中的所有结果的集合,具体遍历的方式在腐蚀中表现为平移z,在膨胀中表现为结构元的反射(中心对称)的z平移。

还需要注意的是对一幅图(先考虑二值图)中哪些是集合A,我的理解是这个要具体问题具体分析,当结构元元素是白色时,处理的就是图像中的白色区域。

开运算和闭运算

开操作,先腐蚀后膨胀。一个几何解释是开运算是结构元B在A的内侧滚动时所能达覆盖的最大面积。从公式可以看出开运算和腐蚀都是平移后进行条件判断,判断条件是平移之后完全属于集合A,但是结果的操作对象取的不再是结构元的原点,而是平移之后的结构元整体。因为结构体是在A内部平移遍历的,且取的是结构元所能覆盖的面积的最大值,这使得开操作有一个性质:开操作之后的集合是A的子集。开操作同时会断开一些窄的连接和细的突出,可用于消除椒盐噪声。

闭操作和开操作的彼此对偶的。

结构元B对A的闭操作可以看作B的反射对A的补集的开操作,得到的结果再取补集。性质同样对偶,A是闭操作结果的子集。

形态学还可以用于获得集合A的凸壳C(A)。如果A内任意两个点的连线都在A的内部,那么A就是凸集(凸形)。凸壳是包含于A的最小凸集。获得凸集的方法依然是迭代,使用多个结构体对A做击中击不中变换,执行与A的并集,得到的结果再取并集。

根据击中击不中变换,还可以达到细化和粗化。

可以用连续腐蚀和开操作得到骨架。

细化和骨架算法会保留一些寄生分量,因而需要用后处理来消除这些寄生分量。

形态学重建,设计两幅图像和结构元,一幅图像用于标记变换的起始点,一幅图像是模板,用于约束该变换。在形态学重建中,核心是测地膨胀和测地腐蚀。
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/zcg1942/article/details/81874294

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值