阈值分割技术_第1页
阈值分割技术_第2页
阈值分割技术_第3页
阈值分割技术_第4页
阈值分割技术_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要图像分割是一种重要的图像技术,在理论研究和实际应用中都得到了人们的广泛重视。图像分割是把图像中有意义的特征区域或者把需要的应用的特征区域提取出来。阈值分割是一种简单有效的图像分割方法。它对物体与背景又较强对比的图像分割特别有效,所有灰度值大于或等于阈值的像素被判决属于物体。为常见的阈值分割方法有全局阈值、自适应阈值。最佳阈值的选择有直方图技术、最大类间方差法(OTSU)、迭代法。关键词:图像分割,阈值分割,灰度值,最佳阈值1MATLAB简介及其应用MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是矩阵实验室(MatrixLaboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB产品族可以用来进行以下各种工作:数值分析数值和符号计算工程与科学绘图控制系统的设计与仿真数字图像处理技术数字信号处理技术通讯系统设计与仿真财务与金融工程MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。Matlab的特点如下:此高级语言可用于技术计算此开发环境可对代码、文件和数据进行管理交互式工具可以按迭代的方式探查、设计及求解问题数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等二维和三维图形函数可用于可视化数据各种工具可用于构建自定义的图形用户界面各种函数可将基于MATLAB的算法与外部应用程序和语言(如C、C++、Fortran、Java、COM以及MicrosoftExcel)集成不支持大写输入,内核仅仅支持小写MATLAB有出色的图形处理功能:向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。2图像阈值分割分析对图像进行研究和应用时,人们往往对图像中的某些部分感兴趣,这些部分常被称为目标或对象(object)。图像处理的重要任务就是对图像中的对象进行分析和理解。在图像分析中,输出结果是对图像的描述、分类或其他结论,而不再像一般意义的图像处理那样——输出也是图像。图像分割是将数字图像分成互不重叠的区域并提取出感兴趣目标的技图像分割算法一般是基于灰度的两个性质之一:不连续性和相似性。第一个性质的应用是基于灰度的不连续变化来分割图像。第二个性质的主要应用是根据事先制定的准则将图像分割为相似的区域。这两种方法都有各自的优点和缺点。图像分割是图像处理与计算机视觉领域低层次视觉中最为基础和重要的领域之一,它是对图像进行视觉分析和模式识别的基本前提。图像阈值分割即是其中的一种方法。图像分割也可理解为把图像中有意义的特征区域或者需要应用的特征区域提取出来,这些特性区域可以是像素的灰度值、物体轮廓曲线、纹理特性等,也可是空间频谱或直方图特征等。阈值分割技术因其实现简单、计算量小、性能较稳定而成为图像分割中最基本和应用最广泛的分割技术,已被应用于很多的领域,在很多图像处理系统中都是必不可少的一个环节。阈值分割图像的基本原理描述如下:利用图像中要提取的目标物与其背景在灰度特性上的差异,把图像视为具有不同灰度级的两类区域(目标和背景)的组合,选取一个合适的阈值,以确定图像中每个像素点应该属于目标区域还是背景区域,从而产生对应的二值图像。即:阈值分割是一种简单有效的图像分割方法。他对物体与背景有较强对比的图像分割特别有效,所有灰度大于或等于预知的像素被判决为属于物体,灰度值用“255”表示前景,否则这些像素点被排除在物体区域外,灰度值为“0”,表示背景。3图像的阈值分割技术阈值法有多种类型,主要有:全局阈值,自适应阈值等。所谓全局阈值,如果背景的灰度值在整个图像中可合理的看做恒定,而且所有物体与背景都具有几乎相同的对比度,那么,只要选择了正确的阈值,使用了一个固定的全局阈值一般会有较好的效果。3.1全局阈值分割图2-1给出了利用全局阈值分割图像的实例。图2-1(a)是原图,(b)是选择分割阈值为60的结果图。MATLAB程序如下:%全局阈值I=imread('zw.jpg');[width,height]=size(I);fori=1:widthforj=1:heightif(I(i,j)<150)BW1(i,j)=0;elseBW1(i,j)=1;endendendfiguretitle('全局阈值')imshow(BW1)这里设定了一个常数150,通过比较灰度值与150的大小关系来重新给图像赋值。(a)原图像 (b)已分割图像图3.1全局阈值分割3.2自适应阈值但是,在许多情况下,背景的灰度值并不是常数,物体和背景的对比度在图像中也有变化,这时就要引入自适应阈值,一个在图像中某一区域效果良好的阈值在其他区域却可能效果很差。在这种情况下,需要把灰度阈值取成一个随图像中位置缓慢变化的函数值,即为自适应阈值。这类算法的时间复杂度和空间复杂度比较大,但是抗噪声的能力比较强,对采用全局阈值不容易分割的图像有较好的效果。这种方法的关键问题是如何将图像进行细分和如何为得到子图像估计门限值。由于用于每个像素的门限取决于像素在子图像中的位置,这类门限处理是自适应的。4最佳阈值的选择除非图像中的物体有陡峭的边沿,否则灰度阈值的取值对所抽取物体的边界的定位和整体的尺寸有很大的影响。这意味着后续的尺寸(特别是面积)的测量对于灰度阈值的选择很敏感。由于这个原因,我们需要一个最佳的,或至少是具有一致性的方法确定阈值。4.1直方图技术直方图双峰法是一种全局阈值分割方法。假定物体和背景分别处于不同灰度级,图像被零均值高斯噪声污染,图像的灰度分布曲线近似用两个正态分布概率密度函数,分别代表目标和背景的直方图,利用这个函数的合成曲线拟合整体图像的直方图,图像的直方图将会出现两个分离的峰值。该方法适用于具有良好双峰性质的图像,但需要用到数值逼近等计算,算法十分复杂,而且多数图像的直方图是离散的、不规则的。先作出图像的灰度直方图,若其直方图呈双峰且有明显的谷底,则可以将谷底点所对应的灰度值作为阈值T,然后根据该阈值进行分割就可以将目标从图像中分割出来。这种方法适用于目标和背景的灰度差较大,直方图有明显谷底的情况。MATLAB图像处理工具箱提供了生成并绘制图像的直方图函数imhist(),求门限函数graythresh(),以及转换成二值图像函数im2bw()。图3-1给出了利用双峰法分割图像的实例。图3-1(a)是原始的灰度图像,(b)是原图像的灰度直方图,(c)是直方图双峰法提取结果。图3-1生成直方图后可以看到,图像有明显的双峰。两个峰尖对应于物体内部和外部较多数目的点。两峰之间的谷对应于物体边缘附近相对较少数目的点。所以可以取谷底对应的灰度值作为阈值。MATLAB程序如下:I=imread('ZW.jpg');I=rgb2gray(I);figure;subplot(1,3,1);imshow(I)title('原始灰度图')newI=im2bw(I,150/255);%根据上面直方图选择阈值150,划分图像的前景和背景figure;subplot(1,3,1);imshow(newI);title('分割后图像')MATLAB图象处理工具箱提供了imhist函数来计算和显示图象的直方图。其中imhist(I,n)计算和显示灰度图象I的直方图,n为指定的灰度级数目,默认值为256。图4.1生成直方图

图4.2双峰法分割4.2最大类间方差法(OTSU)最大类间方差法又称为OTSU算法,该算法是在灰度直方图的基础上用最小二乘法原理推导出来的,具有统计意义上的最佳分割阈值。它的基本原理是以最佳阈值将图像的灰度直方图分割成两部分,使两部分的方差取最大值,即分离性最大。设X是一幅具有L级灰度级的图像,其中第i级像素为N个,其中i的值i在0~L-1之间,图像的总像素点个数为:L-1N=工Ni第i级出现的概率为: i=0NP二乙iN在OTSU算法中,以阈值k将所有的像素分为目标c和背景c两类。其中,01c类的像素灰度级为0~k-1,c类的像素灰度级为k~L-1。01图像的总平均灰度级为: L-1卩=YiPii=o

C类像素所占面积的比例为:0C类像素所占面积的比例为:1o=1-o10C类像素的平均灰度为:0 卩(k)二卩(k)/o000C类像素的平均灰度为:1 卩(k)二卩(k)/o其中,111其中,k-1卩(k)=XiP0ii=oL-1卩(k)=XiP=1-卩(k)1 i 0i=k则类间方差公式为:82(k)=o(卩―卩)2+o(卩―卩)20010令k从0~L-1变化,计算在不同k值下的类间方差82(k),使得82(k)最大时的那个k值就是所要求的最优阈值。图3-2为采用OTSU方法取得最优阈值后进行阈值分割的结果。MATLAB程序如下:I=imread('ZW.jpg');I=rgb2gray(I);subplot(1,3,1);figure;imshow(I)title('原始灰度图')%用MATLAB函数计算阈值level=graythresh(I);%OTSU计算全局图像I的阈值BW=im2bw(I,level);%阈值分割figureimshow(BW)title('自适应阈值')MATLAB提供graythresh函数来自动获取分割阈值,im2bw功能是转换图像为二值化图像。这两个函数结合使用,graythresh函数是自适应阈值,求出图像的自适应阈值,然后利用im2bw函数再转化为二值图像并输出,得到如之前所示的自适应阈值图。a)原图 (b)OTSU取阈值分割图3-2OTSU法取阈值分割OTSU法选取出来的阈值非常理想。虽然它在很多情况下都不是最佳的分割,但分割质量通常有一定的保障,可以说是最稳定的分割。4.3迭代法迭代法的原理是:图像中前景与背景之间的灰度分布为相互不重叠,在这个前提下,实现对两类对象的阈值分割。其算法步骤如下所示:1设定参数TO,选择一个T的初始阈值估计值T1。2用T1分割图像。将图像分成两组像素:G1由所有灰度值大于T1的像素组成,而G2由所有灰度值小于或等于T1的像素组成。3对区域G1和G2中的所有像素计算平均灰度值u1和u2。4计算新的阈值:T2=(u1+u2)/2。5如果IT2-T1IVT0,则退出,T2即为所求的全局阈值:否则,将T2赋值给T1,重复步骤2到5。图3-3是通过迭代法求阈值后进行的分割。MATLAB程序如下:I=imread('zhiwen.jpg');I=double(I);T=(min(I(:))+max(I(:)))/2;done=false;i=O;while~doner1=find(I<=T);%前景灰度值r2=find(I>T);%背景灰度值Tnew=(mean(I(r1))+mean(I(r2)))/2;%计算前景和背景的平均值done=abs(Tnew-T)<1;T=Tnew;i=i+1;endI(r1)=0;figure;subplot(1,2,1);imshow(I)title(迭代法阈值')迭代法的步骤较多,用到的数学函数也比较多,比如double,find,mean,abs函数等。double()是将一个数转换为double型变量,find用于寻找符合特定条件的值并返回,mean函数用于求平均值,abs函数是求绝对值函数。迭代法闽值图4-3迭代法求阈值的分割迭代所得的阈值分割的图像效果很好。基于迭代的阈值能区分出图像的前景和背景的主要区域所在,但在图像的细微处还没有很好的区分度。对某些特定图像,微小数据的变化却会引发起分割效果的巨大改变。总的来说,迭代法比双峰法分割效果有很大的提高。5三者的比较研究以下图分别是它们对于指纹图像的分割效果图

取峰法图5.1三种分割方法比较由结果可知:迭代法和OTSU法的作用效果相似,设计原理相对于双峰来说要复杂点,但是分割效果比双峰法好些。双峰法原理简单,计算容易,性能稳定,也易于理解。但是用此方法来分割图像需要一定的图像先验知识。该方法不适用于直方图中双峰差别很大或者双峰中间谷底比较宽广而平坦的图像,以及单峰直方图的情况。所以双峰法应用范围比起迭代法和OTSU法小很多,对于图像灰度直方图的双峰和低谷都不明显的,而且两个区域面积也比较难以确定时多采用迭代法和OTSU法。迭代所得阈值分割图像效果很好。基于迭代的阈值能区分出图像的前景和背景的主要区域所在,但在图像的细微处还没有很好的区分度,对某些特定图像,微笑的数据变化会引起分割效果的巨大变化。总的来说,迭代法比双峰法分割效

果有很大的提高。但是对于有噪音的图片进行分割,OUST法和迭代法相对双峰法的处理效果要差些。I=imnoise(I,'salt&pepper',0.08); %加椒盐噪声加噪后图:图5.2加噪后原图分割结果图:

自适应國值自适应國值图5.3加噪后的分割图双峰法原理简单,计算容易,性能稳定,也易于理解。但是用此方法来分割图像需要一定的图像先验知识。该方法不适用于直方图中双峰差别很大或者双峰中间谷底比较宽广而平坦的图像,以及单峰直方图的情况。所以双峰法应用范围比起迭代法和OTSU法小很多,对于图像灰度直方图的双峰和低谷都不明显的,而且两个区域面积也比较难以确定时多采用迭代法和OTSU法。除了上面介绍的图像分割的方法,还可以利用区域分割的图像分割算法,该类方法利用的是图像的空间性质,认为分割出来的属于同一区域的像素应具有相似的性质,传统的区域分割算法主要有区域增长和区域分裂合并法。这里不作介绍。6心得体会此次课程设计过程中,我做的内容是图像分割。做课程设计之前,我对图像分割技术基本上不了解,所以,此次课程设计更多的是去掌握和查阅图像处理本身的相关知识。在查阅过程中,也遇到了一些困难。看完课本后有很多还

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论