Felüláteresztő szűrő

Felüláteresztő szűrő esetében az magasabb frekvenciák (élek, zajok) jelennek csak meg a képen. A megoldása Matlabban hasonló, mint az aluláteresztő szűrőé:

 

function H = ideal_highpass( M, N, D0 )
%%     M, N: a szűrő mérete, D0 nemnegatív szám (sugár)
    u=0:(M-1);
    v=0:(N-1);
    idx = find(u>M/2);  %% kigyujti az indexeket, amelynél u > M/2
    u(idx)=u(idx)-M;
    idy = find(v>N/2);  %% kigyujti az indexeket, amelynél v > N/2
    v(idy)=v(idy)-N;   
    [V,U] = meshgrid(v,u);
    D=sqrt(U.^2 + V.^2);   
    H = double(D >= D0);   
end

>> img = imread( 'Columbo.JPG' );
>> fft_img = fft2( img );
>> fft_img2 = fftshift( fft_img );

>> [M,N] = size( img );
>> H = ideal_highpass( M,N,60.0 );
>> H1 = fftshift( H );
>> filt_fft = fft_img2 .* H1;
>> filt_ifft = ifft2( ifftshift( filt_fft ) );
>> imshow( filt_ifft,[0 255] );

 

Eredeti kép filt_fft Eredmény kép IFFT után