几种典型的图像边缘检测算法的比较

时间:2024-02-16 点赞:50187 浏览:101858 作者原创标记本站原创

本文是一篇算子论文范文,关于算子相关毕业论文开题报告范文,关于几种典型的图像边缘检测算法的比较相关毕业论文模板范文。适合算子及图像及灰度方面的的大学硕士和本科毕业论文以及算子相关开题报告范文和职称论文写作参考文献资料下载。

摘 要 :图像的边缘检测技术是计算机视觉和数字图像处理等领域研究的重要内容,因为图像的边缘包含了图像最重要的信息,它主要存在于目标与目标、目标与背景、区域与区域之间.该文主要分析了几种典型的图像边缘检测算法,并用Matlab对各种算法进行仿真,其中包括了没有加噪声和人为加入高斯噪声两种情况,对这两种情况下各种检测算法得到的结果进行比较分析,最后可以看出各种算法的特性以及它们各自的适用情况.

关 键 词 :边缘检测;图像处理;边缘检测算子;梯度;图像边缘

中图分类号:TP18文献标识码:A文章编号:1009-3044(2012)07-1604-05

Analysis and Comparison for Several of Typical Image Edge Detection Algorithms

TAN Yan,WANG Yu-jun,LI Fei-long,GE Geng-yu

(College of Computer and Information Science,SouthWest University,Chongqing 400715,China)

Abstract:Image edge detection is one of the most important part of puter vision and digital image processing and so on,because the image edge include that the image’s the most important information,it mainly exists between in goal and target,target and background,region and region.The paper mainly analysis for several of typical image edge detection algorithms,and uses MATLAB to evaluate these edge detection algorithms,including two kinds of cases of no noise and added a gaussian noise,then parison and analysis the result of the various detection algorithms in that both cases, finally we can know its characterist ics and suitable application of these various algorithms.


Key words:edge detection;image processing;edge detection operator;gradient;image edge

图像边缘包含了图像最重要的信息,图像边缘检测是计算机视觉和数字图像处理等领域研究的重要内容之一.边缘是指图像周围像素灰度有阶跃变化或屋顶变化的那些像素的集合,它存在于目标与背景、目标与目标、区域与区域、基元与基元之间,是图像最基本的特征,以及图像分析与识别的重要环节[1].边缘检测的实质是采用某种算法来提取出图像中对象与背景间的交界线.我们将边缘定义为图像中灰度发生急剧变化的区域边界,图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此可以用局部图像微分来获得边缘检测算子[2].该文主要分析了几种典型的边缘检测算子,Roberts边缘检测算子、Prewitt边缘检测算子、Sobel边缘检测算子、LOG边缘检测算子、Canny边缘检测算子,并用Matlab对这几种算法分别进行了仿真,并且还在对灰度图加入高斯噪声后这几种算法的仿真,以便能更清楚地看出这几种算法对含有噪声的图像的抑制情况,然后分别对得到的各种效果图进行比较分析,为人们在实际情况中选择适当的算子提供参考.

1几种经典的边缘检测算法

图像边缘检测算法是根据图像边缘存在的突变性质来检测的.主要分为两种类型[3,4]:一种是以一阶微分为基础的边缘检测算子,通过计算一阶导数局部最大值来检测图像边缘,如:Roberts算子、Prewitt算子、Sobel算子、Canny算子;另一种是以二阶微分为基础的边缘检测算子,通过寻求二阶导数中的过零点来检测边缘,如:LOG算子.

1.1一阶微分算子

基于一阶微分的算子是通过计算图像的梯度值来检测图像边缘的,利用梯度去寻找一幅图像f的(x,y)位置处边缘的强度和方向,梯度用f来表示,用向量定义为[2]:

收稿日期:2011-12-29

作者简介:谭艳(1987-),女,重庆人,在读硕士研究生,主要研究方向为图像处理;王宇俊(1966-),男,教授,主要研究方向为人工智能,机器人学,工业机器人,被动机器人等.

为了得到一幅图像的梯度,在图像的每一个像素位置处都需要计算偏导数fx和fy,因此,可以使用小区域模板卷积来进行近似计算[5].于是研究者们根据这个模板大小及其元素值选择的不同提出了许多不同的边缘检测算子,它们对边缘检测的效果有不同的特性.主要包括了Roberts算子、Prewitt算子、Sobel算子,以及Canny[5]在其硕士论文中提出的基于一阶微分滤波器的三条最优化准则的Canny算子.

1.1.1 Roberts算子

