scipy.fftpack.

dctn#

scipy.fftpack.dctn(x, type=2, shape=None, axes=None, norm=None, overwrite_x=False)[原始碼]#

沿指定軸返回多維離散餘弦變換。

參數:
xarray_like

輸入陣列。

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

DCT 的類型 (請參閱 Notes)。預設類型為 2。

shapeint 或 array_like of ints 或 None, optional

結果的形狀。如果 shapeaxes (見下文) 均為 None,則 shapex.shape;如果 shape 為 None 但 axes 不為 None,則 shapenumpy.take(x.shape, axes, axis=0)。如果 shape[i] > x.shape[i],則第 i 個維度會以零填充。如果 shape[i] < x.shape[i],則第 i 個維度會被截斷為長度 shape[i]。如果 shape 的任何元素為 -1,則會使用 x 對應維度的大小。

axesint 或 array_like of ints 或 None, optional

計算 DCT 的軸。預設值為所有軸。

norm{None, ‘ortho’}, optional

正規化模式 (請參閱 Notes)。預設為 None。

overwrite_xbool, optional

若為 True,則可以破壞 x 的內容;預設為 False。

回傳值:
yndarray of real

轉換後的輸入陣列。

另請參閱

idctn

反向多維 DCT

註解

關於 DCT 類型和正規化模式的完整詳細資訊以及參考文獻,請參閱 dct

範例

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