Resumen de métodos y herramientas de extracción de características de audio

Este artículo apareció por primera vez en: Walker AI

La mayoría de las funciones de audio se originan en tareas de reconocimiento de voz y pueden optimizar la forma de onda original de la señal muestreada, acelerando así la comprensión de la máquina del significado semántico del audio. Desde finales de la década de 1990, estas funciones de audio también se han utilizado en tareas de recuperación de información musical, como el reconocimiento de instrumentos, y han surgido más funciones diseñadas para música de audio.

1. Categorías de funciones de audio

Comprender las diferentes categorías de características de audio no se trata de clasificar con precisión una característica determinada, sino de profundizar la comprensión del significado físico de la característica. Por lo general, podemos distinguir las características de audio de las siguientes dimensiones:

(1) Si el modelo extrae directamente la característica de la señal o se basa en las estadísticas obtenidas de la salida del modelo, como la media, la varianza, etc .;

(2) Ya sea que la característica represente un estado transitorio o un valor global, el estado transitorio generalmente se basa en un marco y el estado global cubre una dimensión de tiempo más larga;

(3) El grado de abstracción de las características. El nivel más bajo de abstracción de las características subyacentes también es el más fácil de extraer de la señal de audio original. Puede procesarse en características intermedias de nivel superior que representan elementos musicales comunes en la partitura, como el tono y el comienzo de las notas. Hora de inicio, etc .; las características de alto nivel son las más abstractas, se utilizan principalmente para el estilo musical y las tareas emocionales;

(4) Según la diferencia del proceso de extracción de características, se puede dividir en: características extraídas directamente de la señal original (como la tasa de cruce por cero), características obtenidas al convertir la señal a frecuencia (como el centroide espectral) y las obtenidas a través de un modelo específico Características (como la melodía), las características (como los MFCC) que se obtienen al cambiar la escala de características cuantitativas inspirada en la cognición auditiva humana.

Usamos "diferencias en el proceso de extracción de características" como el punto de referencia de clasificación principal y enumeramos las características más comunes en cada categoría:

Resumen de métodos y herramientas de extracción de características de audio

Al mismo tiempo, también encontramos que algunas características no pertenecen completamente a una de las categorías como MFCC, porque la extracción de MFCC convertirá la señal del dominio del tiempo al dominio de la frecuencia y luego la obtendrá de acuerdo con el filtro de escala MEL que imita la respuesta auditiva humana, por lo que pertenece a ambas características del dominio de la frecuencia. También es una característica perceptiva.

2. Herramientas de extracción habituales

A continuación se muestra una lista de algunas herramientas y plataformas de uso común para extraer funciones de audio.

nombre habla a Lenguaje de adaptación
Aubio https://aubio.org c / python
Essentia https://essentia.upf.edu c ++ / python
Librosa https://librosa.org pitón
Madmom http://madmom.readthedocs.org pitón
pyAudioAnalysis https://github.com/tyiannak/pyAudioAnalysis pitón
Complementos de vampiros https://www.vamp-plugins.org c ++ / python
Yaafe http://yaafe.sourceforge.net python / matlab

3. Procesamiento de señales de audio

La señal digital de audio es una serie de representación digital de muestras que cambian continuamente en el dominio del tiempo, lo que a menudo se denomina "forma de onda". Para analizar la señal digital, es necesario muestrear y cuantificar la señal.

El muestreo se refiere al proceso de discretización en tiempo continuo. El muestreo uniforme se refiere al muestreo una vez cada intervalo de tiempo igual. El número de muestras de sonido que deben recopilarse por segundo se denomina frecuencia de muestreo. Los 44,1 kHz y 11 kHz que se ven a menudo en archivos de audio se refieren a Frecuencia de muestreo.

La cuantificación convierte formas de onda continuas en números discretos. Primero, la amplitud completa se divide en un conjunto de pasos de cuantificación finitos. La división de amplitud puede ser un espaciado igual o desigual. Los valores de muestra que caen dentro de un cierto paso reciben el mismo valor. El valor cuantificado. La profundidad de bits en el archivo de audio representa el valor de cuantificación, y la profundidad de bits de 16 bits representa la cuantificación de la amplitud a 2 ^ 16.

La ley de Nyquist establece que si la frecuencia de muestreo es mayor o igual al doble del componente de frecuencia más alta de la señal, una señal puede reconstruirse con precisión a partir de su valor de muestreo.De hecho, la frecuencia de muestreo es significativamente mayor que la frecuencia de Nyquist.

4. Transformaciones comunes

4.1 Transformada de Fourier de corta duración

La transformada de Fourier de tiempo corto (transformada de Fourier de tiempo corto, STFT) es adecuada para el análisis de espectro de señales lentas que varían en el tiempo y se ha utilizado ampliamente en el análisis y procesamiento de audio e imágenes. El método consiste en dividir primero la señal en cuadros y luego realizar la transformada de Fourier en cada cuadro. Se puede considerar que cada cuadro de señal de voz está cortado de varias formas de onda de señal estacionaria diferentes, y el espectro de frecuencia de tiempo corto de cada cuadro de voz es una aproximación del espectro de frecuencia de cada forma de onda de señal estacionaria.

Dado que la señal de voz es estable a corto plazo, la señal se puede dividir en tramas para calcular la transformada de Fourier de una determinada trama, de modo que se obtenga la transformada de Fourier de corta duración.

La transformada de Fourier (FFT) puede transformar una señal del dominio del tiempo al dominio de la frecuencia, mientras que la transformada de Fourier inversa (IFFT) puede transformar el dominio de la frecuencia en una señal del dominio del tiempo; la transformada de Fourier transforma la señal del dominio del tiempo al dominio de la frecuencia El dominio es la forma más común de procesamiento de señales de audio. El espectrograma obtenido por STFT también se denomina espectrograma o espectrograma en señales de audio.

