8

Estoy buscando registrar eventos que corresponden a un sonido específico, como un portazo de automóvil, o tal vez una tostada de expulsión de tostadora.Identificación en tiempo real del sonido sin voz y sin música de un flujo de micrófono continuo

El sistema necesita ser más sofisticado que un "detector de ruido fuerte"; necesita poder distinguir ese sonido específico de otros ruidos fuertes.

La identificación no necesita tener latencia cero, pero el procesador necesita mantenerse al día con un flujo continuo de datos entrantes de un micrófono que siempre está encendido.

  • ¿Es esta tarea significativamente diferente que el reconocimiento de voz, o podría hacer uso de bibliotecas de reconocimiento de voz/kits de herramientas para identificar estos sonidos que no son de voz?
  • Dado el requisito de que solo tengo que hacer coincidir un sonido (en lugar de hacer coincidir una biblioteca de sonidos), ¿hay alguna optimización especial que pueda hacer?

This answer indica que un filtro adaptado sería apropiado, pero estoy nebuloso en los detalles. No creo que una correlación cruzada simple en los datos de la forma de onda de audio entre una muestra del sonido objetivo y el flujo del micrófono sea efectiva, debido a las variaciones en el sonido del objetivo.

Mi pregunta es también similar a this, que no recibió mucha atención.

+0

Es posible que tenga mejor suerte sobre el http://dsp.stackexchange.com. – mtrw

Respuesta

3

Esta tesis doctoral, Non-Speech Environmental Sound Classification System for Autonomous Surveillance, por Cowling (2004), tiene resultados experimentales sobre diferentes técnicas para la extracción de características de audio, así como la clasificación. Se utiliza sonidos ambientales tales como llaves chirriantes y pasos, y fue capaz de alcanzar una precisión de 70%:

La mejor técnica se encuentra para ser transformada wavelet continua extracción de características con Dynamic Time Warping o Mel-Frequency Cepstral Coeficientes con Time Warping dinámico. Ambas técnicas alcanzan una tasa de reconocimiento del 70%.

Si se limita a un sonido, ¿tal vez podría lograr una mayor tasa de reconocimiento?

El autor también menciona que las técnicas que funcionan bastante bien con reconocimiento de voz (cuantificación vectorial de aprendizaje y redes neuronales) no funcionan tan bien con los sonidos ambientales.

También he encontrado un artículo más reciente aquí: Detecting Audio Events for Semantic Video Search, por Bugalho et al. (2009), donde detectan los eventos de sonido en las películas (como disparos, explosiones, etc.).

No tengo experiencia en esta área. Simplemente me encontré con este material como resultado de que su pregunta despertó mi interés. Estoy publicando mis hallazgos aquí con la esperanza de que ayuden con su investigación.

+0

El enlace está roto. – AJMansfield

+0

@AJMansfield Se encontraron enlaces alternativos a los artículos. –

3

he encontrado un interesante artículo sobre el tema

También debe trabajar para su aplicación, si no mejor que para los sonidos de vehículo.

Al analizar los datos de entrenamiento, que ...

  1. toma muestras de 200 ms
  2. ¿Tiene una transformada de Fourier (FFT) sobre cada muestra
  3. ¿Un Principal Component Analysis en los vectores de frecuencia

    • Calcula la media de todas las muestras de esta clase
    • Subtrac ts la media de las muestras
    • Calcula los vectores propios de la matriz de covarianza media (media de los productos externos de cada vector consigo mismo)
    • Almacena los vectores propios medios y más significativos.

Luego de clasificar un sonido, ...

  1. toma muestras de 200 ms (S).
  2. Hace una transformación de Fourier en cada muestra.
  3. Resta la media de la clase (C) del vector de frecuencia (F).
  4. Multiplica el vector de frecuencia con cada eigen-vector de C, dando un número de cada uno.
  5. Resta el producto de cada número y el vector propio correspondiente de F.
  6. Toma la longitud del vector resultante.
  7. Si este valor es inferior a una constante, S es reconocido como perteneciente a la clase C.
Cuestiones relacionadas