武夷学院
课程报告
课程主要从图像、等方面来阐述
关键字:图像噪声 均值滤波 中值滤波
选题立意
(20%)规范
(20%)过程工作量
(30%)创新
(10%)效果
(20%)成绩
? 一.图像分割概念
1.1图像噪声
为减少图像噪声影响,图像去噪处理是十分有必要的。
常见的去噪处理有均值滤波,中值滤波,灰度最小方差均值滤波,K.均值滤波与中值滤波
2.1均值滤波
均值滤波的原理是:在图像上,对待处理的像素给定一个模板,该模板包括了其周围的邻近像素。将模板中的全体像素的均值来替代原来的像素值的方法。均值滤波可以用来对椒盐噪声和高斯噪声进行滤波。
权系数矩阵模板
g?=?(f(x-1,y-1)?+?f(x,y-1)+?f(x+1,y-1)?+?f(x-1,y)?+?f(x,y)?+?f(x+1,y)? +?f(x-1,y+1)?+?f(x,y+1)?+?f(x+1,y+1))/9
均值滤波对高斯噪声有非常好的抑制效果,而对椒盐噪声效果往往不够好。
2.2 中值滤波
(虽然均值滤波器对噪声有抑制作用,但同时会使图像变得模糊。为了有效地改善这一状况,必须寻找新的滤波器。中值滤波就是一种有效的方法。
中值滤波是对待处理的当前像素,选择一个模板,该模板为其邻近的若干个像素组成,对模板的像素由小到大进行排序,再用模板的中值来替代原像素的值的方法。
g?=?median[(x-1,y-1)?+?f(x,y-1)+?f(x+1,y-1)? +?f(x-1,y)?+?f(x,y)?+?f(x+1,y)? +?f(x-1,y+1)?+?f(x,y+1)?+?f(x+1,y+1)]
因为中值滤波的原理是取合理的邻近像素值来替代噪声点,所以只适合于椒盐噪声的去除,不适合高斯噪声的去除。
三.均值滤波与中值滤波的比较
3.1对椒盐噪声的两者比较
对于椒盐噪声,中值滤波效果比均值滤波效果好。
3.2 原因
椒盐噪声是幅值近似相等但随机分布在不同位置上,图像中有干净点也有污染点。
中值滤波是选择适当的点来替代污染点的值,所以处理效果好。
因为噪声的均值不为0,所以均值滤波不能很好地去除噪声点。
3.3 对高斯噪声两者比较
对于高斯噪声,均值滤波效果比均值滤波效果好。
3.4原因
高斯噪声是幅值近似正态分布,但分布在每点像素上。因为图像中的每点都是污染点,所中值滤波选不到合适的干净点。因为正态分布的均值为0,所以根据统计数学,均值可以消除噪声。
四.两种滤波程序与实验结果
通过这次数字图像课程设计报告的制作,加强了我对均值滤波和中值滤波原理的理解,对噪声的抑制方法有了一定的认识,并且对matlab的使用和C语言的编写更加熟悉,觉得自身的能力得到了一定的提高。
参考文献
[1] 杜谦,通信系统中MATLAB基础与仿真应用,西安电子科技大学出版社
[2] 朱虹等,数字图像处理基础,科学出版社
[3] 罗雨滋C语言程序设计项目教程,哈尔滨工业大学出版社
I=imread('classic.jpg');
subplot(2,2,1);
imshow(I);
title('原图像');
添加椒盐噪声
J=I; %初始化噪声图像矩阵
R1=rand(size(I))*51200/199; %分别在图像中标定两次随机数
R2=rand(size(I))*51200/199;
A=find(R1>255); %确定椒盐噪声中盐点位置
J(A)=255;%将此点设为白点
A=find(R2>255); %确定椒盐噪声中椒点位置
J(A)=0;%将此点设为黑点
subplot(2,2,2);
imshow(J); %显示图像
title('椒盐噪声')
中值滤波
[d1,d2]=size(J);%测量图像尺度参数
B=zeros(1,9);%初始化存储排列像素点的空间
ImageMed33=J;%初始化和原图像一样的空间存储新图像
for i=2:d1-1 %对每一个像素点
for j=2:d2-1
B=reshape(J(i-1:i+1,j-1:j+1),1,9); %将其3*3窗口内的像素均存储到新的临时向量
B=sort(B); %对9个像素点进行排序
ImageMed33(i,j)