Why do I get unequal wavelet coefficients when using different syntaxes in continuous wavelet transform?
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I have used the given syntaxes to perform a continuous wavelet transform on a desired signal.
Syntax number 1:
[temp_cfs, temp_f] = cwt(signal,fs(i));
whos temp_cfs temp_f
cfs(:,:,i) = temp_cfs;
f(:,i) = temp_f;
figure; surface(t(:,i),f(:,i),abs(cfs(:,:,i)).^2);
Syntax number 2:
figure; cwt(signal,fs);
Syntax number 3:
[temp_cfs, temp_f] = cwt(signal,fs(i));
whos temp_cfs temp_f
cfs(:,:,i) = temp_cfs;
f(:,i) = temp_f;
figure; contour(t(:,i),f(:,i),abs(cfs(:,:,i)).^2);
However, the resulting wavelet coefficients (magnitudes in the color bar) seem to be inconsistent with each other. Could you please explain why this is happening? I would highly appreciate any guidance you can provide regarding this issue. Your help would be invaluable.
Thank you for your time.
Best regards,
Navid
0 个评论
采纳的回答
Voss
2024-1-18
"cwt(___) with no output arguments plots the CWT scalogram. The scalogram is the absolute value of the CWT plotted as a function of time and frequency."
Note: that's absolute value, not absolute value squared.
3 个评论
Voss
2024-1-19
You're welcome!
When creating your own contour or surface, you can use the absolute value of the square, or the square of the absolute value, or anything else, but the results won't match what cwt plots, unless you are plotting just the absolute value like cwt does.
If you are asking whether you can modify how cwt works, I recommend against attempting that.
更多回答(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!