tf.signal.frame
| Просмотреть исходный код на GitHub |
Расширяет signal размерность axis в кадры по frame_length.
tf.signal.frame(
signal, frame_length, frame_step, pad_end=False, pad_value=0, axis=-1, name=None
)
Перемещает окно размером frame_length по размерности signal axis со шагом frame_step, заменяя размерность axis на [frames, frame_length] кадров.
Если pad_end равно True, позиции окон, которые выходят за пределы размерности axis, заполняются значением pad_value до тех пор, пока окно не пройдет полностью мимо конца размерности. В противном случае генерируются только позиции окон, полностью перекрывающие размерность axis.
Пример:
pcm = tf.compat.v1.placeholder(tf.float32, [None, 9152]) frames = tf.signal.frame(pcm, 512, 180) magspec = tf.abs(tf.signal.rfft(frames, [512])) image = tf.expand_dims(magspec, 3)
| Аргументы | |
|---|---|
signal | [..., samples, ...] Tensor. Рейнк и размеры могут быть неизвестны. Рейнк должен быть не меньше 1. |
frame_length | Длина кадра в выборках. Целое число или скаляр Tensor. |
frame_step | Размер шага кадра в выборках. Целое число или скаляр Tensor. |
pad_end | Нужно ли заполнять конец signal значением pad_value? |
pad_value | Необязательный скаляр Tensor для использования в тех местах входного сигнала, где его нет, когда pad_end равно True. |
axis | Скалярное целое число Tensor, указывающее ось для создания кадров. По умолчанию последняя ось. Поддерживаются отрицательные значения для индексирования с конца. |
name | Необязательное имя операции. |
| Возвращаемое значение | |
|---|---|
Tensor кадров с формой [..., frames, frame_length, ...]. |
| Исключения | |
|---|---|
ValueError | Если frame_length, frame_step, pad_value, или axis не являются скалярами. |
© 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/r1.15/api_docs/python/tf/signal/frame