EEMD(ensemble EMD)
122 views (last 30 days)
Show older comments
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?
0 Comments
Accepted Answer
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
More Answers (0)
See Also
Categories
Find more on Downloads in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!