I am in high-school and planning on basing a research essay on the topic of Fourier Optics. I was looking at the derivations behind the Fourier transform and the fact that the Fourier transform of the aperture function is the diffraction pattern in Fraunhofer diffraction.

I then starting looking into the 4f correlator and how it can be used to filter out parts of the image.

I was wondering if there would be an easy application of the 4f system that I could perform and base my essay on.

I was thinking of comparing the optical Fourier transform (analytical approach) with the fast Fourier transform (numerical approach) for a specific transparent image in which different diffraction gratings are used to filter out parts of the images.

First, I want to make sure I am understanding everything right: for optical Fourier transform I would put a masking filter (diffraction grating in my case) in the focal plane (which I would have to do a calculation to find where it is located depending on the lens) and it would filter/modify the image. Then I would take a photo of the resulting modified image.

How would I do the same process using FFT? I know I would need to take the 2d FFT of the original image to see if it produces similar results but how would I filter/modify it in the same way that was done in the 4f system with optical Fourier transform?

Also what kind of software would I need to perform the FT and is there any other way that this can be simulated using MATLAB for example?

Is what I am thinking something that is possible to do in high-school lab conditions? Or does anyone have any better ideas of an experiment that could be done regarding the 4f system (preferably something with a useful application that would make the experiment worth doing)?

Any help would be greatly appreciated.


I would recommend you to look at the two textbooks: https://www.amazon.com/Fundamentals-Photonics-Bahaa-Saleh/dp/0471358320 and https://www.amazon.com/Introduction-Fourier-Optics-Joseph-Goodman/dp/0974707724. These sources have the derivations you ask for.

If you have a good grasp of the Fourier Transform then your project sounds like a very nice one.

The basic idea is that a lens has the special property that the complex optical field distance $f$ to the left of the lens is the Fourier transform of the complex optical field distance $f$ to the right of the lens. Note that this special property only holds for these two special planes, the front and back focal planes.

The idea of a 4f imaging system is that if you have an object at location $z=0$, a lens $f$ away at location $z = f$ then at $z=2f$ you will see the Fourier transform of the object (note that if you put a screen here you will see the magnitude of the Fourier transform because you aren't measuring the complex phase). If you put another lens $f$ away from this Fourier plane ($2f$) from the first lens then distance $f$ on the other side will be the Fourier transform of the Fourier plane. Performing the Fourier transform twice gives you back the original image (with a parity inversion).

Putting a mask in the Fourier plane corresponds to modifying the Fourier transform of your object. Depending on the type of mask you will see different effects in the output of the $4f$ system and you could explore what happens for different masks. For example, you suggest a grating. You could also consider holes in sheets and disks of varying radii.

Matlab has built in functions where you can take the 2D Fourier transform of an input array (representing your image). Python does as well and is open source.

| cite | improve this answer | |
  • $\begingroup$ I like the book from Godman very much, however, I don't think it is appropriate for a high school student. It approaches the subject in a rather mathematical manner. $\endgroup$ – Semoi Apr 11 at 22:18
  • $\begingroup$ Thanks for the response. When dealing with the FFT numerical approach I was wondering about how I can apply the same filter that was applied in the optical FT. For example I know that the FFT of the image must be taken and then the iFFT but how would I apply the same mask in between steps as what was done in the experiment in order to get the modified image back? $\endgroup$ – Alexander Ivanov Apr 12 at 1:36
  • $\begingroup$ @AlexanderIvanov You will have one 2D data array representing the FFT of the image. You can create another 2D array representing the mask. If the mask is such that it completely blocks light in certain areas but passes it in other then this mask will be all zeros or ones. Then multiply the image FFT array by the mask array before taking the iFFT. $\endgroup$ – jgerber Apr 12 at 2:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.