Search code examples
pythontime-seriesdecomposition

How do I reconstruct a signal from IMFs from Empricial Mode Decomposition?


I'm currently trying to reconstruct a signal from Empirical Mode Decomposition IMFs in Python using the EMD toolbox.

I decomposed a signal from a force sensor (length 6 seconds, sampling rate 80 Hz) into IMFs and now I'd like put the signal back together again. I thought maybe I could just sum up the IMFs, but this "new" signal doesn't resemble the old one.

I'm not entirely sure if I'm making a mistake (e.g. should I weigh the IMFs when putting the signal back together like I would in an ICA?) or if the new signal will always look a little different from the old one.

Does anyone know what's going on and what I have to do?

Thanks in advance!


Solution

  • Solved this! I thought the first data array from the EMD output was the original signal and the other ones were the IMFs, but the first one is also an IMF. So I excluded the first IMF by accident. If you add up all IMFs you get the original signal back.