中值滤波&均值滤波

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字图像处理作业(中值滤波&均值

滤波)

学院:电子信息工程学院

专业:控制工程

姓名:苏良碧

1中值滤波

1.1、中值滤波原理:

中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。方法是去某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。二维中值滤波输出为g(x,y)=med{f(x-k,y-l),(k,l∈W)},其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二维模板,通常为2*2,3*3区域,也可以是不同的的形状,如线状,圆形,十字形,圆环形等。

1.2、实现方法:

(1)通过从图像中的某个采样窗口取出奇数个数据进行排序;

(2)用排序后的中值取代要处理的数据即可;

1.3、matlab程序(zhongzhilvbo.m)

clear;

close all;

I=imread('I3_256.bmp');

figure,imshow(I),title('原始图象');

J=imnoise(I,'salt&pepper',0.02);

imshow(J);title('噪声干扰图像')

X=J;a=3;b=3;%3*3的邻域

k=floor(a*b/2)+1;%求出中值,即k=5

[M,N]=size(X);%求出输入图像的行数M和列数N

uint8Y=zeros(M,N);

funBox=zeros(a,b);

temp=zeros(a*b);

%X(a:b,c:d)表示A矩阵的第a到b行,第c到d列的所有元素

for i=1:M-a

for j=1:N-b

funBox=X(i:i+a,j:j+b);%把图像中的一个3*3领域赋给funbox

temp=funBox(:);%把领域中的每个元素赋给temp

tempSort=sort(temp);%对其中的像素值进行排序

Y(i,j)=tempSort(k);%将模板的中值(k=5)赋给模板中

心位置的元素

end;

end;

figure,imshow(Y);title('中值滤波图像')1.4、结果:

2均值滤波

2.1、均值滤波原理

均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个象素,构成一个滤波模板,即去掉目标象素本身)。再用模板中的全体像素的平均值来代替原来像素值。

2.2、实现方法

均值滤波也称为线性滤波,其采用的主要方法为领域平均法。线性滤波的基本原理是用均值代替原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度个g(x,y),即个g(x,y)=1/m∑f(x,y)m为该模板中包含当前像素在内的像素总个数。

2.3、matlab程序(junzhilvbo.m)

clear;

close all;

c=imread('I3_256.bmp');%把彩色图片转化成灰度图片,256级figure,imshow(c),title('原始图象');%显示原始图象

g=imnoise(c,'salt&pepper',0.02);%加入椒盐噪声噪声

figure,imshow(g),title('加入椒盐噪声之后的图象');%显示加入高斯噪声之后的图象

n=3;

a(1:n,1:n)=1;%a即n×n模板,元素全是1

p=size(g);%输入图像是p×q的,且p>n,q>n

x1=double(g);

x2=x1;

%A(a:b,c:d)表示A矩阵的第a到b行,第c到d列的所有元素

for i=1:p(1)-n+1

for j=1:p(2)-n+1

c=x1(i:i+(n-1),j:j+(n-1)).*a;%取出x1中从(i,j)开始的n行n列元素与模板相乘

s=sum(sum(c));%求c矩阵(即模板)中各元素之和

x2(i+(n-1)/2,j+(n-1)/2)=s/(n*n);%将模板各元素的均值赋给模板中心位置的元素

end

end

%未被赋值的元素取原值

d=uint8(x2);

figure,imshow(d),title('均值滤波后的图像');%显示均值滤波后的图象

2.4、结果

3结论

中值滤波器对处理椒盐噪声非常有效,因为这种噪声是以黑白点叠加在图像上的。经均值滤波器处理后的图像肃然可见噪声更少,但是所付出的代价是图像变得模糊了。在这种情况下综合考虑可以得出,中值滤波器要远远优于均值滤波器。通常,中值滤波器比均值滤波器更适合去除椒盐噪声。

相关文档
最新文档