how to calculate frequency from the wavelet toolbox?
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?
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');
1 Comment
Baidehi Nanda
on 8 Apr 2012
Wayne King
on 8 Apr 2012
0 votes
If you know the scale you are visualizing you can make a correspondence using scal2frq() has I have said.
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!