Fourier transform of a picture?

9 views (last 30 days)
Alberto Paniate
Alberto Paniate on 11 Sep 2020
Commented: Alberto Paniate on 12 Sep 2020
Hi, I'm trying to create a model that simulates a lens with fourier optics. Studying fourier optics I have this formula:
Now, when d=f we have a simple fourier transform. Now I think that matlab doesn't put f (that states for focal lenght) in the exponential. How can I change the factors in the exponential?

Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 11 Sep 2020
Note that the actual Fourier transform is the second row of your equation, while the first factor you can see as a matrix with normalization coefficients that varies over the Fourier-plane (main contribution here is to include a spatial variation of the phase due to optical path-lengths differences). Just calculate the FFT of your image, then calculate the normalization-coefficient-matrix, take care to calculate u and v correctly scaled, and use sensible values for f, k and lambda. That should be manageable. The f in the Fourier-transform is just a scaling-factor - accounting for the scaling of the u and v coordinates - those are given by the optical system and your image-size.
  2 Comments
Alberto Paniate
Alberto Paniate on 11 Sep 2020
Thanks for the answer. Yeah I know that the fourier transform is the second row. If I have understood correctly, I should create new variables: x= 2pi/(lambda*f)*u and same thing for v .In this way we obtain the same structure of fft in matlab

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!