对同时含有椒盐噪声和高斯噪声的消噪处理Word格式.docx
《对同时含有椒盐噪声和高斯噪声的消噪处理Word格式.docx》由会员分享,可在线阅读,更多相关《对同时含有椒盐噪声和高斯噪声的消噪处理Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
![对同时含有椒盐噪声和高斯噪声的消噪处理Word格式.docx](https://file1.bdocx.com/fileroot1/2022-10/19/cb2d2123-6161-4f59-87b2-94ce6d45c485/cb2d2123-6161-4f59-87b2-94ce6d45c4851.gif)
设计技术参数
要求设计出一种能冋时消除图像中含有椒盐噪声和高斯噪声的方法并实现
设计要求
对于同时含有椒盐噪声和高斯噪声的图像,如何能更好的消除其噪声。
对一副图像用函数冋时加入椒盐噪声和高斯噪声,并设计出一种能冋时消除这两种噪声的方法,并实现。
积极思考其他消噪方法,设计中应具有自己的设计思想、设计体会。
工
作
量
一周
工作计划
一周的时间:
周一:
分析题目,确立方向,构思结构,查阅资料。
周二到周三:
编程,运行,测试及调试。
周四:
整理资料、程序和图片,撰写设计说明书。
周五:
答辩。
参考资料
1、贾永红•数字图像处理(第二版)•武汉:
武汉大学出版社•2010,2
2、冈萨雷斯•数字图像处理(Matlab).电子工业出版社,2006
3、楼顺天.MATLAB5.X程序设计语言.西安:
西安电子科技大学出版社,2000
指导教师签字
基层教学单位主任签字
说明:
此表一式四份,学生、指导教师、基层教学单位、系部各一份。
2012年6月29日
燕山大学课程设计评审意见表
指导教师评语:
正确完善
完善
认真
较为合理
合理
较认真
理论分析庆
方法设计旗
一般
不认真
较差
工作态度
成绩:
2012年6月29日
答辩小组评语:
清晰
设计结论
正确
基本正确
基本掌握
原理了解
不清楚
评阅人:
不正确
课程设计总成绩:
答辩小组成员签字:
2012年6月29日
第一章摘要1
第二章引言2
第三章噪声的特性3
第四章对图像的消噪处理4
4.1中值滤波4
4.2维纳滤波8
4.3中值滤波与维纳滤波的结合10
第五章学习心得14
第六章参考文献15
一、摘要
本文研究的是对同时含有椒盐噪声和高斯噪声的消噪处理。
首先,本文对高斯噪声和椒盐噪声作出解释,从根本是理解高斯噪声和椒盐噪声,并用图像生动形象的解释这两种噪声产生的影响,如正文中图1所示。
对图像的消噪处理时,有均值滤波,中值滤波,维纳滤波,超限像素平滑法等方法,在这里我们选取中值滤波和维纳滤波进行分析。
一、中值滤波:
选取一个窗口,并对窗口中的像素灰度值进行排序,用中间值代替窗口中心的像素值。
其消噪效果如文中图2和图3所示。
由图中我们可以看到中值滤波对图像中的椒盐噪声有很好的滤除效果,并能较好的保留图像的边缘,但对图像中的高斯噪声的滤波效果不是很理想。
二、维纳滤波:
运用维纳滤波的方法进行滤波时,我们可以根据他的原理进行编程滤波,也可以直
接运用维纳滤波的函数wiener2(a)进行滤波。
其运行结果如文中图4所示。
由图中我们
可以发现维纳滤波能够很好地滤去高斯噪声,但对椒盐噪声的滤波效果不是很理想。
所以我们采用将这两种方法结合起来,来对同时还有椒盐噪声和高斯噪声的图像进行滤波。
三、中值维纳滤波:
首先我们将图像中的像素点按一定的条件分为椒盐噪声点和信号点,然后对椒盐噪声点进行中值滤波,信号点保留,最后再对整个图像进行维纳滤波,其结果如图5所示。
从图中我们可以看出中值维纳滤波对图像的处理想过还是挺理想的。
关键字:
椒盐噪声高斯噪声中值滤波维纳滤波中值维纳滤波
二、弓丨言
数字图像的噪声主要来源于图像的获取(数字化过程)和传输过程。
图像传感器的工作情况受各种因素的影响,如图像获取中的环境条件和传感元器件自身的质量。
例如,使用CCD摄像机获取图像,光照强度和传感器温度是生成图像中产生大量噪声的主要因素。
图像在传输过程中主要由于所用的传输信道的干扰受到噪声污染。
比如,通过无线网络传输的图像可能会因为光或其他大气因素的的干扰被污染。
噪声不仅仅严重影响人们观赏图像时的视觉效果,还有可能影响边缘检测、图像分割、特征提取、模式识别等后续更高层的处理结果,因此采用适当的方法尽量减少噪声时一个非常重要的预处理步骤。
在实际生活中,最常见的为高斯噪声和脉冲噪声(椒盐噪声)两类,所以去除这两类噪声是非常需要的。
本文通过对这两种噪声的去噪方法进行了根本的分析和研究,并用Matlab进行了编程和调试,最终确定出最优的去噪方案,简单易懂,深入浅出。
为今后的研究提供了相关的参考资料和编程,具有深刻的研究意义!
三、噪声的特性
实际生活中最常见的是高斯噪声和脉冲噪声(椒盐噪声),下面便分别对这两种解释
做出解释和比较。
1、高斯噪声
高斯噪声是指噪声的概率密度函数服从高斯分布(即正态分布)的一类噪声,
p(z)
(1)
)2/22
这种噪声经常被用于实践中。
高斯随机变量z的PDF(概率密度函数)由下式给出:
的方差。
2、脉冲噪声
Pa和Pb均不可能为零,
个暗点。
如果Pa和Fb为零,则脉冲噪声称为单极脉冲。
如果
尤其是它们近似相等时,脉冲噪声值将类似于随机分布在图像上的胡椒和盐粉微粒,因此双机脉冲噪声也称为椒盐噪声。
在这,我们研究的是椒盐脉冲。
解码处理等产生的黑白相间的亮暗点噪
椒盐噪声是由图像传感器,传输信道,
声。
椒盐噪声往往由图像切割引起的。
盐噪声和高斯噪声对图像的影响,我们运用别认识一下椒盐噪声和高斯噪声以及椒盐、其程序如下所示:
clear;
clc;
l=imread('
Miss512G.bmp'
);
[a,b]=size(l);
figure
subplot(2,2,1);
imshow(l);
title(
J=imnoise(l,'
salt&
pepper'
subplot(2,2,2);
imshow(J);
G=imnoise(l,'
gaussian'
0.02);
Matlab,对一个图像进行加噪处理,分
高斯同时存在时,反映在图像上的效果。
'
灰白原图’);
0.02);
加椒盐噪声后的图像’);
在实际生活中,这两种噪声一般都是同时存在的。
为了更形象,清楚的了解椒
subplot(2,2,3);
imshow(G);
title('
加高斯噪声后的图像’);
subplot(2,2,4);
imshow(K);
加椒盐噪声和高斯噪声后的图像’);
K=imnoise(J,'
加高斯噪声后的图像
加椒盐噪声和高斯噪声后的图像
其运行结果如图1所示:
四、对图像的消噪处理
对含有椒盐噪声和高斯噪声的图像进行消噪预处理时,有许多方法,例如均值滤波,中值滤波,超限像素平滑法及维纳滤波等,在这里,我们先选用中值滤波的方法。
4.1、中值滤波
它是对一个滑动窗口内的诸像素灰度值进行排序,用中间值代替窗口中心像素的灰度值的滤波方法。
它是一种非线性的平滑法,在抑制噪声的同时能有效保护边缘少受模糊。
实现中值滤波的步骤如下所示:
1选择一个规格的窗口,如3*3的矩形窗口,放入图像(灰度值矩阵)的左上角。
2将窗口中的灰度值进行升序(降序)排列,用排在中间的灰度值来代替窗口中心的灰度值。
3将窗口向右移一列,在进行步骤②。
到图像的有边缘后,向下移一行从左往右依次进行步骤②和步骤③。
运用Matlab进行编程,程序如下所示:
[a,b]=size(l);
title(
[a,b]=size(K);
%3*3中值滤波
fori=1:
a
forj=1:
b
if(i==1|i==a|j==1|j==b)G(i,j)=K(i,j);
else
temp
(1)=K(i-1,j-1);
temp
(2)=K(i-1,j);
temp(3)=K(i-1,j+1);
temp⑷=K(i,j-1);
temp(5)=K(i,j);
temp(6)=K(i,j+1);
temp(7)=K(i+1,j-1);
temp(8)=K(i+1,j);
temp(9)=K(i+1,j+1);
temp=sort(temp);
G(i,j)=temp(5);
end
%5*5中值滤波
灰白原图’);
%取3*3的窗口
%按升序排序
%取中间值
3*3中值滤波后的图像’);
if(i==1|i==2|i==a_1|i==a|j==1|j==2|j==b_1|j==b)
G5(i,j)=K(i,j);
temp
(1)=K(i-2,j-2);
temp
(2)=K(i-2,j-1);
temp(3)=K(i-2,j);
temp(4)=K(i-2,j+1);
temp(5)=K(i-2,j+2);
temp(6)=K(i-1,j-2);
temp⑺=K(i-1,j-1);
temp(8)=K(i-1,j);
temp(9)=K(i-1,j+1);
temp(10)=K(i-1,j+2);
temp(11)=K(i,j-2);
temp(12)=K(i,j-1);
temp(13)=K(i,j);
temp(14)=K(i,j+1);
temp(15)=K(i,j+2);
temp(16)=K(i+1,j-2);
temp(17)=K(i+1,j-1);
temp(18)=K(i+1,j);
temp(19)=K(i+1,j+1);
temp(20)=K(i+1,j+2);
temp(21)=K(i+2,j-2);
temp(22)=K(i+2,j-1);
temp(23)=K(i+2,j);
temp(24)=K(i+2,j+1);
temp(25)=K(i+2,j+2);
G5(i,j)=temp(13);
endsubplot(2,2,4);
imshow(G5);
5*5中值滤波后的图像'
);
其运行后的结果如图2所示。
我们还可以直接运用中值滤波的函数进行Matlab滤波,由于当选取7*7和11*11大
的窗口时,按上述方法编程的程序很长,从而增加了工作量,所以我们可直接用中值滤波的函数medfilt2(a),进行中值滤波。
程序如下所示:
g=medfilt2(K,[7,7]);
subplot(1,2,1);
imshow(g);