图像处理Matlab篇——图像加噪与滤波

Posted 芯魂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像处理Matlab篇——图像加噪与滤波相关的知识,希望对你有一定的参考价值。

摘要:图像加噪,以及各种滤波

1、线性平滑滤波器
% 用MATLAB实现领域平均法抑制噪声程序
clear
clc
I=imread('lena.jpg ');
subplot(231),imshow(I);title('原始图像');
% I=rgb2gray(I);  %如果是rgb图像,需要这一步
I1=imnoise(I,'salt & pepper',0.02);   % 图像加噪
subplot(232),imshow(I1);title(' 添加椒盐噪声的图像')
k1=filter2(fspecial('average',3),I1)/255;          %进行3*3模板平滑滤波
k2=filter2(fspecial('average',5),I1)/255;          %进行5*5模板平滑滤波
k3=filter2(fspecial('average',7),I1)/255;          %进行7*7模板平滑滤波
k4=filter2(fspecial('average',9),I1)/255;          %进行9*9模板平滑滤波
subplot(233),imshow(k1);title('3*3 模板平滑滤波');
subplot(234),imshow(k2);title('5*5 模板平滑滤波');
subplot(235),imshow(k3);title('7*7 模板平滑滤波');
subplot(236),imshow(k4);title('9*9 模板平滑滤波');


2、中值滤波

clear
clc
I=imread('lena.jpg ');
% I=rgb2gray(I);
J=imnoise(I,'salt & pepper',0.02);
subplot(231),imshow(I);title('原图像');
subplot(232),imshow(J);title('添加椒盐噪声图像');
k1=medfilt2(J);              %进行3*3模板中值滤波
k2=medfilt2(J,[5,5]);      %进行5*5模板中值滤波
k3=medfilt2(J,[7,7]);      %进行7*7模板中值滤波
k4=medfilt2(J,[9,9]);      %进行9*9模板中值滤波
subplot(233),imshow(k1);title('3*3模板中值滤波');
subplot(234),imshow(k2);title('5*5模板中值滤波 ');
subplot(235),imshow(k3);title('7*7模板中值滤波');
subplot(236),imshow(k4);title('9*9 模板中值滤波');


3、维纳滤波,中值滤波

clear
clc
I=imread('lena.jpg');
J=imnoise(I,'gaussian',0,0.01);  % 加高斯噪声
K=wiener2(J,[5,5]);  % 进行维纳滤波
L=medfilt2(J);    % 进行中值滤波
figure
subplot(221),imshow(I,[]),title('原图');
subplot(222),imshow(J,[]),title('加高斯噪声');
subplot(223),imshow(K),title('维纳滤波');
subplot(224),imshow(L),title('中值滤波');


4、特定区域滤波

% 对指定区域进行锐化滤波的程序

I=imread('eight.tif');
c=[222 272 300 272 222 194];
r=[21 21 75 121 121 75];
BW=roipoly(I,c,r);
h=fspecial('unsharp');
J=roifilt2(h,I,BW);
subplot(1,2,1);imshow(I);
subplot(1,2,2);imshow(J);

PS: Matlab还有许多相关滤波器,相关的函数与用法请查阅帮助文件。

以上是关于图像处理Matlab篇——图像加噪与滤波的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB-中值滤波原理实现及应用

MATLAB-中值滤波原理实现及应用

MATLAB-中值滤波原理实现及应用

语音处理基于matlab低通滤波器语音信号加噪与去噪含Matlab源码 1709期

语音处理基于matlab GUI低通滤波器语音信号加噪与去噪含Matlab源码 1708期

添加椒盐噪声并用巴特沃斯滤波器去噪matlab?