EEMD(ensemble EMD)

122 views (last 30 days)
一樹 北山
一樹 北山 on 14 Sep 2021
Commented: Star Strider on 16 Sep 2021
I would like to decompose the waveform by using the following procedure to decompose the wav file into IMF by EMD(Empirical mode decomposition) using EEMD(ensemble EMD) code, but it does not work.
I use the following code to load the wav file into MATLAB and get EMD.
[X,fs] = audioread('sample.wav');
sound(X,fs);
t = (0:length(X)-1)/fs;
plot(t,X)
xlabel('Time(s)')
[imf,residual,info] = emd(X,'Interpolation','pchip');
hht(imf,fs)
Can you please tell me why it does not work?

Accepted Answer

Star Strider
Star Strider on 14 Sep 2021
I am not absolutely certain what the problem is, because ‘does not work’ can mean just about anything.
Note that according to the documentation, the first argument ‘x’, the time-domain signal must be ‘specified as a real-valued vector, or a single-variable timetable with a single column. If x is a timetable, x must contain increasing, finite row times.
MATLAB sound files characteristically contain 2 columns, corresponding to the left and right channels of a stereopohonic recording. If that is the situation with your ‘X’, choose one column or the other, not both, to present to the emd function.
.
  8 Comments
一樹 北山
一樹 北山 on 16 Sep 2021
Dear Star Strider
Thank you for your kind attention.
I will follow your advice and try.
I am sure that some unclear points will come up in the future and I will ask you again.
Thank you very much!
Star Strider
Star Strider on 16 Sep 2021
As always, my pleasure!
.

Sign in to comment.

More Answers (0)

Categories

Find more on Downloads in Help Center and File Exchange

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!