完整版图像处理与分析课件.ppt
3.,图像处理与分析,分割,预处理,问题,图像获取,低级处理,表示与描述,中级处理,知识库,识别,与,解释,高级处理,结果,1,3.1,图像分割,特征,图像分割是指将一幅图像分解为若干互不交叠的、有意义,的、具有相同性质的区域。,?,分割出来的各区域对某种性质例如灰度,纹理而,言具有相似性,区域内部是连通的且没有过多小,孔;,?,区域边界是明确的;,?,相邻区域对分割所依据的性质有明显的差异。,不同的分割算法总是在不同的约束之间寻找一种合理的平衡,.,2,3.1,图像分割,特征,图像分割算法一般是基于亮度值的两个基本特性之一,:,不连,续性,和,相似性,.,?,第,1,类性质的应用途径是基于亮度的不连续变化分割图像,比如,图像的边缘,.,?,第,2,类的主要应用途径是依据事先制定的准则将图像分割为相,似的区域,.,门限,(,阈值,),处理、区域生长、区域分离和聚合都是,这类方法的实例。,3,3.1,图像分割,本章要点,?,3.1.1,间隔检测,?,3.1.2,边缘连接和边界检测,?,3.1.3,门限处理(阈值分割),?,3.1.4,区域分割,4,3.1.1.,间隔检测,?,1.,点检测,?,2.,线检测,?,3.,边缘检测,5,间隔检测的通用方法:,使用一个模板对整幅图像进行检测。,R,?,w,1,z,1,?,w,2,z,2,?,L,?,w,9,z,9,9,?,?,w,i,z,i,i,?,1,1,个,3,3,的模板,6,1.,点检测,孤立点的检测,使用右图模板,若,|,R,|,?,T,则在模板中心的位置已经检测,到一个孤立点,.,T,为非负门限,图,点检测模板,如果一个孤立的点与它周围的点很不同,则很容易被这类模板检测到,.,7,2.,线检测,水平,垂直,图,线检测模板,第,第,1,2,个模板对水平方向,个模板对,+45,度方向线有最佳响应,(,一个像素宽度,),的线条有很强的响应,.,.,8,2.,线检测,令,R,1,R,2,R,3,R,4,分别表示图,10.3,中模板的响应,如果,|,R,i,|,R,j,|,则此点被认为与在模板,i,方向上的线更相关,.,若要检测特定方向上的线,模板的输出门限,.,应使用与这一方向有关的模板,并设置该,9,3.,边缘检测,当人看一个有边缘的物体时,首先感觉到的便是边缘,.,在边缘处,灰度和结构等信息的产生突变,.,边缘是一个区域的结束,也是,另一个区域的开始,利用该特征可以分割图像,.,由于图像数据是二维的,而实际物体是三维的,从三维到二维的投影必然,会造成信息的丢失,再加上成像过程中光照的不均和噪声等因素的影响,使,得有边缘的地方不一定能被检测出来,而检测出来的边缘也不一定代表实,际边缘,.,图像的边缘有方向和幅度两个属性,沿边缘方向像素变化平缓,垂直于边,缘方向像素变化剧烈,.,边缘上的这种变化可以用微分算子检测出来,通常用,一阶或二阶导数来检测边缘,.,10,3.,边缘检测,理想数字边缘模型,斜坡数字边缘模型,水平线通过图像的灰度剖面图,水平线通过图像的灰度剖面图,斜坡部分与边缘的模糊程度成正比,.,11,3.,边缘检测,灰度剖面图,一阶导数可以用于检测图像中的一个点是否,一阶导数,在斜坡上,二阶导数的符号可以用于判断一个边缘像素,.,是在边缘亮的一边还是暗的一边,(1),.,(2),对图像中的每条边缘二阶导数生成两个值,二阶导数,直线将在边缘中点附近穿过零点,一条连接二阶导数正极值和负极值的虚构,于确定粗边线的中心,.,.,据此可以用,12,3.,边缘检测,基于一阶导数的边缘检测算子包括,Prewitt,像素点做卷积和运算,算子等,.,通过,2,然后选取合适的阈值以提取边缘,2,或者,3,3,的模板作为核与图像中的每个,Roberts,算子、,Sobel,算子、,.,拉普拉斯边缘检测算子是基于二阶导数的边缘检测算子,感,边缘检测算子,一种改进方式是先对图像进行平滑处理,对噪声敏,.,然后再应用二阶导数的,图像边缘对应一阶导数的极大值点和二阶导数的过零点。,13,3.,边缘检测,梯度算子是,一阶导数算子,?,?,f,?,?,f,(,x,y,),?,?,?,G,x,?,?,?,x,?,?,G,?,?,?,y,?,?,?,f,?,?,?,?,?,y,?,?,?,幅值,mag,(,f,),?,(,G,2,2,1,x,?,G,y,),2,?,方向角,?,(,x,y,),?,arctan(,G,y,G,),x,14,1),梯度算子,近似计算,?,M,1,?,|,G,x,|,?,|,G,y,|,?,M,2,?,G,2,2,x,?,G,y,?,M,?,?,Max,(,G,x,G,y,),?,数字图像处理中用差分代替微分,15,1),梯度算子,Roberts,算子,Z,1,Z,2,Z,3,Z,4,Z,5,Z,6,-1,0,0,-1,Z,7,Z,8,Z,9,0,1,1,0,G,x,?,Z,9,?,Z,5,G,y,?,Z,8,?,Z,6,16,1),梯度算子,Z,1,Z,2,Z,3,-1,-1,-1,0,0,0,-1,Prewitt,算子,0,1,Z,4,Z,5,Z,6,Z,7,Z,8,Z,9,-1,-1,0,0,1,1,1,1,1,G,x,?,(,Z,7,?,Z,8,?,Z,9,),?,(,Z,1,?,Z,2,?,Z,3,),G,y,?,(,Z,3,?,Z,6,?,Z,9,),?,(,Z,1,?,Z,4,?,Z,7,),17,1),梯度算子,Z,1,Z,2,Z,3,-1,-2,-1,0,0,0,1,2,1,Sobel,算子,-1,-2,-1,0,0,0,1,2,1,Z,4,Z,5,Z,6,Z,7,Z,8,Z,9,G,x,?,(,Z,7,?,2,Z,8,?,Z,9,),?,(,Z,1,?,2,Z,2,?,Z,3,),G,y,?,(,Z,3,?,2,Z,6,?,Z,9,),?,(,Z,1,?,2,Z,4,?,Z,7,),18,1),梯度算子,0,-1,1,0,1,1,0,Prewitt,-1,-1,0,-1,0,0,1,1,1,0,2,2,19,-1,-1,0,-1,1,0,-2,1,-2,-1,-1,0,Sobel,用于检测对角边缘,的,Prewitt,算子和,Sobel,算子,0,1,-2,-1,0,1),梯度算子,原图,Roberts,算子,Sobel,算子,Prewitt,算子,20,2),拉普拉斯算子,二阶导数算子,?,f,(,x,y,),?,f,(,x,y,),?,f,(,x,y,),?,?,2,2,?,x,?,y,2,2,2,微分,差分,?,f,(,x,y,),?,f,(,x,?,1,y,),?,f,(,x,?,1,y,),?,f,(,x,y,?,1),?,f,(,x,y,?,1),?,4,f,(,x,y,),2,21,2),拉普拉斯算子,0,1,0,1,1,1,1,-4,1,1,-8,1,0,1,0,1,1,1,图,两种常用的拉普拉斯算子模板,22,2),拉普拉斯算子,拉普拉斯算子一般不以其原始形式用于边缘检测,这是因为:,(1),作为一个二阶导数,拉普拉斯算子对噪声具有无法接受的敏感性,;,(2),拉普拉斯算子的幅值产生双边缘,这是复杂的分割不希望有的结果,;,(3),拉普拉斯算子不能检测边缘的方向,.,拉普拉斯算子在分割中所起的作用包括,:,(1),利用它的零交叉的性质进行边缘定位,;,(2),确定一个像素是在边缘暗的一边还是亮的一边,.,23,噪声对边缘检,测的影响,?,?,0.0,?,?,0.1,?,?,1.0,?,?,10,24,3),高斯拉普拉斯算子,考虑函数,:,h,(,r,),?,?,e,?,r,2,2,?,2,模糊图像,r,?,x,?,y,?,为标准差,2,2,2,h,的拉普拉斯算子,(h,关于,r,的二阶导数,),:,?,2,?,?,r,?,?,2,2,?,?,h,(,r,),?,?,?,e,?,4,?,?,?,2,2,r,2,高斯型的拉普拉斯算子,(LoG),用该函数对图像进行平滑滤波,然后再应用拉普拉斯算子,.,25,3),高斯,-,拉普拉斯算子,高斯型拉普拉斯算子,三维曲线,图像,横截面,5,5,的模板,26,3),高斯,-,拉普拉斯算子,27,4),算子比较,?,Roberts,算子,:,Roberts,算子利用局部差分算子寻找边缘,边,缘定位精度较高,但容易丢失一部分边缘,同时由于图像没经过,平滑处理,因此不具备抑制噪声的能力。该算子对具有陡峭边缘,且含噪声少的图像效果较好。,?,Sobel,算子,和,Prewitt,算子,:都是对图像先做加权平滑处理,,然后再做微分运算,所不同的是平滑部分的权值有些差异,因此,对噪声具有一定的抑制能力,但不能完全排除检测结果中出现的,虚假边缘。虽然这两个算子边缘定位效果不错,但检测出的边缘,容易出现多像素宽度。,28,4),算子比较,?,Laplacian,算子,:是不依赖于边缘方向的二阶微分算子算子,,对图像中的阶跃型边缘点定位准确,该算子对噪声非常敏感,它使,噪声成分得到加强,这两个特性使得该算子容易丢失一部分边缘的,方向信息,造成一些不连续的检测边缘,同时抗噪声能力比较差。,29,4),算子比较,?,LOG,算子,:该算子首先用高斯函数对图像作平滑滤波处理,然后,才使用,Laplacian,算子检测边缘,因此克服了,Laplacian,算子抗噪声能力比,较差的缺点,但是在抑制噪声的同时也可能将原有的比较尖锐的边缘也,平滑掉了,造成这些尖锐边缘无法检被测到。,应用,LOG,算子,高斯函数中方差参数的选择很关键,对图像边缘检测,效果有很大的影响。高斯滤波器为低通滤波器,越大,通频带越窄,对,较高频率的噪声的抑制作用越大,避免了虚假边缘的检出,同时信号的,边缘也被平滑了,造成某些边缘点的丢失。反之,越小,通频带越宽,,可以检测到的图像更高频率的细节,但对噪声的抑制能力相对下降,容,易出现虚假边缘。因此,应用,LOG,算子,为取得更佳的效果,对于不同,图像应选择不同参数。,30,3.1.2.,边缘连接和边界检测,利用前面的方法检测出边缘点,但由于噪声、光照不均等因素的影响,,获得边缘点有可能是不连续的,必须使用连接过程将边缘像素组合,成有意义的边缘信息,以备后续处理。,31,1.,局部处理,分析图像中每个点(,x,y,)的一个小领域,根据梯度确,定边缘像素的相似性。,如果满足:,|,?,f,(,x,y,),?,?,f,(,x,0,y,0,),|,?,E,|,?,(,x,y,),?,?,(,x,0,y,0,),|,?,A,如果大小和方向准则得到满足,则在前面定义的,(x,y),邻域中的点就与,位于,(x,y),的像素连接起来,.,32,2.,基本步骤,从图像中一个边缘点出发,然后根据某种判别准则搜索下,一个边缘点以此跟踪出目标边界。,?,确定边界的起始搜索点,起始点的选择很关键,对某些图,像,选择不同的起始点会导致不同的结果。,?,确定合适边界判别准则和搜索准则,判别准则用于判断一,个点是不是边界点,搜索准则则指导如何搜索下一个边缘点。,?,确定搜索的终止条件。,33,灰度图像边界跟踪,34,Hough,变换,通过霍夫变换进行整体处理,在图像上给出,n,个点,我们希望找到这些点中位于直线上的点组成的,子集,.,一种可行的方法就是先寻找所有由每对点确定的直线,然后找,到所有接近特定直线的点组成的子集,.,Hough,变换可以用于将边缘像素连接起来得到边界曲线,?,优点在于受噪声和曲线间断的影响较小,?,在已知曲线形状的条件下,,Hough,变换实际上是利用分散,的边缘点进行曲线逼近,它也可看成是一种聚类分析技术,.,35,Hough,变换,在图像空间中,经过,(,x,y,),的直线,:,y,=,ax,+,b a-,斜率,b-,截距,可变换为,:,b,=-,ax,+,y,表示参数空间中的一条直线,.,参数空间中交点,(,a,b,),即为图像空间中过点,(,x,i,y,i,),和,(,x,j,y,j,),的直线的斜,率和截距,.,36,Hough,变换,Hough,变换的基本步骤,:,1),在参数空间建立一个二维数组,A,数组的第一维的范围为图像空间,中直线斜率的可能范围,(,a,min,a,max,),第二维为图像空间中直线截距的可,能范围,(,b,min,b,max,),且开始时把数组初始化为零,.,2),然后对图像空间中的点用,Hough,变换计算出所有的,a,b,值,每计算出,一对,a,b,值,就对数组中对应的元素,A(a,b),加,1,.,计算结束后,A(a,b),的值,就是图像空间中落在以,a,为斜率,b,为截距的直线上点的数目,.,37,Hough,变换,数组,A,的大小对计算量和计,算精度的影响很大,当图像空,间中有直线为竖直线时,斜率,a,为无穷大,此时,参数空间可,采用极坐标,.,图,Hough,变换的计算过程,38,Hough,变换,直线检测,原始图像,二值化图像,细化图像,Hough,变换检测出的直线,能将断了的线段连接起来,并具有较强的抑制噪声的能力,能够提取出在噪,声背景中的直线,.,Hough,变换不仅可以检测直线,它可以检测所有能够给出解析式的曲线,.,39,通过图论技术进行全局处理,基于图表达边缘线段的连接,并搜索与重要边缘相对应的低开销路径,的图,.,这种表示提供了一种在有噪声环境下效能很好的抗干扰途径,.,40,3.1.3.,门限处理,(,阈值分割,),由于图像门限处理的直观性和易于实现的性质,分割应用中处于中心地位,.,使它在图像,41,基本原理,(a),单一门限,(b),多门限进行分割的灰度级直方图,上图,(a),为一幅图像的灰度级直方图,其由亮的对象和暗的背景组成,.,对象和背景的灰度级形成两个不同的模式,.,选择一个门限值,T,可以,将这些模式分开,.,(b),包含,3,个模式,.,42,基本原理,原始图像,f,(,x,y,),灰度阈值,T,阈值运算得二值图像,g,(,x,y,),对象点,?,1,如果,f,x,y,?,T,g,x,y,?,?,?,0,如果,f,x,y,?,T,背景点,?,阈值选择直接影响分割效果,通常可以通过对灰度直方图,的分析来确定它的值。,43,1.,直方图阈值选择,利用灰度直方图求双峰或多峰,选择两峰之间的谷底作为阈值,44,2.,人工阈值,人工选择法是通过人眼的观察,应用人对图像的知识,在分析图像,直方图的基础上,人工选出合适的阈值。也可以在人工选出阈值后,,根据分割效果,不断的交互操作,从而选择出最佳的阈值。,45,2.,人工阈值,原始图像,T,=155,的二值化图像,T,=210,的二值化图像,图像直方图,46,3.,自动阈值,迭代法,在无人介入的情况下自动选取阈值是大部分应用的基本要求,自动阈值,法通常使用灰度直方图来分析图像中灰度值的分布,结合特定的应用领,域知识来选取合适的阈值,.,基本思想,:开始时选择一个阈值作为初始估计值,然后按某种策略不,断地改进这一估计值,直到满足给定的准则为止。在迭代过程中,关,键之处在于选择什么样的阈值改进策略,好的阈值的改进策略应该具,备两个特征,一是能够快速收敛,二是在每一个迭代过程中,新产生,阈值优于上一次的阈值。,47,3.,自动阈值,迭代式阈值选择的基本步骤如下,:,(1),选择图像灰度的中值作为初始阈值,T,i,=,T,0,。,迭代法,(2),利用阈值,T,i,把图像分割成两部分区域,,R,1,和,R,2,,并计算其灰度均值,?,1,?,?,in,i,?,0,T,i,T,i,i,?,in,?,2,?,i,?,T,i,L,?,1,i,?,T,i,L,?,1,i,?,n,i,?,0,i,?,n,i,适用于背景和,对象在图像中,占据的面积相,近的情况,.,(3),计算新的阈值,T,i+,1,1,T,i,?,1,?,(,?,1,?,?,2,),2,48,(4),重复步骤,2,、,3,,直到,T,i+,1,和,T,i,的值差别小于某个给定值,3.,自动阈值,迭代法,原始图像,迭代阈值二值化图象,图,迭代式阈值二值化图像,49,3.,自动阈值,迭代法,(a),原图,(b),图像的直方图,(c),通过用迭代估计的门,限对图像进行分割,的结果,50,4.,自动阈值,分水岭算法,?,分水岭算法,(watershed),是一种借鉴了形态学理论的分割方法,,它将一幅图象看成为一个拓扑地形图,其中灰度值被认为是地形高度,值。高灰度值对应着山峰,低灰度值处对应着山谷。将水从任一处流,下,它会朝地势底的地方流动,直到某一局部低洼处才停下来,这个,低洼处被称为,吸水盆地,,最终所有的水会分聚在不同的吸水盆地,吸水,盆地之间的山脊被称为,分水岭,,水从分水岭流下时,它朝不同的吸水,盆地流去的可能性是相等的。,?,将这种想法应用于图像分割,就是要在灰度图像中找出不同的吸,水盆地和分水岭,由这些不同的吸引盆地和分水岭组成的区域即为我,们要分割的目标。,51,4.,自动阈值,分水岭算法,(a),原始图像,(b),图像对应的拓扑地形图,图,图像对应的拓扑表面图,52,4.,自动阈值,分水岭算法,分水岭阈值选择算法可以看成是一种自适应的多阈值分割算法,分水岭对应于原始图像中的边缘,图,分水岭形成示意图,53,4.,自动阈值,分水岭算法,分水岭算法是以梯度图的局部极小点作为吸水盆地的标记点,由于梯度图中可能有较多的局部极小点,因此可能会导致过分割,.,MATLAB,函数,L=watershed(f),原始图像,分水岭,分割结果,局部极小值,图,不准确标记分水岭算法导致过分割,54,4.,自动阈值,改进的分水岭算法,原始图像,原图像的距离变换,标记外部约束,标记内部约束,由标记内外部约,束重构的梯度图,分割结果,图,准确标记的分水岭算法分割过程,55,3.1.4.,区域分割,56,基本思想,?,阈值分割法由于没有或很少考虑空间关系,使多阈值选择受到限制,?,基于区域的分割方法可以弥补这点不足,它利用的是图像的空间性,质,该方法认为分割出来的属于同一区域的像素应具有相似的性质,,其概念是相当直观的。,?,传统的区域分割算法有,区域生长法,和,区域分裂合并法,。该类方法在,没有先验知识可以利用时,对含有复杂场景或自然景物等先验知识不,足的图像进行分割,也可以取得较好的性能。但是,,空间和时间开销,都比较大,。,57,基本公式,形式化地定义如下:令,I,表示图像,H,表示具有相同性质的谓,词,图像分割把,I,分解成,n,个区域,R,i,i,1,2,n,满足:,1),U,R,i,?,1,N,i,?,I,R,i,?,R,j,?,?,?,i,j,i,?,j,2),?,i,i,?,1,2,L,n,H,(,R,i,),?,True,3),?,i,j,i,?,j,H,(,R,i,?,R,j,),?,False,条件,(1),表明分割区域要覆盖整个图像且各区域互不重叠;,条件,(2),表明每个区域具有相同的性质;,条件,(3),表明相邻的两个区域性质相异不能合并为一个区域。,58,1.,区域生长,区域生长是一种根据事前定义的准则将像素或子区域聚合成更大区域的,过程,.,区域生长法主要考虑象素及其空间邻域象素之间的关系,?,开始时确定一个或多个象素点作为种子,然后按某种相似性准,则增长区域,逐步生成具有某种均匀性的空间区域,将相邻的具,有相似性质的象素或区域归并从而逐步增长区域,直至没有可以,归并的点或其它小区域为止。,?,区域内象素的相似性度量可以包括平均灰度值、纹理、颜色等,信息。,59,1.,区域生长,区域增长示例,1,6,9,2,6,9,3,5,5,(a),初始情形,1,6,9,2,6,9,3,5,5,1,6,9,2,6,9,3,5,5,1,6,9,2,6,9,3,5,5,(b),T,=1(c),T,=2(d),T,=3,生长准则,:,所考虑的像素点和种子点的灰度值的绝对值差小于或等于,某个阈值,T,久将该像素点归入种子点所在的区域,.,60,1.,区域生长,步骤,?,选择合适的种子点,?,确定相似性准则,(,生长准则,),?,确定生长停止条件,61,1.,区域生长,实例,(a),显示有缺陷的焊,缝的图像,(b),种子点,(c),区域生长的结果,(d),对有缺陷的焊缝,区域进行分割得,到的边界,62,1.,区域生长,实例,原始图像及,种子点位置,三个种子点区域,生长结果,原始图像及,种子点位置,四个种子点区域,生长结果,图,区域生长,63,2.,区域分裂,件,如果区域的某些特性差别比较大,即不满足一致性准则时,则区域应该采用分裂法,分裂过程从从图像的最大区域开始,,一般情况下,是从整幅图像开始,.,开注意:,?,?,确定分裂准则,(,一致性准则,),?,确定分裂方法,即如何分裂区域,使得分裂后的子区域,的特性尽可能都满足一致性准则值。,64,2.,区域分裂,算法,?,形成初始区域,?,对图像的每一个区域,R,i,,计算,P,(,R,i,),,如果,P,(,R,i,)=FALSE,则沿着某一合适的边界分裂区域,?,重复步骤,2,,当没有区域需分裂时,算法结束。,65,3.,区域合并,基本思想,单纯的区域分裂只能把图像分成许多满足一致性谓词的区,域,相邻的具有相同性质的区域并没有合成一体,.,?,合并运算就是把相邻的具有相似性质的区域合成为一个区域,?,合并算法中最重要的运算是确定两个区域的相似性,?,评判区域相似性方法有许多,评判相似性的方法可以基于区,域的灰度值,也可以基于区域边界的强弱性等因素。一种简单,的方法是比较它们的灰度均值,66,3.,区域合并,算,法,?,使用某种方法进行图像的初始区域分割。,?,对于图像中相邻的区域,计算是否满足一致性谓词,若,满足则合并为一个区域。,?,重复步骤,2,,直到没有区域可以合并,算法结束。,67,4.,区域分裂合并,数据结构,区域分裂合并法无需预先指定种子点,它按某种一致性准则分裂,或者合并区域,.,可以先进行分裂运算,然后再进行合并运算,;,也可,以分裂和合并运算同时进行,经过连续的分裂和合并,最后得到,图像的精确分割效果,.,分裂合并法对分割复杂的场景图像比较有效,.,68,4.,区域分裂合并,数据结构,具体实现时,分裂合并算法可以基于四叉树数据表示方式进行,.,69,4.,区域分裂合并,数据结构,(a),初始图像,(b),第一次分割,图,图像分裂示例,(c),第二次分割,70,4.,区域分裂合并,算法,?,设整幅图像为初始区域,?,对每一区域,R,,如果,P,(,R,)=FLASE,,则把该区域分裂成四,个子区域,?,重复上一步,直到没有区域可以分裂,?,对图像中任意两个相邻的,R,1,和,R,2,,如果,P,(,R,1,U,R,2,)=,TRUE,,,则把这两个区域合并成一个区域。,?,重复上一步,直到没有相邻区域可以合并,算法结束,71,4.,区域分裂合并,实例,原始图像,分裂最小子区域,大小,16,?,16,分裂最小子区域,大小,8,?,8,分裂最小子区域,大小,8,?,8,图,图像分裂合并,72,