jax.scipy.fft.idctn#
- jax.scipy.fft.idctn(x, type=2, s=None, axes=None, norm=None)[source]#
Computes the multidimensional inverse discrete cosine transform of the input
JAX implementation of
scipy.fft.idctn().- Parameters:
x (Array) – array
type (int) – integer, default = 2. Currently only type 2 is supported.
s (Sequence[int] | None | None) – integer or sequence of integers. Specifies the shape of the result. If not specified, it will default to the shape of
xalong the specifiedaxes.axes (Sequence[int] | None | None) – integer or sequence of integers. Specifies the axes along which the transform will be computed.
norm (str | None | None) – string. The normalization mode: one of
[None, "backward", "ortho"]. The default isNone, which is equivalent to"backward".
- Returns:
array containing the inverse discrete cosine transform of x
- Return type:
See also
jax.scipy.fft.dct(): one-dimensional DCTjax.scipy.fft.dctn(): multidimensional DCTjax.scipy.fft.idct(): one-dimensional inverse DCT
Examples
jax.scipy.fft.idctncomputes the transform along both the axes by default whenaxesargument isNone.>>> x = jax.random.normal(jax.random.key(0), (3, 3)) >>> with jnp.printoptions(precision=2, suppress=True): ... print(jax.scipy.fft.idctn(x)) [[-0.03 -0.08 -0.08] [ 0.05 0.12 -0.09] [-0.02 -0.04 0.08]]
When
s=[2], dimension of the transform alongaxis 0will be2and dimension alongaxis 1will be the same as that of input.>>> with jnp.printoptions(precision=2, suppress=True): ... print(jax.scipy.fft.idctn(x, s=[2])) [[-0.01 -0.03 -0.14] [ 0. 0.03 0.06]]
When
s=[2]andaxes=[1], dimension of the transform alongaxis 1will be2and dimension alongaxis 0will be same as that of input. Also whenaxes=[1], transform will be computed only alongaxis 1.>>> with jnp.printoptions(precision=2, suppress=True): ... print(jax.scipy.fft.idctn(x, s=[2], axes=[1])) [[ 0. -0.19] [-0.03 -0.34] [-0.38 0.04]]
When
s=[2, 4], shape of the transform will be(2, 4)>>> with jnp.printoptions(precision=2, suppress=True): ... print(jax.scipy.fft.idctn(x, s=[2, 4])) [[-0.01 -0.01 -0.05 -0.11] [ 0. 0.01 0.03 0.04]]
jax.scipy.fft.idctncan be used to reconstructxfrom the result ofjax.scipy.fft.dctn>>> x_dctn = jax.scipy.fft.dctn(x) >>> jnp.allclose(x, jax.scipy.fft.idctn(x_dctn)) Array(True, dtype=bool)