Skip to main content
Log in

Introducing libeemd: a program package for performing the ensemble empirical mode decomposition

  • Original Paper
  • Published:
Computational Statistics Aims and scope Submit manuscript

Abstract

The ensemble empirical mode decomposition (EEMD) and its complete variant (CEEMDAN) are adaptive, noise-assisted data analysis methods that improve on the ordinary empirical mode decomposition (EMD). All these methods decompose possibly nonlinear and/or nonstationary time series data into a finite amount of components separated by instantaneous frequencies. This decomposition provides a powerful method to look into the different processes behind a given time series data, and provides a way to separate short time-scale events from a general trend. We present a free software implementation of EMD, EEMD and CEEMDAN and give an overview of the EMD methodology and the algorithms used in the decomposition. We release our implementation, libeemd, with the aim of providing a user-friendly, fast, stable, well-documented and easily extensible EEMD library for anyone interested in using (E)EMD in the analysis of time series data. While written in C for numerical efficiency, our implementation includes interfaces to the Python and R languages, and interfaces to other languages are straightforward.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. In rare cases the finite precision of computer arithmetic can cause the number of zero crossings or extrema to get stuck oscillating between two consecutive numbers. To avoid an endless loop or extreme oversifting in this case our implementation relaxes the latter condition so that a case where only one of the numbers changes by 1 is still considered stable. This change does not affect the normal operation of EMD.

  2. http://cran.r-project.org/web/packages/Rlibeemd/index.html.

  3. https://github.com/helske/Rlibeemd.

  4. http://perso.ens-lyon.fr/patrick.flandrin/emd.html.

  5. http://ptsa.sourceforge.net.

  6. https://bitbucket.org/luukko/libeemd.

  7. http://www.physionet.org/cgi-bin/atm/ATM.