Resumen de métodos y herramientas de extracción de características de audio

4.2 Transformada discreta de coseno

La Transformada de Coseno Discreta (DCT para Transformada de Coseno Discreta) es una transformada relacionada con la Transformada de Fourier, que es similar a la Transformada de Fourier Discreta (DFT para Transformada de Fourier Discreta), pero solo usa números reales. La transformada discreta de coseno es equivalente a una transformada discreta de Fourier cuya longitud es aproximadamente el doble. Esta transformada discreta de Fourier se realiza en una función par real (porque la transformada de Fourier de una función par real sigue siendo una función par real ), en algunas deformaciones, es necesario mover la posición de entrada o salida en media unidad.

4.3 Transformada de ondícula discreta

La Transformada de Onda Discreta (Transformada de Onda Discreta) es muy útil en el análisis numérico y análisis de tiempo-frecuencia. La Transformada de Onda Discreta discretiza la escala y la traducción de la ondícula básica.

4.4 Espectro de Mel y Mel cepstrum

El espectrograma es a menudo una imagen muy grande. Para obtener una característica de sonido de un tamaño adecuado, a menudo se pasa a través de los bancos de filtros en escala mel y se transforma en un banco de filtros en escala mel.

La percepción del tono del oído humano es aproximadamente lineal con el logaritmo de la frecuencia fundamental del sonido. En la escala Mel, si las frecuencias Mel de dos discursos difieren dos veces, el tono que puede percibir el oído humano es aproximadamente dos veces diferente. Cuando la frecuencia es pequeña, la mel cambia rápidamente con Hz; cuando la frecuencia es grande, la mel aumenta muy lentamente y la pendiente de la curva es pequeña. Esto muestra que el oído humano es más sensible a los tonos de baja frecuencia, y el oído humano es muy aburrido en las frecuencias altas, lo que está inspirado en el banco de filtros Mel-scale.

El filtro de escala Mel está compuesto por múltiples filtros triangulares. El grupo de filtros es denso a bajas frecuencias y tiene un valor de umbral grande. Los filtros de alta frecuencia son escasos y el valor de umbral es bajo. Simplemente corresponde a la ley objetiva de que cuanto mayor es la frecuencia, más sordo es el oído humano. El formulario de filtro que se muestra en la figura anterior se llama banco de filtros Mel con la misma área de banco, que se usa ampliamente en el campo de la voz humana (reconocimiento de voz, reconocimiento de locutor) y otros campos, pero si se usa voz no humana Campo, se perderá mucha información de alta frecuencia. En este momento, quizás preferimos el banco de filtros Mel con la misma altura de banco.

Filtro de área igual
Filtro de contorno

Implementación del espectro MEL en librosa:

  import numpy as np

  def melspectrogram(y=None, sr=22050, S=None, n_fft=2048, hop_length=512,
                     power=2.0, **kwargs):
      S, n_fft = _spectrogram(y=y, S=S, n_fft=n_fft, hop_length=hop_length, power=power)

      # Build a Mel filter
      mel_basis = filters.mel(sr, n_fft, **kwargs)

      return np.dot(mel_basis, S)

El mel cepstrum se analiza en el espectro mel (logaritmo y transformación DCT) para obtener el mel cepstrum.

  # -- Mel spectrogram and MFCCs -- #
  def mfcc(y=None, sr=22050, S=None, n_mfcc=20, **kwargs):
      if S is None:
          S = power_to_db(melspectrogram(y=y, sr=sr, **kwargs))

      return scipy.fftpack.dct(S, axis=0, type=dct_type, norm=norm)[:n_mfcc]

4.5 Transformación Q constante

En música, todas las notas están compuestas por 12 temperamentos iguales de varias octavas, que corresponden a los doce semitonos de una octava en el piano. La relación de frecuencia entre estos semitonos es 21/12. Obviamente, para dos octavas del mismo tono, la octava alta es el doble de la frecuencia de la octava baja. Por lo tanto, en la música, el sonido se distribuye exponencialmente, pero el espectro de audio obtenido por nuestra transformada de Fourier se distribuye linealmente, y los puntos de frecuencia de los dos no pueden ser una correspondencia uno a uno, lo que se referirá al valor estimado de algunas frecuencias de escala. Produce errores. Por lo tanto, el análisis moderno del sonido de la música generalmente utiliza un algoritmo de transformación de tiempo-frecuencia con la misma ley de distribución exponencial: Transformada Q constante (Transformada Q constante).

CQT se refiere a un banco de filtros cuya frecuencia central se distribuye exponencialmente, con diferentes anchos de banda de filtro, pero la relación entre la frecuencia central y el ancho de banda es Q constante. La diferencia entre esta y la transformada de Fourier es que la frecuencia horizontal de su espectro no es lineal, sino que se basa en log2, y la longitud de la ventana del filtro se puede cambiar de acuerdo con la frecuencia del espectro para obtener un mejor rendimiento. Dado que la distribución de CQT y las frecuencias de escala es la misma, calculando el espectro CQT de la señal musical, se puede obtener directamente el valor de amplitud de la señal musical en cada frecuencia de nota.

Resumen de métodos y herramientas de extracción de características de audio

Referencia

《Un tutorial sobre aprendizaje profundo para la recuperación de información musical》

"STFT y espectrograma, características de Mel Bank y MFCC"

"Algoritmo de conversión de espectro basado en el reconocimiento de música-CQT"

《Documento de libro》

Supongo que te gusta

Origin blog.51cto.com/15063587/2588660
Recomendado
Clasificación