python安装
pip install EMD-signal
PyEMD是经验模式分解(EMD)及其变体的Python实现。最受欢迎的扩展之一是集合经验模式分解(EEMD),它利用了噪声辅助执行的集合。
github:github链接
文档: 官方文档
Example:
from PyEMD import EMD, Visualisation
import numpy as np
import matplotlib.pyplot as plt
pi = 3.1415
t = np.linspace(0, 100, 1000, dtype=np.float32)
y = np.cos(2 * pi * 10 * t) + np.cos(2 * pi * 20 * t) + np.cos(2 * pi * 50 * t) + np.cos(2 * pi * 100 * t)
emd = EMD()
emd.emd(y)
imfs, res = emd.get_imfs_and_residue()
vis = Visualisation()
vis.plot_imfs(imfs=imfs, residue=res, t=t, include_residue=True)
vis.plot_instant_freq(t, imfs=imfs)
vis.show()
把所有子信号和res加起来可以还原最初的信号。