基于Sobel算子的图像锐化偏微分方程图像处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Sobel算子的图像锐化偏微分方程图像处理
基于偏微分方程的图象处理课程设计
(2014年秋季学期)
学院
专业信息与计算科学
班级信计12-1班
名称基于Sobel算子的图像锐化
组员
指导教师
2014 年月日
一、目的与要求
《图像处理》是信息与计算科学专业一门重要的基础课程之一,它主要应用在医疗、生物等学科的图象处理方面,是当今社会发展较为迅速的一门技术。课程设计的一个重要的环节是实践环节,主要锻炼学生的动手能力,以及团队能力,独立思考能力等。二、设计的方案
2.1模型的建立
Sobel算子 (加权平均差分法)
Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。Sobel算子包含两组3x3的矩阵,分别为横向及纵向模板,将之与图像作平面卷积,即可分
别得出横向及纵向的亮度差分近似值。实际使用中,常用如下两个模板来检测图像边缘。
-1 0 1 1 2 1
-2 0 2 0 0 0
-1 0 1 -1 -2 -1
图1 Sobel算子
和一些传统的图像锐化方法相比,基于sobel算子的锐化在诸多方面都得到了改进,这些也成了sobel算子发展的有力保证,sobel算子的具体定义如下: Dx=[f(x+1,y-1)-f(x-1,y-1)]+2[f(x+1,y)-f(x-1,y)]+[f(x+1,y+1)-f(x-
1,y+1)],
Dy=[f(x-1,y+1)-f(x-1,y-1)]+2[f(x,y+1)-f(x,y-1)]+[f(x+1,y+1)-f(x+1,y-1)].
Sobel算子也可用模版表示,如图2所示,模版中的元素表示算式中相应像素的加权因子。
101,,,,121,,,,
,,,,202,000 ,,,,
,,,,121102,,,,,
图2
2.2模型的实现
由于sobel算子是相隔两行或两列之差分,故边缘两侧元素得到增强,同时由于sobel算子引入了平均元素,对图像中的随机噪声有一定的平滑作用,所以离散化采用sobel算子,同时以sobel算子较强的锐化作用达到锐化目的
三、主要实现程序 ( MATLAB )
命令:
>> W_H1=[-1,0,1;-2,0,2;-1,0,1]; >> W_H2=[-1,-2,-1;0,0,0;1,2,1]; >> T=0.165;
>> L=imread('1.bmp','bmp'); >> %L=imread('1.tif','tif'); >> [height,width]=size(L); >> L1=double(L);
>> L2=zeros(height+2,width+2); >> L2(2:height+1,2:width+1)=L1; >> for i=2:height+1
for j=2:width+1
sum1=0;
sum2=0;
for m=-1:1
for n=-1:1
sum1=sum1+W_H1(m+2,n+2)*L2(i+m,j+n);
end
end
for m=-1:1
for n=-1:1
sum2=sum2+W_H2(m+2,n+2)*L2(i+m,j+n);
end
end
grey=abs(sum1)+abs(sum2);
L1(i-1,j-1)=grey;
end
end
>> big=max(max(L1));
>> small=min(min(L1));
>> for i=1:height
for j=1:width
L1(i,j)=(L1(i,j)-small)/(big-small); if(L1(i,j)>T)
L1(i,j)=1;
else
L1(i,j)=0;
end
end
end
>> imshow(L1)
四、测试和调试
实验结果:
1(原图像:
2(Sobel算子锐化图像:
4.1图像锐化的概念
在图像增强过程中,通常利用各类图像平滑算法消除噪声,图像的常见噪声主要有加性噪声、乘性噪声和量化噪声等。一般来说,图像的能量主要集中在其低频部
分,噪声所在的频段主要在高频段,同时图像边缘信息也主要集中在其高频部分。这将导致原始图像在平滑处理之后,图像边缘和图像轮廓模糊的情况出现。
为了减少这类不利效果的影响,就需要利用图像锐化技术,使图像的边缘变得清晰。图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变得清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可以对其进行逆运算(如微分运算)就可以使图像变得清晰。从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。但要注意能够进行锐化处理的图像必须有较高的性噪比,否则锐化后图像性噪比反而更低,从而使得噪声增加的比信号还要多,因此一般是先去除或减轻噪声后再进行锐化处理。
4.2基于Sobel算子
sin2,ax2cos2,,aax2,a考察正弦函数,它的微分。微分后频率不变,幅度上升倍。空间频率愈高,幅度增加就愈大。这表明微分是可以加强高频成分的,从而使图像轮廓变清晰。而在本章讨论中,研究了基于sobel算子的图像锐化。
图像边缘检测:边缘检测是检测图像局部显著变化的最基本运算,梯度是函数变化的一种度量。图像灰度值的显著变化可用梯度的离散逼近函数来检测,大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。边缘检测可分为两大类基于查找一类和基于零穿越的一类。基于查找的方法通过寻找图像一阶导数中的最大和最小值来检测边界,通常是将边界定位在梯度最大的方向。基于零穿越的方法通过寻找图像二阶导数零穿越来寻找边界,通常是Laplacian过零点或者非线性差分表示的过零点。
单独使用Sobel算子做边缘检测,边缘定位精度不高,有时还可能对非边缘像素的响应大于某些边缘处的响应或者响应差别不是很大,造成漏检或误检,但是它对噪声具有较好的鲁棒性。
Prewitt算子和Sobel算子提取边缘的结果差不多。在提取边缘的同时它对噪声具有平滑作用,能够抑制一定的噪声。由于Prewitt边缘检测算子是通过八个方向模板对图像进行卷积运算,因此运算量比较大。
4.3性能研究与结论
sobel算子在prewitt算子基础上能检测边缘点,且能进一步抑制噪声的影响,但检测的边缘较宽。梯度算子和laplacian算子都对噪声敏感,因此一般用它们检测边缘前要先对图像进行平滑。
五、课程设计总结与体会
六、参考文献
[1] MATLAB7.X图像处理M.何兴华,周媛媛.人民邮电出版社:北京,2006,
72-73. [2] 数字图像处理M.阮秋琦.电子工业出版社:北京,2005,12-14. [3]