Roberts算子是利用局部图像像素中交叉对角线方向的相邻两像素之差来近似梯度幅值检测图像边缘.该算子定义为:

gx等于

该算子的梯度方向可以由公式(3)算出.由于该算子没有对图像进行平滑,因此对噪声的抑制能力不强.另外,该算子检测到的图像边缘比较细,但是连续性较弱.

1.1.2 Prewitt算子

Prewitt算子由Roberts算子2×2大小的模板扩展为3×3大小的模板来计算差分算子,它是利用像素点上下、左右邻点的灰度差,在边缘处达到最大值来检测边缘[6,11].该算子利用两个方向的模板,即检测水平边缘的模板和检测垂直边缘的模板,图像中的每个像素点都要用这两个模板做卷积,最后输出两个卷积中的最大值.该算子的定义为:

[gx等于

其梯度幅值由公式(2)算出,梯度方向由公式(3)算出.

1.1.3 Sobel算子

Sobel算子与Prewitt算子很相似,不同之处在于Sobel算子只是在中心系数上使用了一个权值2.该算子的两个模板为:

1.1.4 Canny算子

Canny算子也是一种基于一阶微分的边缘检测方法,但它所拥有的三条最优化准则使其性能优于其他方法.它的基本原理是首先用高斯滤波器平滑图像,再用一阶偏导的有限差分来计算梯度的幅值和方向,接着对梯度幅值进行非极大值抑制,最后用双阈值算法检测和连接边缘[8].

假设原图像为f(x,y),高斯函数为G(x,y),平滑后的图像为h(x,y),则

h(x,y)等于G(x,y)*f(x,y)

(10)

其中,为卷积符号,G(x,y)等于e-

1.2二阶微分算子

基于二阶微分的算子是通过计算二阶导数中过零的点来检查图像边缘的,在一阶微分算子中,当所求的一阶导数高于某一阈值时,就确定该点为边缘点,但是,这样的检测结果有时并不是唯一的.对于阶跃边缘,其二阶导数在边缘点出现零交叉,即边缘两旁二阶导数取异号.这样寻找图像灰度的二阶导数的零交叉就能找到精确边缘点.二阶微分算子中主要用于边缘检测的是LOG算子.

LOG算子,即高斯-拉普拉斯算子,它是先用高斯滤波器将灰度图像进行平滑处理,然后再用拉普拉斯算子对平滑后的图像进行变换,根据二阶导数的过零点来检测图像的边缘.

首先,假设原图像为f(x,y),高斯滤波函数为G(x,y),拉普拉斯算子为2,输出的图像为g(x,y),则LOG算子的推导如下[7]:

g()

2实验结果比较分析

2.1原图像灰度化及加噪声

该文是调用Matlab中集成的各种算子对一幅图像进行边缘提取,然后对各种算法性能进行比较分析.首先对原图像进行灰度化处理,因为各种边缘检测算子只能对灰度图像进行操作.然后再给灰度图加入均值为0、方差为0.002的高斯噪声,为后面各种边缘检测算法准备好输入图像.下面给出载入原图像及灰度化和加噪声的程序.

I等于imread(’g:\fruits.jpg’),%载入原图像

subplot(1,3,1),

imshow(I),title(’原图像’)%显示原图像

I1等于rgb2gray(I),%将原图像进行灰度化

subplot(1,3,2),

imshow(I1),title(’灰度图像’)%显示灰度图像

I2等于imnoise(I1, ’gaussian’,0,0.002),%对灰度图像加入均值为0,方差为0.002的高斯噪声

subplot(1,3,3),

imshow(I2),title(’加高斯噪声后的图像’)%显示加噪声后的图像

输出结果如图1所示.图1原图像、灰度图像及加噪声后的图像

2.2对灰度图像仿真结果

利用上面灰度化后的图像进行各种算法仿真,Matlab程序如下:BW1等于edge(I1,’roberts’,’both’),%用Roberts算子检测边缘

subplot(2,3,1),

imshow(BW1),title(’用roberts算子’)

BW2等于edge(I1,’prewitt’,’both’),%用Prewitt算子检测边缘

subplot(2,3,2),

imshow(BW2),title(’用prewitt算子’)

BW3等于edge(I1,’sobel’,’both’),%用Sobel算子检测边缘

subplot(2,3,3),

imshow(BW3),title(’用sobel算子’)

BW4等于edge(I1,’log’,’both’),%用LOG算子检测边缘

图2几种算子对灰度图像的检测结果

2.3对加了高斯噪声后的图像进行仿真

将上面2.1中的I2图像作为各种边缘检测算子的输入图像,Matlab程序跟2.2中的程序类似,此处不再赘述.其输出结果如图3所示.

图3在人为加入高斯噪声情况下几种算子的检测结果.

2.4仿真结果比较

对图2和图3(即在没有加噪声和加了噪声的情况下)各种边缘检测算子检测出的结果进行比较分析,可以看出:噪声对图像边缘检测的影响很大;二阶微分算子比一阶微分算子对噪声更敏感;Roberts算子检测出的图像边缘较细,但是由于没有对图像进行平滑,不能抑制噪声,也容易丢失一部分边缘,但它检测陡峭的低噪声图像效果比较好;Prewitt算子和Sobel算子检测出的结果几乎一样,图像边缘都较粗,对噪声有一定的抑制能力,但是它们还是有一定的模糊度,并且Sobel算子不能将图像的主题和背景严格地区分开来;Log算子对噪声的敏感度很强,它检测边缘的效果与其高斯函数中的均方差有关,抗噪能力与均方差成反比,即均方差越大,抗噪能力越小,从而检测到的边缘细节越多,伪边缘也就越多;Canny算子不易受噪声的干扰,检测到的边缘比较连续,也比较清楚,能检测到真正的弱边缘.因此,Canny算子是这几种典型边缘检测算法中检测效果最好的.

3结论

该文对几种经典图像边缘检测算子的理论进行了分析,并且用Matlab对这几种算子进行了仿真实验,最后对比分析检测出的效果图,对各种算子进行比较分析得出结论,指出了它们各自的优缺点.但是这些传统的边缘检测算子还是存在一些缺点,近年来随着数学理论及人工智能的发展,又涌现出了许多新的边缘检测算法,比如小波变换边缘检测、基于形态学边缘检测、基于神经网络边缘检测、基于遗传算法边缘检测等等[9,10].无论哪种算法都不能满足所有的图像,因为各种算法都有它自己的特点,而不同图像的特征也不同,只有在实际应用中根据需要达到的要求而选择不同的算法,有时候也可能会将几种算法结合起来运用.

本文是一篇算子论文范文,关于算子相关毕业论文开题报告范文,关于几种典型的图像边缘检测算法的比较相关毕业论文模板范文。适合算子及图像及灰度方面的的大学硕士和本科毕业论文以及算子相关开题报告范文和职称论文写作参考文献资料下载。

allInternational,Inc,北京:清华大学出版社,1997:389-391.

[4]徐献灵,林亦水.图像边缘检测算法比较与分析[J].自动化与信息工程,2007,(3):44-46.

[5] Canny.Finding Edges and Lines in Images[R].MIT Technical Report,Rep,1983:720.

[6]沈丽蓉.图像边缘检测算法比较研究[J].福建电脑,2011(5):5-7.

[7]贺强,晏立.基于LOG和Canny算子的边缘检测算法[J].计算机工程,2011,37(3):210-212.

[8]陈胜勇,刘勇,等.基于OpenCV的计算机视觉技术实现[M].北京:科学出版社,2008:135-136.

[9]罗梦贞.传统的图像边缘检测算法的分析与比较[J].电脑知识与技术,2011,7(16):3907-3909.

[10]韦炜.常用图像边缘检测方法及Matlab研究[J].现代电子技术,2011,34(4):92-94.

[11]张彩甜,贾晓岚.图像边缘检测技术及实现[J].价值工程,2011(22):162-163.

相关论文

图像边缘检测算法

本文是一篇计算机工程论文范文,计算机工程相关本科论文开题报告,关于图像边缘检测算法相关毕业论文题目范文。适合计算机工程及计算机及参考。

一种新的边缘检测算法

本文是一篇像素论文范文,关于像素相关毕业论文提纲,关于一种新的边缘检测算法相关本科毕业论文范文。适合像素及正交及多项式方面的的大学硕。

图像边缘检测的与

本文关于计算机及图像及算子方面的免费优秀学术论文范文,关于计算机论文范本,与图像边缘检测的与相关毕业论文提纲范文,对不知道怎么写计。

小波边缘检测算法的

本文是一篇算子论文范文,算子类有关毕业论文提纲,关于小波边缘检测算法的相关专科毕业论文范文。适合算子及图像及计算机工程方面的的大学硕。

图像边缘检测的与

本文是一篇计算机论文范文,计算机类有关毕业论文提纲,关于图像边缘检测的与相关毕业论文参考文献格式范文。适合计算机及图像及算子方面的的。