Produce una visualización de datos de audio a lo largo del tiempo.
Los espectrogramas son una forma estándar de representar información de audio como una serie de porciones de información de frecuencia, una por cada ventana de tiempo. Al unirlos en una secuencia, forman una huella distintiva del sonido a lo largo del tiempo.
Esta operación espera recibir datos de audio como entrada, almacenados como flotantes en el rango de -1 a 1, junto con un ancho de ventana en muestras y un paso que especifica hasta dónde mover la ventana entre cortes. A partir de esto genera una salida tridimensional. La primera dimensión es para los canales en la entrada, por lo que una entrada de audio estéreo tendría dos aquí, por ejemplo. La segunda dimensión es el tiempo, con sucesivos cortes de frecuencia. La tercera dimensión tiene un valor de amplitud para cada frecuencia durante ese intervalo de tiempo.
Esto significa que el diseño, cuando se convierte y se guarda como imagen, se gira 90 grados en el sentido de las agujas del reloj con respecto a un espectrograma típico. El tiempo desciende por el eje Y y la frecuencia disminuye de izquierda a derecha.
Cada valor del resultado representa la raíz cuadrada de la suma de las partes real e imaginaria de una FFT en la ventana actual de muestras. De esta manera, la dimensión más baja representa la potencia de cada frecuencia en la ventana actual y las ventanas adyacentes se concatenan en la siguiente dimensión.
Para obtener una visión más intuitiva y visual de lo que hace esta operación, puede ejecutar tensorflow/examples/wav_to_spectrogram para leer un archivo de audio y guardar el espectrograma resultante como una imagen PNG.
Clases anidadas
clase | AudioEspectrograma.Opciones | Atributos opcionales para AudioSpectrogram |
Constantes
Cadena | OP_NOMBRE | El nombre de esta operación, como lo conoce el motor central de TensorFlow. |
Métodos públicos
Salida <TFloat32> | como salida () Devuelve el identificador simbólico del tensor. |
Espectrograma de audio estático | crear (alcance alcance , entrada Operando <TFloat32> , tamaño de ventana largo, paso largo, opciones... opciones) Método de fábrica para crear una clase que envuelve una nueva operación AudioSpectrogram. |
Opciones de espectrograma de audio estático | magnitud al cuadrado (magnitud booleana al cuadrado) |
Salida <TFloat32> | espectrograma () Representación 3D de las frecuencias de audio como imagen. |
Métodos heredados
Constantes
Cadena final estática pública OP_NAME
El nombre de esta operación, como lo conoce el motor central de TensorFlow.
Métodos públicos
Salida pública <TFloat32> asOutput ()
Devuelve el identificador simbólico del tensor.
Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
Creación de espectrograma de audio estático público (alcance de alcance , entrada de operando <TFloat32> , tamaño de ventana largo, zancada larga, opciones... opciones)
Método de fábrica para crear una clase que envuelve una nueva operación AudioSpectrogram.
Parámetros
alcance | alcance actual |
---|---|
aporte | Representación flotante de datos de audio. |
tamaño de ventana | Qué tan ancha es la ventana de entrada en muestras. Para obtener la máxima eficiencia, esto debería ser una potencia de dos, pero se aceptan otros valores. |
paso | Qué tan separados deben estar los centros de las ventanas de muestra adyacentes. |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de AudioSpectrogram
AudioSpectrogram.Options estático público magnitudSquared (magnitud booleanaSquared)
Parámetros
magnitudAl cuadrado | Ya sea para devolver la magnitud al cuadrado o solo la magnitud. El uso de la magnitud al cuadrado puede evitar cálculos adicionales. |
---|
Salida pública <TFloat32> espectrograma ()
Representación 3D de las frecuencias de audio como imagen.