⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档.txt

📁 自适应中值滤波的编程,用MATLAB实现的,可能程序有点简单,太是真正能实现的
💻 TXT
字号:
% 中值滤波—读取图象文件

i_source=imread('d:\lena.bmp');

[height,width]=size (i_source);

I=imnoise(i_source,'salt & pepper',0.01);
I=im2double(I);
imwrite(I,'noise.bmp');
bmpTemp=I;
I1=I;
Temp=zeros(3);
%figure,imshow(I);


% 横向一维中值滤波, 周围3个点取中值
for i=2:height-1
for j=2:width-1
Temp(1)=bmpTemp(i,j-1);
Temp(2)=bmpTemp(i,j);
Temp(3)=bmpTemp(i,j+1);

Count=Temp(1);
for k=1:3
if Temp(k)>Count
Temp(1)=Temp(k);
Temp(k)=Count;
Count=Temp(1);
end
end
I1(i,j)=Temp(2);
end
end
%figure,imshow(I1);


% 纵向一维中值滤波, 周围3个点取中值
I2=I1; 
for i=2:height-1
for j=2:width-1
Temp(1)=I1(i-1,j);
Temp(2)=I1(i,j);
Temp(3)=I1(i+1,j);

Count=Temp(1);
for k=1:3
if Temp(k)>Count
Temp(1)=Temp(k);
Temp(k)=Count;
Count=Temp(1);
end
end
I2(i,j)=Temp(2);
end
end

% 显示处理结果
subplot(1,3,1)
imshow(i_source);
title('原图象');
subplot(1,3,2)
imshow(I)
title('噪声图像')
subplot(1,3,3)
imshow(I2)
title('中值滤波平滑')








⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -