图像边缘检测算子Word文档格式.docx
- 文档编号:20459809
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:9
- 大小:75.83KB
图像边缘检测算子Word文档格式.docx
《图像边缘检测算子Word文档格式.docx》由会员分享,可在线阅读,更多相关《图像边缘检测算子Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
I
摘要
边缘检测是数字图像处理中的一项重要内容。
本文对图像边缘检测的几种经典算法(Roberts算子、Sobel算子、Prewitt算子)进行了分析和比较,并用MATLAB实现这几个算法。
最后通过实例图像对不同边缘检测算法的效果进行分析,比较了不同算法的特点和适用范围。
关键词:
图像处理;
边缘检测;
Roberts算子;
Sobel算子;
Prewitt算子
II
第1章相关知识....................................................................................................IV
1.1理论背景.......................................................................................................1
1.2数字图像边缘检测意义...............................................................................1
第2章课程设计分析...............................................................................................3
2.1Roberts(罗伯特)边缘检测算子....................................................................3
2.2Prewitt(普瑞维特)边缘检测算子.................................................................4
2.3Sobel(索贝尔)边缘检测算子........................................................................5
第3章仿真及结果分析...........................................................................................7
3.1仿真...............................................................................................................7
3.2结果分析.......................................................................................................8结论...........................................................................................................................10
参考文献...................................................................................................................11
III
第1章相关知识
1.1理论背景
图像处理就是对图像信息加工以满足人的视觉心理或应用需求的方法。
图像处理方法有光学方法和电子学方法。
从20世纪60年代起随着电子计算机和计算技术的不断提高和普及,数字图像处理进入了高速发展时期,而数字图像处理就是利用数字计算机或其它的硬件设备对图像信息转换而得到的电信号进行某些数学处理以提高图像的实用性。
图像处理在遥感技术,医学领域,安全领域,工业生产中有着广泛的应用,其中在医学应用中的超声、核磁共振和CT等技术,安全领域的模式识别技术,工业中的无损检测技术尤其引人注目。
计算机进行图像处理一般有两个目的:
(1)产生更适合人观察和识别的图像。
(2)希望能由计算机自动识别和理解图像。
数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域的重要基础,图像处理和分析的第一步往往就是边缘检测。
物体的边缘是以图像的局部特征不连续的形式出现的,也就是指图像局部亮度变化最显著的部分,例如灰度值的突变、颜色的突变、纹理结构的突变等,同时物体的边缘也是不同区域的分界处。
图像边缘有方向和幅度两个特性,通常沿边缘的走向灰度变化平缓,垂直于边缘走向的像素灰度变化剧烈。
根据灰度变化的特点,图像边缘可分为阶跃型、房顶型和凸缘型。
1.2数字图像的边缘检测意义
边缘是图像上灰度变化最剧烈的地方,传统的边缘检测就是利用了这个特点,对图像各个像素点进行微分或求二阶微分来确定边缘像素点。
一阶微分图像的峰值处对应着图像的边缘点;
二阶微分图像的过零点处对应着图像的边缘点。
IV
根据数字图像的特点,处理图像过程中常采用差分来代替导数运算,对于图像的简单一阶导数运算,由于具有固定的方向性,只能检测特定方向的边缘,所以不具有普遍性。
为了克服一阶导数的缺点,我们定义图像的梯度为梯度算子,它是图像处理中最常用的一阶微分算法。
图像梯度的最重要性质是梯度的方向是在图像灰度最大变化率上,它恰好可以反映出图像边缘上的灰度变化。
数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域十分重要的基础,是图像识别中提取图像特征的一个重要属性。
图像理解和分析的第一步往往就是边缘检测。
目前它已成为机器视觉研究领域最活跃的课题之一,在工程应用中占有十分重要的地位。
V
第2章课程设计分析
图像的边缘对人的视觉具有重要的意义,一般而言,当人们看一个有边缘的物体时,首先感觉到的便是边缘。
灰度或结构等信息的突变处称为边缘。
边缘是一个区域的结束,也是另一个区域的开始,利用该特征可以分割图像。
需要指出的是,检测出的边缘并不等同于实际目标的真实边缘。
由于图像数据时二维的,而实际物体是三维的,从三维到二维的投影必然会造成信息的丢失,再加上成像过程中的光照不均和噪声等因素的影响,使得有边缘的地方不一定能被检测出来,而检测出的边缘也不一定代表实际边缘。
图像的边缘有方向和幅度两个属性,沿边缘方向像素变化平缓,垂直于边缘方向像素变化剧烈。
边缘上的这种变化可以用微分算子检测出来,通常用一阶或两阶导数来检测边缘,如下图所以。
不同的是一阶导数认为最大值对应边缘位置,而二阶导数则以过零点对应边缘位置。
(a)图像灰度变化(b)一阶导数(c)二阶导数
基于一阶导数的边缘检测算子包括Roberts算子、Sobel算子、Prewitt算子等,在算法实现过程中,通过2×
2(Roberts算子)或者3×
3模板作为核与图像中的每个像素点做卷积和运算,然后选取合适的阈值以提取边缘。
拉普拉斯边缘检测算子是基于二阶导数的边缘检测算子,该算子对噪声敏感。
一种改进方式是先对图像进行平滑处理,然后再应用二阶导数的边缘检测算子,其代表是LOG算子。
前边介绍的边缘检测算子法是基于微分方法的,其依据是图像的边缘对应一阶导数的极大值点和二阶导数的过零点。
Canny算子是另外一类边缘检测算子,它不是通过微分算子检测边缘,而是在满足一定约束条件下推导出的边缘检测最优化算子。
2.1Roberts(罗伯特)边缘检测算子
景物的边缘总是以图像中强度的突变形式出现的,所以景物边缘包含着大量的信息。
由于景物的边缘具有十分复杂的形态,因此,最常用的边缘检测方法是所谓的“梯度检测法”。
fxy(,)sxy(,),(,)xy设是图像灰度分布函数;
是图像边缘的梯度值;
是梯度
VI
的方向。
则有
1222sxyfxnyfxyfxynfxy(,)(,)(,)(,)(,),,,,,,,,,,,,(2.1.1)
1,(,)tan(,)(,)/(,)(,)xyfxynfxyfxnyfxy,,,,,,,,,(2.1.2),,其中,n=1,2。
式(2.1.1)与式(2.1.2)可以得到图像在(x,y)点处的梯度大小和梯度方向。
将式(2.1.1)改写为:
1222,,,,gxyfxyfxyfxyfxy(,)(,)(1,1)(1,)(,1),,,,,,,,(2.1.3),,,,,,gxy(,)fxy(,)称为Roberts边缘检测算子。
式中对等的平方根运算使该处理类似于人类视觉系统的发生过程。
事实上Roberts边缘检测算子是一种利用局部差分方法寻找边缘的算子,Robert梯度算子所采用的是对角方向相邻两像素值之差,所以用差分代替一阶偏导,算子形式可表示如下:
,,,,fxyfxyfxy(,)(,)(1,1),,x(2.1.4),,,,,,fxyfxyfxy(,)(1,)(,1),y,上述算子对应的两个2×
2模板如图2.1所示。
实际应用中,图像中的每个像素点都用这两个模板进行卷积运算,为避免出现负值,在边缘检测时常提取其绝对值。
0110
-100-1
(a)(b)
图2.1Robert算子模板
2.2Prewitt(普瑞维特)边缘检测算子
Prewitt边缘检测算子就是一种利用局部差分平均方法寻找边缘的算子,它体现了三对像素点像素值之差的平均概念,因为平均能减少或消除噪声,为此我们可以先求平均,再求差分,即利用所谓的平均差分来求梯度。
用差分代替一阶偏导可得算子形式如下:
,,,,,,,,,,,,,,,,,fxyfxyfxyfxyfxyfxyfxy(,)(1,1)(,1)(1,1)(1,1)(,1)(1,1),,,,x,,,,,,,,,,,,,,,,,,,fxyfxyfxyfxyfxyfxyfxy(,)(1,1)(1,)(1,1)(1,1)(1,)(1,1),,,,,y,
(2.2.5)
VII
Prewitt边缘检测算子的两个模板如图2.2所示,它的使用方法同Sobel算子一样,图像中的每个点都用这两个核进行卷积,取得最大值作为输出。
Prewitt算子也产生一幅边缘图像。
-1-1-110-1
00010-1
11110-1
图2.2Prewitt算子模板
2.3Sobel(索贝尔)边缘检测算子
gxy(,)gxy(,)fxy(,)该算子是由两个卷积核与对原图像进行卷积运算而12
得到的。
其数学表达式为:
MNMN,,SxyMAXfmngimjnfmngimjn(,)(,)(,),(,)(,),,,,,,,,,12,,,,,,1111,,mnmn
(2.3.6)实际上Sobel边缘算子所采用的算法是先进行加权平均,然后进行微分运算,我们可以用差分代替一阶偏导,算子的计算方法如下:
,,,,,,,,,,,,,,,,,fxyfxyfxyfxyfxyfxyfxy(,)(1,1)2(,1)(1,1)(1,1)2(,1)(1,1),,,,x,,,,,,,,,,,,,,,,,,,fxyfxyfxyfxyfxyfxyfxy(,)(1,1)2(1,)(1,1)(1,1)2(1,)(1,1),,,,,y,
(2.3.7)Sobel算子垂直方向和水平方向的模板如图2.3所示,前者可以检测出图像中的水平方向的边缘,后者则可以检测图像中垂直方向的边缘。
实际应用中,图像中的每一个像素点都用这两个卷积核进行卷积运算,取其最大值作为输出。
运算结果是一幅体现边缘幅度的图像。
VIII
-1-2-1-101000-202121-301
图2.3Sobel算子模板
IX
第3章仿真及结果分析3.1仿真
%利用Roberts、Prewitt和Sobel算子对zhixuetang.bmp进行边缘检测functionjiance
clc;
I=imread('
zhixuetang.bmp'
);
%读入灰度图像
I1=im2double(I);
%将彩图序列变成双精度
f=rgb2gray(I1);
%将彩色图变成灰色图
[L,R]=size(f);
%图像大小
GR=f;
GP=f;
GS=f;
forx=2:
L-1
fory=2:
R-1
GRx(x,y)=f(x,y)-f(x+1,y+1);
GRy(x,y)=f(x,y+1)-f(x+1,y);
GR(x,y)=sqrt((GRx(x,y)).^2+(GRy(x,y)).^2);
%roberts图像边缘提取GPx(x,y)=(f(x-1,y+1)+f(x,y+1)+f(x+1,y+1))/3-(f(x-1,y-1)+f(x,y-1)+f(x+1,y-1))/3;
GPy(x,y)=(f(x-1,y-1)+f(x-1,y)+f(x-1,y+1))/3-(f(x+1,y-1)+f(x+1,y)+f(x+1,y+1))/3;
GP(x,y)=sqrt((GPx(x,y)).^2+(GPy(x,y)).^2);
%prewitt图像边缘提取GSx(x,y)=(f(x-1,y+1)+2*f(x,y+1)+f(x+1,y+1))/3-(f(x-1,y-1)+2*f(x,y-1)+f(x+1,y-1))/
3;
GSy(x,y)=(f(x-1,y-1)+2*f(x-1,y)+f(x-1,y+1))/3-(f(x+1,y-1)+2*f(x+1,y)+f(x+1,y+1))/
GS(x,y)=sqrt((GSx(x,y)).^2+(GSy(x,y)).^2);
%sobel图像边缘提取end
end
figure;
%subplot(2,2,1);
imshow(f,[]);
title('
原图象'
X
%subplot(2,2,2);
imshow(GR,[]);
Roberts算子边缘提取'
%subplot(2,2,3);
imshow(GP,[]);
Prewitt算子边缘提取'
%subplot(2,2,4);
imshow(GS,[]);
Sobel算子边缘提取'
3.2结果分析
图3.2不同边缘检测算子的实验结果比较
从以上结果可以看出:
Roberts算子定位精度较高,但对噪声较为敏感;
Sobel算子和Prewitt算子对噪声具有较好的平滑作用。
通过以上对经典边缘检测算子的分析和实际结果的验证,得出以下结论:
1)从Robert算子对图像处理的效果来看Robert边缘检测算子对具有陡峭的低噪声图像处理效果比较好。
对于非陡峭和高噪声的图像处理并不理想。
我们看到
XI
的图它们的边缘并不是完全连通的,有一定程度的断开。
这是因为Prewitt算子和Robert算子在各个方向的处理是不同的。
2)Sobel算子和Prewitt算子具有平滑作用,能滤除一些噪声,去掉部分伪边缘,但同时也平滑了真正的边缘;
定位精度不高。
Sobel算子可提供最精确的边缘方向估计。
3)Sobel算子、Prewitt算子检测斜向阶跃边缘效果较好,Roberts算子检测水平和垂直边缘效果较好。
XII
结论
本课题从理论上对几种经典的边缘检测算法(Roberts算子、Sobel算子、Prewitt算子)进行分析,用MATLAB实现这些算法。
并且使我了解相关知识图像局部特征的不连续性(相邻区域的交界)称为边缘。
边缘位置的微分特性是幅度和方向性(沿边缘方向灰度缓变,垂直方向突变)。
边缘位置和导数(微分)间具有一定对应关系,可通过微分进行边缘检测。
无噪声时,可用Roberts算子;
Prewitt和Sobel算子同时具有平均,即抑制噪声作用;
对阶跃状边缘,Roberts得到的边缘宽度?
1个像素,Prewitt和Sobel算子得到的边缘宽度?
2个像素。
由实验的效果图像可以知道,在利用sqrt函数进行相应的算子边缘检测的时候,各算子的差别非常微小,Sobel算子在边缘检测中最为敏感,及在同一条件下它的处理效果应该最好。
在后面实验部分中,利用“手动”的模版算子进行边缘检测,我们很容易可以看到,Sobel算子的处理效果最好。
最后,通过实例图像对不同边缘检测算法的效果进行分析,找出各种算法的适用范围。
通过本课题的研究拓宽了自己的知识面,为以后进一步学习数字图像处理打下了基础,提高了学生的独立工作能力和编程能力。
XIII
参考文献
[1]张汗灵.MATLAB在图像处理中的应用[M].北京:
清华大学出版社,2008:
8-18[2]余成波.数字图像处理及MATLAB实现[M].重庆大学出版社,2003:
87-98[3]何斌.VisualC++数字图像处理[M].人民邮电出版社,2002:
118-125[4]杨枝灵,王开.VisualC++数字图像获取处理及实践应用[M].人民邮电出版社,2003:
44-86
[5]苏金明,,王永利.MATLAB图形图像[M].电子工业出版社,2005.2:
84-80
XIV
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 边缘 检测 算子
![提示](https://static.bdocx.com/images/bang_tan.gif)