图像分割算法的研究与实现_本科毕业论文.doc

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字图像处理期末考试
题目图像分割算法研究与实现
专业班级11通信工程一班
毕业论文(设计)诚信声明
本人声明:所呈交的毕业论文(设计)是在导师指导下进行的研究工作
及取得的研究成果,论文中引用他人的文献、数据、图表、资料均已作明
确标注,论文中的结论和成果为本人独立完成,真实可靠,不包含他人成果
及已获得青岛农业大学或其他教育机构的学位或证书使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
论文(设计)作者签名: 日期: 2013 年 3月 10 日
毕业论文(设计)版权使用授权书
本毕业论文(设计)作者同意学校保留并向国家有关部门或机构送交论文(设计)的复印件和电子版,允许论文(设计)被查阅和借阅。本人授权青
岛农业大学可以将本毕业论文(设计)全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本毕业论文(设计)。本人离校后发表或使用该毕业论文(设计)或与该论文(设计)直接相关的学术论文或成果时,单位署名为青岛农业大学。
论文(设计)作者签名: 日期: 2013 年 3 月 10 日
指导教师签名: 日期: 年月日
目录
摘要: (1)
1.前言 (2)
2.图像分割概念 (2)
2.1图像分割定义 (2)
2.2图像分割方法综述 (3)
2.3阈值法 (4)
2.4 基于边缘检测的分割方法 (8)
2.5基于区域的分割方法 (10)
3.图像分割方法详述 (12)
3.1图像分割方法 (12)
3.2 图像分割方法实现 (12)
4.实验结果及分析 (14)
4.1 实验结果 (14)
4.2 实验结果分析 (18)
5.小结 (20)
5.1 主要工作总结 (20)
5.2 结论 (20)
6.附录 (23)
图像分割算法研究与实现
摘要: 图像分割是图像处理与计算机视觉的基本问题之一,是图像处理图像分析的关键步骤。因为图像分割及其基于分割的目标表达、特
征提取和参数测量等将原始图像转化为更抽象更紧凑的形式,使
得更高层的图像分析和理解成为可能。因此,图像分割多年来一
直得到人们的高度重视.本文首先将现有的多种类型图像分割方
法归结为3类典型的方法 , 并分析各自的特性;然后提出图象分
割方案,并利用MATLAB 软件编写程序,展示实验现象,最后对所做
工作进行总结。
关键词:图像分割阈值法边缘检测微分算子局部阈值
1.前言
在图像的研究和应用过程中,人们往往仅对各幅图像中的某些部分感兴趣.这些部分常称为目标或前景,它们一般对应图像中特定的具有独特性质的区域.为了辨别和分析目标,需要将这些区域分离提取出来,在此基础上才有可能对目标进一步利用.图像分割就是将图像分成各具特性的区域并提取出感兴趣的目标的技术和过程.在进行图像分割时,首先要根据目标和背景的先验知识来对图像中的目标、背景进行标记、定位,然后将等待识别的目标从背景中分离出来.图像分割是由图像处理进到图像分析的关键步骤,也是一种基本的计算机视觉技术.这是因为图像的分割、目标的分离、特征的提取和参数的测量将原始的图像转化为更抽象更紧凑的形式,使得更高层的分析和理解成为可能.因此,图像分割多年来一直得到人们的高度重视[1]。
图象分割在实际中已得到广泛的应用,例如在工业自动化,在线产品检验,生产过程控制,文档图象处理,遥感和生物医学图象分析,保安监视,以及军事,体育,农业工程等方面。概括来说,在各种图象应中,只要需对图象目标进行提取,测量等都离不开图象分割。近年来,图象分割在对图象的编码中也起到越来越重要的作用,例如国际标准MPEG一4中模型基/目标基编码等都需要基于分割的结果。可见,图象分割在图象工程中有重要的地位和影响。
本文主要从图像分割定义、图像分割的方法等几个方面来阐述关于图像分割的几个问题。
2.图像分割概念
2.1图像分割定义
文字定义:把图象(空间)按一定要求分成一些“有意义”区域的处理技术。“有意义”—希望这些区域能分别和图象景物中各目标物(或背景)相对应。
正式“集合”定义:
令集合 R 代表整个图象区域,对R的分割可看作将R分成若干个满足如下五个条件的非空的子集(子区域):
(1)R R U ==i n
1i (分割所得全部子区域的总和(并集)应能包括图象中所有象素或将图象中每个象素都划分进一个子区中)
(2)对所有的i 和j ,有Ri ∩ Rj = ø (i≠j );(各子区互不重叠)
(3)对i=1,2,3……,N,有P(R i )=TRUE;(属于同一子区象素应具有的某些
共同特性)
(4)对i≠j ,有P(Ri ∪R j )=FALSE;(属于不同子区象素应具有某些不同特
性)
(5)对i=1,2,……,N,R i 是连通区域(同一子区内象素应当是连通的)[2].
条件1指出对一幅图象的分割结果的全部子区域的总和(并集)就是原
图象,或者说分割应该是将图象中的每个象素都分进某个子区域中。条件2指出在分割结果中各个子区域是互不重叠的,或者说在分割结果中一个象素不能同时属于两个区域。条件3指出在分割结果中每个子区域都有独特的特性,或者说属于同一个区域中的象素应该具有某些相同的特性。条件4指出在分割结果中,不同的子区域具有不同的特性,没有公共元素,或者说属于不同区域的象素应该具有一些不同的特性。条件5要求分割结果中同一个子区域内的象素应当是相通的,即同一个子区域内的任意两个象素在该子区域内是互相连通,或者说分割得到的区域是一个连通组元。
上面的定义,不仅对明确的说明了分割的含义,而且对进行分割也有相
当的指导作用。因为分割总是根据一些分割准则进行的。条件1和条件2说明正确的分割准则应可适用于所有区域和所有象素,条件3和条件4说明合理的分割准则应该能够帮助确定各区域象素有代表性的特性,而条件5说明完整的分割准则应直接或间接地对区域内象素的连通性有一定的要求或限定。最后需要指出的是,在实际应用中图象分割不仅是要把一幅图象分成满足以上五个条件的各具特性的区域,而且需要把其中感兴趣的目标区域提取出来,只有这样才算是真正完成了图象分割的任务。
2.2图像分割方法综述
图像分割是指将图像划分为与其中含有的真实世界的物体或区域有强
相关性的组成部分的过程。图像分割是图像处理和分析中的重要问题,也是计算机视觉研究中的一个经典难题。尽管它一直受到科研人员的重视,
但是它的发展很慢,被认为是计算机视觉的一个瓶颈。迄今为止,还没有一种图像分割方法适用于所有的图像,也没有一类图像所有的方法都适用于它。近几年来,研究人员不断改进原有方法并将其它学科的新理论和新方法引入图像分割,提出了不少新的分割方法。本文对传统的图像分割方法进行分析。
典型的图像分割方法有阈值法,边缘检测法,区域法。
分析各种图像分割方法可以发现,它们分割图像的基本依据和条件有以下4方面:
(l)分割的图像区域应具有同质性,如灰度级别相近、纹理相似等;
(2)区域内部平整,不存在很小的小空洞;
(3)相邻区域之间对选定的某种同质判据而言,应存在显著差异性;
(4)每个分割区域边界应具有齐整性和空间位置的准确性。
现有的大多数图像分割方法只是部分满足上述判据。如果加强分割区域的同性质约束,分割区域很容易产生大量小空洞和不规整边缘:若强调不同区域间性质差异的显著性,则极易造成非同质区域的合并和有意义的边界丢失。不同的图像分割方法总有在各种约束条件之间找到适当的平衡点[3]。
2.3阈值法
阈值法的优点是计算简单,速度快,易于实现。尤其是对于不同类的物体灰度值或其他特征值相差很大时,能很有效地对图像进行分割。
阈值法的缺点是当图像中不存在明显的灰度差异或灰度值范围有较大的重叠时,分割效果不理想。并且阈值法仅仅考虑图像的灰度信息而没有考虑图像的空间信息,致使阈值法对噪声和灰度不均匀十分地敏感。在实际应用中,阈值法通常与其他方法结合使用[4]。
阈值分割法是简单地用一个或几个阈值将图像的直方图分成几类, 图像中灰度值在同一个灰度类内的象素属干同一个类。其过程是决定一个灰度值, 用以区分不同的类, 这个灰度值就叫做“阈值”。它可以分为全局阈值分割和局部阈值分割。所谓全局阈值分割是利用利用整幅图像的信息来得到分割用的阈值, 并根据该阈值对整幅图像进行分割而局部阈值分割是根据图像中的不同区域获得对应的不同区域的阈值, 利用这些阈值对各
个区域进行分割, 即一个阈值对应相应的一个子区域, 这种方法也称适应
阈值分割。
阈值法是一种简单但是非常有效的方法, 特别是不同物体或结构之间
有很大的强度对比时, 能够得到很好的效果它一般可以作为一系列图像处
理过程的第一步。它一般要求在直方图上能得到明显的峰或谷, 并在谷底
选择阈值。如何根据图像选择合适的阈值是基于阈值分割方法的重点所在, 也是难点所在。
它的主要局限是, 最简单形式的阈值法只能产生二值图像来区分两个
不同的类。另外, 它只考虑象素本身的值, 一般都不考虑图像的空间特性, 这样就对噪声很敏感它也没有考虑图像的纹理信息等有用信息,使分割效
果有时不能尽如人意[5]。
阈值法的几种阈值选择方法:
全局阈值法
(1)双峰法
对于目标与背景的灰度级有明显差别的图像,其灰度直方图的分布呈
双峰状,两个波峰分别与图像中的目标和背景相对应,波谷与图像边缘相对应。当分割阈值位于谷底时,图像分割可取得最好的效果。该方法简单易行,但是对于灰度直方图中波峰不明显或波谷宽阔平坦的图像,不能使用该方法[6]。
假设,一副图像只有物体和背景两部分组成,其灰度图直方图呈现明显
的双峰值,如下图:
图1 双峰法灰度直方图
找出阈值T,则可以对整个图像进行二值化赋值。
程序的实现:
通过数组记录直方图中的各像素点值的个数, 再对逐个像素值进行扫描。记录每个像素能作为谷底的范围值,接着找出能作为谷底范围最大的
点作为阈值[7]
。 实现流程图:
图2 (2)灰度直方图变换法
该方法不是直接选取阈值,而是对灰度直方图进行变换,使其具有更深的波谷和更尖的波峰,然后再利用双峰法得到最优阈值。这种方法的一个共同特征是根据像素点的局部特性,对其进行灰度级的增强或减弱的变换。这种方法假设图像由目标和背景组成,并且目标和背景灰度直方图都是单峰分布[5]。
(3)迭代法(最优方法)
它基于逼近的思想,基本算法如下:
<1> 求出图像的最大灰度值和最小灰度值,分别记为Max 和Min,令初
始阈值为:2/in ax k )(M M T +=
,根据阈值k T 将图像分割为前景和背景,分别求出两者的平均灰度值0Z 和b Z ;
<2> 求出阈值10()/2k b T Z Z +=+;
<3> 如果1k k T T =+;则所得即为阈值;否则转<2>迭代计算。
迭代所得的阈值分割图象的效果良好, 基于迭代的阈值能区分图象的前景和背景的主要区域所在,但是在图象的细微处还是没有很好的区分度,令人惊讶的是对某些特定图象,微小数据的变化会引起分割效果的巨大变化,两者的数据只是稍有变化,分割效果反差极大,具体原因还有待进一步研究[8]。
局部阈值法
原始图像被分为几个小的子图像,再对每个子图像分别求出最优分割阈值。
(1)自适应阈值
在许多情况下,背景的灰度值并不是常数,物体和背景的对比度在图像中也有变化。这时,一个在图像中某一区域效果良好的阈值在其它区域却可能效果很差。另外,当遇到图像中有阴影、突发噪声、照度不均、对比度不均或背景灰度变化等情况时,只用一个固定的阈值对整幅图像进行阈值化处理,则会由于不能兼顾图像各处的情况而使分割效果受到影响。在这些情况下,阈值的选取不是一个固定的值,而是取成一个随图像中位置缓慢变化的函数值是比较合适的。这就是自适应阈值。
自适应阈值就是对原始图像分块,对每一块区域根据一般的方法选取局部阈值进行分割。由于各个子图的阈值化是独立进行的,所以在相邻子图像边界处的阈值会有突变,因此应该以采用适当的平滑技术消除这种不连续性,子图像之间的相互交叠也有利于减小这种不连续性。
总的来说,这类算法的时间和空间复杂度都较大,但是抗噪能力强,对一些使用全局阈值法不宜分割的图像具有较好的分割效果。
(2)多阈值分割
在多阈值分割中,分割是根据不同区域的特点得到几个目标对象,所以提取每一个目标需要采用不同的阈值,也就是说要使用多个阈值才能将它们分开,这就是多阈值分割。
在实际的应用中,由于噪声等干扰因素,直方图有时不能出现明显的峰值,此时选择的阈值不能得到满意的结果;另外一个就是阈值确定主要依赖于灰度直方图,很少考虑图像中象素的空间位置关系,因此当背景复杂,特别是在同一背景上重叠出现若干个研究目标时,容易丧失部分边界信息,造成图像分割的不完整[9]。
2.4 基于边缘检测的分割方法
边缘(或边沿)是指其周围像素灰度有阶跃变化或“屋顶”变化的那些像素的集合,也即边缘是灰度值不连续的结果,这种不连续常可以用求导数方便的检测到,一般常用一阶导数和二阶导数来检测边缘。边缘广泛存在
于物体与背景之间、物体与物体之间、基元与基元之间。因此,它是图像
分割所依赖的重要特征,而边缘信息是一种图像的紧描述,所包含的往往是图像中最重要的信息,故对图像提取边缘能极大地降低我们要处理的数据量。
常见的边缘剖面有3种:
(1) 阶梯状边缘:阶梯状的边缘处于图像中两个具有不同灰度值的相
邻区域之间,可用二阶导数的过零点检测边缘位置;
(2)脉冲状边缘:主要对应细条状的灰度值突变区域,通过检测二阶导
数过零点可以确定脉冲的范围;
(3) 屋顶状边缘:屋顶状边缘位于灰度值从增加到减少的变化转折点,通过检测一阶导数过零点可以确定屋顶位置。
图3 常见边缘剖面
虽然图像边缘点产生的原因不同,但他们都是图像上灰度不连续点,或是灰度变化剧烈的地方。
经典的边缘提取方法是考察图像的每个像素在某个邻域内灰度的变化,利用边缘邻近一阶或二阶方向导数变化规律,用简单的方法检测边缘。这
种方法称为边缘检测局部算子法。边缘检测算子检查每个像素的邻域并对灰度变化率进行量化,也包括方向的确定。常用的边缘检测方法的基础是
微分运算,边缘点对应于一阶微分幅度大的点,或对应于二阶微分的过零点。
传统的边缘检测算法通过梯度算子来实现,在求边缘的梯度时,需要对每个象素位置计算。经典的梯度算子模板有Prewitt模板、Canny模板、
Sobel模板、Log模板等[10]。
边缘检测的几种经典算法:
(1)Canny 算子
Canny 边缘检测利用高斯函数的一阶微分,在噪声抑制和边缘检测之间寻求较好的平衡,其表达式近似于高斯函数的一阶导数。Canny 边缘检测算子对受加性噪声影响的边缘检测是最优的。
(2)Prewitt 和Sobel 算子
Prewitt从加大边缘检测算子的模板大小出发,由2×2 扩大到3×3 来计算差分算子,采用Prewitt算子不仅能检测边缘点,而且能抑制噪声的影响。Sobel 在Prewitt 算子的基础上,对4-邻域采用带权的方法计算差分,该算子不仅能检测边缘点,且能进一步抑制噪声的影响,但检测的边缘较宽。
(3)Log算子
Log算子也就是Laplacian-Gauss算子,它把Gauss平滑滤波器和Laplacian锐化滤波器结合了起来,先平滑掉噪声,再进行边缘检测。
边缘检测算法有如下四个步骤:
1) 滤波: 边缘检测算法主要是基于图像强度的一阶和二阶导数, 但导数的计算对噪声很敏感, 因此必须使用滤波器来改善与噪声有关的边缘检测器的性能。需要指出, 大多数滤波器在降低噪声的同时也导致了边缘强度的损失, 因此,增强边缘和降低噪声之间需要折衷。
2) 增强: 增强边缘的基础是确定图像各点邻域强度的变化值。增强算法可以将邻域(或局部)强度值有显著变化的点突显出来。边缘增强一般是通过计算梯度幅值来完成的。
3) 检测: 在图像中有许多点的梯度幅值比较大, 而这些点在特定的应用领域中并不都是边缘, 所以应该用某种方法来确定哪些点是边缘点。最简单的边缘检测判据是梯度幅值阈值判据。
4) 定位: 如果某一应用场合要求确定边缘位置, 则边缘的位置可在子像素分辨率上来估计,边缘的方位也可以被估计出来。
各个边缘检测算子比较:
Sobel 算子和Prewitt 算子: 都是对图像先作加权平滑处理, 然后再作微分运算, 所不同的是平滑部分的权值有些差异, 因此对噪声具有一定
的抑制能力, 但不能完全排除检测结果中出现的虚假边缘。虽然这两个算子边缘定位效果不错, 但检测出的边缘容易出现多像素宽度。
Log 算子: 该算子克服了拉普拉斯算子抗噪声能力比较差的缺点, 但是在抑制噪声的同时也可能将原有的比较尖锐的边缘也平滑掉了, 造成这些尖锐边缘无法被检测到。
Canny 算子: 该算子同样采用高斯函数对图像做平滑处理, 因此具有较强的抑制噪声能力, 同样该算子也会将一些高频边缘平滑掉,造成边缘丢失。
综上所述, 前面所介绍的各个算子各有各的特点和应用领域, 每个算子只能反映出边缘算法性能的一个方面, 在许多情况下需要综合考虑[12]。
该类方法对边缘灰度值过渡比较尖锐且噪声较小等不太复杂的图像,大都可以取得较好的效果。但对于边缘复杂、采光不均匀的图像来说,则效果不太理想,主要表现在边缘模糊、弱边缘丢失和整体边缘不连续等方面。在噪声较大的情况下常用的边缘检测算法,如Marr 算子,递归滤波器和Canny 算子等都是先对图像进行适当的平滑,抑制噪声,然后求导数,或者先对图像进行局部拟合,然后再用拟合的光滑函数的导数来代替直接的数值导数。Canny 算子较为简单,而且考虑了梯度方向,效果比较好[13]。
要做好边缘检测, 首先要清楚待检测的图像特性变化的形式从而使用适应这种变化的检测方法。其次要知道特性变化总是发生在一定的空间范围内,不能期望用一种检测算子就能最佳检测出发生在图像上的所有特性变化。当需要提取多空间范围内的变化特性时,要考虑多算子的综合应用。第三, 要考虑噪声的影响其中一个办法就是滤除噪声, 这有一定的局限性再就是考虑信号加噪声的条件检测利用统计信号分析或通过对图像区域的建模而进一步使检测参数化。第四,可以考虑各种方法的组合, 如先找出边缘然后在其局部利用函数近似通过内插等获得高精度定位。第五,在正确检测边缘的基础上要考虑精确定位的问题[14]。
2.5基于区域的分割方法
基于区域的图像分割是根据图像灰度、纹理、颜色和图像像素统计的均匀性等图像的空间局部特征,把图像中的像素划归到各个物体或区域中,进而将图像分割成若干个不同区域的一种分割方法。基于区域的分割方法
主要有区域生长法、分裂合并法。
区域生长法、分裂合并法:
区域生长法的基本思想是根据一定的相似性准则,将图像中满足相似
性准则的像素或子区域合成更大的区域;分裂合并法是从整个图像出发,根据图像和各区域的不均匀性,把图像或区域分割成新的子区域,根据毗邻区域的均匀性,把毗邻的子区域合并成新的较大的区域。这两种方法通常相
结合,以便把相似的子区域合并成尽可能大的区域。区域生长的固有缺点
是分割效果依赖于种子的选择及生长顺序,区域分裂技术的缺点是可能破坏边界,所以它们常常与其他方法相结合,以期取得更好的分割效果[15]。
区域生长算法的研究重点:(l)特征度量和区域增长规则的设计;(2)算法的高效性和准确性。区域生长方式的优点是计算简单。与闭值分割类似,区域增长也很少单独使用,往往是与其它分割方法一起使用。
区域生长的缺点是:(l)它需要人工交互以获得种子点,这样使用者必
须在每个需要抽取出的区域中植入一个种子点;(2)区域增长方式也对噪声敏感,导致抽取出的区域有空洞或者在局部体效应的情况下将分开的区域
连接起来。
在区域合并方法中,输入图像往往分为多个相似的区域,然后类似的相邻区域根据某种判断准则迭代进行合并。在区域分裂技术中,整个图像先
被看成一个区域,然后区域不断被分裂为四个矩形区域,直到每个区域内部都是相似的,分裂合并方法中,区域先从整幅图像开始分裂,然后将相邻的
区域进行合并。分裂合并方法不需要预先指定种子点,它的研究重点是分
裂和合并规则的设计。但是,分裂合并技术可能会使分割区域的边界破坏[2]。
和阈值法一样,区域生长法一般不单独使用, 而是放在一系列处理过
程中。它主要的缺陷是, 每一个需要提取的区域都必须人工给出一个种子点, 这样有多个区域就必须给出相应的种子个数。此法对噪声也很敏感, 会造成孔状甚至是根本不连续的区域, 相反的, 局部且大量的影响还会使本来分开的区域连接起来[4]。。

相关文档
最新文档