www.pudn.com > 领域平均法与均值滤波.rar > average_filtering.m
function average_filtering()
X=imread('d:\1\LENA128.bmp','bmp')
f=double(X);
X=im2double(X);
figure(10);
imshow(im2uint8(X));
noise_x=imnoise(X,'salt & pepper',0.02);
figure(15);
imshow(im2uint8(noise_x));
[m,n]=size(X);
output_image=X;
w=[1 1 1;1 1 1;1 1 1];
w=1/9*w;
[p,q]=size(w);
[m,n]=size(f);
for x=1:m
for y=1:n
if(x==1|y==1|x==m|y==n)
blur_f(x,y)=f(x,y);
else
blur_f(x,y)=w(1,1)*f(x-1,y-1)+w(1,2)*f(x-1,y)+w(1,3)*f(x-1,y+1)+w(2,1)*f(x,y-1)+w(2,2)*f(x,y)+w(2,3)*f(x,y+1)+w(3,1)*f(x+1,y-1)+w(3,2)*f(x+1,y)+w(3,3)*f(x+1,y+1);
end
end
end
figure(100);
imshow(uint8(blur_f));