Using MATLAB to Compute Diffraction Patterns of Complex Apertures - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Using MATLAB to Compute Diffraction Patterns of Complex Apertures

Description:

Using MATLAB to Compute Diffraction Patterns of Complex Apertures Stephen Schultz Department of Electrical and Computer Engineering Brigham Young University – PowerPoint PPT presentation

Number of Views:327
Avg rating:3.0/5.0
Slides: 27
Provided by: StephenS163
Category:

less

Transcript and Presenter's Notes

Title: Using MATLAB to Compute Diffraction Patterns of Complex Apertures


1
Using MATLAB to Compute Diffraction Patterns of
Complex Apertures
Stephen SchultzDepartment of Electrical and
Computer EngineeringBrigham Young University
2
Lens Focus
  • Fresnel becomes Fraunhofer at focal plane
  • 2D Fourier transform
  • Take 2D transform of complex structures
  • Slits
  • Multiple slits
  • Letters
  • Pictures
  • Fingerprints

3
Fourier Transform with MATLAB
  • Built-in Fast Fourier Transform (FFT)
  • Y fft2(X)
  • Performs a Discrete Fourier Transform (DFT)
  • Uses the Cooley-Tukey algorithm
  • Fastest with sizes 2n
  • Process
  • Discretize the aperture
  • Compute DFT
  • Relate integer parameter to spatial coordinates

4
MATLAB Fourier Transform1. Aperture
discretization
  • Create gray scale image in graphics program
  • Black is blocking
  • White is transmitting
  • Gray scale would be variable amplitude
  • Save as a gif file (In illustrator)
  • Save for Web and Devices
  • Set the image size (faster with 2n pixels)
  • No transparency, not interlaced
  • Read file into MATLAB
  • Aimread(slit, gif)

5
MATLAB Fourier Transform2. Computing DFT
  • Computing DFT
  • Use the two-dimensional FFT command
  • Efft2(A)
  • Puts center of the beam in the corners
  • Use the fftshift command to put it into the
    center
  • Efftshift(fft2(A))

Aimread(slit, gif)
fft2( A )
fftshift( fft2( A ) )
6
Convert FFT to Continuous Fourier Transform
(FT)3. Spatial Coordinates
  • FFT is a Discrete Fourier Transform (DFT)
  • We need to relate the DFT to the FT
  • We will do this with a 1D analysis and then
    extend it to 2D by just replacing the FFT command
    with FFT2
  • Start with a sampled version of the g(x)

7
Convert FFT to Continuous Fourier Transform
(FT)3. Spatial Coordinates
  • Use an FFT, which is a discrete Fourier Transform
    (DFT)
  • MATLAB assumes that it starts at zero rather than
    x so you need to shift it using the fftshift
    command

8
Convert FFT to Continuous Fourier Transform
(FT)3. Spatial Coordinates
  • Convert the DFT to a discrete time Fourier
    transform (DTFT)
  • The index is scaled by the number in the array
  • fp/N

9
Convert FFT to Continuous Fourier Transform
(FT)3. Spatial Coordinates
  • Convert the DTFT into a continuous Fourier
    transform (FT)
  • Use the sampling period scaling factor xDx n
  • fxf/Dx
  • Compare this to the analytic triangle function

10
Convert FFT to Continuous Fourier Transform
(FT)3. Spatial Coordinates
  • Summary of spatial coordinates
  • Relate to discrete frequency
  • Relate to spatial frequency
  • Fraunhofer diffraction relationship
  • Spatial coordinates

11
MATLAB Fourier Transform 3. Spatial Coordinates
  • For the FFT the number of frequency points equals
    the initial spatial points
  • The spatial extent of the diffraction pattern
  • More pixels causes the analysis plane to be
    bigger

M64
M256
12
Spatial Resolution 3. Spatial Coordinates
  • Spatial resolution, Dx, independent of number of
    pixels
  • Need larger image, W, without increasing slit
    size
  • Accomplished with zero padding

13
Summary of MATLAB Code (2. Fraunhofer
Diffraction)
  • Fairly simple MATLAB coding (9 lines of code)
  • A imread('slit','gif')
  • M,N size(A)
  • lambda 600e-9
  • f 16.5e-3
  • W 4e-3
  • I (fftshift(fft2(A))).2
  • x linspace(-lambdafN/(2W),
    lambdafN/(2W), N)
  • y linspace(-lambdafM/(2W),
    lambdafM/(2W), M)
  • pcolor(x, y, I)
  • Most work done using graphics program

14
Aperture Diffraction
  • Rectangular aperture
  • Slit size
  • Cassegrain telescope
  • Obscuration size
  • Struts

15
Fourier Transform of a Letter (2. Fraunhofer
Diffraction)
16
Fourier Transform of a Word (2. Fraunhofer
Diffraction)
17
Pattern Recognition(2. Fraunhofer Diffraction)
18
Optical Image Processing (2. Fraunhofer
Diffraction)
  1. Perform Fourier transform on an image
  2. Filter the image (low pass or high pass filter)
  3. Perform another Fourier transform

19
Experimental Implementation(3. Experimental)
  • Helps solidify what is happening
  • Complimentary to simulations
  • No approximations but few aperture variations
  • Easy to look at transition between regimes
  • Students learn sensitivities of optical image
    processing
  • Alignment
  • Opaqueness

20
Experimental Implementation(3. Experimental)
  • Requirement to make the implementation practical
  • Long focal length lenses
  • Easier focusing
  • Larger features (fxx/lf)
  • Opaque masks
  • Transparencies transferred to chrome mask
  • Put various patterns on same mask
  • Spatial filtered red laser
  • Object is a simple transparency

21
Implementation of 4F project (3. Experimental)
22
Fourier Plane Mask(3. Experimental)
  • Chrome on glass
  • Multiple patterns on the same mask
  • Sizes from 10-370 mm
  • Patterns
  • Rectangular slits
  • Rectangular blocks
  • Circular holes
  • Circular blocks

23
Grid Filtering(3. Experimental)
  • Grid transparency
  • Slit image plane mask
  • Switch filter pattern by small shifts in mask

2.7 mm Grid with 30mm Filter Slit
2.7 mm Grid with 110mm Filter Slit
24
Image Filtering (3. Experimental)
25
Blurring of an Image (3. Experimental)
Original Image
Blurred Image
26
Transition (3. Experimental)
  • Transition from image to spatial frequency

Image off-focus
Image at focus
Write a Comment
User Comments (0)
About PowerShow.com