Question

I'm trying to build a scalogram view for my app to see whether there is relevant information we can retrieve from a wavelet transform as opposed to using a spectograms to see what can be retrieved via an FFT.

So far I can take a wave form and I can perform the forward wavelet transform on it. However I am lost at the next step. How do I turn this information into power/energy information? I have a set of wave forms at different frequencies but I have, as I say, no frequency information.

Can anyone tell me what the next step is for turning this transformed data into a scalogram?

Any help would be much appreciated because my google skills are failing me!

Was it helpful?

Solution

Under reasonable assumptions, the discrete wavelet transform (DWT) decomposes the power/energy/variance of a time series into scales. It is an energy-preserving transform in that the total variance contained in the original time series is contained in the squared wavelet coefficients (properly normalized), just like the DFT! I think the text Wavelet Methods for Time Series Analysis by Percival and Walden is an excellent resource for this type of information.

Now, the continuous wavelet transform (CWT) is a redundant transform and the energy-preserving property (in the DWT) no longer holds. However, you can still look at the squared wavelet coefficients to produce the "scalogram" which is similar to the short-time Fourier Transform (STFT; aka spectrogram).

Torrence and Compo have some nice wavelet software to do this, with a paper to explain the method(s) in the context of atmospheric time series. I'm sure the matlab wavelet toolbox also performs the CWT and associated scalogram.

OTHER TIPS

I've never done a scalogram so I won't claim to try and know anything. I have however found you the code for the matlab scalogram function which is commented in a way that should help you understand things a bit better.... I hope :).

http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/FrequencyFilt/scalogram.m

I'm presuming you're using matlab for your dsp stuff and know how to interpret that m file. Probably a manditory program for all dsp stuff I guess.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top