I'm currently trying to understand the 2d fourier shift theorem.
According to what I've learnd so far a translation in the image space leads to differences in phase but not the magnitude in frequency space.
I tried to demonstrate this with a little example but it only worked for shifts in rows but not in columns. Here's the little demo (I'm only showing the magnitude plots here)
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))));
In my opinion all 3 magnitude plots should yield the same result. Can anyone explain me what I'm doing wrong here?
Thank you very much for your help,
best regards,
Mini