Image Processing Toolbox User's Guide |

**Discrete Fourier Transform**

Working with the Fourier transform on a computer usually involves a form of the transform known as the discrete Fourier transform (DFT). A discrete transform is a transform whose input and output values are discrete samples, making it convenient for computer manipulation. There are two principal reasons for using this form of the transform:

- The input and output of the DFT are both discrete, which makes it convenient for computer manipulations.
- There is a fast algorithm for computing the DFT known as the fast Fourier transform (FFT).

The DFT is usually defined for a discrete function that is nonzero only over the finite region and . The two-dimensional *M*-by-*N* DFT and inverse *M*-by-*N* DFT relationships are given by

The values are the DFT coefficients of . The zero-frequency coefficient, , is often called the "DC component." DC is an electrical engineering term that stands for direct current. (Note that matrix indices in MATLAB always start at 1 rather than 0; therefore, the matrix elements `f(1,1)`

and `F(1,1)`

correspond to the mathematical quantities and , respectively.)

The MATLAB functions `fft`

, `fft2`

, and `fftn`

implement the fast Fourier transform algorithm for computing the one-dimensional DFT, two-dimensional DFT, and N-dimensional DFT, respectively. The functions `ifft`

, `ifft2`

, and `ifftn`

compute the inverse DFT.

**Relationship to the Fourier Transform**

The DFT coefficients are samples of the Fourier transform .

**Example**

- Construct a matrix
`f`

that is similar to the function*f(m,n)*in the example in Definition of Fourier Transform. Remember that*f(m,n)*is equal to 1 within the rectangular region and 0 elsewhere. Use a binary image to represent*f(m,n)*. - Compute and visualize the 30-by-30 DFT of
`f`

with these commands.

**Discrete Fourier Transform Computed Without Padding
**

- This plot differs from the Fourier transform displayed in Visualizing the Fourier Transform. First, the sampling of the Fourier transform is much coarser. Second, the zero-frequency coefficient is displayed in the upper left corner instead of the traditional location in the center.

- To obtain a finer sampling of the Fourier transform, add zero padding to
`f`

when computing its DFT. The zero padding and DFT computation can be performed in a single step with this command.

**Discrete Fourier Transform Computed with Padding
**

- The zero-frequency coefficient, however, is still displayed in the upper left corner rather than the center. You can fix this problem by using the function
`fftshift`

, which swaps the quadrants of`F`

so that the zero-frequency coefficient is in the center.

- The resulting plot is identical to the one shown in Visualizing the Fourier Transform.

Fourier Transform | Applications of the Fourier Transform |

© 1994-2005 The MathWorks, Inc.