第五章 图像分割

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第5章图像分割图像分割实例:虹膜定位主要内容5.1间断检测5.2边缘连接和边界检测5.3门限处理5.4基于区域的分割5.5基于形态学分水岭的分割(自学)概念1、图像分割是指将图像划分为它的子区域或对象的过程。2、有选择性地定位感兴趣对象在图像中的位置和范围。虹膜定位原理1、基于灰度的不连续性。(区域之间)2、基于灰度的相似性。(区域内部)3、同时使用灰度不连续性和灰度相似性。5.1间断检测1点检测(1)原理用空域的高通滤波器来检测孤立点。-1-1-1-18-1-1-1-1TRzwRiiii91-1-2-1-212-2-1-2-1与前面学过的滤波器有什么区别?(2)实例(3)MATLAB实现点检测模板w:-1-1-1-18-1-1-1-1检测方法:g=abs(imfilter(double(f),w))=T示例f=imread(‘moon.tif’);w=[-1-1-1;-18-1;-1-1-1];g=abs(imfilter(double(f),w));T=max(g(:));T=T*0.9;g=g=T;imshow(f);figure,imshow(g);2线检测(1)原理模板检测。(2)实例(3)MATLAB实现水平模板、+45度模板、垂直模板、-45度模板。示例f=imread(‘wirebond_mask.tif’);imshow(f);w=[2-1-1;-12-1;-1-12];g=abs(imfilter(double(f),w));figure,imshow(g);3边缘检测(1)基础A、两种边缘模型B、一阶导数和二阶导数特点1、一阶导数:在斜坡上,导数值为正,在平坦区为零。2、二阶导数:在跃变点,一正一负,其他部分为零.C、噪声对一阶导数和二阶导数的影响噪声对一阶和二阶导数都有影响,尤其对二阶导数影响较大,因此,在检测边缘前应该考虑平滑处理。(2)梯度算子A、梯度算子)arctan(),()()()(21222122xyyxyxyxGGyxaGGGyfxfGGfmagyfxfGGfB、各种梯度模板C、实例思考题:为什么图像的梯度只需要计算x和y方向的梯度?图5-10用Prewitt算子进行边缘检测的结果用Sobel算子进行边缘检测的结果(3)拉普拉斯算子A、拉普拉斯算子),(4)1,()1,(),1(),1(),(2)1,()1,(),(),(2),1(),1(),(2222222222yxfyxfyxfyxfyxffyxfyxfyxfyyxfyxfyxfyxfxyxfyfxffB、LoG算子2222242222)()(rrerrherh为什么在Laplacian算子的基础上引入LoG算子?零交叉求边缘(4)MATLAB实现语法:[g,t]=edge(f,‘method’,parameter)说明:g是一个逻辑数组,其值为:在f中检测到边缘的位置为1,其他位置为零;t是edge是用的阈值;method为边缘监测器方法,可选为:‘sobel’,‘prewit’,‘roberts’,‘log’(LoG),‘zerocoss’,‘canny’等;parameter包含两部分:T为指定的阈值,第二部分为dir(检测边缘的首选方向:‘horizontal’,‘vertical’,‘both’),或sigma(标准方差),或H(指定的滤波函数)。示例:f=imread(‘rice.tif’);imshow(f);[gsobel,t]=edge(f,‘sobel’);figure,imshow(gsobel);[glog,t]=edge(f,‘log’);figure,imshow(glog);[gcanny,t]=edge(f,‘canny’);figure,imshow(gcanny);5.2边缘连接和边界检测1基于局部处理的边缘点连接分析图像中每个点(x,y)的小邻域(如3*3或5*5)内像素的特点,将满足相似性准则的点连接起来,形成边缘。AyxayxaEyxfyxf),(),(),(),(00002通过Hough变换进行整体处理(1)问题的提出在找出边界点集之后,需要连接,形成完整的边界图形描述。(2)Hough变换检测直线的基本思想对于边界上的n个点的点集,找出共线的点集和直线方程。设任意两点的直线方程:y=ax+b,构造一个参数a,b的平面。abA、xy平面上的任意一条直线y=ax+b,对应在参数ab平面上都有一个点。B、过xy平面一个点(x,y)的所有直线,构成参数ab平面上的一条直线。ababC、如果点(x1,y1)与点(x2,y2)共线,那么这两点在参数ab平面上的直线将有一个交点。D、在参数ab平面上相交直线最多的点,对应的xy平面上的直线就是我们的解abyx(x1,y1)(x2,y2)a’b’aA(3)实例3MATLAB实现设计与实现一个基于Hough变换的直线检测器。(作业)5.3门限处理1基础(1)单阈值分割TyxfTyxfyxg),(0),(1),(思考题:如何寻找阈值?(2)多阈值分割()g2211),(2),(1),(0),(TyxfTyxfTTyxfyxg(3)门限处理的分类)],(),,(,,[yxfyxpyxTTA、全局门限处理T仅取决于f(x,y),即仅取决于灰度级值。B、局部门限处理T取决于f(x,y)和p(x,y)。C、动态(自适应)门限处理T取决于空间坐标x和y。f(x,y)是点(x,y)的灰度级,p(x,y)表示点(x,y)的局部性质。2照明不均匀的影响照明条件不好的图像,用单阈值时很难分割的。常用的改进措施:分割。则可以用单一的门限、。、标准函数:。则形成一幅图像上,个不变的、白色反射面、将照明光源投射到一kTyxhkyxryxgyxfyxhyxkiyxgyxryxiyxf/),(C/),(),(/),(),(B),(),(A),(),(),(3基本全局门限处理像素组成;的于由所有灰度值小于或等的像素组成,大于由所有灰度值像素:分割图像,并生成两组用)(的初始估计值;选择一个)(的自动计算:门限TGTGT2T1T21。数之差小于事先定义的参值的),直到逐步迭代所得)到()重复步骤(();(计算新的门限值:)(;和灰度值中的所有像素计算平均和对区域)(0212121TT42521T4GG34基本自适应门限处理不均匀亮度等成像因素会造成单一全局门限无法有效分割。另一种改进措施是将图像进一步细分为子图像,并对不同的子图像使用不同的门限进行分割。你有什么其它的改进方法?5最佳全局和自适应门限(自学)6利用边界特性改进直方图和局部门限处理(1)基本思想如果直方图的尖峰很高、很窄、具有对称性且被很深的波谷割开,则门限处理就具有非常好的效果。一种改进直方图形状的方法是只考虑边缘附近的像素,使得直方图对于对象和背景大小的依赖性变小。另外,使用某些简单度量的像素会趋向于加深直方图尖峰之间的波谷,如拉普拉斯算子。(2)基本方法A、对图像分别进行梯度运算和拉普拉斯运算;(局部运算)B、由梯度图计算门限T;C、生成三级图像:D、进行扫描,标记目标和对象。(…)(-,+)(0,或+)(+,-)(…)0,0,0),(22fTffTfTfyxs7基于不同变量的门限(自学)8MATLAB实现全局阈值处理语法:T=graythresh(f)说明:T是阈值,归一化为0至1之间的值。局部阈值处理通过一个形态学顶帽算子并对得到的结果使用graythresh来计算。示例:f=imread(‘cell.tif’);imshow(f);T=graythresh(f);G=f=T;figure,imshow(g);补充材料:一种快速稳健的指纹图像分割方法1、3×3均值滤波的效果2、Sobel算子锐化增强并自适应阈值化未锐化增强锐化增强+全局阈值锐化增强+自适应阈值3边框效应的消除4形态学操作5.4基于区域的分割1区域分割的集合描述将区域R划分为若干个子区域R1,R2,…,Rn,这些子区域满足5个条件:1)完备性:2)连通性:每个Ri都是一个连通区域3)独立性:对于任意i≠j,Ri∩Rj=ФniiRR14)单一性:每个区域内的灰度级相等,P(Ri)=TRUE,i=1,2,…,n5)互斥性:任两个区域的灰度级不等,P(Ri∪Rj)=FALSE,i≠j2区域生长算法实现:1)根据图像的不同应用选择一个或一组种子,它或者是最亮或最暗的点,或者是位于点簇中心的点。2)选择一个相似性准则。(灰度级、彩色、纹理、梯度等特性相似)3)从该种子开始向外扩张,不断将与集合中各个像素连通、且满足相似性准则的像素加入集合。4)上一过程进行到不再有满足条件的新结点加入集合为止。(终止准则)区域A种子像素种子选择准则:最亮的点。相似性准则:新加入像素值与已生长的区域的平均值小于2,且为4连通。终止准则:没有像素加入。随堂练习:(区域生长)43318665449866491096445845334832234323区域分离与合并算法实现:1)对图像中灰度级不同的区域,均分为四个子区域2)如果相邻的子区域所有像素的灰度级相同,则将其合并。3)反复进行上两步操作,直至不再有新的分裂与合并为止随堂练习:(区域分裂-合并)43328888449898491099448848334332234324MATLAB实现设计与实现一个基于区域生长的分割程序。(作业)分割后处理语法:BW2=bwfill(BW1,c,r,n)说明:填充二进制图像的背景色。(形态学处理)语法:bwareaopen说明:二进制图像区域打开,清除小物体。示例BW1=[1000000011111000100010101000111011110111100110101000101010001110]BW2=bwfill(BW1,3,3,8)I=imread('blood1.tif');BW3=~im2bw(I);BW4=bwfill(BW3,'holes');imshow(BW3)figure,imshow(BW4)

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功