4
我目前正試圖理解二維傅里葉移位定理。傅里葉移位定理matlab
根據我迄今爲止所瞭解的,圖像空間中的平移會導致相位差異,但不會導致頻率空間的大小。
我試圖用一個小例子來說明這一點,但它只適用於行中的移位,但不適用於列。這裏的小演示(我只在這裏展示的幅度地塊)
clear all
close all
Iin = zeros(128);
Iin(10:20,10:20)=1;
figure,imagesc(Iin)
Y = fft(Iin);
figure, imagesc(fftshift(log10(abs(Y))));
Iin = zeros(128);
Iin(10:20,20:30)=1;
figure,imagesc(Iin)
Y = fft(Iin);
figure, imagesc(fftshift(log10(abs(Y))));
Iin = zeros(128);
Iin(20:30,10:20)=1;
figure,imagesc(Iin)
Y = fft(Iin);
figure, imagesc(fftshift(log10(abs(Y))));
在我看來所有3個地塊應產生相同的結果。 任何人都可以解釋我在這裏做錯了嗎?
非常感謝您的幫助,
最好的問候,
迷你
非常感謝,我一直在尋找一個多小時的代碼,但我無法找到fft2中缺少的2 ;-) – Mini
沒問題:)。直到我看到代碼中的情節,我才知道出了什麼問題。 – dustincarr
+1:這是一個很容易犯的錯誤 - 在使用Octave(MATLAB克隆)和鍵入'fft'而不是'fft2'時,我浪費了很多時間。結果甚至看起來似乎很可能很多時候,這可能會使錯誤難以發現。 –