边缘检测算子.doc_第1页
边缘检测算子.doc_第2页
边缘检测算子.doc_第3页
边缘检测算子.doc_第4页
边缘检测算子.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

第1期工矿自动化2004年2月Industry and M ine Automation文章编号:1671251X(2004)01005403No.1Feb.2004几种边缘检测算子的比较马艳,张治辉(浙江工业大学信息学院,浙江杭州310014)摘要:边缘检测是图象处理中重要的一个环节。文章具体考察了5种常用的检测算子,并加以实现,并对其特点进行了讨论和比较。梯度算子简单有效,LOG 滤波器和Canny算子能产生较细的边缘。实践时要根据具体情况和要求选择合适的算子。关键词:图象处理;边缘检测;检测算子;比较中图分类号:TP391 文献标识码:B0 引言人类视觉系统认识目标的过程分为两步:首先,把图象边缘与背景分离出来;然后,才能知觉到图象的细节,辨认出图象的轮廓。计算机视觉正是模仿人类视觉的这个过程。因此在检测物体边缘时,先对其轮廓点进行粗略检测,然后通过链接规则把原来检测到的轮廓点连接起来,同时也检测和连接遗漏的边界点及去除虚假的边界点。图象的边缘是图象的重要特征,是计算机视觉、模式识别等的基础,因此边缘检测是图象处理中一个重要的环节。然而,边缘检测又是图象处理中的一个难题,由于实际景物图象的边缘往往是各种类型的边缘及它们模糊化后结果的组合,且实际图象信号存在着噪声。噪声和边缘都属于高频信号,很难用频带做取舍。1 边缘检测边缘检测的基本算法有很多,有梯度算子、方向算子、拉普拉斯算子和坎尼(Canny)算子等等。几种常用的边缘检测方法有属于梯度算子的Roberts算子、Sobel算子和Prewitt算子、高斯偏导滤波器(LOG)以及Canny边缘检测器等。1.1 Roberts算子Roberts算子是一种利用局部差分算子寻找边缘的算子,它由下式给出:收稿日期:20030703作者简介:马艳(1979一),女,2001年7月毕业于中国矿业大学信电学院,获得工业自动化学士学位,现为浙江工业大学控制理论与控制工程专业研究生,研究方向为图象的边缘检测。g( ,)= 、/i_ 一、/i_ 干 + i _j (1)其中-厂(z,Y)、-厂( +1,Y)、-厂(z,Y十1)和f( +1,Y+1)分别为4领域的坐标,且是具有整数像素坐标的输入图象;其中的平方根运算使得该处理类似于人类视觉系统中发生的过程。Roberts算子是22算子模板。图l所示的2个卷积核形成了Roberts算子。图象中的每一个点都用这2个核做卷积。1 00 10 11 O图1 Roberts算子1.2 Sobel算子Sobel算子是一种一阶微分算子,它利用像素邻近区域的梯度值来计算1个像素的梯度,然后根据一定的阈值来取舍。它由下式给出:S = ( + v ) (2)Sobel算子是33算子模板。图2所示的2个卷积核dx、dy形成Sobel算子。一个核对通常的垂直边缘响应最大,而另一个核对水平边缘响应最大。2个卷积的最大值作为该点的输出值。运算结果是1幅边缘幅度图象。一1 0 12 0 2一l 0 ll 2 l0 0 0一l 一2 一l图2 Sobel算子1.3 Prewitt算子Prewitt算子由下式给出:Sp= (dac + ) (3)Prewitt算子是33算子模板。图3所示的22004年第1期马艳等:几种边缘检测算子的比较55 个卷积核d 、dy形成了Prewitt算子。与Sobel算子的方法一样,图象中的每个点都用这2个核进行卷积,取最大值作为输出值。Prewitt算子也产生1幅边缘幅度图象。一1 0 ll O ll O ll 1 10 O O1 1 l图3 Prewitt算子1.4 LOG 滤波器LOG滤波器又称MartHildreth模板或算子。G( )=雾+:( 一1)exp 2 (一生2a 2 ) 一丁cd4盯/(4)式中:G( ,)是对图象进行处理时选用的平滑函数(Gaussian函数);,为整数坐标;口为高斯分布的均方差。对平滑后的图象(fs=f( ,)G( ,)做拉普拉斯变换,得:h( ,)= 。f ( ,)= 厂(z,)G( ,)= f( ,)G( ,) (5)即先对图象平滑,后拉氏变换求二阶微分,等效于把拉氏变化作用于平滑函数,得到1个兼有平滑和二阶微分作用的模板,再与原来的图象进行卷积。用MartHildreth模板与图象进行卷积的优点在于,模板可以预先算出,实际计算可以只进行卷积。LOG 滤波器有以下特点:(1)通过图象平滑,消除了一切尺度小于的图象强度变化;(2)若用其它微分法,需要计算不同方向的微分,而它无方向性,因此可以节省计算量;(3)它定位精度高,边缘连续性好,可以提取对比度较弱的边缘点。LOG滤波器也有它的缺点:当边缘的宽度小于算子宽度时,由于过零点的斜坡融合将会丢失细节。LOG 滤波器有无限长的拖尾,若取得很大尺寸,将使得计算不堪重负。但随着r=/+ 的增加,LOG滤波器幅值迅速下降,当r大于一定程度时,可以忽略模板的作用,这就为节省计算量创造了条件。实际计算时,常常取大小的LOG滤波器,r/3a。另外,LOG滤波器可以近似为两个指数函数之差,即DOG(Difference Of two Guassianfunctions):DOG( = exp(一)一exP(一) (6) 卜当O1/口,= 1.6时,DOG 最逼近LOG 滤波器。随着口的增加,用DOG代替LOG 减少了计算量。1、5 Canny算子Canny算子是一阶算子。其方法的实质是用1个准高斯函数作平滑运算-厂s=/( ,Y)G( ,),然后以带方向的一阶微分算子定位导数最大值。平滑后f ( ,)的梯度可以使用22一阶有限差分近似式:Pi,J(f i,J+ 1一 ,J+f i+1,+1 +1,)/2Qi,(_, ,一厂。 +1,+fsi,+ 1一/i+ 1,+1)/2 (7)在这个22正方形内求有限差分的均值,便于在图象中的同一点计算和的偏导数梯度。幅值和方向角可用直角坐标到极坐标的坐标转化来计算:M E ,= /P , +Q , (8)0i,J= arctan(Q ,/Pi,)M i,J反映了图象的边缘强度;0(i,J)反映了边缘的方向。使得M ,j取得局部最大值的方向角( ,),就反映了边缘的方向。Canny算子也可用高斯函数的梯度来近似,在理论上很接近4个指数函数的线性组合形成的最佳边缘算子。在实际工作应用中编程较为复杂且运算较慢。2 几种算子的比较Roberts算子定位比较精确,但由于不包括平滑,所以对于噪声比较敏感。Prewitt算子和Sobel算子都是一阶的微分算子,而前者是平均滤波,后者是加权平均滤波且检测的图象边缘可能大于2个像素。这两者对灰度渐变低噪声的图象有较好的检测效果,但是对于混合多复杂噪声的图象,处理效果就不理想了。LOG

温馨提示

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

评论

0/150

提交评论