References

  • Bowman DC, Lees JM (2014) The Hilbert–Huang transform: tools and methods. R version 3.1.0 (10 April 2014)

  • Chang LW, Lo MT, Anssari N, Hsu KH, Huang N, Hwu WM (2011) Parallel implementation of multi-dimensional ensemble empirical mode decomposition. In: Acoustics, speech and signal processing (ICASSP), 2011 IEEE international conference on, pp 1621–1624

  • Chen Q, Huang N, Riemenschneider S, Xu Y (2006) A B-spline approach for empirical mode decompositions. Adv Comput Math 24:171–195

    Article  MathSciNet  MATH  Google Scholar 

  • Colominas MA, Schlotthauer G, Torres ME, Flandrin P (2012) Noise-assisted EMD methods in action. Adv Adapt Data Anal 04(1250):025

    MathSciNet  Google Scholar 

  • Dätig M, Schlurmann T (2004) Performance and limitations of the Hilbert–Huang transformation (HHT) with an application to irregular water waves. Ocean Eng 31:1783–1834

    Article  Google Scholar 

  • Eddelbuettel D (2013) Seamless R and C++ integration with Rcpp. Springer, New York

    Book  MATH  Google Scholar 

  • Eddelbuettel D, François R (2011) Rcpp: seamless R and C++ integration. J Stat Softw 40(8):1–18. http://www.jstatsoft.org/v40/i08/

  • Engeln-Müllges G, Uhlig F (1996) Numerical algorithms with C. Springer, Berlin

    Book  MATH  Google Scholar 

  • Galassi M, Davies J, Theiler J, Gough B, Jungman G, Alken P, Booth M, Rossi F (2009) GNU scientific library reference manual. Network Theory Limited. http://www.gnu.org/software/gsl/

  • Huang H, Pan J (2006) Speech pitch determination based on Hilbert–Huang transform. Signal Process 86:792–803

    Article  MATH  Google Scholar 

  • Huang N, Shen S (2005) The Hilbert–Huang transform and its applications. Interdisciplinary Mathematical Sciences. World Scientific Publishing Company Inc., Singapore

    Google Scholar 

  • Huang NE, Wu Z (2008) A review on Hilbert–Huang transform: method and its applications to geophysical studies. Rev Geophys 46:1–23. doi:10.1029/2007RG000228

  • Huang NE, Shen Z, Long SR, Wu MC, Shih HH, Zheng Q, Yen NC, Tung CC, Liu HH (1998) The empirical mode decomposition and the Hilbert spectrum for nonlinear and non-stationary time series analysis. Proc R Soc Lond A Math 454:903–995

    Article  MathSciNet  MATH  Google Scholar 

  • Huang NE, Shen Z, Long SR (1999) A new view of nonlinear water waves: the Hilbert spectrum. Annu Rev Fluid Mech 31:417–457

    Article  MathSciNet  Google Scholar 

  • Huang NE, Wu MLC, Long SR, Shen SSP, Qu W, Gloersen P, Fan KL (2003) A confidence limit for the empirical mode decomposition and Hilbert spectral analysis. Proc R Soc Lond A Math 459:2317–2345

    Article  MathSciNet  MATH  Google Scholar 

  • Kim D, Oh HS (2009) EMD: a package for empirical mode decomposition and Hilbert spectrum. R J 1:40–46

    Google Scholar 

  • Morales IO, Landa E, Stránský P, Frank A (2011) Improved unfolding by detrending of statistical fluctuations in quantum spectra. Phys Rev E 84:016,203–016,209

    Article  Google Scholar 

  • Oliphant TE (2007) Python for scientific computing. Comput Sci Eng 9:10–20

    Article  Google Scholar 

  • Pachori RB, Bajaj V (2011) Analysis of normal and epileptic seizure EEG signals using empirical mode decomposition. Comput Methods Prog Biol 104:373–381

    Article  Google Scholar 

  • Shulin L, Haifeng Z, Hui W, Rui M (2007) Application of improved EMD algorithm for the fault diagnosis of reciprocating pump valves with spring failure. In: Signal processing and its applications (ISSPA) 2007. 9th International symposium on, pp 1–4

  • Torres ME, Colominas MA, Schlotthauer G, Flandrin P (2011) A complete ensemble empirical mode decomposition with adaptive noise. In: Acoustics, speech and signal processing (ICASSP), 2011 IEEE international conference on, pp 4144–4147

  • Wang YH, Yeh CH, Young HWV, Hu K, Lo MT (2014) On the computational complexity of the empirical mode decomposition algorithm. Physica A 400:159–167

    Article  Google Scholar 

  • Wu Z, Huang NE (2004) A study of the characteristics of white noise using the empirical mode decomposition method. Proc R Soc Lond A Math 460:1597–1611

    Article  MATH  Google Scholar 

  • Wu Z, Huang NE (2009) Ensemble empirical mode decomposition: a noise-assisted data analysis method. Adv Adapt Data Anal 01:1–41

    Article  Google Scholar 

  • Wu Z, Huang NE, Long SR, Peng CK (2007) On the trend, detrending, and variability of nonlinear and nonstationary time series. Proc Natl Acad Sci USA 104:14,889–14,894

    Article  Google Scholar 

  • Zhang X, Lai KK, Wang SY (2008) A new approach for crude oil price analysis based on empirical mode decomposition. Energy Econ 30:905–918

    Article  Google Scholar 

Download references

Acknowledgments

This work was supported by the Finnish Cultural Foundation, the Emil Aaltonen Foundation, the Academy of Finland, and the European Community’s FP7 through the CRONOS project, Grant Agreement No. 280879. The authors wish to thank N. E. Huang for useful discussions.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to P. J. J. Luukko.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Luukko, P.J.J., Helske, J. & Räsänen, E. Introducing libeemd: a program package for performing the ensemble empirical mode decomposition. Comput Stat 31, 545–557 (2016). https://doi.org/10.1007/s00180-015-0603-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00180-015-0603-9

Keywords

Navigation