En mi búsqueda interminable para identificar ronquidos, descubrí que la "planitud espectral" parece ser una medida justa de la "calidad" de la señal.
Estoy calculando la planitud espectral como la media geométrica de los puntos de datos de potencia FFT divididos por la media aritmética de los mismos puntos.
Luego (un pequeño giro aquí) estoy calculando la media aritmética y la desviación estándar de la planitud espectral en ejecución (más de 50 cuadros) y calculando una desviación estándar "normalizada" como la desviación estándar en ejecución dividida por la media en ejecución.
Para mis muestras, encuentro que esta métrica es mayor que aproximadamente (rango de hasta o menos) cuando el audio es "bueno" (es decir, tengo un seguimiento confiable de los sonidos de respiración / ronquidos de un sujeto dormido) y generalmente se desliza hacia abajo debajo de cuando el audio está "en el lodo". (Puedo mejorar algo esta discriminación usando un umbral que se mueve con otros factores, pero presumiblemente ese es un tema diferente). También observo que la medida supera cuando hay un ruido de fondo considerable (por ejemplo, alguien entra en la habitación y susurra sobre )0.2 1.0
Entonces, mi pregunta básica es: ¿Hay un nombre (más allá de la "desviación estándar normalizada de la planitud espectral") para lo que estoy midiendo, y ¿alguien puede ofrecer una explicación conceptual de lo que significa "la métrica"?
(He probado una docena de otras métricas para la "calidad" de la señal, y esta parece ser la mejor hasta la fecha).
Agregado: Probablemente debería admitir que no tengo un manejo conceptual particularmente bueno de lo que está midiendo la planitud espectral simple (solo el artículo de Wikipedia ), por lo que se agradecería cualquier explicación adicional.
fuente
Respuestas:
Como está interesado en la "planitud" de su espectro, de hecho, está interesado en qué tan cerca está su señal de un ruido blanco (que por definición tiene un espectro plano + fases aleatorias). Si retrocede, una medida sería la "distancia" de su observación a la referencia de ruido blanco .
La medida obvia en términos de teoría de la información es la divergencia de Kullback-Leibler . No necesita comprender cada parte, pero mide en bits (si usa log base 2) la distancia entre ambas distribuciones.
Lo bueno en su caso es que su referencia es plana, por lo que lo que queda es la entropía de su espectro . Hay muchas implementaciones existentes (por ejemplo, en scipy ).
Tenga en cuenta que todavía está en el lado seguro: si su distribución es aproximadamente gaussiana, ambas medidas (entropía y estándar) serán proporcionales. Sin embargo, la entropía es más general y tiene más principios. Como extensión, podrá generalizar a otros tipos de ruidos (1 / f, por ejemplo).
fuente
p log p
- no parece transmitir mucha información para mi problema. (Aunque supongo que no intenté tomar su desviación estándar).Cualquier diferencia consistente confiable en las estadísticas de su señal (o alguna función de su señal, como su espectro) y el ruido en el que está incrustada su señal se puede usar para estimar una probabilidad de uno versus el otro.
Parece que ha encontrado aleatoriamente (tropezado) una de las infinitas formas de caracterizar la forma del espectro de señal que diferencia la señal deseada de cosas más como ruido blanco o picos de impulso. Tropezar con una posible solución aleatoria muere no invalidarla (esa es una base de la programación evolutiva / genética). Pero cuán robusta es la medida que ha encontrado como un ejercicio experimental.
fuente