Hace un tiempo estaba intentando diferentes formas de dibujar formas de onda digitales , y una de las cosas que intenté fue, en lugar de la silueta estándar de la envolvente de amplitud, mostrarla más como un osciloscopio. Así es como se ve una onda sinusoidal y cuadrada en un osciloscopio:
La forma ingenua de hacer esto es:
- Divida el archivo de audio en un fragmento por píxel horizontal en la imagen de salida
- Calcule el histograma de amplitudes de muestra para cada fragmento
- Trace el histograma por brillo como una columna de píxeles
Produce algo como esto:
Esto funciona bien si hay muchas muestras por fragmento y la frecuencia de la señal no está relacionada con la frecuencia de muestreo, pero no de otra manera. Si la frecuencia de la señal es un submúltiplo exacto de la frecuencia de muestreo, por ejemplo, las muestras siempre se producirán exactamente a las mismas amplitudes en cada ciclo y el histograma solo tendrá unos pocos puntos, aunque la señal reconstruida real exista entre estos puntos. Este pulso sinusoidal debe ser tan suave como el anterior a la izquierda, pero no es porque sea exactamente 1 kHz y las muestras siempre ocurren alrededor de los mismos puntos:
Intenté el muestreo para aumentar el número de puntos, pero no resuelve el problema, solo ayuda a suavizar las cosas en algunos casos.
Entonces, lo que realmente me gustaría es una forma de calcular el PDF verdadero (probabilidad vs amplitud) de la señal reconstruida continua a partir de sus muestras digitales (amplitud vs tiempo). No sé qué algoritmo usar para esto. En general, el PDF de una función es la derivada de su función inversa .
PDF de sin (x):
Pero no sé cómo calcular esto para ondas donde la inversa es una función de valores múltiples , o cómo hacerlo rápido. Divídalo en ramas y calcule el inverso de cada uno, tome las derivadas y sume todas. Pero eso es bastante complicado y probablemente haya una forma más simple.
Este "PDF de datos interpolados" también es aplicable a un intento que hice para hacer una estimación de la densidad del núcleo de una pista GPS. Debería haber sido en forma de anillo, pero debido a que solo miraba las muestras y no consideraba los puntos interpolados entre las muestras, el KDE parecía más una joroba que un anillo. Si las muestras son todo lo que sabemos, entonces esto es lo mejor que podemos hacer. Pero las muestras no son todo lo que sabemos. También sabemos que hay un camino entre las muestras. Para GPS, no hay una reconstrucción perfecta de Nyquist como la hay para audio de banda ilimitada, pero la idea básica aún se aplica, con algunas conjeturas en la función de interpolación.