基于Matlab的数字图像边缘检测算法研究目录引言……31基于一阶微分的边缘检测算法……71.1Roberts算子……71.2Prewitt算子……81.3Kirsch算子……82基于二阶微分的边缘检测算法……102.1Laplacian算子……102.2LoG算子……122.3Canny算子……153最佳Sobel边缘检测方法……183.1Sobel图像边缘检测方法……183.2改进的Sobel边缘检测方法……183.3Sobel算子的最佳阈值选取……194基于Matlab的实验结果与分析……224.1Matlab简介……224.2一阶微分算法的实验结果与分析……254.3二阶微分算法的实验结果与分析……304.4最佳Sobel边缘检测算法的实验结果与分析……35结论……40致谢……42参考文献……43附录源程序清单……45摘要在实际图像处理问题中,图像的边缘作为图像的一种基本特征,经常被应用到较高层次的图像应用中去.它在图像识别,图像分割,图像增强以及图像压缩等的领域中有较为广泛的应用,也是它们的基础.边缘检测是图像处理与分析中最基础的内容之一,也是至今仍没有得到圆满解决的一类问题.图像的边缘包含了图像的位置,轮廓等特征,是图像的基本特征之一,广泛地应用于特征描述,图像分割,图像增强,图像复原,模式识别,图像压缩等图像分析和处理中.因此,图像边缘和轮廓特征的检测与提取方法,一直是图像处理与分析技术中的研究热点,新理论,新方法不断涌现.本文研究了一些边缘检测算法,包括传统的Roberts,Sobel,Prewitt,LoG,Canny,Kirsch等算法.经典边缘检测方法的抗噪声性能都较差,解决该问题的主要方法就是设置阈值,把得到的图像高频部分与阈值相比较以达到去噪的目的,所以阈值的选取显得尤为重要.传统方法中的阈值都是通过实验确定的,没有统一的阈值选取方法.本文利用边缘的最大后验概率估计,介绍一种新的边缘估计方法,从理论上说明了怎样选取最佳阈值.文章中关于这些方法都有较详细的介绍,以及算法的实现步骤.对算法均进行了仿真实验.论文的主要目的是进行图像边缘检测算法性能比较的研究.实验结果表明,本文的算法比较可以为图像处理的后续环节提供一些有益的参考.关键词:边缘检测;图像处理;Matlab;Sobel;检测算法AbstractInimageprocessing,asabasiccharacteristic,theedgeoftheimage,whichiswidelyusedintherecognition,segmentation,intensificationandcompressoftheimage,isoftenappliedtohigh-leveldomain.Edgedetectionisoneofthemostfundamentalsinimageprocessingandanalyzing,whichisstillunsolved.Image'sedgesincludeimage'sfeaturessuchaspositionandoutline,whichbelongtothefundamentalfeatures.Edgedetectioniswidelyusedinimageanalysisandprocessingsuchasfeaturedescription,imagesegmentation,imageenhancement,patternrecognitionandimagecompressionetc,soEdgeDetectionandextractofoutlinefigurearetheresearchhotspotinthetechnologyofimageprocessingandanalysisall,onwhichthenewtheoryandmethodsareputforwardconstantly.Someedgedetectionalgorithmsareresearched,includingRoberts,Sobel,Prewitt,LoG,Canny,Kirschetc.Theclassicedgedetectionmethodshavesomedrawbacksinimagedenoising.Themainideaofresolvingthisproblemistosetathreshold,thencomparethethresholdwiththehigh-frequencycomponentsofanimagetoremovethenoise.Thechoiceofthethresholdisthekeyofimagedenoising.Thethresholdoftraditionalmethodsisobtainedbyexperiments,andthereisnogeneralmethodtodetermineit.AnewmethodofedgeestimationbytheMaximumaPosteriori(MAP)ispresentedinthispaper.Itproveshowtochoosetheoptimalthresholdintheory.Thesealgorithmsareintroducedindetail,andthestepsofalgorithmrealizationareintroducetoo.Thealgorithmistestedbysimulation.ThemainaimofthepaperisstudyingPerformanceEvaluationinedgedetectionalgorithms,andthedetectionresultsarecompared.Theexperimentsresultsshowthatthealgorithmscanbeausefulreferenceoflatterpartsofimageprocessing.Keywords:edgedetection;imageprocessing;Matlab;Sobel;detectionalgorithm引言图像边缘是图像最基本的特征之一,往往携带着一幅图像的大部分信息.而边缘存在于图像的不规则结构和不平稳现象中,也即存在于信号的突变点处,这些点给出了图像轮廓的位置,这些轮廓常常是在图像处理时所需要的非常重要的一些特征条件,这就需要对一幅图像检测并提取出它的边缘.而边缘检测算法则是图像处理问题中经典技术难题之一,它的解决对于进行高层次的特征描述,识别和理解等有着重大的影响;又由于边缘检测在许多方面都有着非常重要的使用价值,所以人们一直在致力于研究和解决如何构造出具有良好性质及好的效果的边缘检测算子的问题[1].在通常情况下,可以将信号中的奇异点和突交点认为是图像中的边缘点,其附近灰度的变化情况可从它相邻像素灰度分布的梯度来反映.根据这一特点,提出了多种边缘检测算子:如Robert算子,Sobel算子,Prewitt算子,Laplacian算子等.这些方法多是以待处理像素为中心的邻域作为进行灰度分析的基础,实现对图像边缘的提取并已经取得了较好的处理效果.但这类方法同时也存在有边缘像素宽,噪声干扰较严重等缺点,即使采用一些辅助的方法加以去噪,也相应的会带来边缘模糊等难以克服的缺陷.解决该问题的丰要方法就是设置阈值,把得到的图像高频部分与阈值相比较以达到去噪的目的,所以阈值的选取显得尤为重要[2].传统方法中的阈值都是通过实验确定的,没有统一的阈值选取方法.本文利用边缘的最大后验概率估计,介绍一种新的边缘估计方法,从理论上说明了怎样选取最佳阈值.图像的大部分主要信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,是图像中灰度变化比较剧烈的地方,即通常所说的信号发生奇异变化的地方.奇异信号沿边缘走向的灰度变化剧烈,通常将边缘划分为阶跃状和屋顶状两种类型如图1所示.阶跃边缘中两边的灰度值有明显的变化;而屋顶状边缘位于灰度增加与减少的交界处.在数学上可利用灰度的导数来刻画边缘点的变化,对阶跃边缘,屋顶状边缘分别求其一阶,二阶导数[3].图1阶跃边缘和屋顶状边缘处一阶和二阶导数变化规律(其中第一排为理想信号,第二排对应实际信号)对一个边缘来说,有可能同时具有阶跃和线条边缘特性.例如在一个表面上,由一个平面变化到法线方向不同的另一个平面就会产生阶跃边缘;如果这一表面具有镜面反射特性且两平面形成的棱角比较圆滑,则当棱角圆滑表面的法线经过镜面反射角时,由于镜面反射分量,在棱角圆滑表面上会产生明亮光条,这样的边缘看起来像在阶跃边缘上叠加了一个线条边缘.由于边缘可能与场景中物体的重要特征对应,所以它是很重要的图像特征.比如,一个物体的轮廓通常产生阶跃边缘,因为物体的图像强度不同于背景的图像强度.论文选题来源于在图像工程中占有重要的地位和作用的实际应用课题.所谓图像工程学科是指将数学,光学等基础学科的原理,结合在图像应用中积累的技术经验而发展起来的学科.图像工程的内容非常丰富,根据抽象程度和研究方法等的不同分为三个层次:图像处理,图像分析和图像理解.如图2所示,在图中,图像分割处于图像分析与图像处理之间,其含义是,图像分割是从图像处理进到图像分析的关键步骤,也是进一步理解图像的基础.图像工程图像处理图像分割图像分析图像理解图2图像分割在图像工程中的地位和作用图像分割对特征有重要影响.图像分割及基于分割的目标表达,特征提取和参数测量等将原始图像转化为更抽象更紧凑的形式,使得更高层的图像分析和理解成为可能.而边缘检测是图像分割的核心内容,所以边缘检测在图像工程中占有重要的地位和作用.因此边缘检测的研究一直是图像技术研究中热点和焦点,而且人们对其的关注和投入不断提高.本文的主要工作如下:(1)本文对图像边缘检测作了一个概要的说明,并说明了进行图像边缘检测的重要意义.(2)系统的介绍了比较经典的基于一阶微分的图像边缘检测算子及其具体的实现原理,为介绍基于二阶微分的图像边缘检测算子做铺垫,以便于大家的理解.(3)系统介绍了比较经典的基于二阶微分的图像边缘检测算子及其具体的实现原理.(4)介绍了一种基于Sobel算子的改进型算法,此方法的最大优点是:在去噪的同时有效地保留了图像的真实边缘,即给出了边缘检测的最佳结果.(5)对上述的算法用Matlab为工具进行仿真,并对其仿真结果进行分析,分析各种算法的特点.1基于一阶微分的边缘检测算法1.1Roberts算子由Roberts提出的算子是一种利用局部差分算子寻找边缘的算子,对于边界陡峭且噪比较小的图像检测效果比较好,它在2×2邻域上计算对角导数,G[i,j]=(f[i,j]f[i+1,j+1])+(f[i+1,j]f[i,j+1])22(1-1)G[i,j]又称为Roberts交叉算子.在实际应用中,为简化运算,用梯度函数的Roberts绝对值来近似:G[i,j]=f[i,j]f[i+1,j+1]+f[i+1,j]f[i,j+1](1-2)用卷积模板,上式变成:G[i,j]=Gx+Gy(1-3)其中Gx和Gy由下面图3所示的模板计算:图3Robert边缘检测算子的模板Roberts算子是该点连续梯度的近似值,而不是所预期的点处的近似值.由上面两个卷积算子对图像运算后,代入(1-3)式,可求得图像的梯度幅度值G[i,j],然后选取适当的门限TH,作如下判断:G[i,j]TH,[i,j]为阶跃状边缘点,{G[i,j]}为一个二值图像,也就是图像的边缘.由于利用局部差分检测比较陡峭的边缘,但对于噪声比较敏感,经常会出现孤立点,于是人们又提出了Prewitt算子[4].1.2Prewitt算子为在检测边缘的同时减少噪声的影响,Prewitt算子从加大边缘检测算子出发.由2×2扩大到3×3来计算差分算子,所以其卷积模板为图4所示:图4Prewitt边缘检测算子的模板在图像中的每个像素位置都用这