scipy.fft.

dctn#

scipy.fft.dctn(x, тип=2, s=None, оси=None, norm=None, overwrite_x=False, workers=None, *, ортогонализировать=None)[источник]#

Возвращает многомерное дискретное косинус-преобразование вдоль указанных осей.

Параметры:
xarray_like

Входной массив.

тип{1, 2, 3, 4}, опционально

Тип DCT (см. Примечания). Тип по умолчанию — 2.

sint или array_like из ints или None, опционально

Форма результата. Если оба s и оси (см. ниже) равны None, s является x.shape; если s равно None, но оси не равно None, тогда s является numpy.take(x.shape, axes, axis=0). Если s[i] > x.shape[i], i-е измерение входных данных дополняется нулями. Если s[i] < x.shape[i], i-е измерение входных данных обрезается до длины s[i]. Если любой элемент s равно -1, размер соответствующего измерения x используется.

осиint или array_like из ints или None, опционально

Оси, по которым вычисляется DCT. Если не задано, последняя len(s) используются оси, или все оси, если s также не указан.

norm{“backward”, “ortho”, “forward”}, опционально

Режим нормализации (см. Примечания). По умолчанию — “backward”.

overwrite_xbool, необязательно

Если True, содержимое x может быть уничтожен; по умолчанию False.

workersint, необязательный

Максимальное количество рабочих процессов для параллельных вычислений. Если отрицательное, значение оборачивается с os.cpu_count(). См. fft для получения дополнительной информации.

ортогонализироватьbool, необязательно

Использовать ли ортогонализированный вариант DCT (см. Примечания). По умолчанию True когда norm="ortho" и False в противном случае.

Добавлено в версии 1.8.0.

Возвращает:
yndarray действительных чисел

Преобразованный входной массив.

Смотрите также

idctn

Обратное многомерное дискретное косинусное преобразование

Примечания

Для полных деталей типов DCT и режимов нормализации, а также ссылок, см. dct.

Примеры

>>> 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