Fast Fourier Transform Practical Application & Understanding
The FFT is a mathematical algorithm relating the time domain and frequency domain. It is widely considered to be one of the most important algorithms ever to be discovered. It beauty lies in taking complex real-world models and simplifying them into low-resolution representations, making it a fundamental component of numerous areas of science and technology.
Data analysis, signal process, medical imaging, and more popularly video and image processing schemas. In many applications, we acquire signals in the continuous time domain. These signals are sampled at discrete intervals to be digitalized. Once the sample is digitized, the discrete Fourier transform of these signals can be computed.
A simple real-world application to reference the effectiveness of the FFT algorithm, is with audio signals.
The graph above is a digital representation of an audio signal in the time domain. Essentially it is representing the amplitude of the sound wave over its entire length of time.
When using the FFT to transform the graph from the time domain into the frequency domain, the algorithm decomposes the audio signal into its individual frequencies. Afterwards, we can see the magnitudes of all of the frequencies in the frequency (aka Fourier) domain.
With the relationship of magnitude per frequency, there are a variety of design decisions an engineer can deploy as it relates to their application. Here are some common real-world audio examples:
- Digital signal processing to resample the audio with a lower Nyquist frequency, focusing the audio only around the voice-only frequencies. If the file is resampled from 48kHz to 32kHz, the highest frequency in the file will reduce from 24kHz down to 16kHz. This reduce the file size in and decrease latency when using for VOIP applications.
- An audio transducer engineer wants to optimize a loudspeaker for cost and performance. Knowing the exact frequency range the signal that the device needs to render, the engineer can utilize cheaper materials that focus on producing higher sensitivity in this smaller region.
- Equalizing the signal such that the output to boost and/or notch particular frequency ranges in order to achieve a desired sound profile.
The beauty of the FFT is that it divides a complex object into simpler components to be understood more easily. It parallels how the human brain frequently makes low-resolution representations of complex systems in a person’s day-to-day life. You may likely be reading this article on your mobile phone, which you more than likely see as a low-resolution representation of a small laptop screen that connects to the internet, rather than a series of complex electronic systems all working in unison with exact mathematical precision. The human brain simplifies the world around us so we may optimally behave in the real world, just as the FFT simplifies a real world signals that technological inventions can be built on top of them.
Some other industrial applications of the FFT include:
- Medical imaging (x-rays)
- Image compression
- Antenna communications
- GPS
What other real world applications can you think of that are useful in your profession? Please let me know how they help you?