MATLAB Answers

Old version and new version of CWT(Continuous Wavelet transform) to detect abrupt change in signal

7 ビュー (過去 30 日間)
Hello Everyone!!!
My name is Supatat Hovanotayan, I am a master student studying in mechanical engineering, The University of Tokyo.
I would like to consult you about the new and old version of continuous wavelet transform for detecting abrupt change in signal.
My supervisor he asked me to find out that we should use the old or the new version to perform CWT for our research. Now, we are doing research on detection abnormal running in railway vehicle system.
Our goal is to use CWT to detect abrupt change in signal and consider the cwt result to classify that the railway vehicle is running in normal condition or not.
These are the codes I used
Old version:
Fs = 200;
scale = 1:512;
[coef,f] = cwt(signal,scale,'morl',1/Fs);
New version
Fs = 200;
[coef,f] = cwt(signal,'amor',Fs);
In the past, I used the old version to perform CWT to detect the abrupt change in signal. And we found that we could distinguish between normal running and abnormal running easily as shown in the picture below.
[Abnormal running condition (Using old cwt)]
[Normal running condition (Using old cwt)]
The reason why we could distinguish because the wavelet coefficient are very high in the low frequency range for abnormal running signal. But for the normal running, the wavelet coefficient is very low in the all frequency range.
But after we used the new version, we found that the wavelet coefficient in low frequency range are not high compared to the old version’s result. It is more difficult than the old version to classify whether it is normal running or abnormal running as shown in the picture below.
[Abnormal running condition (Using new cwt)]
[Normal running condition (Using new cwt)]
My questions are
1. “Can I still use the old version of CWT because it look like more suitable to my research’s goal than the new version?”
2. “The old version is no longer recommended as shown on the website, it means the result from the old version of cwt are all incorrect?”
Moreover, if you have any idea on how to distinguish between normal running and abnormal running in my data, please let me know
Thank you very much for your kindness
I am looking forward to hearing from you
Best regards,
Supatat Hovanotayan


Wayne King
Wayne King 2019 年 9 月 6 日
Supatat, You are free to use the old CWT API if you wish. However, we recommend the newer API for reasons I've tried to explain in previous posts. However, from your screen shots above it appears to me that the normal and abnormal signals look very different in the new CWT and actually comparable to what the old CWT api gives. Can you attach these two signals and the code you are using to differentiate normal vs abnormal. Just by eye, it appears to me that the new CWT API shows a much different view of these signals.
  1 件のコメント
Supatat Hovanotayan
Supatat Hovanotayan 2019 年 9 月 7 日
Hello Mr. Wayne King
Thank you for your information
I will send you these two signals data and the code I used through email
Thank you very much for your kindness


その他の回答 (0 件)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by