how to calculate frequency from the wavelet toolbox?
4 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(2 个)
Wayne King
2012-4-7
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
2012-4-8
If you know the scale you are visualizing you can make a correspondence using scal2frq() has I have said.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Continuous Wavelet Transforms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!