Fourier transform of a picture?

9 次查看(过去 30 天)
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?

回答(1 个)

Bjorn Gustavsson
Bjorn Gustavsson 2020-9-11
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 个评论
Alberto Paniate
Alberto Paniate 2020-9-11
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

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Optics 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by