scipy.fft.

idctn#

scipy.fft.idctn(x, type=2, s=None, axes=None, norm=None, overwrite_x=False, workers=None, orthogonalize=None)[源代码]#

返回沿指定轴的多维逆离散余弦变换。

参数:
xarray_like

输入数组。

type{1, 2, 3, 4}, 可选

DCT 的类型(参见注释)。默认类型是 2。

sint 或 int 或 None 类型的 array_like,可选

结果的形状。如果saxes(见下文)都是None,则sx.shape;如果s为None,但axes不为None,则snumpy.take(x.shape, axes, axis=0)。如果s[i] > x.shape[i],则输入的第i维会用零填充。如果s[i] < x.shape[i],则输入的第i维则截断为长度s[i]。如果s的任何元素为-1,则使用x的对应维度的长度。

axesint或int的数组类型或None,可选

计算IDCT的轴。如果不指定,则使用最后一个len(s)轴,或者如果s未指定,则使用所有轴。

norm{"backward", "ortho", "forward"},可选

归一化模式(见注释)。默认值为“backward”。

overwrite_xbool,可选

如果为True,x的内容可能会被销毁;默认值为False。

workersint,可选

用于并行计算的最大工作进程数。如果为负值,则值从os.cpu_count()中循环使用。有关更多详细信息,请参阅fft

orthogonalizebool,可选

是否使用正交化的IDCT变体(见注释)。当norm="ortho"时,其默认值为True,否则为False

在1.8.0版本中添加。

返回:
y实数的ndarray

转换后的输入数组。

另请参阅

dctn

多维DCT

注释

有关IDCT类型和归一化模式的全部详细信息以及引用,请参阅idct

示例

>>> import numpy as np
>>> from scipy.fft import dctn, idctn
>>> rng = np.random.default_rng()
>>> y = rng.standard_normal((16, 16))
>>> np.allclose(y, idctn(dctn(y)))
True