¿Qué madre wavelet para un escalograma?

8

Estoy intentando crear un escalograma en tiempo real (a partir de una señal unidimensional) en el estilo de un espectrograma;

Mirando a través de varios documentos + libros; La wavelet de Gabor, o Morlet compleja, parece ser favorecida por mantener una estrecha relación con la frecuencia.

Aunque esperaba usar una wavelet de valor real debido a problemas de complejidad computacional ... ¿Qué wavelet se recomendaría?

daurnimator
fuente
No necesariamente entiendo esto, pero tal vez pueda obtener su respuesta del código fuente para esto, que produce la salida que desea, aunque no en tiempo real: phy.uct.ac.za/courses/python/examples/ Wavelets.py flic.kr/p/7oXfbT
endolith

Respuestas:

3

La wavelet madre de su escalograma debe tener una forma similar a las formas de pico habituales que desea detectar (supongo que la usa para detectar picos de su señal). Sin embargo, me gustaría preguntarle para qué le gustaría usar wavelets. Podría darte una respuesta más específica para tu pregunta.

Luis Andrés García
fuente
1
Básicamente quiero crear un espectrograma usando wavelets en lugar de STFT. Entonces, las 'formas' que quiero detectar serían sinusoides, supongo ...
daurnimator
Usaría la misma función de forma g (t) en wavelet que en STFT. Puede encontrar diferencias entre estas dos transformaciones en Doc .
Luis Andrés García
¿Quiere decir que (por ejemplo) si quiero algo como un STFT usando una ventana de Hamming; Mi wavelet debe ser una ventana de Hamming modulada?
daurnimator
1
Eso es. La wavelet madre (función de forma) debe ser similar en ambos casos.
Luis Andrés García
¿Eso requiere una ventana compleja entonces? (donde su valor absoluto es = a la ventana de Hamming) ¿O puedo soltar el componente imaginario?
Daurnimator
2

Desafortunadamente es para señales 2D (análisis de imagen), pero creo que su conclusión también se aplicaría a la señal 1D. JF Kirby, "¿Qué wavelet reproduce mejor el espectro de potencia de Fourier?", Computers & Geosciences 31 (2005) 846–864

Básicamente, su conclusión es ir con la wavelet Fan, que es una versión rotada 2D de la wavelet Morlet. En 1D, sugeriría el complejo Morlet. Es la combinación de la parte real y compleja que permite una buena similitud con un espectro de potencia de Fourier.

Con mayor precisión, aquí debería verse, convertido a 1D de Kirby (2005):

Ψ=exp(ik0xλx22λ2),
λk0=5.336

exp(ik0x/λ)exp(x2/2)cos(x)exp(x2/2)

Intente comparar el espectro obtenido de una transformada de Fourier, de un Morlet complejo y de un Morlet real. Tenga cuidado con la normalización incorrecta / no estándar que se encuentra en muchos algoritmos FFT.

PhilMacKay
fuente
Como se señaló en la pregunta; Necesito una wavelet de valores reales. Terminé yendo con el discreto meyer FWIW.
daurnimator
Por supuesto, si no puede usar valores complejos en sus cálculos, la wavelet de Morlet pierde algo de su encanto ... Aún así, las matemáticas no son mucho más complejas, por lo que cuando la memoria y la potencia de la computación no son el factor limitante, recomiendo Ve con el Morlet. Uno de mis amigos / colegas hizo un programa para comparar, y si tomas el valor promedio de la transformada wavelet en cada escala, terminas con una copia exacta de un espectro de potencia de Fourier. Desafortunadamente, aún no ha publicado sus resultados, por lo que no tengo una fuente para citar (además de Kirby (2005)).
PhilMacKay
0

El discreto Meyer fue mi elección final; Proporciona una separación de sub-banda relativamente limpia.

daurnimator
fuente