0

下の画像では、画像のフーリエ変換を計算しました。ここで、DO=50 を使用して同じ画像に理想的なハイパス フィルターを適用したいと考えています。フーリエ変換のコードは画像に記載されています。ここに画像の説明を入力

4

1 に答える 1

1

理想的なハイパスフィルターがわかりません。ですから、HPF は円形のフィルターであると仮定しました。これは私のコードです。

lena = im2double(rgb2gray(imread('lena.bmp')));
D0 = 50;
lpf = zeros(size(lena));
base_x = linspace(-size(lena,1)/2,size(lena,1)/2,size(lena,1));
base_y = linspace(-size(lena,2)/2,size(lena,2)/2,size(lena,2));
[x,y] = meshgrid(base_x, base_y);
lpf(x.^2+y.^2<D0^2) = 1;
hpf = 1-lpf;

LENA = fftshift(fft2(lena));
RESULT = LENA.*hpf;
result = abs(ifft2(RESULT));
figure, imshow(result,[])

まず、1-LPFを使ってHPFを作ります。(LPF' の形状は円です。) そして、画像に HPF をピクセル単位で乗算します。最後に、IFFT IMAGE.

上記のコードを実行すると、この結果が得られます。

元の画像 オリジナル画像 HPF画像HPF画像 結果画像結果画像

于 2013-10-28T07:52:58.220 に答える