|English only||BIG > Download Algorithms >AcademicFFT|
A Java class to perform Fourier-related operations on discrete sequences, images, and volumes.
Figure 1. Top: (898 x 81) grayscale image of a tree core. Middle: log-amplitude of its discrete Fourier transform. Bottom: color-coded phase of its discrete Fourier transform.
This Java class contains methods to perform forward and backward discrete Fourier transforms and to perform Fourier-based circular convolutions. The data live in dimension one (sequences), two (images), or three (volumes). They are stored as linear arrays of
Contrarily to several other Fourier packages currently available, the data manipulated by
The algorithms deployed by this class are standard versions of the fast Fourier transform (FFT). They include mixed-radix, split-radix, coprime, and Rader decompositions, among others. They are able to handle arbitrary data lengths, memory permitting. Behind the scenes, a stage of planification is first performed to determine which combination of approaches is optimal for the current data length. This planification is performed once only; its outcome is stored for future calls, until the time comes when the class is unloaded from memory. Consequently, the very first call to an instance of an
This distribution is dated May 31, 2014. It includes the complete set of source files, along with the documentation.
Consider a periodic space-domain sequence. It is convenient to describe it over a single period, starting at the origin, like
Here are a few basic definitions.
Here are a few basic relations featuring the discrete Fourier transform.
Here are the discrete Fourier transforms of a few particular sequences.
EPFL makes no warranties of any kind on this software and shall in no event be liable for damages of any kind in connection with the use and exploitation of this technology.