how to calculate frequency from the wavelet toolbox?
2 views (last 30 days)
Show older comments
I am uploading a signal and performing wavelet analysis using continous wavelet 1-D,I get the coefficient waveform,how do I now calculate the frequency of the given waveforms?
0 Comments
Answers (2)
Wayne King
on 7 Apr 2012
You can use scal2frq to return the pseudo-frequencies corresponding to particular scales.
For example:
t = linspace(0,5,5e3);
x = cos(2*pi*100*t).*(t<1)+cos(2*pi*50*t).*(3<t)+0.3*randn(size(t));
% determine scales
fc = centfrq('cmor1-1');
% a = fc/(freq*dt)
freqrange = [20 150];
Fs = 1000;
scalerange = fc./(freqrange*(1/Fs));
scales = scalerange(end):0.2:scalerange(1);
Coeffs = cwt(x,scales,'cmor1-1');
F = scal2frq(scales,'cmor1-1',1/Fs);
contour(t,F,abs(Coeffs));
xlabel('Time'); ylabel('Frequency');
Wayne King
on 8 Apr 2012
If you know the scale you are visualizing you can make a correspondence using scal2frq() has I have said.
0 Comments
See Also
Categories
Find more on Continuous Wavelet Transforms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!