How to Blur an Image with a Fourier Transform in Matlab – Part I [Revised*]

In the last post, many moons ago, I introduced the 2-D FFT and discussed the magnitude and phase components of the spatial Fourier domain.  In the next few posts, I would like to describe a concrete application of the 2-D FFT, namely blurring.  Blurring and deblurring are useful image processing techniques that can be used in a variety of fields.  I will explain what blur is mathematically and how it is performed artificially.  In future posts, I’ll go into more depth about what happens in the spatial domain, different types of blur, and some current deblurring technology.

Continue reading

How to Do a 2-D Fourier Transform in Matlab

In today’s post, I will show you how to perform a two-dimensional Fast Fourier Transform in Matlab.  The 2D Fourier Transform is an indispensable tool in many fields, including image processing, radar, optics and machine vision.  In image processing, the 2D Fourier Transform allows one to see the frequency spectrum of the data in both dimensions and lets one visualize filtering operations more easily.  In radar, the 2D Fourier Transform is used as a fast way to create a map from a series of coherent radar pulses.  Additionally, the far-field pattern of a 2D antenna can be calculated using a 2D Fourier Transform.  In Fourier Optics, the 2D Fourier Transform is used to calculate the propagation of electromagnetic waves and through space and optical elements. Continue reading

Digital Filtering in Matlab

Digital filtering is a widely used technique that is common in many fields of science and engineering.  Filters remove unwanted signals and noise from a desired signal.  There are many different kinds of filters, including low pass, high pass, band pass and band stop filters.  In just the category of low pass filters, there is a large collection of filters that famous engineers and mathematicians have invented, including Hanning, Hamming, Blackman, Kaiser and Tukey windows.  In this post, I will show you how to use Matlab’s filter function to remove a high frequency signal from a desired signal.

Continue reading

How to Do a Fourier Transform in Matlab

The Fourier transform is one of the most useful mathematical tools for many fields of science and engineering.  The Fourier transform has applications in signal processing, physics, communications, geology, astronomy, optics, and many other fields.  This technique transforms a function or set of data from the time or sample domain to the frequency domain.  This means that the Fourier transform can display the frequency components within a time series of data.  The Discrete Fourier Transform (DFT) transforms discrete data from the sample domain to the frequency domain.  The Fast Fourier Transform (FFT) is an efficient way to do the DFT, and there are many different algorithms to accomplish the FFT.  Matlab uses the FFT to find the frequency components of a discrete signal.

Continue reading