matlab均衡化、规定化、滤波处理

一、直方图均衡化处理

I=imread('E:\matconvnet-1.0-beta23\fry.jpg');
J=rgb2gray(I);
H=histeq(J);%计算和显示灰度图像J的直方图
subplot(2,2,1),imshow(J);
subplot(2,2,2),imshow(H);
subplot(2,2,3),imhist(J);
subplot(2,2,4),imhist(H)

原图与均衡化图对比显示:
matlab均衡化、规定化、滤波处理_第1张图片
分析:原始图像的灰度范围可能比较集中,通过直方图均衡化处理,图像的灰度分布在整个区间,图像对比度增强。但是,图像中的椒盐噪声可以更加明显的看到。

二、直方图规定化处理

I0=imread('E:\matconvnet-1.0-beta23\fry.jpg');
I=rgb2gray(I0);
J=histeq(I,32);%均衡化为32个灰度级的直方图
[counts,x]=imhist(J);%返回直方图图像向量counts
figure
subplot(2,2,1),imshow(I);
subplot(2,2,2),imhist(I);
M=histeq(I,counts);
subplot(2,2,3),imshow(M);
subplot(2,2,4),imhist(M);

matlab均衡化、规定化、滤波处理_第2张图片
分析:通过有目的的增强感兴趣的灰度区间,图中需要识别的目标对比度增强。

三、平滑滤波–中值滤波

I0=imread('E:\matconvnet-1.0-beta23\fry.jpg');
I=rgb2gray(I0);
Z1=medfilt2(I,[3,3]);
Z2=medfilt2(I,[5,5]);
figure;
subplot(1,3,1),imshow(I),title'原图';
subplot(1,3,2),imshow(Z1),title'3*3模板';
subplot(1,3,3),imshow(Z2),title'5*5模板';

matlab均衡化、规定化、滤波处理_第3张图片
分析:中值滤波有效地滤除了椒盐噪声,5*5的模板比3*3的模板效果更好,图像看上去更平滑。

四、平滑滤波–均值滤波

I0=imread('E:\matconvnet-1.0-beta23\fry.jpg');
I=rgb2gray(I0);
H2=fspecial('average',3);
JZ=filter2(H2,I)/255;
H1=fspecial('average',5);
JZ1=filter2(H1,I)/255;
figure,
subplot(1,3,1),imshow(I),title '原图';
subplot(1,3,2),imshow(JZ),title '3*3模板'
subplot(1,3,3),imshow(JZ1),title '5*5模板'

matlab均衡化、规定化、滤波处理_第4张图片
分析:均值滤波器较好的滤除噪声。但是处理过后的图像仍可以看到一些椒盐噪声的存在,对椒盐噪声滤波效果没有中值滤波效果好。

五、平滑滤波–维纳滤波

I0=imread('E:\matconvnet-1.0-beta23\fry.jpg');
I=rgb2gray(I0);
W1=wiener2(I,[3,3]);
W2=wiener2(I,[5,5]);
figure,
subplot(1,3,1),imshow(I),title '原图';
subplot(1,3,2),imshow(W1),title '3*3模板';
subplot(1,3,3),imshow(W2),title '5*5模板'

matlab均衡化、规定化、滤波处理_第5张图片
分析:比较中值滤波、均值滤波、维纳滤波,维纳滤波处理后的图像最平滑,滤波效果最好。

你可能感兴趣的:(matlab,matlab)