Functions | |
void | itpp::dct (const vec &in, vec &out) |
Discrete Cosine Transform (DCT). | |
vec | itpp::dct (const vec &in) |
Discrete Cosine Transform (DCT). | |
void | itpp::idct (const vec &in, vec &out) |
Inverse Discrete Cosine Transform (IDCT). | |
vec | itpp::idct (const vec &in) |
Inverse Discrete Cosine Transform (IDCT). |
The functions
X = dct(x)
x = idct(X)
where for and for .
The implementation is built upon one of the following libraries:
Achieving maximum runtime efficiency with the FFTW library on some computer architectures requires that data are stored in the memory with a special alignment (to 16-byte boundaries). The IT++ memory management functions and container classes do not generally allocate memory aligned this way, and as a result calling FFTW via the IT++ interface (i.e. the dct()/idct() function) may be slower than using the FFTW library directly. Therefore, FFTW users concerned about maximum possible performance may want to consider the possibility of calling the FFTW library and its memory management/allocation routines directly, bypassing the IT++ storage classes and the dct()/idct() interface to FFTW.