Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference
Fourier Transforms
Intel IPP functions that compute FFT and DFT can process both real and complex images. Function flavors operating on real data are distinguished by R suffix present in function-specific modifier of their full name, whereas complex flavors’ names include C suffix (see Function Naming).
The results of computing the Fourier transform can be normalized by specifying the appropriate value of flag argument for context initialization. This parameter sets up a pair of matched normalization factors to be used in forward and inverse transforms as listed in the following table:
Value of flag Argument |
Forward Transform normalization |
Inverse Transform normalization |
IPP_FFT_DIV_FWD_BY_N |
1/MN |
1 |
IPP_FFT_DIV_INV_BY_N |
1 |
1/MN |
IPP_FFT_DIV_BY_SQRTN |
1/sqrt(MN) |
1/sqrt(MN) |
IPP_FFT_NODIV_BY_ANY |
1 |
1 |
In this table, N and M denote the length of Fourier transform in the x- and y-directions, respectively (or, equivalently, the number of columns and rows in the 2D array being transformed).
For the FFT, these lengths must be integer powers of 2, that is N=2orderX, M=2orderY, where power exponentsare known as order of FFT.
For the DFT, N and M can take on arbitrary integer non-negative values.