图像平滑的matlab实现论文讲解.docx
- 文档编号:5212658
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:14
- 大小:824.29KB
图像平滑的matlab实现论文讲解.docx
《图像平滑的matlab实现论文讲解.docx》由会员分享,可在线阅读,更多相关《图像平滑的matlab实现论文讲解.docx(14页珍藏版)》请在冰豆网上搜索。
图像平滑的matlab实现论文讲解
图像平滑的Matlab实现
20101602310035黄汉杰
摘要
随着图像处理领域的迅速发展,图像平滑作为图像处理中的重要环节,也逐渐受到人们的关注。
图像平滑的目的主要是消除噪声。
图像平滑方法按空间域和频率域的分类及各种方法的特点,图像平滑是对图像作低通滤波,可在空间域或频率域实现。
空间域图像平滑方法主要用均值滤波、中值滤波等;频率域图像平滑常用的低通滤波器有理想低通滤波器、布特沃斯低通滤波器、低通指数滤波器、低通梯形滤波器等。
关键词:
图像平滑;噪声;空间域低通滤波;频域低通滤波
引言:
(1)在图像的获取和传输过程中原始图像会受到各种噪声的干扰,使图像质量下降。
为了抑制噪声、改善图像质量,要对图像进行平滑处理。
抑制或消除这些噪声而改善图像质量的过程称为图像的平滑。
图像平滑的目的是为了消除噪声。
噪声消除的方法又可以分为空间域或频率域,亦可以分为全局处理或局部处理,亦可以按线性平滑、非线性平滑和自适应平滑来区别。
图像的平滑是一种实用的数字图像处理技术,一个较好的平滑处理方法应该既能消除图像噪声,又不使图像边缘轮廓和线条变模糊,这就是研究数字图像平滑处理要追求的目标。
一般情况下,减少噪声的方法可以在空间域或频率域进行处理,主要有邻域平均法、中值滤波法、低通滤波法等,邻域平均法即通过提高信噪比,取得较好的平滑效果;空间域低通滤波采用低通滤波的方法去除噪声;以及频域低通滤波法通过除去其高频分量就能去掉噪声,从而使图像得到平滑。
(2)本设计将对图像平滑处理的两大方面即空间域和频率域,以及两种处理方向里的几种处理方法进行介绍,并对一些常用的简单平滑算法进行分析。
(3)图像平滑主要是为了消除被污染图像中的噪声,这是遥感图像处理研究的最基本内容之一,被广泛应用于图像显示、传输、分析、动画制作、媒体合成等多个方面。
该技术是出于人类视觉系统的生理接受特点而设计的一种改善图像质量的方法。
处理对象是在图像生成、传输、处理、显示等过程中受到多种因素扰动形成的加噪图像。
在图像处理体系中,图像平滑是图像复原技术针对“一幅图像中唯一存在的退化是噪声”时的特例。
1.论文目的
1.1通过几种图像平滑的方法,实现被噪声污染过的图像的平滑处理,其中包括空间域和频率域;
1.2在加深对数字图像处理课本知识理解的基础上,学会运用已学的知识对图像平滑的处理方法的结果进行分析。
2.理论及方案
(1)图像噪声来源及类型
一幅图像在获取和传输等过程中,会受到各种各样噪声的干扰,其主要来源有三:
一为在光电、电磁转换过程中引入的人为噪声;二为大气层电(磁)暴、闪电、电压、浪涌等引起的强脉冲性冲激噪声的干扰;三为自然起伏性噪声,由物理量的不连续性或粒子性所引起,这类噪声又可分成热噪声、散粒噪声等。
一般在图像处理技术中常见的噪声有:
加性噪声、乘性噪声、量化噪声、“盐和胡椒”噪声等。
下面介绍两种主要的噪声。
2.1.1、高斯噪声(Gaussiannoise)
这种噪声主要来源于电子电路噪声和低照明度或高温带来的传感器噪声,也称为正态噪声,是在实践中经常用到的噪声模型。
高斯随机变量z的概率密度函数(PDF)由下式给出:
其中,z表示图像像元的灰度值;μ表示z的期望;σ表示z的标准差。
2.1.2、椒盐噪声(salt&peppernoise)
主要来源于成像过程中的短暂停留和数据传输中产生的错误。
其PDF为:
如果b>a,灰度值b在图像中显示为一亮点,a值显示为一暗点。
如果Pa和图像均不为零,在图像上的表现类似于随机分布图像上的胡椒和盐粉微粒,因此称为椒盐噪声。
当Pa为零时,表现为“盐”噪声;当Pb为零时,表现为“胡椒”噪声。
图像中的噪声往往是和信号交织在一起的尤其是乘性噪声,如果平滑不当,就会使图像本身的细节如边缘轮廓‘线条等模糊不清,从而使图像质量降低。
(2)图像平滑的方法
2.2.1空间域低通滤波
1、均值滤波器
均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个象素,构成一个滤波模板,即去掉目标象素本身)。
再用模板中的全体像素的平均值来代替原来像素值。
其表达式如下:
式中:
x,y=0,1,2,…,N-1;s为(x,y)点领域中点的坐标的集合,但不包括(x,y)点;M为集合内坐标点的总数。
2、中值滤波器
中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
其中g(s,t)为原图像,
为处理后的图像,
为二维模板,通常为2*2,3*3区域,也可以是不同的的形状,如线状,圆形,十字形,圆环形等。
2.2.2频域低通滤波
在频域中,低频主要对应图像在平滑区域的总体灰度级分布,而高频对应图像的细节部分,如边缘和噪声。
因此,图像平滑可以通过衰减图像频谱中的高频部分来实现,这就建立了空间域图像平滑和频域低通滤波直接到的对应关系。
低通滤波平滑图像的系统框图如下所示:
图2-1图像频域低通滤波流程框图
1.频域滤波的基本步骤:
(1)计算原始图像f(x,y)的DFT,得到F(u,v).
(2)将频谱F(u,v)的零频点移动到频谱图的中心位置。
(3)计算滤波器函数H(u,v)与F(u,v)的乘积G(U,V)。
(4)将频谱G(u,v)的零频点移回到频谱图的左上角位置。
(5)计算上一步结果的傅里叶反变换g(x,y)。
(6)取g(x,y)的实部作为最终滤波后的图像。
2.理想低通滤波器(ILPF)
如果图像的宽带为M,高度为N,那么理想低通滤波器可以形式化描述为:
式中
是一个规定的非负的量,它叫做理想低通滤波器的截止频率。
理想低通滤波器在处理过程中会产生较严重的模糊和振铃现象。
3.布特沃斯低通滤波器(BLPF)
截止频率位于距原点
处的n阶布特沃斯低通滤波器(BLPF)的传递函数定义为:
其中,
,P为宽,Q为高。
BLPF与ILPF不同,BLPF传递函数并没有在通过频率和滤除频率之间给出明显截止的尖锐的不连续性。
因此它没有“振铃”现象发生,模糊程度减少,但从它的传递函数特性曲线H(u,v)可以看出,在它的尾部保留有较多的高频,所以对噪声的平滑效果还不如ILPF。
4.高斯低通滤波器(GLPF)
其传递函数表示为:
对于相同的截止频率,GLPF与二阶BLPF相比,GLPF的平滑效果稍微差一点,但GLPF中没有振铃,这是实际中一个重要的特性,尤其是在任何类型的人工缺陷不可接受的情况下(例如医学成像)。
所以在要求严格控制低频和高频之间截止频率的过渡的情况下,BLPF是更合适的选择。
3.图像平滑处理具体过程
3.1系统构架
程序运行的环境是windows平台,并选用MATLAB作为编程开发工具,MATLAB是一种向量语言,它非常适合于进行图像处理。
3.2模拟噪声图像
图像增强操作主要是针对图像的各种噪声而言的,为了说明图像处理中的滤波方法和用途,需要模拟数字图像的各种噪声来分析滤波效果。
MATLAB图像处理工具箱提供的噪声添加函数imnoise,它可以对图像添加一些典型的噪声。
其语法:
J=imnoise(I,type)
J=imnoise(I,type,parameters)
其功能是:
返回对原图像I添加典型噪声的图像J,参数type和parameters用于确定噪声的类型和相应的参数。
三种典型的噪声:
type=’gaussian’时,为高斯噪声;
type=’salt&pepper’时为椒盐噪声;
type=’speckle’时为乘法噪声;
图像数据读取函数imread从图像文件中读取图像数据。
其基本调用格式如下:
I=imread(文件名,’图像文件格式’)
其功能是:
将文件名指定的图像文件读入I中。
I=imshow(A)
其功能是显示图像A。
如下程序就实现了3种噪声污染了的图像:
I=imread('lena_AdaptiveMedianFilter.bmp');%读取图像
I1=imnoise(I,'gaussian');%加高斯噪声
I2=imnoise(I,'salt&pepper',0.02);%加椒盐噪声
I3=imnoise(I,'speckle');%加乘性噪声
subplot(2,2,1),imshow(I);%显示图像I
title('源图像');
subplot(2,2,2),imshow(I1);
title('受高斯噪声污染的图像');
subplot(2,2,3),imshow(I2);
title('受盐椒噪声污染的图像');
subplot(2,2,4),imshow(I3);
title('受乘法噪声污染的图像');
运行结果如下:
图3-1噪声污染的图像
结果分析:
图3-1中受噪声污染的各图处理结果与源图像相比,图像有不同程度的模糊,其中受不同类型的噪声污染图像模糊程度不同。
3.3均值滤波法
在MATLAB图像处理工具箱中,提供了imfilter函数用于实现均值滤波,imfilter的语法格式为:
B=imfilter(A,H)
其功能是,用H模板对图像A进行均值滤波,
取平均值滤波模版为
H1=1/9[111;111;111];
H2=1/25[11111;11111;11111;11111;11111];
分别以这两个平均值滤波算子对图3-1中的四幅图像进行滤波操作。
取H1,程序如下:
I=imread('lena_AdaptiveMedianFilter.bmp');
I1=imnoise(I,'gaussian');
I2=imnoise(I,'salt&pepper',0.02);
I3=imnoise(I,'speckle');
H1=ones(3,3)/9;%3×3领域模板
J=imfilter(I,H1);%领域平均
J1=imfilter(I1,H1);
J2=imfilter(I2,H1);
J3=imfilter(I3,H1);
subplot(2,2,1),imshow(J);
title('源图像滤波后');
subplot(2,2,2),imshow(J1);
title('受高斯噪声污染图滤波后');
subplot(2,2,3),imshow(J2);
title('受盐椒噪声污染图滤波后');
subplot(2,2,4),imshow(J3);
title('受乘法噪声污染图滤波后');
运行结果如下:
图3-2经过平均值算子H1滤波后图像
取H2,程序如下:
I=imread('lena_AdaptiveMedianFilter.bmp');
I1=imnoise(I,'gaussian');
I2=imnoise(I,'salt&pepper',0.02);
I3=imnoise(I,'speckle');
H2=ones(5,5)/25;%5×5领域模板
J=imfilter(I,H2);%领域平均
J1=imfilter(I1,H2);
J2=imfilter(I2,H2);
J3=imfilter(I3,H2);
subplot(2,2,1),imshow(J);
title('源图像滤波后');
subplot(2,2,2),imshow(J1);
title('受高斯噪声污染图滤波后');
subplot(2,2,3),imshow(J2);
title('受盐椒噪声污染图滤波后');
subplot(2,2,4),imshow(J3);
title('受乘法噪声污染图滤波后');
运行结果如图3-3:
图3-3经过平均值算子H2滤波后图像
结果分析:
把图3-2与图3-3的图像结果之间进行比较后可知,领域平均处理后,图像的噪声得到了抑制,但在此同时也使图像变得相对模糊,对高斯噪声的平滑效果比较好。
领域平均法的平滑效果与所选用的模板大小有关,模板尺寸越大,则图像的模糊程度越大。
此时,消除噪声的效果将增强,但同时所得到的图像将变得更模糊,图像细节的锐化程度逐步减弱。
因此在处理图像时要根据不同的目的,而选择不同的模板大小来平滑图像。
3.4中值滤波法
MATLAB图像处理工具箱提供了medfilt2函数用于中值滤波。
其语法格式为:
B=medfilt2(A)
其功能为:
用3×3的滤波窗口对图像A进行中值滤波;
B=medfilt2(A,[m,n])
其功能是:
用大小为m×n的窗口对图像A进行中值滤波;
B=medfilt2(A,'indexed',...)
其功能为:
对索引图像A进行中值滤波;
可运行以下程序实现:
I=imread('lena_AdaptiveMedianFilter.bmp');
I1=imnoise(I,'gaussian');
I2=imnoise(I,'salt&pepper',0.02);
I3=imnoise(I,'speckle');
J1=medfilt2(I1,[3,3]);%3×3中值滤波模板
J2=medfilt2(I2,[3,3]);
J3=medfilt2(I3,[3,3]);
J4=medfilt2(I1,[5,5]);%5×5中值滤波模板
J5=medfilt2(I2,[5,5]);
J6=medfilt2(I3,[5,5]);
figure,subplot(3,2,1),imshow(J1);
title('高斯噪声经3*3中值滤波');
subplot(3,2,2),imshow(J2);
title('盐椒噪声经3*3中值滤波');
subplot(3,2,3),imshow(J3);
title('乘法噪声经3*3中值滤波');
subplot(3,2,4),imshow(J4);
title('高斯噪声经5*5中值滤波');
subplot(3,2,5),imshow(J5);
title('盐椒噪声经5*5中值滤波');
subplot(3,2,6),imshow(J6);
title('乘法噪声经5*5中值滤波');
运行结果如下:
图3-4受到高斯、椒盐及乘法噪
声污染的图像经不同模版的中值滤波后的图像
结果分析:
由图3-4可知,此方法能够非常好地将椒盐噪声去除掉,可见中值滤波方法对于椒盐噪声或脉冲式干扰具有很强的滤除作用,但对于高斯和乘性噪声效果不佳。
与图3-2、图3-3相比,当噪声为椒盐噪声时,中值滤波器的效果比均值滤波好。
因为这些干扰值与其邻近像素的灰度值有很大的差异,经过排序后取中值的结果就将此干扰强制变成与其邻近的某些像素值一样,从而达到去除干扰的效果。
但是由于中值滤波方法在处理过程中会带来图像模糊,所以对于细节丰富,特别是点、线和尖顶细节较多的图像不适用。
3.5频域低通滤波法
然后用所构建的二维滤波器对以上图像进行滤波
I=imread('lena_AdaptiveMedianFilter.bmp');
I1=imnoise(I,'gaussian');
I2=imnoise(I,'salt&pepper',0.02);
I3=imnoise(I,'speckle');
h=[111:
111:
111]/9;
J=imfilter(I,h,'corr','replicate');
J1=imfilter(I1,h,'corr','replicate');
J2=imfilter(I2,h,'corr','replicate');
J3=imfilter(I3,h,'corr','replicate');
subplot(2,2,1),imshow(J);
title('源图像频域低通滤波后');
subplot(2,2,2),imshow(J1);
title('受高斯噪声污染图频域低通滤波后');
subplot(2,2,3),imshow(J2);
title('受盐椒噪声污染图频域低通滤波后');
subplot(2,2,4),imshow(J3);
title('受乘法噪声污染图频域低通滤波后');
其运行结果如下图:
图3-5经过二维滤波器h滤波后图像
结果分析:
频域低通滤波具有更好的选择性,对受各种污染过图像的噪声在一定范围内也可以起到抑制作用,同时也对图像的边缘细节和高频信息分量有更好的保持作用。
使得图像在轮廓上显得更清晰。
4.总结与体会
图像平滑目的是消除噪声,使图像变得清晰。
平滑是图像处理中一个重要的方面,由于图像受到干扰而产生噪声的原因是多方面的,在对一幅图像进行平滑处理前,必须仔细分析其产生噪声的原因,只有这样才能选择合适的平滑方法,才能既消除图像噪声,又不使图像边缘轮廓或线条变模糊,经过这样的处理后,图像更符合人的视觉特性。
随着数字图像处理的广泛应用,一些在人工智能、控制领域中成熟或前沿的数学模型如神经网络、模糊数学、自适应控制等相关技术在数字图像处理中逐渐采用,从而使建立的图像处理数学模型效率更高、性能更好。
这些方法在不同程度上增强了去噪效果,但也带来了运算复杂、适用面窄等缺点。
因而我们在选择消除噪声方法时,必须综合考虑各种因素,选择最适合的平滑方法。
通过本次论文设计,不仅强化了自己原有的知识体系,而且提高了我对图像学的实践能力。
对数字图像输了这门课程也有了更深一步的认识,也扩展了自己的思维。
通过Matlab程序的编写与比较,认识到不同方法对图像的去噪效果是不同的。
不同的平滑算法适应于特定类型的噪声模型,实际应用中应该根据实际图像中包含的噪声情况灵活地选取适当的平滑算法。
本论文设计是一个通过思考、发问、自己解惑并动手、提高的过程。
我会在以后的学习中不断学习,积累经验,完善自己。
参考文献
[1](美)伍兹等著.阮秋琦等译.数字图像处理(第三版).北京:
电子工业出版社,2011.06
[2]闫娟.数字图像的平滑处理方法研究.软件导刊,2009.01
[3]平丽.图像平滑处理方法的比较研究.信息技术,2010.01
[4]梁一江.图像平滑处理方法初探及简单的算法介绍.才智,2009.04
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 平滑 matlab 实现 论文 讲解