cwtfilterbank magnitude linear scale
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I am using the cwtfilterbank function to generate a scalogram from a signal. However, the frequencies on the Y-axis of the scalogram are not linear. I have read the documentation for cwtfilterbank, but I couldn't find a direct solution. What changes can I make to achieve a linear frequency scale on the scalogram?
fb = cwtfilterbank('SignalLength',signalLength,'Wavelet','amor','SamplingFrequency',Fs,'VoicesPerOctave',48, 'FrequencyLimits', [0 40])
[wt,f] = fb.wt(sig);
im = ind2rgb(im2uint8(rescale(abs(wt))),jet(256));

0 Commenti
Risposte (1)
Binaya
il 21 Ago 2024
Modificato: Binaya
il 21 Ago 2024
Hello Jhon
I believe you have used the code provided here: https://www.mathworks.com/help/wavelet/ref/cwtfilterbank.html?searchHighlight=cwtfilterbank&s_tid=srchtitle_support_results_1_cwtfilterbank#:~:text=figure-,cwt(x%2CFilterBank%3Dfb),-title(%22Magnitude for plotting the scalogram when using the "cwtfilterbank".
The "cwt" command plots a scalogram with filterbank and signal as input. Here, the frequency scale is plotted in log scale to represent the frequency components present in the filterbank generated by "cwtfilterbank".
To get the frequency in the linear scale, you can use the output of "cwt" function and plot the scalogram manually. The following link shows how to plot the output of "cwt" function manually with a linear frequency scale: https://www.mathworks.com/help/wavelet/ref/cwt.html?searchHighlight=cwt&s_tid=srchtitle_support_results_1_cwt#mw_00e6791c-2525-4b09-9206-f20674403b99:~:text=Display%20the%20result.%20The%20scalogram%20values%20are%20now%20scaled%20by%20the%20maximum%20absolute%20value%20at%20each%20level.%20Frequencies%20are%20displayed%20on%20a%20linear%20scale.
0 Commenti
Vedere anche
Categorie
Scopri di più su Continuous Wavelet Transforms in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!