¿Cómo segmentar el audio de la llamada telefónica en silencio / no silencio?

9

Mi problema es que no conozco la energía del ruido de fondo, así que no puedo limitar la energía. El procesamiento se realiza en tiempo real, y tengo unos 500 ms para decidir. Idealmente, me gustaría que las consonantes silenciosas se consideren no silenciosas.

Michael Litvin
fuente
66
No tengo suficiente información para dar una respuesta completa, pero su problema se conoce como detección de actividad de voz . No existe una única forma acordada de hacerlo, y si observas, probablemente encuentres muchos enfoques diferentes. Quizás algunos otros puedan desarrollarlo un poco más.
Jason R
@Michael Litvin, hay una clase de filtros no lineales (utilizados en 'detección de energía' con el nombre de 'Teager-Kaiser'. Creo que es un subconjunto de lo que se conoce como 'núcleos de voltera'. Lo siento, no puedo proporcionar ninguno más información, pero si buscas esas palabras, puedes encontrar lo que estás buscando. Sé que el método Teager-Kaiser se usa para "cuando" los sonidos de ballenas comienzan VS solo ruido de fondo.
Spacey

Respuestas:

4

Hay varios parámetros que puede observar:

  1. Energía general
  2. Espectro a corto plazo: el habla tiene un espectro "rosado" bastante distintivo y el ruido (que ocurre durante las partes que no son del habla) tiende a ser blanco si está dominado eléctricamente o "rojo" (es decir, de baja frecuencia) si es un fondo acústico ruido o ruido de micrófono
  3. Estadísticas de amplitud. La mayoría de las señales de ruido tienen una distribución gaussiana, el habla está más cerca de una distribución de Laplace

Creo que una combinación de estos tres debería dar un esquema de detección bastante robusto.

Hilmar
fuente