《《数学形态学原》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数学形态学原》PPT课件.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第八章 二值图像处理 8.1 8.1 二值图形态学处理二值图形态学处理8.2 8.2 二值图的几何特征二值图的几何特征8.3 8.3 二值图的形状特征二值图的形状特征8.1 8.1 二值图形态学处理二值图形态学处理8.1.1 8.1.1 数学形态学基础数学形态学基础 数学形态学的数学基础和所用语言是数学形态学的数学基础和所用语言是集合论集合论。数学形态。数学形态学的应用可以简化图像数据,保持它们基本的形状特性,学的应用可以简化图像数据,保持它们基本的形状特性,并除去不相干的结构。并除去不相干的结构。一幅图像可称为一个一幅图像可称为一个集合集合。对于二值图像,对于二值图像,景物取值为景物取值为1
2、 1,用阴影表示,背景取值,用阴影表示,背景取值为为0 0,用白色表示。,用白色表示。值为值为1 1的点的集合的点的集合A A与图像是一一对应的。与图像是一一对应的。对于图像对于图像A A,点,点a a在在A A区域内,则区域内,则a a是是A A的元素,记为的元素,记为a aAA。1.1.元素和集合元素和集合2.2.交集、交集、并集和补集并集和补集 3.3.目标和结构元素目标和结构元素 被被处处理理的的图图像像称称为为目目标标图图像像。为为了了确确定定目目标标图图像像的的结结构构,必必须须逐逐个个考考察察与与检检验验图图像像各各部部分分之之间间的的关关系系,最最后后得得到到一一个个各部分之间
3、关系的集合。各部分之间关系的集合。在考察目标图像各部分之间的关系时,需要设计一种在考察目标图像各部分之间的关系时,需要设计一种 “结结构构元元素素”。在在图图像像中中不不断断移移动动结结构构元元素素,就就可可以以考考察察图图像像之间各部分的关系。之间各部分的关系。8.1.2 8.1.2 二值图像的腐蚀与膨胀二值图像的腐蚀与膨胀 二值形态学中的运算对象是集合。二值形态学中两个最二值形态学中的运算对象是集合。二值形态学中两个最基本的运算基本的运算腐蚀与膨胀。腐蚀与膨胀。(3)(3)S S+x xX X与与S S+x xX XC C均不为空均不为空 S S+x x与与X X部分相关部分相关1 1 腐
4、蚀腐蚀 设目标图像设目标图像X X和结构元素和结构元素S S,S S在在X X上移动。在每一个当上移动。在每一个当前位置前位置x,x,,S+x S+x只有三种可能的状态:只有三种可能的状态:(1)(1)S S+x x X X S S+x x与与X X相关最大相关最大(2)(2)S S+x x X XC C S+xS+x与与X X不相关不相关 X X用用S S腐蚀的结果是腐蚀的结果是所有使所有使S S平移平移x x后仍在后仍在X X中的中的x x的集合的集合。用集合的方式定义用集合的方式定义 腐蚀在数学形态学运算中的作用是腐蚀在数学形态学运算中的作用是消除物体边界点消除物体边界点。腐蚀可以把腐蚀
5、可以把小于结构元素的物体小于结构元素的物体(毛刺、小凸起毛刺、小凸起)去除去除;如果两个物体之间有细小的连通,结构元素足够如果两个物体之间有细小的连通,结构元素足够 大时,大时,通过腐蚀运算可以将两个物体分开通过腐蚀运算可以将两个物体分开。1 1 腐蚀腐蚀腐蚀运算示例腐蚀运算示例 n=Val(Text1)For j=n 2 To h-1-n 2 For i=n 2 To w-1-n 2 m=0 For y=-n 2 To n 2 For x=-n 2 To n 2 If pic(i+x,j+y,0)=255 Then m=1 Next x Next y If m=0 Then Picture2
6、.PSet(i,j)Else Picture2.PSet(i,j),RGB(255,255,255)End If Next i Next j1 1 腐蚀腐蚀程序演示程序演示2 膨胀膨胀 将将X X中的每一个点中的每一个点x x扩大为扩大为S+xS+x,它的定义为,它的定义为XS=x|S+xX n=Val(Text1)For j=n 2 To h-1-n 2 For i=n 2 To w-1-n 2 m=0 For y=-n 2 To n 2 For x=-n 2 To n 2 If pic(i+x,j+y,0)=0 Then m=1 Next x Next y If m=0 Then Pict
7、ure2.PSet(i,j),RGB(pic(i,j,0),pic(i,j,0),pic(i,j,0)Else Picture2.PSet(i,j),RGB(0,0,0)End If Next i Next j程序演示程序演示 1.1.基本概念基本概念 膨胀和腐蚀不互为逆运算,可以级连结合使用,构造出膨胀和腐蚀不互为逆运算,可以级连结合使用,构造出形态学运算族,它由膨胀和腐蚀两个运算的复合与集合操作形态学运算族,它由膨胀和腐蚀两个运算的复合与集合操作组合成的所有运算构成。组合成的所有运算构成。例如,可先对图像进行腐蚀然后膨胀其结果,称为例如,可先对图像进行腐蚀然后膨胀其结果,称为开运算开运算,
8、或先对图像进行膨胀然后腐蚀其结果或先对图像进行膨胀然后腐蚀其结果,称为称为闭运算闭运算。开运算和闭运算是形态学运算族中两个最为重要的组合运算。开运算和闭运算是形态学运算族中两个最为重要的组合运算。8.1.3 8.1.3 开、闭运算开、闭运算 对图像对图像X X及结构元素及结构元素S S,用符号,用符号X XS S表示表示S S对图像对图像X X作作开运算,用符号开运算,用符号X XS S表示表示S S对图像对图像X X作闭运算,定义为作闭运算,定义为 XS=(XS)S XS=(XS)S XS:对腐蚀图像对腐蚀图像X XS S用膨胀来进行恢复用膨胀来进行恢复 XS:对膨胀图像对膨胀图像X XS
9、S用腐蚀来进行恢复用腐蚀来进行恢复这种恢复不是信息无损的。这种恢复不是信息无损的。程序演示程序演示开运算去掉了凸角(a)结构元素S1和S2;(b)XS1;(c)XS2 闭运算填充了凹角(a)结构元素S1和S2;(b)XS1;(c)XS2 8.1.4 8.1.4 形态学噪声滤波形态学噪声滤波 利用开、闭运算去除图像的噪声、恢复图像,也可交利用开、闭运算去除图像的噪声、恢复图像,也可交替使用开、闭运算以达到双边滤波目的。一般,可以将开、替使用开、闭运算以达到双边滤波目的。一般,可以将开、闭运算结合起来构成形态学噪声滤波器,例如闭运算结合起来构成形态学噪声滤波器,例如(X XS S)S S或或(X
10、XS S)S S等。等。形态学滤波示意图 在文字识别、地质构造识别、工业零件形状识别或图像在文字识别、地质构造识别、工业零件形状识别或图像理解中,先对被处理的图像进行细化有助于突出形状特点和理解中,先对被处理的图像进行细化有助于突出形状特点和减少冗余信息量。减少冗余信息量。8.1.5 8.1.5 细化细化 将图像沿其中心轴线将其细化成一个像素宽的线条。将图像沿其中心轴线将其细化成一个像素宽的线条。步骤:步骤:1.1.循环读取二值图像所有像素循环读取二值图像所有像素F(i,j);F(i,j);2.2.定义函数:定义函数:(1)A(k)=1(1)A(k)=1(图像)图像)A(k)=0(A(k)=0
11、(背景)(背景)(k=0k=08)8),从右边像素开始,按逆时针方向旋转;从右边像素开始,按逆时针方向旋转;(2)C(k)=1(A(k)=1)C(k)=0(A(k)1)(2)C(k)=1(A(k)=1)C(k)=0(A(k)1);(3)F=(3)F=(1-c(i)-(1-c(i)(1-c(i+1)(1-c(i+2)(1-c(i)-(1-c(i)(1-c(i+1)(1-c(i+2)(i=1,3,5,7)(i=1,3,5,7)像素的连接数像素的连接数A(4)A(3)A(2)A(5)A(0)A(1)A(6)A(7)A(8)0 0 0 0 0 0 0 0 1 0 1 0 0 0 F=0 (孤立点或内部
12、点孤立点或内部点)0 0 0 1 0 0 0 F=1 (边界点边界点)0 1 0 1 1 0 1 F=2 (连接点连接点)0 0 1 0 0 1 0 F=3 (分支点分支点)0 0 1 0 1 0 1 F=4 (交叉交叉点点)3.3.下列四个条件都满足时,中心像素下列四个条件都满足时,中心像素A(0)A(0)置置-1-1:(1 1)A(0)=1 A(0)=1(中心像素为图形)(中心像素为图形)(2 2)|A(i)|=3|A(i)|=2|A(i)|=2,i=1,i=18 8(中心像素不是端点)(中心像素不是端点)(4 4)F=F=1 1 (保留连接性保留连接性)4.4.遍历完所有像素,将遍历完所
13、有像素,将1 1置为置为0 0;5.5.循环读取二值图像所有像素,重复循环读取二值图像所有像素,重复2 24 4,直到没有,直到没有-1-1为为 止。止。程序演示程序演示物体位置由质心物体位置由质心O O表示表示 8.2 8.2 图像的几何特征图像的几何特征 8.2.1 8.2.1 位置位置质心是物体的面积的中心点质心是物体的面积的中心点 若二值图像中物体对应的像素位置坐标为若二值图像中物体对应的像素位置坐标为(x xi i,y yj j)(i i=0,1,=0,1,n n1 1;j j=0,1,=0,1,m m1)1),则质心位置坐标:,则质心位置坐标:n=0:x=0:y=0For j=0
14、To h-1 For i=0 To w-1 If(pic(i,j,0)=0 Then x=x+i:y=y+j n=n+1 End If Next iNext jx=x/n:y=y/n程序演示程序演示 周周长长是是围围绕绕所所有有像像素素的的外外边边界界的的长长度度。常常用用简简便便方方法法如如下:下:(1)(1)把把图图像像中中的的像像素素看看作作单单位位面面积积小小方方块块,图图像像中中的的区区域域和和背背景景均均由由小小方方块块组组成成。区区域域的的周周长长为为区区域域和和背背景景缝缝隙隙的的长度和,此时边界用隙码表示。求周长就是计算隙码的长度。长度和,此时边界用隙码表示。求周长就是计算隙
15、码的长度。周长为周长为24248.2.2 8.2.2 周长周长 (2)(2)把像素看作一个个点时,周长用链码表示,求周长把像素看作一个个点时,周长用链码表示,求周长也即计算链码长度。当链码值为奇数时,其长度记作也即计算链码长度。当链码值为奇数时,其长度记作 ;当链码值为偶数时,其长度记作当链码值为偶数时,其长度记作1 1。即周长。即周长p p表示为表示为 周长为周长为 (3)(3)周长用边界所占面积表示,也即边界点数之和,周长用边界所占面积表示,也即边界点数之和,每个点占面积为每个点占面积为1 1的一个小方块。的一个小方块。周长为周长为1515计算周长方法计算周长方法轮廓提取轮廓提取 1 1、
16、若输入像素为图像(、若输入像素为图像(0 0),并且周围),并且周围8 8(或(或4 4)个像素全为)个像素全为图像值(图像值(0 0),则输出为背景值(),则输出为背景值(255255)。)。2 2、其它情况,像素不变。、其它情况,像素不变。轮廓提取轮廓提取 For j=1 To h-2 For i=1 To w-2 If(pic(i,j,0)=0 And pic(i,j-1,0)=0 And pic(i+1,j,0)=0 And pic(i,j+1,0)=0 And pic(i-1,j,0)=0)Then pic1(i,j,0)=255 Else pic1(i,j,0)=pic(i,j,0
17、)End If Picture2.PSet(i,j),RGB(pic1(i,j,0),pic1(i,j,0),pic1(i,j,0)Next i Next jm=0 For j=1 To h-2 For i=1 To w-2 If(pic1(i,j,0)=0)Then m=m+1 End If Next i Next j轮廓提取轮廓提取 程序演示程序演示 面积只与该物体的边界有关,而与其内部灰度级的变化面积只与该物体的边界有关,而与其内部灰度级的变化无关。一个形状简单的物体可用相对较短的周长来包围它所无关。一个形状简单的物体可用相对较短的周长来包围它所占有的面积占有的面积。8.2.3 8.2.
18、3 面积面积 s=0 For j=0 To h-1 For i=0 To w-1 If(pic(i,j,0)=0 Then s=s+1 Next iNext j程序演示程序演示1.1.像素计数面积像素计数面积 最简单的面积计算方法是统计边界内部最简单的面积计算方法是统计边界内部(也包括边界也包括边界上上)的像素的数目。计算公式的像素的数目。计算公式 2.2.由边界行程码或链码计算面积由边界行程码或链码计算面积 由各种封闭边界区域的描述来计算面积可分由各种封闭边界区域的描述来计算面积可分:(1)(1)已知区域的行程编码,把值为已知区域的行程编码,把值为1 1的行程长度相加即为的行程长度相加即为区
19、域面积区域面积;(2)(2)若给定封闭边界的某种表示,则相应连通区域的面积若给定封闭边界的某种表示,则相应连通区域的面积应为区域外边界包围的面积与内边界包围的面积之差。应为区域外边界包围的面积与内边界包围的面积之差。3.3.用边界坐标计算面积用边界坐标计算面积一个封闭曲线包围的面积由其轮廓积分给定:一个封闭曲线包围的面积由其轮廓积分给定:将其离散化将其离散化式中,式中,N Nb b为边界点的数目。为边界点的数目。当物体的边界已知时,可用其外接矩形的尺寸来刻画当物体的边界已知时,可用其外接矩形的尺寸来刻画它的基本形状。求物体它的基本形状。求物体在坐标系方向上在坐标系方向上的外接矩形,只的外接矩形
20、,只需计算物体边界点的最大和最小坐标值,就可得到物体的需计算物体边界点的最大和最小坐标值,就可得到物体的水平和垂直跨度。对水平和垂直跨度。对任意朝向的物体任意朝向的物体,确定物体的主轴,确定物体的主轴,然后计算主轴方向上的长度和与之垂直方向上的宽度,然后计算主轴方向上的长度和与之垂直方向上的宽度,这样的外接矩形是物体的这样的外接矩形是物体的最小外接矩形最小外接矩形(MERMER)。)。8.2.4 8.2.4 长轴和短轴长轴和短轴MERMER法求物体的长轴和短轴法求物体的长轴和短轴(a a)坐标系方向上的外接矩形;(坐标系方向上的外接矩形;(b b)旋转物体使外接矩形最小旋转物体使外接矩形最小
21、计算旋转一个角度后的图像各像素值计算旋转一个角度后的图像各像素值areamin=h*wFor c1=0 To 90 Step 3 maxx=0:maxy=0:minx=500:miny=500:c=c1*3.14/180 For j=0 To h-1 For i=0 To w-1 X1=i*Cos(c)+j*Sin(c)-(Cos(c)-1)*x-Sin(c)*y Y1=-i*Sin(c)+j*Cos(c)+Sin(c)*x-(Cos(c)-1)*y Picture2.PSet(X1,Y1),RGB(pic(i,j,0),pic(i,j,0),pic(i,j,0)Next i Next j计算
22、旋转一个角度后的图像面积计算旋转一个角度后的图像面积For j=0 To h-1 For i=0 To w-1 If(Picture2.Point(i,j)=RGB(0,0,0)Then If(i maxx)Then maxx=i If(j maxy)Then maxy=j If(i minx)Then minx=i If(j miny)Then miny=j End If Next i Next j area=(maxx-minx)*(maxy-miny)确定该旋转角度后图像是否面积最小确定该旋转角度后图像是否面积最小 If(area hig Then Text1.Text=wid:Text
23、2.Text=hig:Text3.Text=cminElse Text2.Text=hig:Text1.Text=wid:Text3.Text=90+cminEnd If 程序演示程序演示8.3 8.3 形形 状状 特特 征征 8.3.1 8.3.1 矩形度矩形度 矩形度反映物体对其外接矩形的充满程度,用物体的矩形度反映物体对其外接矩形的充满程度,用物体的面积与其最小外接矩形的面积之比来描述:面积与其最小外接矩形的面积之比来描述:物体的面积物体的面积最小外接矩形的面积最小外接矩形的面积另外一个与形状有关的特征是长宽比另外一个与形状有关的特征是长宽比r r:利用利用r r可以将细长的物体与圆形或方形的物体区分开来。可以将细长的物体与圆形或方形的物体区分开来。8.3.2 8.3.2 长宽比长宽比分别为最小外接矩形的宽度和长度。分别为最小外接矩形的宽度和长度。8.3.3 8.3.3 圆形度圆形度 (致密度致密度C C)周长周长(P P)的平方与面积的平方与面积(A A)的比的比:当区域为圆时当区域为圆时,C C=1.0=1.0,而当区域为其它形状时,而当区域为其它形状时,C C1.01.0。
限制150内