SciPy

scipy.fftpack.idctn

scipy.fftpack.idctn(x, type=2, shape=None, axes=None, norm=None, overwrite_x=False)[source]

Return multidimensional Discrete Cosine Transform along the specified axes.

Parameters:
x : array_like

The input array.

type : {1, 2, 3, 4}, optional

Type of the DCT (see Notes). Default type is 2.

shape : int or array_like of ints or None, optional

The shape of the result. If both shape and axes (see below) are None, shape is x.shape; if shape is None but axes is not None, then shape is scipy.take(x.shape, axes, axis=0). If shape[i] > x.shape[i], the i-th dimension is padded with zeros. If shape[i] < x.shape[i], the i-th dimension is truncated to length shape[i]. If any element of shape is -1, the size of the corresponding dimension of x is used.

axes : int or array_like of ints or None, optional

Axes along which the IDCT is computed. The default is over all axes.

norm : {None, ‘ortho’}, optional

Normalization mode (see Notes). Default is None.

overwrite_x : bool, optional

If True, the contents of x can be destroyed; the default is False.

Returns:
y : ndarray of real

The transformed input array.

See also

dctn
multidimensional DCT

Notes

For full details of the IDCT types and normalization modes, as well as references, see idct.

Examples

>>> from scipy.fftpack import dctn, idctn
>>> y = np.random.randn(16, 16)
>>> np.allclose(y, idctn(dctn(y, norm='ortho'), norm='ortho'))
True

Previous topic

scipy.fftpack.dctn

Next topic

scipy.fftpack.dst