天天看點

圖像增強——同态濾波

同态濾波的過程如下圖所示:

圖像增強——同态濾波

代碼:

clear all
clc
I0 =imread('56.jpg');
I0=rgb2gray(I0);
I1 = log(double(I0)+1);
I2 =fft2(I1);
N=2;D0=0.05*pi;rh=1.2;r=0.5;
[row,col]=size(I2);
form=1:row
    for n=1:col
        D1(m,n)=sqrt(m^2+n^2);
        H(m,n)=r+(rh/(1+(D0/D1(m,n))^(2*N)));
    end
end
I3=I2.*single(H);
I4=ifft2(I3);
I5=exp(I4)-1;
subplot(2,2,1);
imshow(I0);
title('原圖像');
subplot(223),imhist(I0)
subplot(2,2,2);
imshow(I5,[]);
title('同态濾波後的圖像');
%% 求同态濾波後的直方圖
uint_I=real(I5);
Imax=max(uint_I(:));
Imin=min(uint_I(:));
fori=1:size(uint_I,1)
    for j=1:size(uint_I,2)
        I(i,j)=(uint_I(i,j)-Imin)/(Imax-Imin);
    end
end
I=255*I;
I=floor(I);
subplot(224),imhist(uint8(I));
figure,mesh(double(I));
title('Three-dimensional map');
           

結果:

圖像增強——同态濾波
圖像增強——同态濾波
圖像增強——同态濾波
圖像增強——同态濾波

同态濾波法,通過選擇合适的同态濾波器,達到壓制低頻部分(照度分量)而增強(提升)高頻部分(反射分量)的目的。由處理的結果圖可以看出,處理後的圖像的目标物細節變得清晰可見。

上一篇: vim縮進

繼續閱讀