2D fourier spectrum rotation problems
I know that Fourier transformations have some properties. The one I'm interested in is that of rotation invariant: if I have an image that is rotated, the spectrum will have the same rotation.
Now the problem is I've tried this property but it seems not to work properly.
(I use capital letters for spectra)
I have a simple white square with black background on a 256x256 image. Name it 'f'. I made a copy 'g', which I rotate (with an image editing sw) obtaining 'g(theta)'. Now I apply fft to them both and I obtain F and G(theta). I see the spectrum G(theta) is rotated but it is similar and not equal as if I rotate F spectrum. If I invert the rotation of G(theta) spectrum I don't get the same image how I expected (that is G=F). And applying the inverse fft to G I get an image h that is not g (how it should be), since G and F are different.
Where am I wrong?
I changed many FFT implementation, switching to the slow transformation but the results are the same but I cannot understand what goes wrong.
Thank you very much in advance.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement