MATLAB: Wavelet bandwith, centre frequency

continuous wavelet transformcwtwavelet

The Wavelet Toolbox provides the fucntion scal2frq which gives a so called pseudo-frequency to a corresponding scale.
As I understand it, each scale represents a daughter wavelet. In contrast to a periodic sine wave doesn´t a wavelet represent a frequency range rather than one frequency?
How can one calculate the bandwidth of a wavelet?
Is there a way of getting the actual function of the scaled wavelets used in cwt in order to perform an fft on them?

Best Answer

Hi Chris, there are a couple things you can do:
1.) If you want to see the support of wavelets at different scales, you can input a shifted Kronecker delta sequence
x = zeros(1000,1);
x(500) = 1;
cfs = cwt(x,1:2:64,'sym8');
% next part obviously not needed
for nn = 1:32
plot(cfs(nn,:)); pause(0.2);
end
2.) The other thing is that the Wavelet Toolbox now has a DFT-based continuous wavelet transform, implemented in cwtft.m and an inverse CWT in icwtft.m. The wavelets supported in cwtft have their Fourier transforms explicit. See the reference page for cwtft.m
Also see:
for some examples.
Related Question