# FourierDCT

FourierDCT[list]

finds the Fourier discrete cosine transform of a list of real numbers.

FourierDCT[list,m]

finds the Fourier discrete cosine transform of type m.

# Details

• Possible types m of discrete cosine transform for a list of length giving a result are:
•  1 DCT-I 2 DCT-II 3 DCT-III 4 DCT-IV
• FourierDCT[list] is equivalent to FourierDCT[list,2].
• The inverse discrete cosine transforms for types 1, 2, 3, and 4 are types 1, 3, 2, and 4, respectively.
• The list given in FourierDCT[list] can be nested to represent an array of data in any number of dimensions.
• The array of data must be rectangular.
• If the elements of list are exact numbers, FourierDCT begins by applying N to them.
• FourierDCT can be used on SparseArray objects.

# Examples

open allclose all

## Basic Examples(2)

Find a discrete cosine transform:

Find the inverse discrete cosine transform:

Find a discrete cosine transform of type 1 (DCT-I):

Find the inverse discrete cosine transform:

## Scope(2)

Use machine arithmetic to compute the discrete cosine transform:

Use 24-digit precision arithmetic:

A two-dimensional discrete cosine transform:

A five-dimensional discrete cosine transform:

## Generalizations & Extensions(2)

The list may have complex values:

You can use "I", "II", "III", or "IV" for the types 1, 2, 3, and 4, respectively:

## Applications(3)

### Compressing Image Data(1)

Import some image data:

The two-dimensional DCT:

The diagonal spectra shows exponential decay:

Truncate modes in each axis, effectively compressing by a factor of :

Invert the DCT:

### Cosine Series Expansion(1)

Get an expansion for an even function as a sum of cosines:

The function values on a uniformly spaced grid with points on :

Compute the DCT-III and renormalize:

The function has, in effect, been periodized with a particular symmetry:

Plot the expansion error where the points are defined:

### Chebyshev Basis Expansion(1)

Get an expansion for a function in the Chebyshev polynomials:

The values of the function at the Chebyshev nodes:

Find the Chebyshev coefficients:

Show the error:

## Properties & Relations(3)

DCT-I and DCT-IV are their own inverses:

DCT-II and DCT-III are inverses of each other:

The DCT is equivalent to matrix multiplication:

## Possible Issues(1)

FourierDCT always returns normalized results:

To get unnormalized results, you can multiply by the normalization:

Wolfram Research (2007), FourierDCT, Wolfram Language function, https://reference.wolfram.com/language/ref/FourierDCT.html.

#### Text

Wolfram Research (2007), FourierDCT, Wolfram Language function, https://reference.wolfram.com/language/ref/FourierDCT.html.

#### CMS

Wolfram Language. 2007. "FourierDCT." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/FourierDCT.html.

#### APA

Wolfram Language. (2007). FourierDCT. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FourierDCT.html

#### BibTeX

@misc{reference.wolfram_2024_fourierdct, author="Wolfram Research", title="{FourierDCT}", year="2007", howpublished="\url{https://reference.wolfram.com/language/ref/FourierDCT.html}", note=[Accessed: 19-July-2024 ]}

#### BibLaTeX

@online{reference.wolfram_2024_fourierdct, organization={Wolfram Research}, title={FourierDCT}, year={2007}, url={https://reference.wolfram.com/language/ref/FourierDCT.html}, note=[Accessed: 19-July-2024 ]}