tf.signal.mdct
Вычисляет Модифицированное дискретное косинусное преобразование signals.
tf.signal.mdct(
signals, frame_length, window_fn=tf.signal.vorbis_window, pad_end=False,
norm=None, name=None
)
Реализовано с помощью совместимых с TPU/GPU операций и поддерживает градиенты.
| Аргументы | |
|---|---|
signals | [..., samples] float32/float64 Tensor вещественных сигналов. |
frame_length | Скалярное целое число Tensor. Длина окна в выборках, которая должна быть кратна 4. |
window_fn | Функция, которая принимает frame_length и dtype ключевое слово и возвращает [frame_length] Tensor выборок в предоставленном типе данных. Если установлено значение None, используется прямоугольное окно с масштабом 1/sqrt(2). Для идеального восстановления сигнала из mdct и inverse_mdct, пожалуйста, используйте tf.signal.vorbis_window, tf.signal.kaiser_bessel_derived_window или None. При использовании другой функции окна убедитесь, что w[n]^2 + w[n + frame_length // 2]^2 = 1 и w[n] = w[frame_length - n - 1] для n = 0,...,frame_length // 2 - 1 для достижения идеального восстановления. |
pad_end | Нужно ли дополнять конец signals нулями, когда предоставленная длина кадра и шаг дают кадр, который частично выходит за его пределы. |
norm | Если None, используется ненормализованное dct4, если "ortho" - ортонормализованное dct4. |
name | Необязательное имя операции. |
| Возвращает | |
|---|---|
[..., frames, frame_length // 2] Tensor значений MDCT float32/float64, где frames примерно samples // (frame_length // 2) когда pad_end=False. |
| Возможные исключения | |
|---|---|
ValueError | Если signals не имеет ранга не меньше 1, frame_length не является скаляром, или frame_length не кратно 4. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/signal/mdct