1、第第6 6章章 二值图像处理二值图像处理 本章内容本章内容6.1 距离与连通距离与连通 6.2 二值图像的几何特征描述二值图像的几何特征描述 6.3 二值图像的常规处理二值图像的常规处理6.4 二值图像的形态学处理二值图像的形态学处理第第6 6章章 二值图像处理二值图像处理 6.1 距离与连通距离与连通 二值图像只含有两个灰度级,一般用0来表示背景区域,1表示目标区域。对图像分割的结果如果目标区域像素标记为1而背景区域清零则会得到分割结果的二值图像,或者对边缘提取得结果边缘点取值为1而非边缘点取值为0则会得到图像的边缘二值图,这个获取二值图像的过程叫做二值化过程。第第6 6章章 二值图像处理二
2、值图像处理 6.1.1 距离的定义距离的定义 在二值图像处理中,往往需要计算两个像素点间的距离,在二值图像处理中,往往需要计算两个像素点间的距离,比如在连通分量本身的尺寸大小相对于其它各个区域间的比如在连通分量本身的尺寸大小相对于其它各个区域间的距离很小时,计算两个区域间的距离可以近似为计算两个距离很小时,计算两个区域间的距离可以近似为计算两个区域间质心的位置距离。区域间质心的位置距离。满足下面三条性质的函数形式均可以作为距离的定义,满足下面三条性质的函数形式均可以作为距离的定义,假定图像中三点假定图像中三点A,B,C:非负性:非负性:,当和点重合的时候,等号成立;,当和点重合的时候,等号成立
3、;对称性:对称性:;三角不等式:三角不等式:0),(BAd),(),(),(CBdBAdCAd),(),(ABdBAd第第6 6章章 二值图像处理二值图像处理 假设计算点假设计算点P(a,b)与与Q(c,d)间距离可以采取下面的几种定义间距离可以采取下面的几种定义形式:形式:欧几里德距离,用来欧几里德距离,用来De表示,如下式所示:表示,如下式所示:(6-1)街区距离,用街区距离,用D Ds s来表示:来表示:(6-2)棋盘距离,用棋盘距离,用D Dg g表示如下:表示如下:(6-3)三者之间的关系为:三者之间的关系为:,如图,如图6-16-1(a)、(b)和和(c)所示。所示。esgDDD|
4、)|max(|dbcaDg,|dbcaDs22)()(dbcaDe第第6 6章章 二值图像处理二值图像处理 考虑距离点考虑距离点P(a,b)小于小于t t的所有像素点,将发现使用街区的所有像素点,将发现使用街区距离这些点组成一个菱形区域,使用棋盘距离这些点组成一距离这些点组成一个菱形区域,使用棋盘距离这些点组成一个正方形区域。个正方形区域。点点P(a,b)到连通区域到连通区域R R的距离定义为该点到中所有点之间的距离定义为该点到中所有点之间距离的最小距离;距离的最小距离;R的直径定义为的直径定义为R中两点间的最大的距离。中两点间的最大的距离。(a)欧氏距离欧氏距离 (b)街区距离街区距离 (c
5、)棋盘距离棋盘距离 (d)2构成菱形构成菱形 (e)2构成正方形构成正方形图图6-1 三种距离示意图三种距离示意图第第6 6章章 二值图像处理二值图像处理 (a)8-近邻近邻 (b)i近邻近邻 (c)d近邻近邻 图图6-2 像素的近邻关系与编码方式像素的近邻关系与编码方式 5.1.2 邻接与连通关系邻接与连通关系d近邻:如果两个相邻像素单元有一条公共边,则这两个像素近邻:如果两个相邻像素单元有一条公共边,则这两个像素为直接近邻,简称为直接近邻,简称d近邻,其它像素点为非直接近邻;近邻,其它像素点为非直接近邻;i近邻:如果二者只有一个公共点邻接,这种近邻简称近邻:如果二者只有一个公共点邻接,这种
6、近邻简称i近邻。近邻。一般所指的近邻就是这两种近邻的总称,叫做一般所指的近邻就是这两种近邻的总称,叫做n近邻。如果近邻。如果我们按照图我们按照图6-2(a)中的方式对近邻进行编码,中的方式对近邻进行编码,其中编号为奇数其中编号为奇数的为的为d近邻近邻,编号为偶数的为,编号为偶数的为i近邻近邻,通常我们使用的为通常我们使用的为4近近邻和邻和8近邻。近邻。第第6 6章章 二值图像处理二值图像处理 i通路通路(简称通路简称通路)是一个像素序列是一个像素序列 ,并且当并且当 时像素时像素Lk-1和和Lk互为一个互为一个i近邻;近邻;d通路通路则是要则是要求求Lk-1和和Lk必须为必须为d近邻。近邻。如
7、果对于一个像素集合如果对于一个像素集合R中任意两个象素点中任意两个象素点p1和和p2,都,都存在一条首尾为存在一条首尾为p1和和p2的的i通路,并且这条通路上的其余像通路,并且这条通路上的其余像素都属于集合素都属于集合R,那么我们称这个像素集合,那么我们称这个像素集合R是是i连通连通的。的。一个连通的像素集一个连通的像素集R的边界(的边界(i边界边界)定义为至少有一)定义为至少有一个个i近邻不存在近邻不存在R内的所有内的所有R中的像素点的集合;中的像素点的集合;R的的d边界边界是是至少有一个近邻不在至少有一个近邻不在R内的所有内的所有R中的象素点的集合。中的象素点的集合。,2,1|NkLLkN
8、k 1第第6 6章章 二值图像处理二值图像处理 区域就是一个像素点集合,这个集合中的任意两点都可区域就是一个像素点集合,这个集合中的任意两点都可以用包含在集合内的一条曲线连接起来;区域的边界点,就以用包含在集合内的一条曲线连接起来;区域的边界点,就是指那些无论它的邻域有多小,它都包含有集合的内点和外是指那些无论它的邻域有多小,它都包含有集合的内点和外点的点集。点的点集。区域的连通性具有互逆性和传递性,记区域区域的连通性具有互逆性和传递性,记区域R、S和和T:(1)自连通性:自连通性:R与与R连通;连通;(2)对称性:若对称性:若R与与S连通,那么连通,那么S与与R也连通;也连通;(3)传递性:
9、若传递性:若R与与S连通,连通,S与与T连通,则连通,则R与与T也连通。也连通。第第6 6章章 二值图像处理二值图像处理 5.1.3 区域的连通分量标记区域的连通分量标记 图像经过分割后得到多个目标区域,有必要对每个目图像经过分割后得到多个目标区域,有必要对每个目标区域进行标记和识别。一般在标记时把属于同一区域的标区域进行标记和识别。一般在标记时把属于同一区域的不同连通分量标记为不同的标号。不同连通分量标记为不同的标号。标记的方法通常采用顺序标记的方法。顺序标记法通标记的方法通常采用顺序标记的方法。顺序标记法通过对图像做两次扫描来实现标记,扫描的方向是由左到右,过对图像做两次扫描来实现标记,扫
10、描的方向是由左到右,由上到下。假定由上到下。假定1表示目标区域像素点,表示目标区域像素点,0表示背景区域像表示背景区域像素点。下面分别介绍素点。下面分别介绍4连通分量和连通分量和8 8连通分量的顺序标注。连通分量的顺序标注。第第6 6章章 二值图像处理二值图像处理 4连通分量的顺序标注:连通分量的顺序标注:假设扫描到像素点假设扫描到像素点Ai,j,其灰度值为,其灰度值为1,那么检查,那么检查Ai-1,j和和Ai,j-1,因为是顺序扫描,所以,因为是顺序扫描,所以Ai-1,j和和Ai,j-1一定是进行过标记处理。一定是进行过标记处理。所以针对这两个邻接点的不同情况可以对所以针对这两个邻接点的不同
11、情况可以对Ai,j进行标记:进行标记:(1)Ai-1,j和和Ai,j-1均未被标记,则分配均未被标记,则分配Ai,j一个新的标记符;一个新的标记符;(2)有一个被标记,标记符为有一个被标记,标记符为a,则把,则把Ai,j也标记为也标记为a;(3)均被标记均被标记(分别为分别为a和和b),那么把,那么把Ai,j标记为标记为a,也就是,也就是和其左边的邻接点相同的标记;记下标识符和其左边的邻接点相同的标记;记下标识符a和和b等价。等价。(a)原二值图像原二值图像 (b)第一遍扫描标记第一遍扫描标记 (c)第二遍扫描标记第二遍扫描标记图图6-4 4连通分量的顺序标记连通分量的顺序标记第第6 6章章
12、二值图像处理二值图像处理 8 8连通分量的顺序标注:连通分量的顺序标注:与与4连通分量的标记方法类似,不同的是当扫描到像素点连通分量的标记方法类似,不同的是当扫描到像素点Ai,j时,需要检查时,需要检查Ai,j的左边的左边i邻接点邻接点Ai-1,j,左上,左上i邻接点邻接点Ai-1,j-1,上,上i邻接点邻接点Ai,j-1和右上和右上i邻接点邻接点Ai+1,j-1的的4 4个邻接点的标记情况来对个邻接点的标记情况来对其进行标记。其进行标记。(a)原二值图像原二值图像 (b)第一遍扫描标记第一遍扫描标记 (c)第二遍扫描标记第二遍扫描标记图图6-5 8连通分量的顺序标记连通分量的顺序标记第第6
13、6章章 二值图像处理二值图像处理 6.2.1 二值图像中曲线的描述二值图像中曲线的描述6.2.1.1 轮廓跟踪轮廓跟踪-甲虫算法甲虫算法 目标区域的边界轮廓是描述目标的重要特征,对于二目标区域的边界轮廓是描述目标的重要特征,对于二值图像中的目标区域轮廓可以通过一种简单的轮廓跟踪算值图像中的目标区域轮廓可以通过一种简单的轮廓跟踪算法来得到,这种方法也被称作甲虫算法。如图法来得到,这种方法也被称作甲虫算法。如图6-6所示的二所示的二值图像值图像4连通分量,假定目标区域用连通分量,假定目标区域用1(黑色黑色)表示,背景区表示,背景区域用域用0(白色白色)表示,给定甲虫起点表示,给定甲虫起点p p(i
14、 i,j j),遵循准则:,遵循准则:6.2 二值图像的几何特征描述二值图像的几何特征描述 向右转前进一个像素向左转前进一个像素0),(1),(jipjip第第6 6章章 二值图像处理二值图像处理 一直到甲虫爬回起始点为止。甲虫的爬行轨迹反映了目一直到甲虫爬回起始点为止。甲虫的爬行轨迹反映了目标区域的轮廓特征。在边界跟踪的过程中,会出现一些小循标区域的轮廓特征。在边界跟踪的过程中,会出现一些小循环,这些小循环则需要在后继的处理中除去;另外,不同的环,这些小循环则需要在后继的处理中除去;另外,不同的起点将会生成不同的甲虫轨迹,但是差别不是很大。甲虫算起点将会生成不同的甲虫轨迹,但是差别不是很大。
15、甲虫算法可以方便的得到目标区域的轮廓,经过改进的甲虫算法可法可以方便的得到目标区域的轮廓,经过改进的甲虫算法可以方便的实现四连通链码。以方便的实现四连通链码。(a)甲虫算法示例甲虫算法示例 (b)不同起点将导致不同结果不同起点将导致不同结果 图图6-6 46-6 4连通甲虫算法连通甲虫算法 第第6 6章章 二值图像处理二值图像处理 8连通区域的边界:这需要改变甲虫的爬行准则,假定当连通区域的边界:这需要改变甲虫的爬行准则,假定当前甲虫位置为前甲虫位置为p p(i i,j j),从该点的左边,从该点的左边(垂直先前前进方向垂直先前前进方向90o)开始顺时针顺序考察开始顺时针顺序考察p p(i i
16、,j j)的的8邻接像素点,如果发现有像素邻接像素点,如果发现有像素点不为点不为0,则前进至该点,持续该过程,直至回到起始点。相,则前进至该点,持续该过程,直至回到起始点。相对比对比8 8连通的甲虫算法产生的轨迹全部在区域内部,并且不会连通的甲虫算法产生的轨迹全部在区域内部,并且不会产生小环结构。产生小环结构。图图6-7 8连通甲虫算法连通甲虫算法 第第6 6章章 二值图像处理二值图像处理 6.2.1.2 链码(链码(chain code)链码链码(又称又称Freeman链码链码)在二值图像中常常用来表示连通在二值图像中常常用来表示连通分量的边界或者线条。还可以计算出许多几何特征量分量的边界或
17、者线条。还可以计算出许多几何特征量(线条的线条的长度,闭合曲线的周长,所围面积等长度,闭合曲线的周长,所围面积等)。如图如图6-8(b)所示的曲线所示的曲线S从从p p点开始,形成的点开始,形成的4链码为:链码为:00300333212232211011;图;图6-8(d)曲线曲线S从从q q点开始,形成的点开始,形成的8链链码为:码为:1100776655443322。(a)4链码指向符链码指向符 (b)曲线的曲线的4链码表示链码表示 (c)8链码指向符链码指向符 (d)边界的边界的8链码表示链码表示 图图6-8 曲线的链码表示曲线的链码表示 第第6 6章章 二值图像处理二值图像处理 链码的
18、表示方法具有下面一些有趣的特性:链码的表示方法具有下面一些有趣的特性:如果曲线上的像素数目为如果曲线上的像素数目为N,那么链码的长度则为,那么链码的长度则为N-1;链码是和起点相关的,不同的起点可以得到不同的链码链码是和起点相关的,不同的起点可以得到不同的链码表示。表示。链码具有平移的不变性,也就是说曲线的位置变动不改链码具有平移的不变性,也就是说曲线的位置变动不改变其链码结构;变其链码结构;曲线的旋转将使得得到的链码中的每个元素分量增加相曲线的旋转将使得得到的链码中的每个元素分量增加相同的数值。同的数值。第第6 6章章 二值图像处理二值图像处理 6.2.2 区域简单特征描述区域简单特征描述6
19、.2.2.1 连通分量的面积连通分量的面积 连通分量的面积实际上就是连通像素点集中像素的连通分量的面积实际上就是连通像素点集中像素的个数,也就是区域边界内包含像素点的数目。设二值图个数,也就是区域边界内包含像素点的数目。设二值图像像f(x,y)的连通分量的连通分量 的大小为的大小为 ,其中:,其中:那么区域的面积为:那么区域的面积为:如果经过目标标记,区域占有的连通分量有如果经过目标标记,区域占有的连通分量有k个,那么目个,那么目标区域的面积则是标区域的面积则是k个连通分量的面积总和,即有:个连通分量的面积总和,即有:),(yxNM elseyxyxyxf0),(),(1),(1010),(M
20、xNyyxfSkiiSS1第第6 6章章 二值图像处理二值图像处理 6.2.2.2 连通分量的周长连通分量的周长 连通分量的周长常用的定义一般有下面两种形式:连通分量的周长常用的定义一般有下面两种形式:周长可以使采用周长可以使采用8 8链码进行编码的曲线的长度:链码进行编码的曲线的长度:其中其中N1表示指向方向为表示指向方向为0,2,4,6的像素点数;的像素点数;N2为指向为指向1,3,5,7的像素点数目;的像素点数目;将边界像素点所占的面积定义为周长,也即边界点所将边界像素点所占的面积定义为周长,也即边界点所占的像素点数目。占的像素点数目。221NNL第第6 6章章 二值图像处理二值图像处理
21、 6.2.2.3 连通分量的位置连通分量的位置 连通区域在二值图像中一般除了是单像素外,一般都连通区域在二值图像中一般除了是单像素外,一般都有自己的形状,因此也具有质心,通过对质心的定位,在有自己的形状,因此也具有质心,通过对质心的定位,在目标识别中具有一定的实用意义。目标识别中具有一定的实用意义。假定二值图像假定二值图像f(x,y),连通区域的面积为,连通区域的面积为S,则其质心坐,则其质心坐标为:标为:RjiRjijiyfSYjixfSX),(),(),(1),(1第第6 6章章 二值图像处理二值图像处理 6.2.2.4 区域的不变矩描述区域的不变矩描述 用矩来描述图像具有旋转、比例缩放和
22、平移具有不变性,用矩来描述图像具有旋转、比例缩放和平移具有不变性,因此可以用矩来刻划图像中的目标区域在很多场合得到广泛因此可以用矩来刻划图像中的目标区域在很多场合得到广泛应用。连续的二维矩(第(应用。连续的二维矩(第(p+q)阶矩)定义为:)阶矩)定义为:只要只要f(x,y)在图像在图像xy平面上有限区域有非零值,则其各阶平面上有限区域有非零值,则其各阶矩都存在且唯一,同时可以通过其各阶矩可以实施对矩都存在且唯一,同时可以通过其各阶矩可以实施对f(x,y)函函数的重建,重建公式为:数的重建,重建公式为:2,1,0,),(qpdxdyyxfyxmqppq12210021)()(2)!)2(),(
23、jkkjkjpqyxikjimeyxf第第6 6章章 二值图像处理二值图像处理 零阶矩为:零阶矩为:零阶矩表述的是图像的总质量或者可以说是图像的面积。零阶矩表述的是图像的总质量或者可以说是图像的面积。一阶矩:一阶矩:一阶矩则反映了图像质心的位置。对一阶矩归一化,于是可一阶矩则反映了图像质心的位置。对一阶矩归一化,于是可以得到图像的质心位置如下:以得到图像的质心位置如下:dxdyyxfm),(00 dxdyyxyfmdxdyyxxfm),(),(0110 0010mmx 0010mmy 第第6 6章章 二值图像处理二值图像处理 二阶矩:二阶矩:二阶矩则描述了图像的对于直线和对轴与轴的转动惯量,因
24、二阶矩则描述了图像的对于直线和对轴与轴的转动惯量,因此常常也把物体的二阶矩称为惯性矩。此常常也把物体的二阶矩称为惯性矩。中心矩中心矩:dxdyyxxyfm),(11 dxdyyxxm),(220 dxdyyxfym),(202 2,1,0,),()()(qpdxdyyxfyyxxqppq第第6 6章章 二值图像处理二值图像处理 低阶矩主要描述区域的面积、转动惯量、质心等等,具低阶矩主要描述区域的面积、转动惯量、质心等等,具有明显得几何意义,而高阶矩一般主要描述区域的细节特征,有明显得几何意义,而高阶矩一般主要描述区域的细节特征,比如三阶矩描述扭曲度,四阶矩描述峰值的状态等等,一般比如三阶矩描述
25、扭曲度,四阶矩描述峰值的状态等等,一般来说高阶矩受到图像离散化等的影响,高阶矩一般在应用中来说高阶矩受到图像离散化等的影响,高阶矩一般在应用中不一定十分准确。不一定十分准确。对于离散的的数字图像对于离散的的数字图像f(i,j),矩定义为:,矩定义为:对于二值图像,在目标区域对于二值图像,在目标区域R有有f(i,j)=1,背景区域,背景区域f(i,j)=0,因此:因此:10102,1,0,),(MiNjqppqqpjifjimqRjippqjim),(第第6 6章章 二值图像处理二值图像处理 同样的,考察二值图像各阶矩,我们可以知道,其零阶同样的,考察二值图像各阶矩,我们可以知道,其零阶矩矩m0
26、0为目标区域的面积,也即区域中包含的点数;假设为目标区域的面积,也即区域中包含的点数;假设为目标的质心位置,其中有为目标的质心位置,其中有:则离散图像的中心矩为:则离散图像的中心矩为:),(ji0010mmi 0001mmj Rjiqppqjjii),()()(第第6 6章章 二值图像处理二值图像处理 6.3 二值图像的常规处理二值图像的常规处理6.3.1 二值图像的布尔二值图像的布尔(Boolean)操作操作二值图像的基本的布尔操作有非二值图像的基本的布尔操作有非(NOT),或,或(OR),与,与(AND),异或,异或(XOR)和相减和相减(SUB)操作,其它的布尔操作都操作,其它的布尔操作
27、都可以由这些基本操作推论得出。假设二值图像可以由这些基本操作推论得出。假设二值图像a,b和结果二值和结果二值图像图像c这些基本布尔操作描述如下:这些基本布尔操作描述如下:NOT:c=;OR :c=a+b ;AND:c =;XOR:c=;SUB:c=aba babababababa第第6 6章章 二值图像处理二值图像处理 在具体实现的时候,这些布尔操作实际上是对具体在具体实现的时候,这些布尔操作实际上是对具体的每个像素进行布尔操作,比如的每个像素进行布尔操作,比如SUB操作可以描述为:操作可以描述为:=具体的描述可以用图具体的描述可以用图6-156-15的表格来说明:的表格来说明:),(,jij
28、ibjia图图6-15 布尔操作示意图布尔操作示意图,jic第第6 6章章 二值图像处理二值图像处理 (d)OR(a,b)(b)AND(a,b)(c)XOR(a,b)(d)SUB(a,b)图6-16 各种二值图像布尔操作示例 如果二值图像中如果二值图像中1用黑色表示,用黑色表示,0用白色表示,图用白色表示,图6-16给给出了二值图像布尔操作的结果示例。出了二值图像布尔操作的结果示例。(a)图像图像a (b)图像图像 b (c)NOT(b)第第6 6章章 二值图像处理二值图像处理 6.3.2二值图像的黑白点噪声消除二值图像的黑白点噪声消除 对图像直接分割处理,在二值化后结果也可能会产生类似黑白点
29、样的噪声,假定目标区域用黑色表示,背景为白色,这种噪声具体表现则为目标区域出现零星白色像素点或者背景区域出现少数的黑色像素点。为了提高对二值图像的特征提取准确性和后继处理的方便性,往往需要消除这些黑白点噪声。这里我们介绍一种去除黑白点噪声的简单方法。第第6 6章章 二值图像处理二值图像处理 消除孤立黑(白)像素点消除孤立黑(白)像素点 在在4邻接的情况下,若黑(白)像素点邻接的情况下,若黑(白)像素点p(i,j)的上下左右的上下左右4个个邻接像素点全部为白(黑)像素点,则将邻接像素点全部为白(黑)像素点,则将p(i,j)的值改为白的值改为白(黑);如果是(黑);如果是8邻接的情况下,则若黑(白
30、)像素点邻接的情况下,则若黑(白)像素点p(i,j)的的8个邻接像素全部为白(黑)时,把个邻接像素全部为白(黑)时,把p(i,j)的值修改为白(黑)。的值修改为白(黑)。消除黑白点噪声消除黑白点噪声 消除黑白点噪声可以通过对像素点进行邻域平均来判断是消除黑白点噪声可以通过对像素点进行邻域平均来判断是否清除该点。具体的实现方法如下,设像素点否清除该点。具体的实现方法如下,设像素点p(i,j)的的8个邻接个邻接像素点平均灰度值为像素点平均灰度值为 :其中其中-p(i,j)表示反转像素点表示反转像素点p(i,j)的取值,即的取值,即0变变1,1变变0。5.0|),(|),(5.0|),(|),(),
31、(ajipjipajipjipjipa第第6 6章章 二值图像处理二值图像处理 6.3.3 二值图像的细化二值图像的细化(Thinning)图像细化是在不改变图像像素拓扑连接性关系的前提下,图像细化是在不改变图像像素拓扑连接性关系的前提下,连续地剥落图像的外层像素,使之最终成为单像素宽的过程。连续地剥落图像的外层像素,使之最终成为单像素宽的过程。细化是一个迭代的过程,需要遵循下面的准则:细化是一个迭代的过程,需要遵循下面的准则:在去除区域边界点时,不能消除破坏区域的连通性的点,在去除区域边界点时,不能消除破坏区域的连通性的点,如图如图5-17(a)不能删除其中心像素。不能删除其中心像素。不能减
32、小区域形状的的长度,也就是说迭代的过程中不不能减小区域形状的的长度,也就是说迭代的过程中不能去掉端点能去掉端点(只有一个邻接点的点只有一个邻接点的点)。如果把边界分为上下左右四个方如果把边界分为上下左右四个方向,那么每次的迭代只能消除一个方向向,那么每次的迭代只能消除一个方向上的边界点,为了保持细化的结果尽量上的边界点,为了保持细化的结果尽量靠近骨架,也即位于中线附近,需要交靠近骨架,也即位于中线附近,需要交替的对四个方向进行细化,比如采用上、替的对四个方向进行细化,比如采用上、下、左、右、上下、左、右、上的顺序。的顺序。(a)破坏连通性破坏连通性 (b)减小形状长度减小形状长度 图图6-17
33、 细化准则细化准则 第第6 6章章 二值图像处理二值图像处理 简单边界点:对于区域简单边界点:对于区域R的一个边界点的一个边界点p,如果属于区域,如果属于区域R的邻域元素中只有一个与的邻域元素中只有一个与p邻接,则称邻接,则称p点为区域点为区域R的简单边的简单边界点。界点。细化的过程可以概述为在不破坏连通性且不减小区域形状细化的过程可以概述为在不破坏连通性且不减小区域形状长度的条件下消去长度的条件下消去R中不是端点的简单边界点,过程是按中不是端点的简单边界点,过程是按S的的上(北)、下(南)、左(西)、右(东)四个方向顺序,上(北)、下(南)、左(西)、右(东)四个方向顺序,反复进行扫描以消去
34、可删除简单边界点,直到不存在可以消反复进行扫描以消去可删除简单边界点,直到不存在可以消去的简单边界点为止去的简单边界点为止。第第6 6章章 二值图像处理二值图像处理 采取图采取图6-18所示的所示的8连通进行细化。准连通进行细化。准则可以演化为下面的四个公式,式中的则可以演化为下面的四个公式,式中的乘和加为逻辑乘与加:乘和加为逻辑乘与加:上边界点上边界点f00(f00=1且且f0,-1=0)消除:消除:下边界点下边界点f00(f00=1且且f0,1=0)消除:消除:左边界点左边界点f00(f00=1且且f-1,0=0)消除:消除:右边界点右边界点f00(f00=1且且f1,0=0)消除:消除:
35、00,11,11,01,01,10,10,11,11,10,10,11,00,1fffffffffffff00,11,11,01,01,10,10,11,11,10,10,11,00,1fffffffffffff00,11,11,01,01,10,11,01,11,11,01,00,11,0fffffffffffff00,11,11,01,01,10,11,01,11,11,01,00,11,0fffffffffffff图 6-18 8连通示意图 第第6 6章章 二值图像处理二值图像处理 下面介绍一种比较简单的细化算法,由下面介绍一种比较简单的细化算法,由E.S.Deutsch提提出。该算法需
36、要对图像进行两次扫描:出。该算法需要对图像进行两次扫描:v 通过统计点通过统计点8邻域内的像素数目依照一定的逻辑准则来对邻域内的像素数目依照一定的逻辑准则来对要消去的像素进行标记;要消去的像素进行标记;v 第二遍时采取另外一个逻辑准则处理点邻域内的像素,第二遍时采取另外一个逻辑准则处理点邻域内的像素,对要消去的像素进行标记;对要消去的像素进行标记;v 扫描完毕之后去掉作了标记的像素,重复上述的操作,扫描完毕之后去掉作了标记的像素,重复上述的操作,直到得到单像素宽的线条为止。直到得到单像素宽的线条为止。第第6 6章章 二值图像处理二值图像处理 假定用假定用N(p)表示表示p点邻域内目标像素的数目
37、:点邻域内目标像素的数目:T(p)表示表示p点邻域像素逆时针序列点邻域像素逆时针序列中中 变化的次数,那么逻辑准则和描述如下:变化的次数,那么逻辑准则和描述如下:)(),(,),(),(0,111,181,120,11fpfpfpfp10 81)(iifpN)0&(&)0&(&)1)(&(&)6)(27535311pppppppTpNT(:)0&(&)0&(&)1)(&(&)6)(27517312pppppppTpNT(:第第6 6章章 二值图像处理二值图像处理 图图6-20是针对一幅指纹图像采取上述细化方法的细化的结果。是针对一幅指纹图像采取上述细化方法的细化的结果。(a)指纹原图指纹原图
38、(b)二值化的结果二值化的结果 (c)细化图细化图图图6-20 对指纹图像细化的结果对指纹图像细化的结果第第6 6章章 二值图像处理二值图像处理 6.4 二值图像的形态学处理二值图像的形态学处理 数学形态学数学形态学(Mathematical Morphology)是一门建立在集合是一门建立在集合理论基础上的学科,它是几何形态分析和描述的有力工具。理论基础上的学科,它是几何形态分析和描述的有力工具。数学形态学可以方便地对二值图像进行噪声滤除、边界提取、数学形态学可以方便地对二值图像进行噪声滤除、边界提取、区域填充、细化与骨架提取等算法,并且还可方便地推广到区域填充、细化与骨架提取等算法,并且还
39、可方便地推广到一般的灰度图像空间。一般的灰度图像空间。第第6 6章章 二值图像处理二值图像处理 用数学形态学处理二值图像时,要设计一种搜集图像信息用数学形态学处理二值图像时,要设计一种搜集图像信息的的“探针探针”,称为结构元素,结构元素通常是一些小的简单,称为结构元素,结构元素通常是一些小的简单集合,如圆形,正方形等的集合。集合,如圆形,正方形等的集合。观察者在图像中不断移动结构元素,便可以考察图像各个观察者在图像中不断移动结构元素,便可以考察图像各个部分之间的关系,从而提取出有用的信息作结构分析和描述。部分之间的关系,从而提取出有用的信息作结构分析和描述。使用不同的结构元素和形态学算子可以获
40、得关于目标的大使用不同的结构元素和形态学算子可以获得关于目标的大小、形状、连通性和方向等信息,形态学处理的效果则取决小、形状、连通性和方向等信息,形态学处理的效果则取决于结构元素的大小、内容、逻辑运算的性质。于结构元素的大小、内容、逻辑运算的性质。第第6 6章章 二值图像处理二值图像处理 6.4.1 基本概念基本概念(d)集合A和Ac (e)A的平移Ax (f)A的映射 (g)A,B的差集A-B 图6-22 集合定义的示例(a)B包含于A (b)B击中A (c)B击不中AA第第6 6章章 二值图像处理二值图像处理 在引入上面的一些基本集合定义之后,我们给出明可夫在引入上面的一些基本集合定义之后
41、,我们给出明可夫斯基斯基(Minkowski)集合运算的定义,对于集合集合运算的定义,对于集合A和和B:Minkowski加:加:Minkowski减:减:bBbABAABbBbA 第第6 6章章 二值图像处理二值图像处理 6.4.2 二值形态学基本运算二值形态学基本运算 在实际运用数学形态学处理图像时,集合在实际运用数学形态学处理图像时,集合A和和B并不视作并不视作对等关系,一个集合作为图像,另外一个集合为结构元素。对等关系,一个集合作为图像,另外一个集合为结构元素。在下面的分析中假定集合在下面的分析中假定集合B为结构元素,集合为结构元素,集合A为待处理图像。为待处理图像。绝大多数的形态学运
42、算都定义在两个基本运算的基础即:绝大多数的形态学运算都定义在两个基本运算的基础即:腐蚀和膨胀,在此基础上定义了其它常用的形态变换。腐蚀和膨胀,在此基础上定义了其它常用的形态变换。下面对二值图像的形态学基本运算作一介绍。下面对二值图像的形态学基本运算作一介绍。第第6 6章章 二值图像处理二值图像处理 6.4.2.1 膨胀(膨胀(Dilation)与腐蚀()与腐蚀(Erosion)膨胀运算膨胀运算D(A,B)为:为:(6-47)腐蚀运算腐蚀运算E(A,B)为:为:(6-48)膨胀和腐蚀运算是明可夫斯基加和减运算的特例。式膨胀和腐蚀运算是明可夫斯基加和减运算的特例。式(6-47)描述的膨胀公式说明用
43、描述的膨胀公式说明用B来膨胀来膨胀A就是对于就是对于B中的每一个元中的每一个元素素b来位移来位移A并把结果并把结果“或或(OR)”起来;式起来;式(6-48)描述的腐蚀公描述的腐蚀公式说明用式说明用B来腐蚀来腐蚀A就是对于就是对于B中的每一个元素中的每一个元素b来反向位移来反向位移A并把结果并把结果“与与(AND)”起来。起来。bBbABABAD),(bBbAB)(ABAE),(第第6 6章章 二值图像处理二值图像处理 观察图观察图6-23(g)和和(h)标有问号的点,标有问号的点,(g)中被膨胀后原来属中被膨胀后原来属于集合于集合A的元素现在没有了,的元素现在没有了,(h)中原来不属于集合中
44、原来不属于集合A的元素现的元素现在属于腐蚀后的结果,因此膨胀的结果或者腐蚀的结果与原集在属于腐蚀后的结果,因此膨胀的结果或者腐蚀的结果与原集合没有任何包含或者被包含的关系。合没有任何包含或者被包含的关系。(a)集合集合A (b)结构元素结构元素B (c)膨胀结果膨胀结果 (d)腐蚀结果腐蚀结果 腐蚀是一种消除边界腐蚀是一种消除边界点,使边界向内部收缩点,使边界向内部收缩的过程。可以用来消除的过程。可以用来消除小且无意义的物体区域;小且无意义的物体区域;膨胀则是将与物体接触膨胀则是将与物体接触的所有背景点合并到该的所有背景点合并到该物体中,使边界向外部物体中,使边界向外部扩张的过程,可以用来扩张
45、的过程,可以用来填补物体中的空洞部分。填补物体中的空洞部分。(e)集合集合 (f)结构元素结构元素 (g)膨胀结果膨胀结果 (h)腐蚀结果腐蚀结果 图图6-23 膨胀与腐蚀示例膨胀与腐蚀示例 第第6 6章章 二值图像处理二值图像处理 结构元素在形态学算子中起的作用如同卷积核在线性滤波结构元素在形态学算子中起的作用如同卷积核在线性滤波中起的作用一样重要,不同的结构元素将产生不同的图像膨胀中起的作用一样重要,不同的结构元素将产生不同的图像膨胀和腐蚀结果,在实际应用中最常用的结构元素是如图和腐蚀结果,在实际应用中最常用的结构元素是如图6-24所示所示的的4连通集合和连通集合和8连通集合。连通集合。图
46、图6-24 常用的结构元素常用的结构元素(N4和和N8)第第6 6章章 二值图像处理二值图像处理 膨胀和腐蚀算子的特性:膨胀和腐蚀算子的特性:膨胀交换率:膨胀交换率:膨胀结合率:膨胀结合率:平移不变性:平移不变性:膨胀分配率:膨胀分配率:腐蚀分配率:腐蚀分配率:),(),(ABDABBABAD)()(CBACBAxxBABA)(xAAB(xB)AABx(xB)ACBCABACBA)()()()(AACB()(AB()C)(BAAC(BC()C第第6 6章章 二值图像处理二值图像处理 若若B为独点集为独点集x,则以,则以B为结构元素作膨胀运算则相当于为结构元素作膨胀运算则相当于平移操作,此时:平
47、移操作,此时:D(A,B)=Ax 膨胀和腐蚀是一对对偶算子,它们满足对偶率:膨胀和腐蚀是一对对偶算子,它们满足对偶率:注意:注意:腐蚀不满足交换率,即有:腐蚀不满足交换率,即有:;膨胀和腐蚀操作之间也不具有交换率,即:膨胀和腐蚀操作之间也不具有交换率,即:因此也就意味着膨胀和腐蚀是不可逆的过程,同时也说因此也就意味着膨胀和腐蚀是不可逆的过程,同时也说明膨胀和腐蚀运算是可以级联使用的。明膨胀和腐蚀运算是可以级联使用的。),(),(BAEBADcc),(),(BADBAEcc),(),(ABEBAEABBADEBBAED),(),(第第6 6章章 二值图像处理二值图像处理 图图6-25采用图采用图
48、6-23中的集合和图中的集合和图6-23(f)中的结构元素进行中的结构元素进行级联运算,结果说明:先膨胀后腐蚀的结果和先腐蚀后膨胀级联运算,结果说明:先膨胀后腐蚀的结果和先腐蚀后膨胀的结果是并不一样。一般定义对集合先腐蚀后膨胀为开启运的结果是并不一样。一般定义对集合先腐蚀后膨胀为开启运算,对集合先膨胀后腐蚀为闭合运算,下面主要介绍这两个算,对集合先膨胀后腐蚀为闭合运算,下面主要介绍这两个运算。运算。(a)膨胀的结果膨胀的结果 (b)膨胀后再腐蚀膨胀后再腐蚀 (c)腐蚀的结果腐蚀的结果 (d)腐蚀后再膨胀腐蚀后再膨胀图图6-25 膨胀和腐蚀的不可逆性膨胀和腐蚀的不可逆性第第6 6章章 二值图像处
49、理二值图像处理 6.4.2.2 开启(开启(Open)与闭合()与闭合(Close)假定集合假定集合A,B,A1和和A2,其中,其中A1是是A2的子集。的子集。开启运算:集合开启运算:集合B对集合对集合A先腐蚀后膨胀;先腐蚀后膨胀;闭合运算:集合闭合运算:集合B对集合对集合A先膨胀后腐蚀。先膨胀后腐蚀。),(),(BBAEDBABAO),(),(BBADEBABAC第第6 6章章 二值图像处理二值图像处理 原来集合原来集合A是连通的,由是连通的,由于两个主要区域的连接部分于两个主要区域的连接部分宽度小于小球的直径,因此宽度小于小球的直径,因此腐蚀后形成了两个部分腐蚀后形成了两个部分;集合集合A
50、经过开启运算后集经过开启运算后集合中向外的突出角未变,但合中向外的突出角未变,但是所有向内的突出角被圆滑是所有向内的突出角被圆滑了;了;经过闭合运算后集合中向经过闭合运算后集合中向内的突出角未变,但是所有内的突出角未变,但是所有向外的突出角被圆滑了。向外的突出角被圆滑了。(a)集合A (b)结构元素B(e)被膨胀的结果 (f)闭合运算的结果 图6-26 开运算和闭运算示例 (c)被腐蚀的结果 (d)开启运算的结果第第6 6章章 二值图像处理二值图像处理 观察图观察图6-26的结果发现:的结果发现:开运算有消除细小物体,在纤细点出分离物体,平滑物体开运算有消除细小物体,在纤细点出分离物体,平滑物
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。