How can i illustrate the fast fourier transform of an image ?

9 views (last 30 days)
Hello ,
i perfrom Fast Fourier Transform on an image .This is my code:
I_fft=fftshift(fft2(I_new));
figure();
imagesc(abs(I_fft));
colormap(gray);
%imshow((I_fft));
I was asked to illustrate the result . The problem is that both imagesc and imshow doesn't give me any good result .
Any thoughts would be valuable.

Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 8 Dec 2020
Typically you will have to take the log of the magnitude of the fft-coefficients to get a "nice-looking" illustration. That is due to the fact that the amplitudes typically decreases very rapidly. You should also consider displaying the phase of the fourier-coefficients. For that use:
imagesc(angle(I_fft))
For that type of cyclical data the hsv colormap is better than the standard parula or jet.
HTH

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!