资源描述:
《基于活动轮廓模型的图像分割方法研究【开题报告+文献综述+毕业论文】》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
本科毕业论文系列开题报告电子信息工程基于活动轮廓模型的图像分割方法研究一、课题研究意义及现状自上世纪七十年代起,随着计算机技术的发展和广泛应用,图像处理与计算机视觉受到了很多学者的重视,新技术和新的理论不断涌现,并在人民的生活、工业生产和军事技术等领域得到了广泛的应用。图像分割为更高层的图像处理和计算机视觉操作提供基础工作,其分割效果的好坏直接影响到后续的图像处理工作,对最终的处理结果造成很大的影响,图像分割也是图像分析很关键的技术。随着图像分割技术的发展,几十年来,研究人员为之付出了很大的努力,发表了相当多的图像分割的研究成果和方法。但绝大多数算法都有着局限性,只适用于相对的某些特定类型的图像,所以目前还没有研究出一种统一有效的可以分割所有类型图像的方法,例如有些算法在进行分割前需要做预处理。由于判定图像分割效果好坏的标准是不确定的,只能根据具体的场合来做针对性的判断。鉴于图像分割结果的质量对后续图像分析和理解的重要性,所以,深入研究图像分割技术对于提高图像分析和图像理解系统的性能以及提高图像处理技术的应用水平,都有很深远的意义。 研究者所已经提出的基于活动轮廓模型的图像分割方法有很多种,根据轮廓线的表示形式不同可以分为参数活动轮廓模型、传统水平集活动轮廓模型和近年来出现的非传统水平集活动轮廓模型。参数轮廓模型的轮廓线通常用点集或者B样条曲线表示,而传统和非传统的水平集活动轮廓模型是分别由他们的水平集函数的零水平集来表示,其中传统水平集函数是一个符号距离函数,而非传统水平集函数则对前者进行了简化,常以分段函数的形式出现。活动轮廓模型与其他分割算法相比有形式多样、结构灵活、性能优越等优点,其中活动轮廓模型中的每一类模型都可细分成若干个经典的活动轮廓模型,它的结构能融合多种信息,如图像区域特征、图像边缘以及目标形状特征等,其优越的性能体现在活动轮廓模型一方面具备使轮廓线平滑的约束条件,另一方面它可以融合多种信息。存在优点的同时也不可避免的有一些难以克服的缺陷和不足之处,比如,活动轮廓模型在图像分割前必须进行初始化,参数活动轮廓模型不能自动处理轮廓线的拓扑变化,传统的水平集活动轮廓模型在运算时间上花费巨大等。这些缺点是需要去研究,去进一步弥补的。可以在已有的图像分割算法基础上,针对不同的缺点进行研究,或者将不同的模型进行结合,取长补短,以实现更简单,更完整的图像分割,并得到最好的效果。本文所做的研究是基于水平集活动轮廓模型的图像分割,水平集方法有很多的优点,该方法能较容易的实现低维向高维的扩展,有利于实现三维立体图像的分割,它的演化曲线的几何特征能用水平及函数直接计算得出,水平集函数的零水平集可以自然处理变拓扑结构,在保持速度函数为连续的光滑函数的情况下,水平集函数就始终为可微函数,从而可以利用离散的有限差分法实现其数值近似算法。对于图像分割得到更好的效果有着很大的帮助。二、课题研究的主要内容和预期目标研究内容:基于活动轮廓模型的图像分割算法,研究基于活动轮廓模型的图像分割算法。具体要求:1、了解活动轮廓模型的基本内容。2、掌握几种常用的图像分割算法。3、研究一种基于活动轮廓模型的图像分割算法。4、基于VC平台进行实验仿真调试,分析算法性能,给出实验结果。预期目标:研究出一种基于活动轮廓模型的图像分割算法,分析其性能,实验仿真得出最后结果。三、课题研究的方法及措施本课题研究主要为理论方面的研究,因此采取理论分析和计算机实验仿真相结合的研究方法,属于理论性方法。具体措施如下:首先,先通过重点学习活动轮廓模型的图像分割所涉及的基本原理和内容。其次,在了解的基础上掌握几种常用的活动轮廓模型的图像分割算法,对这些方法进行分析。第三,针对基于水平集活动轮廓模型的图像分割算法进行研究,在已有的算法上进行适当的改进,研究编码实现改进的编码算法。最后,通过VC平台,编程实现改进的水平集活动轮廓模型的图像分割算法的编码,进行仿真调试以了解编码的缺陷,并加以完善。流程框图: 确定封闭初始轮廓原始图像水平集法曲线演化得到曲线族迭代终止得到分割图像四、课题研究进度计划毕业设计期限:自2010年10月9日至2011年5月18日。第一阶段(4周):分析任务,收集资料,算法初步设计,完成开题报告、文献综述、外文翻译。第二阶段(4周):算法详细设计与程序实现,撰写设计报告与论文。第三阶段(2周):算法仿真、测试,论文修改。五、参考文献[1]王志勇,池哲儒,余英林.分形编码在图像检索中的应用[J].电子学报,2000,28(6):19~23.[2]毛红达.基于区域活动轮廓模型的图像分割[D].浙江:浙江大学,2008.[3]王大凯,侯榆青,彭进业.图像处理的微分方程方法[M].北京:科学出版社,2008.[4]章毓晋.图像工程(中册)[M].北京:清华大学出版社,2005.[5]付峰,应义斌.生物图像阈值分割方法的研究[J].浙江大学报,2003,29(1):108~112.[6]黄艺,杜宇人.基于边缘信息的图像分割技术研究[J].现代电子技术,2005,5:116~20.[7]曹远星,董宇宁.蛇模型综述[J].信息技术,2006,3:113~116.[8]X.Yang,D.J.Sorlovitz,L.T.Cheng,W.E.LevelSetSimulationsofDislocation-ParticlebypassMethanisms.ActaMater,2004,52:1745~1760.[9]S.Osher,J.Sethian,Frontspropagationwithcurvature-dependentspeed:AlgorithmsbasedonHamilton-Jacobiformulation.JournalofComputationalPhysics,1988,79(1):12~49.[10]CasellesV,KimmedR,SapiroG.Geodesicactivecontours[C].FifthInternationalConferenceonComputerVision,1995,3:694~699.[11]蒋晓悦,赵荣樁.一种改进的活动轮廓图像分割技术[J].中国图象图形学报,2004,9(9):1019~1024. [12]李俊,杨新等.基于Mumford-Shah模型的快速水平集图像分割方法[J].计算机学报,2002,25(11):1175~1183. 毕业论文文献综述电子信息工程图像分割方法综述摘要:图像分割是图像理解的基础,图像分割的算法研究越来越受到关注,早期的图像分割算法在之后的研究中得到完善。活动轮廓模型是图像分割和边界提取的重要工具之一,主要包括了参数形式活动轮廓模型和几何形式活动轮廓模型两大类,本文对这两类模型进行了大概的说明,简单叙述了相对的优点,如几何活动轮廓模型在变形的过程中能处理曲线拓扑变化。鉴于活动轮廓模型所存在的缺点,提出了水平集算法,使得计算的范围和简易程度有了很大的发展。最后指出了图像分割的算法还有一些进一步优化的研究发展方向。关键词:图像分割,参数活动轮廓模型,几何活动轮廓模型,水平集1.引言对图像进行处理,通过图像分割、目标分离、特征提取、参数测量等技术,将原始的图象转化为更抽象更紧凑的形式,使得更高层的图像分析和理解成为可能。其中图像分割已经越来越受到人们的关注,作为一种图像处理与计算机视觉操作的预处理手段,已经应用到了很多的领域,图像分割可以定义为:根据图像特征对图像进行区域划分[1]过程,图像分割的效果好坏会直接影响到后续的处理结果,所以图像分割是一个基本而又关键的技术,为此人们提出了很多有效的、具有鲁棒性的分割算法。图像分割方法有很多,按知识的特点和层次可分为数据驱动和模型驱动两大类[2],前者有Roberts算子、Sobel算子和Canny算子、阈值分割、分水岭算法和模糊聚类分割算法等;后者是直接建立在先验知识的基础上的,如基于活动轮廓模型的图像分割。水平集的应用领域是隐含曲线(曲面)的运动[3],现在水平集已经广泛应用于图像恢复、图像增强、图像分割、物体跟踪、形状检测与识别、曲面重建、最小曲面、最优化以及流体力学中的一些方面。一个好的图像分割算法应具有以下特点:1、有效性,能将图像中感兴趣的区域或目标分割出来的有效规则。2、整体性。能得到图像中感兴趣区域或目标的无断点和离散点的封闭边界。3、精确性,分割所得到的感兴趣区域或目标边界与实际情况贴近。4、稳定性,算法受噪声的影响性很小。5、自动化,分割过程不需要人工的干预。但是让一种具体的图像分割方法全部满足上述特点是很难的,各种图像分割的方法都存在着必然的局限性,所以只能根据不同的适用领域和所要分割的图像区域特征来选择所对应的图像分割方法。 2.早期的图像分割方法早期的图像分割方法,根据方法所利用的图像特征,分为边界法和区域法两类[4]。前者是根据区域间像素特征的突变性或不连续性实现;后者是通过架设分割结果的某子区域具有一定的相似性质,而不同区域的像素没有共同性质,即通过判断区域的相似性来进行的分割。它们都存在着各自的优点和缺点,基于区域分割的方法,常见的有:阈值法[5],常用的并行区域分割技术,阈值是用于区分不同目标的灰度值,选择合适的阈值是该分割法的关键;区域生长法:从图像的某个像素出发,按一定的准则对领域像素点进行判断,将符合要求的像素点逐步加入,至满足一定条件时终止。此方法计算简单,但需要人为的设置初始点,对噪声敏感;分裂合并法:从整个图像出发,不断分裂成各个子区域,按照一定条件对前景区域进行合并,该方法虽分割效果好,但算法复杂,计算量大,也有可能破坏区域的边界等。基于边缘的分割算法可分为并行边缘检测和串行边缘检测两种[6],并行边缘检测是基于图像边缘处的灰度值不连续性,而利用微分算子进行检测,常用的有Roberts算子,Prewitt算子,Sobel算子,Laplace算子,Marr算子,Krisch算子等。而串行边界分割不但利用了本身像素的信息,还利用了其他已处理的像素信息,常用的算法有边界跟踪。在实际应用中,为了更好的分割效果,经常把各种的分割算法结合起来用,这也成为了图像分割的重点研究方向之一。3.图像分割的发展3.1参数形式的活动轮廓模型(snake模型)(2-1)1987年,Kass等人提出来参数活动轮廓模型(Snake模型),(2-1)为Snake模型的能量函数表示,将一系列的图像处理问题统一的转换为能量极小化的问题。跟其他传统方法一样,传统的参数活动轮廓模型存在很多的局限性,由于模型是由演化曲线自身的内力和图像信息的外力构成的,由内力约束它的形状,外力引导它的行为,模型外力的作用范围小是很大的缺陷,而且,这个方法对轮廓的初始位置敏感,不能收敛到轮廓的凹陷区域及处理拓扑变化,计算复杂度也很高。针对外力的缺陷,在后期的研究中产生了很多改进版的模型,Cohen等人在模型外力中,为了使得模型轮廓在图像同质区域内能够稳定的进行收敛,增加了一项气球膨胀力。Xv等人提出的GVF(GradientVectorFlow)模型和广义GVF(Generalized GVF)模型,这两个模型在扩大外力作用范围上有很大的帮助,同时也可以扩大收敛的凹陷区域。Li等人提出的VFC(VectorFieldConvolution)模型在有上述作用的基础上,同时对图像噪声具有一定的鲁棒性[7]。由于传统的参数轮廓模型采用的是变分法来极小化能量模型,而变分法需要较高阶次的求导和对能量函数连续的要求,导致数值计算的稳定性较差和一些约束性条件不能有效的运用。Amini等人提出的基于动态规划(DynamicProgramming,DP)的优化算法可以去掉变分法的求导过程,但是计算复杂度是O(),Williams和Shah在此基础上提出了一种局部最优的贪婪优化算法(GreedyOptimization)在保持动态规划等优点的基础上,使得计算复杂降为O(nm)。3.2水平集方法水平集(LevelSet)函数以隐含的方式表达基于几何活动轮廓模型的轮廓曲线运动[8],最先是由Osher,Sethian[9]提出,当时提出是用来求解描述火苗外形变化的偏微分方程。水平集方法是将演化曲线嵌入到比它高一维的水平集函数中,得到。传统的水平集函数定义如(2-2)所示,其中表示坐标到曲线C的距离。嵌入其中的曲线C随着高维函数的变化而变化,所以当是被确定的时候,曲线C一定是确定的。(2-2)水平集方法的优点如下:a.能较容易的实现低维向高维的扩展,能轻易的将二维平面演化问题扩展到三维闭合曲面上,有利于实现三维立体图像的分割。b.演化曲线的几何特征可以用水平集函数直接计算出来。c.水平集函数的零水平集可以自然的处理变拓扑结构。d.只要速度函数F保持为连续的光滑函数,水平集函数就始终为可微函数,从而利用离散的有限差分法实现其数值近似算法。3.3几何形式的活动轮廓模型几何活动轮廓模型是由Caselles等人与Malladi等人分别 独立提出的首个水平集活动轮廓模型[10],基于曲线进化理论和水平集的思想,先将平面闭合曲线隐含的表达为二维曲面函数的水平集,再通过曲面的进化来隐含的求解曲线的进化,相对于Snake模型,可以处理曲线的拓扑变化、对初值不敏感、具有稳定唯一的数值解。最初的几何轮廓模型对于边缘不明显或不连续的图像处理效果不理想[11]。Caselles等人通过测地活动轮廓模型(geodesicactivecontour)解决这个问题,当轮廓曲线越过正确的物体边缘的时候对曲线修正,该模型采取了与原始Sanke模型相似的设计模式,以间接的方式来设计轮廓线的演化方程。测地活动轮廓模型关于演化曲线C的能力泛函被定义为(2-3),其中g表示图像的边缘指示函数。(2-3)测地活动轮廓模型的水平集方程可以写为(2-4)(2-4)Mumford和Shah于20世纪80年代提出一种模型[12],综合了图像的边界和区域信息,此模型利用同质区域的相似性原则来驱使活动轮廓向目标物体边界逼近,对模糊或不连续的边界的分割效果很好,因为此模型的轮廓线演化与边界的梯度无关。Mumford-Shah模型同时将图像分割、噪声去除和图像重建用一个广义能量泛函的最小值问题来描述。4.未来的发展趋势讨论图像分割是一个很复杂的问题,需要不断的进一步的研究和改进问题,本文大概的罗列了一些图像分割的方法,阐述了方法的一些优缺点,在保持优点的基础上,如何去对缺点进行研究,使其克服,是很重要的任务。在参数活动轮廓模型方面,可以在新的外力模型或者对现有模型改进来克服对初始值和噪声方面的问题。计算量庞大的几何活动轮廓模型算法方面,可以研究如何简化计算,加快算法的收敛速度等等。参考文献:[1]王志勇,池哲儒,余英林.分形编码在图像检索中的应用[J].电子学报,2000,28(6):19~23.[2]毛红达.基于区域活动轮廓模型的图像分割[D].浙江:浙江大学,2008.[3]王大凯,侯榆青,彭进业.图像处理的微分方程方法[M].北京:科学出版社,2008.[4]章毓晋.图像工程(中册)[M].北京:清华大学出版社,2005.[5]付峰,应义斌.生物图像阈值分割方法的研究[J].浙江大学报,2003,29(1):108~ 112.[6]黄艺,杜宇人.基于边缘信息的图像分割技术研究[J].现代电子技术,2005,5:116~20.[7]曹远星,董宇宁.蛇模型综述[J].信息技术,2006,3:113~116.[8]X.Yang,D.J.Sorlovitz,L.T.Cheng,W.E.LevelSetSimulationsofDislocation-ParticlebypassMethanisms[J].ActaMater,2004,52:1745-1760.[9]S.Osher,J.Sethian,Frontspropagationwithcurvature-dependentspeed:AlgorithmsbasedonHamilton-Jacobiformulation[J].JournalofComputationalPhysics,1988,79(1):12~49.[10]CasellesV,KimmedR,SapiroG.Geodesicactivecontours[C].FifthInternationalConferenceonComputerVision,1995,3:694-699.[11]蒋晓悦,赵荣樁.一种改进的活动轮廓图像分割技术[J].中国图象图形学报,2004,9(9):1019~1024.[12]李俊,杨新等.基于Mumford-Shah模型的快速水平集图像分割方法[J].计算机学报,2002,25(11):1175~1183. 本科毕业设计(20届)基于活动轮廓模型的图像分割方法研究 摘要图像分割作为图像理解的基础,是图像处理和计算机视觉中一个关键的步骤,对现代人的生产、生活都有着很高的应用价值,这方面的研究受到了广泛的重视。传统的非模型的分割方法有着很大的缺陷,利用模型所完成的图像分割有更好的分割效果。目前的研究主要划分为依赖边界的分割与依赖区域的分割两种,也有两者相结合的分割方法。活动轮廓模型属于基于边界的分割。活动轮廓模型主要包括参数轮廓模型和几何轮廓模型两类。几何活动轮廓模型在近些年被广泛的应用于非刚性物体的分割中,与传统的分割算法相比,展现了它更高的优越性。水平集方法的出现,对活动轮廓模型计算复杂度比较高、图像弱边缘收敛性比较差等问题的解决有着很大的推动。将传统的水平集方法与参数主动轮廓模型相结合,对计算量和计算时间的减少起到了很大的帮助。本文所做的研究是主要针对基于水平集的活动轮廓模型图像分割,具体采用了改进的C-V模型,它的演化曲线的几何特征能用水平集函数直接计算得出,通过迭代方程得到更高维函数,水平集函数的零水平集可以自然处理变拓扑结构,在保持速度函数为连续的光滑函数的情况下,水平集函数就始终为可微函数,从而可以利用离散的有限差分法实现其数值近似算法,得到贴近图像感兴趣目标的最终轮廓线,最后得到带轮廓线的图像。关键词:图像分割,活动轮廓模型,水平集,演化曲线,可微函数,零水平集 AbstractImagesegmentationisthebasicofimageunderstanding,andit'sakeystepinimageprocessingandcomputervisionthathavehighapplicationtothemodernlife,peoplepayahighlyattentiontothisaspect.Thetraditionalnon-modelhasagreatdefectonthesegmentation;usingthemodelcangetabettersegmentationeffect.Currentresearchisdividedintothesegmentationthatdependdependentboundarysegmentationandregionsegmentationoftwodependent,andalsotheboth.Activecontourmodelisbasedonthesegmentationofboundary,includingparameterscontourmodelandgeometriccontourmodel.Geometricactivecontourmodelsarewidelyusedinthesegmentationofnon-rigidobjectintheseyears,comparedwiththetraditionalalgorithm,ithasmoreadvantages.Theemergenceofthelevel-sethasgreatadvantagestosolvetheproblemthatthehighlydifficultofcomputingtheactivecontourmodel,andthepooredgesofimage.Combinationoflevel-setandparameterscontourmodelplayedagreathelptoreducetheamountofcomputationandcomputingtime.Thisstudywasdonemainlybasedontheimagesegmentationoflevel-setofactivecontourmodel,UsingthemodifiedC-Vmodel,thegeometricfeaturesofevolutioncurvecanbecalculatedinthefunctionoflevel-set,Throughtheiterativeequationtogetthehigherfunction,Thezerolevel-setofthelevel-set'sfunctioncanbevariabletopologynaturally,intheeventthatkeepingthefunctionofspeedcontinuouslyandslick,thefunctionoflevel-setcanbedifferentiableallalong,thenwecanusethediscretefinitedifferencemethodtoachieveitsnumericalapproximationalgorithmtogetclosetothetargetimageareinterestedinthefinalcontour,theresultingimagewithacontourline.Keywords:Imagesegmentation,activecontourmodel,levelset,evolutioncurve,differentiablefunction,zerolevelset 目录1引言12图像分割32图像分割的意义及目的32.2图像分割综述43基于活动轮廓模型的分割算法63.1基于活动轮廓模型的图像分割63.2参数活动轮廓模型(Snake模型)73.3几何活动轮廓模型84基于改进的水平集图像分割104.1改进活动轮廓模型(C-V模型)104.2改进C-V模型的水平集求解114.3算法流程124.4调试与结果14结论15致谢16参考文献17附录1程序编写19附录2科研论文23 1引言图像分析对于人类的生产生活都有着很大的帮助,随着计算机技术的发展和广泛应用,图像处理与计算机视觉受到了很多学者的重视,新技术和新的理论不断涌现,并在人民的生活、工业生产和军事技术等领域得到了广泛的应用[1]。图像分割作为一项基础工作,是服务于更高阶层的图像处理和计算机视觉操作的,图像分割所得到的效果好坏对后期的图像分析有直接的影响,从而对图像分析的最终结果造成很大的影响,所以它是图像分析至关重要的一项技术。几十年来,图像分割技术不断的前进,是与研究人员为之付出努力的结果,自图像分割技术得到广泛关注后,相当多的图像分割的研究成果和方法相继产生。虽然提成的算法有很多,但绝大多数算法都不是能广泛适用于任何图像的,大多都只适用于相对的某些特定类型的图像,所以目前还没有研究出一种万能的可以分割所有类型图像的分割算法。由于衡量图像分割结果的好坏是在特定图像、特定因素的基础上的,所以衡量的标准也是不绝对定的。关于经过图像分割后的结果质量对后续图像分析和理解的影响是很大的,由此可见更透彻的对图像分割技术的挖掘是必须的。一个好的图像分割算法应具有以下特点:1、有效性,具有将图像中感兴趣的区域或目标分割出来的有效规则。2、整体性,能得到图像中感兴趣区域或目标的连续的和离散的点的封闭曲线。3、精确性,图像分割后所得到的感兴趣区域或目标界线必须要与实际图像靠近。4、稳定性,不受噪声的干扰。5、自动化,分割过程不需要人工的手动完成[2]。但是让一种具体的图像分割方法全部满足上述特点是很难的,各种图像分割的方法都存在着必然的局限性,所以只能根据不同的适用领域和所要分割的图像区域特征来选择所对应的图像分割方法。经过多年来研究者们的研究,已经提出的基于活动轮廓模型的图像分割方法有很多种,活动轮廓模型与其他分割算法相比,其优越的性能体现在活动轮廓模型同时具备使轮廓线平滑的约束条件和融合多种信息的优点。虽然活动轮廓模型有如上所述的这些优越性,但是缺点也是存在的,比如,当目标图像的轮廓线产生拓扑变化,参数活动轮廓模型就无法判断,导致分割中止,传统的水平集的活动轮廓模型运算时间太长,活动轮廓模型每次分割前都要进行轮廓线的初始化,这些缺点是需要去研究,去进一步弥补的[3] 。可以在已有的图像分割算法基础上,针对不同的缺点进行研究,或者将不同的模型进行结合,取长补短,以实现更简单,更完整的图像分割,并得到最好的效果。本研究是基于水平集的活动轮廓模型的图像分割,在传统的水平集的活动轮廓模型的基础上进行进一步的完善。 2图像分割图像是人们用不同种类的观察测量系统通过不同形式和不同的手段观察客观世界而获得的,通过直接或间接作用于人眼而产生视觉的实体,包含了丰富的信息,是我们主要的信息来源[4]。我们把人们对图像中感兴趣的部分称为目标和前景,一幅图像中不是所有内容都是人们需要的,人们一般都是对图像里的部分内容感兴趣,为了突出这些感兴趣区域,就需要将它们从图像中分割提取出来,作为后续目标研究的基础。把感兴趣目标从原始图像中分成不同部分,然后提取的途径和操作方式就叫做图像分割。2图像分割的意义及目的图像技术有很多类别,包含的内容量也很大,对图像进行处理的方式组成了图像技术,所有的图像技术可以用一个框架整理成图像工程,如图(图2-1),图像工程从方法和程度上可分为处理、分析和理解这三个层次[5]。操作对象符号目标像素图像理解图像分析图像处理参数测试目标表达图像分割图2-1图像工程分割和测量原始图像中的感兴趣的目标的过程就是图像分析[6],通过图像分析把原始图像中的图像理解重点着重突显出来,作为进一步研究的详细内容,这样后续研究的过程中就有了更明确的数据。图像分割作为一个关键的步骤,在图像工程中的分析到处理阶段占据着重要的位置(图2-1),对特征测量有重要的影响,因为图像分割可以将原始的图像转化为目标特征更清晰、紧凑的形式,从而使得更深层的图像分析、理解成为可能。总的来说,在各种图像应用中,只要是需要对图像目标进行提取、测量等都是离不开图像分割的。 鉴于图像分割在整个图像工程中的重要性,人们对图像分割进行了大量的研究,但目前为止还是没有找到一种适合于任何图像的通用分割算法,所以以此为方向的图像分割技术一直以来是图像技术的研究热点。因此,从基本原理、实际应用和最终分割效果等各方面来深入研究图像分割技术,对于图像理解和提高图像处理技术的应用水平都有十分重要的意义。2.2图像分割综述图像分割用直白的语言表达就是将原始图像中有意义的特征区域、感兴趣目标或者需要应用的特征区域提取出来,这些特征区域可以是图像的轮廓曲线、像素的灰度值等这些平面上的,在三维空间立体上的直方图等也可以被提取出来,在具体的应用中,如果能将图像中目标物体的边缘轮廓线找出来,就意味着对图像进行了分割。借助集合知识,对图像分割作如下定义[7]:令集合R代表整个图像区域,对区域R的分割可看成是将R分成N块区域(即将整个图像区域分割成N个子区域),子区域,,···,满足以下条件:是连通的区域,i=1,2,···,N;对任意的;;是评价区域中元素灰度一致性的逻辑谓语,满足,2,···,N;,,与相邻。图像分割后所产生的区域必须是一致的和最大的,其中“最大”是指一致性准则在合并任意两个相邻区域后就不再是真的了。根据上诉定义,图像分割大致可分为两类算法,利用区域内相似的基于区域的图像分割算法和利用区域间不连续的基于边界的图像分割方法。图像分割技术主要有:1、基于阈值的分割;2、基于边缘的分割;3、基于区域的分割;4、基于特定理论的图像分割[8] 。基于阈值的分割难以进行复杂的分割,因为阈值的选取是该方法的关键和难点,而复杂的分割阈值选取过程比较难选,阈值法虽然是图像分割算法中计算最简单和最易实现的一类算法,但它只考虑图像的灰度信息,当图像中不存在明显的灰度差异或者灰度值范围有很大的重叠时,分割出来的效果就不是很理想了,而且阈值法对图像的噪声和杂波比较敏感;基于边缘的分割是通过局部滤波来实现边缘检测,虽然其已充分利用了图像的局部信息,但在建立边缘轮廓连通性时仍具有一定的困难;基于区域的分割虽然利用了区域内的统计信息,但容易生出一些非正则边界和小孔,影响分割的效果。 3基于活动轮廓模型的分割算法活动轮廓模型是一个闭合曲线的模型,该模型可以是二维的闭合曲面也可以是三维或者更高维数的闭合曲面[9]。活动轮廓模型的轮廓线是内力和外力同时作用后向感兴趣的目标边界靠近运动的动态曲线,其目的是为了提取目标边界,初始轮廓线上的内部力量和外部力量可以通过计算一个模型轮廓线的能量函数得到。其中内力可以规范轮廓线,使其变得光滑,而外力可以使轮廓线不断的向目标边界逼近。3.1基于活动轮廓模型的图像分割自1988年Kass等人首次提出活动轮廓模型[10]以来,各种形式的活动轮廓模型渐渐的发展起来,根据轮廓线表示形式的不同,分为基于传统水平集的活动轮廓模型(轮廓线由符号距离函数的零水平集表示)、基于新型的水平集的活动轮廓模型(轮廓线是传统水平集函数的简化结果,形式多为分段函数)和基于参数的活动轮廓模型(轮廓线通常由点或B样条曲线来表示)。相比较而言,图像分割算法中基于活动轮廓模型的算法有以下这些优点[11]:按轮廓线划分的形式多。活动轮廓模型的轮廓线表达方式可以分成好几种,其中每一类模型通过改变一些参数项或加性结合,又可以分为很多种经典的活动轮廓模型,比如Mumford-Shah模型、梯度矢量流Snake模型(GVFSnake)、Chan-Vese模型等。功能优越。活动轮廓模型通常具备较完善的功能,因为活动轮廓模型除了有能让轮廓线变得平滑的约束条件之外,它所特有的结构还能灵活的包含很多种信息。灵活的模型结构。活动轮廓模型的结构可以灵活的包含很多种信息,像图像的目标形状特征和不连续的区域特征或是边缘等信息。如果将一些模型进行加性结合就可以得到新的模型,前提是这些模型的表现形式必须是互相一致的。但是由于活动轮廓模型在每次的图像分割前都要初始化轮廓线,当被分割的图像特征目标的轮廓线发生拓扑变化时,参数轮廓模型又无法智能的完成自动处理,传统水平集的活动轮廓模型需要很多时间来计算等缺点,活动轮廓模型在存在优点的基础上也还是存在着一些不足点,当然基于活动轮廓模型的图像分割在研究者们的不断努力下,正在完善中。 3.2参数活动轮廓模型(Snake模型)1987年,Kass等人提出参数活动轮廓模型(Snake模型),Snake模型的能量函数表示为(3-1):(3-1)将一系列的图像处理问题统一的转换为能量极小化的问题。参数活动轮廓模型是一种基于变分方法的图像分割模型,它首先提出了目标能量函数,然后通过求最小值,来达到对图像进行分割的目的[12]。跟其他传统方法一样,传统的参数活动轮廓模型存在很多的局限性,由于模型是来自演化曲线自身的内力和图像信息的外力构成的,由内力约束它的形状,外力引导它的行为,模型外力的作用范围小是很大的缺陷,而且,这个方法对轮廓的初始比较位置敏感,在计算方面也很复杂,对于轮廓的凹陷区域是做不到收敛效果的,也不能随着图像拓扑的变化而变化参数。在之后的研究中,Cohen等人针对该模型在收敛效果上的缺陷,在模型外力中增加了气球膨胀力,从而使得改进后的模型进行稳定的收敛。此外,Xv等人为了扩大模型外力作用范围和收敛到深度凹陷区域提出GVF(GradientVectorFlow)模型和广义GVF(GeneralizedGVF)模型[13]对更好的进行图像分割也有帮助。参数活动轮廓模型的轮廓曲线上的能量是由决定轮廓曲线平滑程度、控制其产生形变的内部能量和由图像具体参数决定的外部能量两部分组成,我们可以形象的将参数活动轮廓模型的轮廓线模拟成一条有很好的弹性的橡皮筋,受到内外两个能量的作用,会发生变化。外部能量在图像中目标的边界处的值是最小的。随着内部能量和外部能量的值越来越小,轮廓曲线就会能量值的减小而减缓运动。整条参数活动轮廓模型的轮廓曲线就是由轮廓曲线上点组成的。 Snake模型给出了一个具有统一性的方案,使得很大一部分视觉方面的问题得到了解决。鉴于Snake模型的优越性,该模型被大量的应用到不同领域中,如检测图像的边缘曲线、跟踪图像中的目标等。将Snake模型与之前其他图像分割技术相比较,该模型最大的优点是能将很多约束条件合并到一个特征提取过程里,这些约束条件包括轮廓线的初始值、图像中的特征目标的详细数据、目标轮廓特征等。活动轮廓模型的分割过程中,最重要的就是曲线的演化,而曲线演化就是把轮廓曲线上的能量值降到最小。因为系统的能量函数的极值是由图像能量项所引起的,所以能量函数的最小化是关键,能量函数的值越小越平衡。不连续的内部能量也会引起能量函数的稳定平衡态。能量函数是依赖于图像自身的,并可能具有局部极小值。所以,使用局部优化技术只能找到一个局部最小值,Snake模型对初始位置是很敏感的,为了在数值的计算中算得局部最小值,要将Snake的初始曲线放置在图像特征附近,就是要非常靠近真正的边界。即使非常靠近边界,也很难很好的收敛到凹陷的区域,因为每次目标的实际情况都不一样,但是调整初始曲线需要按照实际情况来改变公式每一项的权重系数[15]。除此外要在参数化的演化曲线上选择的离散点难度也是很高的,因为要在演化进行的过程中选择离散点,极有可能产生一些无效区域或者太集中的区域,这样的选取出来的离散点会使得计算后得到的边界为错误边界,同时也会影响收敛的效果,造成发散。另外,Snake模型还有一个明显的缺点,能量函数E(C)是依赖于轮廓曲线C的参数的,而不是独立计算的,即使对于同一个初始曲线,得到的能量函数结果会随着轮廓曲线的变动而改变。初始曲线的选择是要确定在目标物体的附近的,如果碰到一幅图像有多个目标物体的话,那么初始曲线就无法选取了,而Snake模型是无法处理没有确定初始曲线的情况的。3.3几何活动轮廓模型几何活动轮廓模型是一种形变的模型,是由Casellos和Malladi等人分别独立提出来的[16],它不仅是包含了边界信息的分割模型,也包含了区域信息,属于两个信息的结合,是一种高效的图像分析的方法,可以算是Snake模型的扩张模型,因为几何活动轮廓模型的图像分割技术克服了单独依靠边界信息和区域信息的技术缺点。基于几何活动轮廓模型的图像分割,在计算上是边界问题转化为能量函数的最优解方法,理论上实现了几何学和物理学。在继参数活动轮廓模型后,几何活动轮廓模型是形变模型的又一个质的发展。针对前文中参数活动轮廓模型的缺点,几何活动轮廓模型在一定程度上体现出了它的优势,是一种进步。该模型是在曲线演化理论和水平集方法的基础上的,曲线的演化是单独依靠曲线的几何参量(几何度量参数),如曲率、法线方向矢量以实现曲线拓扑变化,轮廓曲线运动过程是独立于轮廓曲线的参数[17] 。由于几何活动轮廓模型需要的参数比较少,所以也容易实现。跟其他的图像分割方法比,该模型有它的优势,当然也有不足的地方,比如直接在模型上施加外来的交互力和约束条件上有一定的困难。以水平集方法为基础的几何活动轮廓模型已经受到了广泛的关注和应用,如图像分割、运动分割与目标的跟踪、立体视觉和图像修复。(3-2)几何活动轮廓模型的轮廓线是按照偏微分方程(3-2)运动的,一条运动曲线,其中任意参数形式为s,时间t,曲线的内向法向矢量N,(3-2)偏微分方程可以理解为:轮廓曲线C是沿着曲线的法向矢量以速度V运动的。轮廓曲线的曲率为K,曲率能使运动中的轮廓曲线保持平滑性。曲线进化理论中曲率变形和常数变形[18]是重点,曲率变形方程(3-3):(3-3)曲率变形方程中,α是常数且为正,由于曲率是保持轮廓曲线的平滑性的,所以该曲率方程对轮廓曲线起到的是平滑的作用,它可以让轮廓去选最终缩成一个点,这个作用和参数活动轮廓模型中内部能量起到的作用是极其相近的。另一个常数变形方程为(3-4)(3-4)方程中决定了变形的速度和变形的方向。该变形与参数活动轮廓模型中的气球力作用相似。以上所述可以看出,几何活动轮廓模型的研究重点是速度函数,该模型通过变形速度和图像数据的结合来使变化中的曲线在特征目标边界上终止的。 4基于改进的水平集图像分割4.1改进活动轮廓模型(C-V模型)由于早期活动轮廓模型的一些缺陷,近年来活动轮廓模型与水平集方法相结合的曲线演化方法已经成为研究者们广泛研究的重点。这种将活动轮廓模型与水平集方法相结合的方法是以轮廓曲线的几何特性为基础,得到轮廓曲线运动的能量函数,然后求能量函数的最小值,使得轮廓曲线逐渐靠近感兴趣区域的目标边界,并利用水平集函数将轮廓曲线运动方程转化为求解数值偏微分方程。Chan-Vese模型(C-V模型)[19]是基于区域的活动轮廓模型,它的具体思想如下:设有图像I,其定义域为Ω,所求的轮廓为闭合曲线C把图像I分成两部分,表示闭合曲线内部,表示闭合曲线的外部,设,分别是闭合曲线内部和外部的平均灰度值,则函数:(4-1)只有C位于两个同质区域边界时有最小值。加上平滑项(长度和面积项),得到C-V能量模型:(4-2)其中C代表演化曲线,是闭合曲线C的长度,是曲线内部面积,,,,是各部分的能量权重系数,满足。C-V模型只利用图像的灰度信息,没有用梯度信息,对目标和背景差别明显的图像能得到很好的分割效果,但对差别不明显的图像不能得到很好的分割,所以本文在C-V模型的基础上加上具有图像梯度信息的边缘检测算子,使算法对目标和背景差别不明显的图像也能得到比较好的分割效果。边缘检测算子通常被定义为: (4-3)其中表示空间梯度算子,表示标准方差为σ的Gaussian滤波器,*表示卷积算子。改进后的C-V模型迭代方程为:(4-4)4.2改进C-V模型的水平集求解由水平集方法知,所求轮廓线为水平集函数中的零水平集,即,是由初始轮廓线构造的符号距离函数,设为内负外正[20]。可以证明,以水平集的方法表达的轮廓线长度为:(4-5)轮廓线内部面积为:(4-6)其中H函数定义为:(4-7)是Dirac测度函数。则(4-3)用水平集函数表示为:(4-8)运用欧拉-拉格朗日方法推导求解(4-8),其偏微分方程为: (4-9)离散化以后变为:(4-10)其中用下式求解:,(4-11)和采用以下正则化函数可以将能量函数最小化,在(4-9)中用(4-12)的函数可以应用到全局水平集上:,(4-12)是曲率,由下式求出:(4-13)由此,在图像中任意设定一条闭合轮廓线,由此闭合曲线得到符号距离函数,也即初始水平集函数,将带入迭代方程(4-10)求迭代后的水平集函数,给出一个迭代收敛的条件或者设定一个迭代次数,满足条件时停止迭代,在迭代后的水平集函数中找到为零的点即为图像目标边界。4.3算法流程根据前文中的阐述,划分图像分割步骤如下:(1)以图像中心为原点,10为半径的圆作为分割的初始轮廓线。 (1)根据求得符号距离函数,即初始水平集函数。(2)根据当前水平集函数,计算,,,和轮廓曲线率。(3)根据当前,,和,利用式(4-10)计算。(4)检查迭代是否收敛,若不收敛,返回步骤(4),继续计算,若收敛,停止计算,得到最后水平集函数。(5)找到最后水平集函数中值为零的点,即为目标边界。分割结束。图4-1V-C模型图像分割流程框图 4.4调试与结果下面采用上述方程所描述的改进的Chan-Vese模型对图像进行分割。图4-2a是原始图像,初始轮廓曲线以图像的中心为原点,半径为10的圆,对曲线进行演化,采用模型对图像进行分割的最终结果为图4-2b所示图像。从轮廓线看,分割效果比较好。图4-2a原始图像图4-2b分割结果对第二幅图片进行该模型的图像分割,图4-3a是原始图像,初始轮廓曲线以图像的中心为原点,半径为10的圆,曲线演化后模型处理的分割结果为图4-3b。结果可以看到该模型可以主动探测到目标的轮廓,轮廓线把图像内的感兴趣目标都检测出来了,效果明显。图4-3a原始图像图4-3b分割结果对第三幅图片进行该模型的图像分割,图4-4a是原始图像,曲线演化后模型处理的分割结果为图4-4b。分割参数与前面两张相同,得到的分割效果明显。图4-4a原始图像图4-4b分割结果 结论本文主要研究了基于活动轮廓模型的相关图像分割的基本理论和研究进展以及在图像分割中的应用,重点分析了Chan-Vese模型的分割方法,进行了详细的介绍,同时也对水平集方法进行了详细的分析,针对水平集中的距离函数进行改进。实验表明C-V模型可以对图像进行很好的分割,是一个理论完善、分割效果理想的模型。利用C-V模型的基础提出了改进的方法,把水平集方法应用到改进的模型中,是的模型对图像分割的能力得到了提高,减少了分割的时间,并给出了实现分割的算法步骤和流程图。改进的方法与原有的方法相比有更好的全局收敛特性,相对于传统的方法,该方法易于实现、目标定位准确、有更好的分割效果,有效地提取图像中的目标。该模型还有进一步需要改进的一些地方,比如探讨更有效的迭代终止的规则,比如扩展模型建立的思路,本研究是加入了梯度信息,以后的研究中还可以加入一些其它的有用信息,以建立更好的模型,还有改进算法,使得初始轮廓线可以根据不同的图像选取不同的初始轮廓线,提高算法的收敛速度。改进后的C-V模型的分割时间虽然已经降低了,但还是需要加强的,如何实现更加快速的曲线的演化,利用一些算法的加性结合,使得计算更短,从而更好的在实际中应用。 参考文献[1]朱志刚,石定机.数字图像处理[M].北京:电子工业出版,2002,1.[2]毛红达.基于区域活动轮廓模型的图像分割[D].浙江:浙江大学,2008.[3]刘苗苗.几何活动轮廓模型在图像分割中的应用研究[D].南京:南京航空航天大学,2007.[4]SethianJA.Levelsetmethodsandfastmarchingmethods:Evdvinginterfacesincomputationalgeometry,fluidmechanic8,computervision,andmaterialsscienee[M].London:CambridgeUniversityPress,1999.[5]李晓伟.基于水平集方法的图像分割[D].西安:西安理工大学,2007.[6]吴伟,刘玉凤.改进的模糊边缘检测算法在图像处理中的应用[J].沈阳理工大学学报,2007,26(5):54~56.[7]周鲜成.图像分割方法及其应用研究综述[J].信息技术,2007(12)11~14.[8]赵连凤,郭宝龙,韩合民.区域指导的自适应帧内错误隐藏算法[J].图像和信息处理,2008(2):12~16.[9]曹远星,董宇宁.蛇模型综述[J].信息技术,2006(3):113~116.[10]KassM,WitkinA,TerzopoulosD.Snakes:activecontourmodels[J].Int.J.CoumputVis,1988(4):321~331.[11]章毓晋.图像工程(中册)[M].北京:清华大学出版社,2005.[12]蒋晓悦,赵荣樁.一种改进的活动轮廓图像分割技术[J].中国图象图形学报,2004,9(9):1019~1024.[13]周继鹏,耿国华,周明全.一种新的动态轮廓模型[J].计算机研究与发展,1998,3s(8):734~738.[14]吕明忠,罗鹏,高敦岳.一种具有向心力的新型Snake算法[J].微电子学与计算机,2001,18(4):39~42.[15]李熙莹,倪国强.一种自动提取目标的主动轮廓法[J].光子学报,2002.31(5):606~610.[16]CasellesV,KimmedR,SapiroG.Geodesicactivecontours[C].Fifth InternationalConferenceonComputerVision,1995,3:694~699.[17]姜丽芳.基于几何活动轮廓模型的视频对象分割与跟踪方法[D].山东:山东大学,2008.[18]MalladiR,SethianJA,VemuriBC.ShapeModelingwithFrontPropagation:ALevelSetapproach[J].IEEETrans.OnPAMI,1995,17(2):158~175.[19]ChanT,Vesel.Activecontourswithoutedges[J].IEEETransactionsonImageProcessing,2001,10(2):266~277.[20]OsherS,SethianJA.FrontingPropagetingwithCurvatureDependentSpeed:AlgorithmsBasedonHamilton-JacobiFormulations[J].JournalofComputatuonalPhysics,1988,79(1):12~49. 附录1程序编写#include#include#include#include#include#definePI3.1415926//圆周率pi#defineEPS11e-10//很小的数#defineEPS21e-6//很小的数#defineROW86//图像高度#defineCOL88//图像宽度#defineROW_EXT(ROW+2)#defineCOL_EXT(COL+2)voidBoundmirrorexpand(doubleA[ROW][COL],doubleB[ROW_EXT][COL_EXT]);voidBoundmirrorensure(doubleB[ROW_EXT][COL_EXT]);voidBoundmirrorshrink(doubleA[ROW_EXT][COL_EXT],doubleB[ROW][COL]);voidEVOLUTION_CV(doublegray[ROW][COL],doublelevel[ROW][COL],doublemu,doublenu,doublelambda_1,doublelambda_2,doubledelta_t,doubleepsilon,intnumIter);voidDelta(doublelevel_ext[ROW_EXT][COL_EXT],doubleepsilon,doubledelta_h[ROW_EXT][COL_EXT]);voidCurvature(doublef[ROW_EXT][COL_EXT],doubleK[ROW_EXT][COL_EXT]);voidBinaryfit(doublephi[ROW_EXT][COL_EXT],doubleImg[ROW_EXT][COL_EXT],doubleepsilon,double&c1,double&c2);voidGradient(doublef[ROW_EXT][COL_EXT],doublefx[ROW_EXT][COL_EXT],doublefy[ROW_EXT][COL_EXT]);voidHeaviside(doublephi[ROW_EXT][COL_EXT],doubleepsilon,doubleH[ROW_EXT][COL_EXT]);intmain()//主函数{inti,j,k;longIndex=0;unsignedcharImage_in[ROW*COL];charPallette[1024];unsignedcharFheadg[54];doubleImg[ROW][COL];doublephi[ROW][COL];char*filename="char*filename";longbeginTime=clock(); if(!ReadGrayImage(filename,Image_in,Fheadg,Pallette)){printf("cannotopenfile ");return0;}for(i=0;i0&&phi[i][j+1]<0){tj=j+phi[i][j]/(phi[i][j]-phi[i][j+1]);//计算出phi==0的位置tjtx=int(tj+0.5);//tj四舍五入Index=(ROW-1-i)*COL+tx;Image_in[Index]=250;}if(phi[i][j]<0&&phi[i][j+1]>0){tj=j-phi[i][j]/(phi[i][j+1]-phi[i][j]);tx=int(tj+0.5);Index=(ROW-1-i)*COL+tx;Image_in[Index]=250;}}}//寻找竖直边界for(i=0;i0&&phi[i+1][j]<0){ti=i+phi[i][j]/(phi[i][j]-phi[i+1][j]);//计算出phi==0的位置tity=int(ti+0.5);//ti四舍五入Index=(ROW-1-ty)*COL+j;Image_in[Index]=250;}if(phi[i][j]<0&&phi[i+1][j]>0){ti=i-phi[i][j]/(phi[i+1][j]-phi[i][j]); ty=int(ti+0.5);Index=(ROW-1-ty)*COL+j;Image_in[Index]=250;}}}SaveGrayImage("h12.bmp",Fheadg,Pallette,Image_in);cout<<"beginTime:"<