基于EEMD的数据降噪算法研究*
2021-10-11孙兴伟董祉序杨赫然王海燕
薛 峰,孙兴伟,董祉序,杨赫然,王海燕
(1.沈阳工业大学 机械工程学院,辽宁 沈阳 110870;2.沈阳白云机械有限公司,辽宁 沈阳 110027)
0 引言
信号作为一种载体,传递着各类信息,如果在信息的采集、编译、传输等过程中受到外界干扰,就会导致信号失真甚至失效,而信号处理就是通过各种手段提取信号中的有用信息。传统信号处理方法都是在傅里叶变换的基础上发展而来,对非线性非平稳信号的分析能力不足,同时受限于Heisenberg不确定原理[1]。
为了彻底摆脱以傅里叶变换为基础的时频分析方法,Huang等[2]于1998年提出经验模态分解算法(Empirical Mode Decomposition,简称EMD),该方法被认为是200多年来以傅立叶变换为基础的线性和稳态频谱分析的一个重大突破,一经提出就获得广泛应用[3]。然而当待处理信号中存在间歇性噪声时,直接对其使用EMD分解可能出现模态混叠现象,即同一分解结果中出现差异极大的模态特征,而且一旦出现模态混叠现象,将会影响后续分解结果,最终导致EMD的分解结果不符合工程实际。
针对EMD分解过程中可能产生的模态混叠问题,Wu等[4]提出集总经验模态分解算法(Extend Empirical Mode Decomposition,简称EEMD),该算法在进行EMD分解前先对信号进行预处理,因此既能继承EMD算法的全部优点,又能有效抑制模态混叠问题。
1 基本原理
1.1 EMD基本原理
EMD是建立在任何信号都可由n(n为正整数)阶本征模态函数(Intrinsic Mode Function,简称IMF)组成的前提上,即:
(1)
其中:x(t)为被分解信号序列;r(t)为趋势项,代表信号的平均趋势或均值。
对数据信号进行EMD分解就是为了获得本征模态函数,其分解过程又被称为“筛选”,具体步骤如下:
(1)找到信号x(t)所有的极值点。
(2)拟合出上、下极值点的包络线u(t)和l(t),并求出上、下包络线的均值m(t)作为原信号的均值包络。
(3)用原信号x(t)减去其均值包络信号m(t)得到中间函数h(t)。
(4)判断h(t)是否满足本征模态函数的定义,如果满足,则令h(t)=c(t),并将c(t)输出为第1阶本征模态函数IMF,如果不满足,则以h(t)代替x(t),重复以上步骤直到h(t)满足IMF定义。
(5)每得到一阶IMF,就从原信号中扣除它,重复以上步骤直到信号最后剩余部分r(t)是单调序列或者常值序列。至此完成整个分解过程。
EMD分解具体流程如图1所示。
图1 EMD分解流程
分解得到的IMF均应满足以下两个条件:
(1)在整个数据段内,极值点的个数和过零点的个数必须相等或相差最多不能超过一个。
(2)在任意时刻,由局部极大值点形成的上包络线和由局部极小值点形成的下包络线的平均值为零。
然而在实际应用中,上、下包络的均值无法严格为零,因此通常当满足式(2)时,就认为包络的均值满足IMF的均值为零的条件。
(2)
其中:N为信号序列长度;k为“筛选”次数;hk(ti)为第k次“筛选”产生的中间函数;SD为筛选门限,一般取值在0.2~0.3之间。
1.2 EEMD基本原理
针对EMD分解过程中可能产生的模态混叠现象,文献[4]提出集总经验模态分解算法(Extend Empirical Mode Decomposition,简称EEMD),其原理是根据白噪声均值为零的特性,在信号中加入白噪声,仍然用EMD进行分解,对分解的结果进行平均处理,平均处理的次数越多,噪声给分解结果带来的影响就越小。具体的分解步骤如下[5,6]:
(1)在待处理信号上叠加均值为0、标准差为常数的高斯白噪声。
(2)对叠加白噪声后的信号进行EMD分解。
(3)重复N(N>1)次执行步骤(1)和步骤(2),每次加入新的白噪声序列从而得到不同的IMF。
(4)最后将各次分解得到的IMF求集合平均,并将其作为最终的分解结果。
EEMD实质上是对EMD的一种改进,既保留了EMD各项优点,又有效地解决了EMD模态混叠问题。
1.3 信号重构
无论是EMD还是EEMD,其降噪的核心思想都在于将分解得到的IMF按不同方式进行混叠,以构成和二进离散小波分解相类似的二进滤波器组结构。在分解得到的IMF中,阶数低的对应信号的高频部分,阶数高的对应信号的低频部分,一般认为是受噪声污染较小的部分。由于噪声主要集中在高频段,随着分解的进行,噪声的能量将逐渐减小,于是可以将IMF能量首次发生转折的位置作为噪声起主导作用模态与信号起主导作用模态的分界,去掉前面若干个频率较高的本征模态函数后,由剩余的本征模态函数及残差重构信号,其表达式为:
(3)
1.4 降噪效果评价
通常用信噪比(SNR)及均方误差(MSE)来评价降噪效果的好坏。信噪比即信号电平与噪声电平之比,比值越高说明降噪效果越好;均方误差是评价点估计的最一般的标准,其值越低说明降噪效果越好,它们的计算公式如下:
.
(4)
.
(5)
2 数值模拟与分析
为了验证EEMD对模态混叠现象的抑制作用,本文以x(t)=cos2πt为基础,在时间t(单位:s)取[0.4,0.6]、[1.4,1.6]、[2.4,2.6]三个区间内叠加信噪比为10 dB的高斯白噪声n(t),以模拟间歇性噪声对信号的干扰,仿真信号y(t)=x(t)+n(t)的构成如图2所示。
图2 仿真信号
使用传统EMD算法对仿真信号进行处理,其分解结果如图3所示。
图3 EMD分解结果
从图3中可以看出,传统EMD分解得到的第1阶IMF中包含了仿真信号中间歇扰动和部分原信号两种尺度特征,出现了两种不同模态存在于同一阶IMF中的混叠现象,而随后获得的IMF都是建立在上一阶的分解结果上,因此这种混叠现象将一直延续到最后一个模态分量里。由于传统EMD分解得到的结果不具有实际意义,因此不对其进行重构。
使用EEMD算法对仿真信号进行处理,其分解结果如图4所示。
从图4中可以看出,随着阶数的升高,每一阶IMF包含的能量呈下降趋势,符合客观实际,且第5阶IMF在图形上与原信号非常接近。用文献[7]提出的方法计算,结果也为从第5阶开始重构。使用EEMD算法对仿真信号进行处理,处理后信噪比为13.971 dB,均方误差为3.765。
图4 EEMD分解结果
3 结论
本文介绍了传统EMD算法在处理含有间歇性扰动信号时可能会出现模态混叠现象,针对这一现象可采用EEMD算法对其进行处理。通过仿真实验对比EEMD和EMD两种算法,结果表明,在处理含间歇性噪声的信号时,EEMD算法要明显优于EMD算法,故其具有广泛的应用价值。