How do I generate a two dimensional Fourier Transform with a given image in a .mat file?

Risposte (2)

Hi,
Mathworks documentation is excellent and is always a good point to start. Have a look here Fourier Transform and Image Transforms
Assuming that I is your input image and F is its Fourier Transform (i.e. F = fft2(I))
You can use this code:
F = fftshift(F); % Center FFT
F = abs(F); % Get the magnitude
F = log(F+1); % Use log, for perceptual scaling, and +1 since log(0) is undefined
F = mat2gray(F); % Use mat2gray to scale the image between 0 and 1
imshow(F,[]); % Display the result
Regards

1 Commento

Hi, I am given a mat file called A.mat. So I am assuming I need to first open the file first. So i wrote,
fid=load('A.mat');
After that, I am not sure what to do with the opened file. I am confused on how to use the fft2 function cause every time I tried it says undefined function 'fttn' for input arguments of type 'struct'.
Am I doing something wrong?

Accedi per commentare.

Attached are two of my FFT2 demos for you.

2 Commenti

Hi,
I am just given a file in the .mat format. When I try to do ftt2, I am unable to convert the file. When I use the load function, it says that I have a 300x300 double.
You forgot to attach your .mat file and your .m file so I'm unable to do anything to help you (yet).

Accedi per commentare.

Categorie

Scopri di più su Fourier Analysis and Filtering in Centro assistenza e File Exchange

Richiesto:

il 9 Mar 2015

Commentato:

il 9 Mar 2015

Community Treasure Hunt

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

Start Hunting!

Translated by