平滑空间滤波器
平滑滤波器用于模糊处理和降低噪声。模糊处理经常用于预处理任务中,例如在(大)目标提取之前去除图像中的一些琐碎细节,以及连接直线或者曲线的缝隙。通过线性滤波和非线性滤波模糊处理,可以降低噪声。
平滑线性滤波器
平滑线性空间滤波器的输出是包含在滤波器模板领域内的像素的简单平均值(也称均值滤波器)。
clear;clc;close all;
%% 加噪声
I = imread('trailer.jpg');
F = imnoise(I,'gaussian',0.1,0.1);
%% 均值去噪
% 3×3 模板
kernel1_3 = ones(3,3)/9;
F_denoise1_3 = imfilter(F,kernel1_3);
kernel2_3 = [1 2 1; 2 4 2; 1 2 1]/16;
F_denoise2 = imfilter(F,kernel2_3);
% 5×5 模板
kernel1_5 = ones(5,5)/25;
F_denoise1_5 = imfilter(F,kernel1_5);
% 9×9 模板
kernel1_9 = ones(9,9)/81;
F_denoise1_9 = imfilter(F,kernel1_9);
% show
subplot(221);imshow(F,[]);title('noise');
subplot(222);imshow(F_denoise1_3,[]);title('3×3');
subplot(223);imshow(F_denoise1_5,[]);title('5×5');
subplot(224);imshow(F_denoise1_9,[]);title('9×9');
实验结果:
空间均值处理的一个重要应用是,模糊图像以便得到感兴趣物体的粗略描述,因此那些较小物体的灰度就会与背景混合在一起,较大物体则变得像“斑点”而易于检测。模板的大小由那些即将融入背景的物体尺寸决定。
统计排序(非线性)滤波器
中值滤波器,用像素领域内灰度的中值(在中值计算中包含原像素值)代替该像素的值。中值滤波器对处理脉冲噪声非常有效,这种噪声也称为椒盐噪声,因为这种噪声是以黑白点的形式叠加在图像上的。中值滤波器的主要功能是使拥有不同灰度的点看起来更接近于它的相邻点。
I = imread('trailer.jpg');
G = imnoise(I,'salt & pepper',0.2);
for c=1:3
G_meddenoise3(:,:,c) = medfilt2(G(:,:,c),[3,3]);
end
for c=1:3
G_meddenoise5(:,:,c) = medfilt2(G(:,:,c),[5,5]);
end
for c=1:3
G_meddenoise9(:,:,c) = medfilt2(G(:,:,c),[9,9]);
end
figure;
subplot(221);imshow(G,[]);
subplot(222);imshow(G_meddenoise3,[]);
subplot(223);imshow(G_meddenoise5,[]);
subplot(224);imshow(G_meddenoise9,[]);
实验结果:
I = imread('trailer.jpg');
F = imnoise(I,'gaussian',0.1,0.1);
G = imnoise(F,'salt & pepper',0.2);
for c=1:3
G_meddenoise3(:,:,c) = medfilt2(G(:,:,c),[3,3]);
end
for c=1:3
G_meddenoise5(:,:,c) = medfilt2(G(:,:,c),[5,5]);
end
for c=1:3
G_meddenoise9(:,:,c) = medfilt2(G(:,:,c),[9,9]);
end
figure;
subplot(221);imshow(G,[]);
subplot(222);imshow(G_meddenoise3,[]);
subplot(223);imshow(G_meddenoise5,[]);
subplot(224);imshow(G_meddenoise9,[]);
实验结果:
均值滤波采用线性的方法,平均整个窗口范围内的像素值,均值滤波本身存在着固有的缺陷,即它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。均值滤波对高斯噪声表现较好,对椒盐噪声表现较差。
中值滤波采用非线性的方法,它在平滑脉冲噪声方面非常有效,同时它可以保护图像尖锐的边缘,选择适当的点来替代污染点的值,所以处理效果好,对椒盐噪声表现较好,对高斯噪声表现较差。