孔令杰
(菏泽学院 物理与电子工程系,山东 菏泽 274015)
心电信号是心脏电生理活动在体表的外在表现,它蕴涵着心脏功能等生理病理状况的临床医学信息,是一种非常重要的生物医学信号[1].在实际心电信号的数据采集过程中,由于检测仪器、人体等内外环境多种因素的影响,使得采集的心电信号不可避免地混入了各种噪声干扰,如工频干扰、基线漂移、肌电干扰和运动伪迹等[2].因此,如何有效地降低各种噪声干扰,准确地提取出干净有用的心电信号,成为心脏病智能诊断的一个重要内容.所以为了能从心电信号中准确地提取更多反映人体全身性和综合性的生理病理特征信息,在处理和分析心电信号之前对其进行降噪处理就成为一项十分重要的工作[3].
从心电信号降噪处理技术的研究角度来讲,现有的滤波方法如自适应滤波、形态学滤波等方法,都可在一定程度上实现心电信号的降噪处理.但这些滤波方法本身也存在着一定的技术缺陷,如采用形态学滤波方法对心电信号进行降噪处理,它在滤除基线漂移干扰时,会得到近乎完美的降噪效果,但在滤除工频干扰时,则会产生截断误差现象[4].而采用自适应滤波方法对心电信号进行降噪处理,虽可根据心电信号的噪声特点自动地调节滤波器的品质因数和带宽,并且得到的心电信号也不易失真,但该方法具有算法慢、计算量大、实时性差等缺点[5].而小波变换是一种信号的时频分析方法,它具有多分辨率分析的特点,即在低频部分具有较高的频域分辨率和较低的时间分辨率,而在高频部分具有较高的时间分辨率和较低的频域分辨率,这也与低频信号变化缓慢而高频信号变化迅速的特点相符合.因此这种特性使得小波变换具有对信号的自适应性,也正是这种特性,使得小波变换被誉为“数学显微镜”[6].鉴于此,该文提出一种基于小波变换的心电信号降噪方法,并通过实验研究验证该方法的有效性和可行性,从而为心电信号特征信息的提取提供一种新的研究思路.
在信号处理领域中,一维离散小波变换实现的算法一般是Mallat算法,即先对较大尺度上的信号进行小波变换,再选取其中的低频部分使其在原尺度的1/2尺度上再次进行小波变换[7].
设用如下模型表示一个含噪的一维信号:
其中,f(k)为含噪信号,s(k)为原始信号,n0(k)为服从N(0,σ2)的高斯白噪声,N为信号长度.对一维离散信号f(k)进行小波变换,利用小波变换的双尺度方程,可以得到小波变换的递归实现,即Mallat分解算法可表示为:
其中,j为分解尺度,J=log2N,h和g分别是对应小波变换的尺度函数φ和小波函数ψ的低通滤波器和高通滤波器,Sf(0,k)代表原始一维信号f(k),而Sf(j,k)代表尺度系数,Wf(j,k)代表小波系数.相应地在Mallat分解算法的基础上,可得小波变换的重构公式,即Mallat重构算法可表示为:
为方便起见,将小波系数Wf(j,k)简记为wj,k.对含噪信号f(k)进行小波变换,由小波变换的线性性质,可知分解得到的小波系数wj,k包含两个部分:一部分是原始信号s(k)对应的小波系数Ws(j,k),简记为μj,k;另一部分是噪声信号n0(k)对应的小波系数Wn0(j,k),简记为υj,k.则小波阈值降噪的基本思想如下所述:首先对含噪信号f(k)作小波变换,再通过对分解得到的小波系数wj,k进行阈值量化处理,以得到小波系数wj,k的估计值w j,k,使得 | |w j,k-μj,k尽可能的小,然后利用小波系数的估计值w j,k进行小波重构,以得到降噪处理后的信号f(k).
而对于小波系数的阈值量化处理方法,普遍采用Donoho等人提出的阈值估计原则,其基本思想是根据信号与噪声的小波系数在各尺度上具有不同的空间分布特点,去掉或大幅衰减各尺度上由噪声产生的小波分量,特别是那些噪声分量占主导地位尺度上的噪声小波分量,然后利用小波变换重构原信号.基于阈值量化处理的小波系数估计方法一般又分为硬阈值函数和软阈值函数两种类型,设阈值为噪声均方差,则硬阈值函数和软阈值函数分别表示为:
硬阈值函数:
软阈值函数:
虽然上述两种传统的软硬阈值函数在实际信号降噪应用中取得较好的效果,但这两种方法自身还存有一些缺陷[8]:
(1)硬阈值函数在阈值λ处的整体连续性较差,导致估计得到的小波系数值连续性也较差,使得重构信号可能会产生一些振荡,特别是当信号存在突变或快速变化的不连续点时,这些振荡会演变成伪吉布斯现象,而且在大于阈值的小波系数中常混杂着噪声信号.
(2)软阈值函数在阈值λ处的整体连续性较好,但是经过降噪处理后,信号中一些小的奇异点常被噪声淹没,再加上软阈值函数对于大于阈值的小波系数进行恒定值压缩,这就直接影响重构信号与真实信号之间的逼近程度,给重构信号带来不可避免的误差.
鉴于此,该文使用默认阈值法对心电信号进行降噪处理,即使用Matlab7.1软件中的自带函数ddenc⁃mp生成信号的默认阈值,然后利用自带函数wdencmp进行降噪处理.
一维信号的降噪算法可以简述为以下三个步骤[9]:
(1)选择合适的小波,对含噪信号f(k)进行小波变换,得到小波变换系数wj,k.
(2)计算小波阈值λ,选择合适的阈值估计方法,对小波系数进行阈值量化处理,得到新的小波系数w j,k.
(3)对得到的新小波系数w j,k进行小波重构,得到降噪处理后的信号f(k).
在信号降噪处理过程中,最大分解尺度j一般取值3~5.一方面,j越大,此时信号和噪声呈现出的不同特性就越明显,则越有利于信噪分离;另一方面,对于信号重构过程来讲,j越大,意味着失真越大,即重构误差越大.显然提高信噪分离与降低重构误差这是一对矛盾,必须选择适当的分解尺度j来兼顾二者.有研究表明,所选小波分解尺度j应视原始信号中的信噪比(SNR)值的大小来定,且对于一般的信号而言,若SNR>20,则取j=3;否则,取j=4 为好.
为了更加精确地描述小波变换的降噪性能,该文又引入信噪比(SNR)、均方根误差(RMSE)和自相关系数(AC)作为评价指标,其表达式分别为[10]:
(1)信噪比(SNR)
(2)均方根误差(RMSE)
(3)自相关系数(AC)
其中,yi为降噪信号序列,y为其平均值;xi为原信号序列,x为其平均值;N为降噪信号与原信号的长度.SNR值反映了降噪后信号中含有噪声成分的多少,SNR值越大,说明信号降噪以后,保留的噪声成分越小;RMSE值反映了降噪后信号与原信号之间的离散程度,RMSE值越小,说明降噪信号与原信号之间的离散程度越小;AC值反映了降噪后信号与原信号之间的相关程度,AC值越大,说明降噪后信号与原信号之间的相关程度越高[11].
为验证上述方法的可靠性和可行性,该文采用MATLAB7.1软件实现编程,并采用MIT/BIH标准心电噪声数据库中的心电噪声数据118e24.dat为例进行仿真实验,该心电噪声数据文件中已含有各种强噪声(如基线漂移、工频干扰、肌电干扰和运动伪迹等).现分别选取含有以下3种噪声干扰的心电数据进行降噪处理:选取118e24.dat中的第53~63 s心电数据,其中含有基线漂移干扰;选取118e24.dat中的第122~132 s 心电数据,其中含有工频干扰;选取118e24.dat 中的第225~235 s 心电数据,其中含有高频噪声干扰.原始心电信号如图1所示.
图1 原始心电信号
从图1中可以看出,该心电信号不够平滑,这将直接影响心电信号特征信息的提取,所以应对这段心电信号进行降噪处理.由于人体心电信号是一种微弱信号,信噪比较低,故该文选用db3小波基对心电信号进行4层分解,以实现对心电信号的降噪处理.小波默认阈值降噪处理后的心电信号如图2所示.
图2 小波默认阈值降噪结果
从图2中可以看出,与原始心电信号相比,用默认阈值降噪后得到的心电信号重构结果的光滑性较好,且降噪后心电信号的P、Q、R、S、T波形基本保持了原始心电特征.
另外,采用SNR、RMSE和AC值三种指标分别对使用db3小波基降噪后的心电信号进行降噪评价,评价结果如表1所示.
表1 三种指标的降噪评价结果
由RMSE和AC值可见,基于小波变换降噪后的心电信号与原始心电信号之间高度相关,且采用默认阈值降噪后的心电信号信噪比SNR值得到了显著提高,这使得降噪后的心电信号中含有较少的噪声,进而有利于下一步对心电信号进行特征信息的提取.
综上所述,基于小波变换的降噪方法能够有效地抑制心电信号中的噪声,较好地保留其原始信息,降噪性能优越,从而有利于实现心电信号特征信息的提取和辨识.
针对心电信号中存在的噪声干扰问题,该文利用小波变换进行具体分析,得到如下结论:使用小波分解与重构算法,能够同时有效地去除心电信号中常见的基线漂移、工频干扰和高频噪声等噪声干扰,并能较好地保留原始心电信号的特征信息,从而为实现心电信号特征信息的提取和辨识奠定了基础.同时,实验研究的结果也表明,采用SNR、RMSE和AC值等3种指标评价小波降噪性能具有一定的有效性和可行性,它可以普及到任何心电信号中去,也可以在其他信号降噪处理过程中得到广泛使用.
[1]MARTINEZ J P,ROCHA A P.A wavelet based ECG delineator[J].Transactions on Biomedical Engineering,2004,51(4):570-581.
[2]高清维,李海鹰,庄镇泉,等.基于平稳小波变换的心电信号噪声消除方法[J].电子学报,2003,32(2):235-240.
[3]王玉静,宋立新,康守强.基于EMD和奇异值分解的心律失常分类方法[J].信号处理,2010,26(9):1423-1427.
[4]赵志华,许爱华.基于形态学的ECG小波自适应去噪算法[J].计算机工程与设计,2008,29(8):2140-2142.
[5]季虎,孙即祥,毛玲.基于小波变换与形态学运算的ECG自适应滤波算法[J].信号处理,2006,22(3):333-337.
[6]胡昌华,张军波,夏军,等.基于Matlab的系统分析与设计-小波分析[M].西安:西安电子科技大学出版社,1999.
[7]HAN Yaqin,LI Gang,YE Wenyu,et al.An improved algorithmic of adaptive cabernet model in the application of electrocardiograph[J].Signal Processing,2002,18(3):244-248.
[8]徐洁,王阿明,郑小锋.基于小波阈值去噪的心电信号分析[J].计算机仿真,2011,28(12):260-263.
[9]林克正,李殿璞.基于小波变换的去噪方法[J].哈尔滨工程大学学报,2000,21(4):21-23.
[10]顾远.心电信号去噪及效果评价研究[D].天津:天津理工大学,2012.
[11]侯宏花,桂志国.基于小波熵的心电信号去噪处理[J].中国生物医学工程学报,2010,29(1):22-28.