View source on GitHub |
Computes the 1D Inverse Discrete Cosine Transform (DCT) of input
.
tf.signal.idct(
input, type=2, n=None, axis=-1, norm=None, name=None
)
Currently only Types I, II and III are supported. Type III is the inverse of Type II, and vice versa.
Note that you must re-normalize by 1/(2n) to obtain an inverse if norm
is
not 'ortho'
. That is:
signal == idct(dct(signal)) * 0.5 / signal.shape[-1]
.
When norm='ortho'
, we have:
signal == idct(dct(signal, norm='ortho'), norm='ortho')
.
input
: A [..., samples]
float32
/float64
Tensor
containing the
signals to take the DCT of.type
: The IDCT type to perform. Must be 1, 2 or 3.n
: For future expansion. The length of the transform. Must be None
.axis
: For future expansion. The axis to compute the DCT along. Must be -1
.norm
: The normalization to apply. None
for no normalization or 'ortho'
for orthonormal normalization.name
: An optional name for the operation.A [..., samples]
float32
/float64
Tensor
containing the IDCT of
input
.
ValueError
: If type
is not 1
, 2
or 3
, n
is not None,
axisis
not
-1, or
normis not
Noneor
'ortho'`.Equivalent to scipy.fftpack.idct for Type-I, Type-II and Type-III DCT.