Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
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 | Normalization Factors | |
---|---|---|
Forward Transform | Inverse Transform | |
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.
- Real - Complex Packed (RCPack2D) Format
- FFTGetSize
Computes the size of the FFT context structure and the size of the work buffer. - FFTInit
Initializes the context structure for the image FFT functions. - FFTFwd
Applies forward Fast Fourier Transform to an image. - FFTInv
Applies an inverse FFT to complex source data and stores results in a destination image. - DFTGetSize
Computes the size of the FFT context structure and the size of the work buffer. - DFTInit
Initializes the context structure for the image DFT functions. - DFTFwd
Applies forward discrete Fourier transform to an image. - DFTInv
Applies an inverse DFT to complex source data and stores results in a destination image. - MulPack
Multiplies two source images in packed format. - MulPackConj
Multiplies a source image by the complex conjugate image with data in packed format and stores the result in the destination buffer in the packed format. - Magnitude
Computes magnitude of elements of a complex data image. - MagnitudePackGetBufferSize
Computes the size of the work buffer for the ippiMagnitudePack function. - MagnitudePack
MODIFIED API. Computes magnitude of elements of an image in packed format. - Phase
Computes the phase of elements of a complex data image. - PhasePackGetBufferSize
Computes the size of the work buffer for the ippiPhasePack function. - PhasePack
MODIFIED API. Computes the phase of elements of an image in packed format. - PolarToCart
Converts an image in the polar coordinate form to Cartesian coordinate form. - PackToCplxExtend
Converts an image in packed format to a complex data image. - CplxExtendToPack
Converts a complex data image to an image in packed format.