/cl-dct

Discrete cosine transform in Common Lisp.

Primary LanguageCommon LispApache License 2.0Apache-2.0

cl-dct

Build Status Coverage Status

Discrete cosine transform (DCT) is a signal processing algorithm that compresses a signal. It's similar to a Fourier transform. DCT is often used in speech recognition for computing MFCC features.

There are a number of different versions and implementations of DCT. This implementation mimics the one in Matlab. You should also get the same results in scipy with the command:

scipy.fftpack.dct([4., 3., 5., 10.], norm='ortho')

The idct() implementation is equivalent to the Matlab implementation and the scipy command:

scipy.fftpack.idct([4., 3., 5., 10.], norm='ortho')

This is an O(n²) implementation. O(n log(n)) implementations are also possible.