MATLAB Discrete Trigonometric Transform Library
This repository provides a MATLAB interface to the FFTW implementations of the discrete cosine transforms (DCT) and discrete sine transforms (DST). The functions are implemented in C++ as MATLAB mex functions.
MATLAB natively includes an interface to the complex-to-complex transforms in FFTW via the inbuilt functions fft, fft2, and fftn. However, MATLAB does not include an interface to the real-to-real transforms which correspond to discrete trigonometric transforms (DTTs). This library is intended to fill the gap.
Three functions are included: dtt1D, dtt2D, and dtt3D. These compute DTTs in 1D, 2D, and 3D. The function dtt1D can also perform 1D transformations over 2D arrays.
The type of DTT is specified by the input dtt_type, where 1 to 4 corresponds to DCTs, and 5 to 8 to DSTs. Currently, only double precisions transforms are supported, thus the input array must be in double precision.
The DTT functions in this library create the FFTW plan using FFTW_ESTIMATE, and then destroy the plan after execution. Consequently, the performance will not match that of the MATLAB inbuilt FFT functions which can re-use wisdom (see help fftw).
Citation pour cette source
Bradley Treeby (2024). MATLAB Discrete Trigonometric Transform Library (https://github.com/ucl-bug/matlab-dtts/releases/tag/v1.1), GitHub. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
examples
Version | Publié le | Notes de version | |
---|---|---|---|
1.1 | See release notes for this release on GitHub: https://github.com/ucl-bug/matlab-dtts/releases/tag/v1.1 |
||
1.0 |