R: 2D Discrete Trigonometric Transforms

mvdtt {dtt} | R Documentation

## 2D Discrete Trigonometric Transforms

### Description

Performs multivariate (2D) discrete sine, cosine or Hartley transform.

### Usage

    mvdtt(x, type = c("dct", "dst", "dht"), variant = 2, inverted = FALSE)
    mvdct(x, variant = 2, inverted = FALSE)
    mvdst(x, variant = 2, inverted = FALSE)
    mvdht(x, inverted = FALSE)

### Arguments

`x` | a matrix to be transformed
`type` | type of transform. Default "dct" is discrete cosine, "dst" is discrete sine and "dht" is discrete Hartley
`variant` | a transformation variant - 1...4 for DCT-I...DCT-IV or DST-I...DST-IV. Default is DCT-II or DST-II. Ignored when type = "dht"
`inverted` | if the inverted transform should be performed?

### Details

This function transforms a matrix of real numbers into a matrix of its DCT, DST or DHT components, of the same dimensions. It is done by so-called row-matrix algorithm.

The mvdct, mvdst and mvdht functions are simple wrappers for choosing the type by function name.

### Value

A transformed matrix.

### Author(s)

Lukasz Komsta

### References

1. N. Ahmed, T. Natarajan, and K. R. Rao, "Discrete Cosine Transform", IEEE Trans. Computers, 90-93, Jan 1974. 2. S. A. Martucci, "Symmetric convolution and the discrete sine and cosine transforms", IEEE Trans. Sig. Processing SP-42, 1038-1051 (1994). 3. R. V. L. Hartley, "A more symmetrical Fourier analysis applied to transmission problems," Proc. IRE 30, 144-150 (1942).

### See Also

`dtt`, `fft`, `mvfft`

### Examples

    x = rnorm(100);
    dim(x) = c(10,10);
    x
    mvdct(x)
    mvdct(mvdct(x),inverted=TRUE)

[Package dtt version 0.1-2 Index]