APP下载

一种改进的变步长最小均方算法滤除心电信号运动伪迹的研究

2020-05-07陈亚军汪立宇

科学技术与工程 2020年8期
关键词:电信号步长滤波

庞 宇, 陈亚军, 汪立宇

(重庆邮电大学光电工程学院,重庆 400065)

在临床上,心电信号(electrocardiogram, ECG)是诊断心血管疾病的重要依据。然而,人体运动中的心电信号是很不稳定的,随机性强,包含许多干扰信号,并且会降低心电信号的质量[1]。根据心电信号的频谱图,心电信号90%的能量成分频率集中在0.25~35 Hz,因此,消除心电信号的噪声干扰对心血管疾病的分析和诊断具有重大意义[2-3]。

由于运动中的心电信号频率与运动伪迹干扰频率类似,很难有效分离,为此,通常采用自适应滤波处理心电信号中的运动伪迹干扰。例如,文献[4]用一种前馈组合自适应滤波器,消除心电信号中的运动噪声。文献[5]使用级联自适应滤波消除动态心电信号的运动噪声。

自适应滤波算法是目前广泛使用的一种方法,是近年来在维纳滤波、Kalman滤波等线性滤波基础上发展起来的一种最佳滤波方法。自适应滤波算法通过参考量调整滤波器系数,依据参考量和噪声信号的相关性去除干扰量,而自适应算法研究表明,皮肤电极阻抗和加速度信号与ECG中运动伪迹干扰密切相关。因此,利用ADX345输出加速度信号作为自适应滤波器的噪声参考信号。研究了最小均方(least mean squares, LMS)与改进的归一化最小均方(normalized least mean squares, NLMS)算法在消除ECG中的运动伪迹干扰的滤波效果。

1 硬件实现系统

系统的导联电极模块与检测装置是分立的,使用紧身背心作为穿戴载体,将导电硅胶电机镶嵌在可穿戴背心中,便于重复使用。

检测装置采用单导联(Lead 1)方式采集ECG,电路使用TI公司的ADS1292R芯片,其含有两路差分导联心电采集通道;一路呼吸阻抗调制驱动通道和ECG右腿驱动模块。ADS1292R芯片不仅集成了具备-105 dB共模抑制比的心电模拟前端电路,还拥有24位高分辨率的ADC,其每秒采样次数的范围为125 SPS~8 k SPS,能够高精度地采集ECG,并量化成数字信号,通过SPI接口将心电数据发送到单片机作进一步算法处理。主控芯片采用STM32L151、STM32L系列产品基于超低功耗的ARM Cortex-M4处理器内核。加速度传感器采用ADX345,通过IIC总线接口传输三轴加速度数据。蓝牙模块采用以nRF52832为核心的射频系统收发模块,支持蓝牙5.0协议高速通信功能。系统硬件框图如图1所示。

图1 硬件框图Fig.1 Hardware block diagram

图1中包括导联电极模块、心电信号采集模块、加速度模块、蓝牙模块、主控模块以及电源管理模块。电源管理模块采用TLV70033DCK提供3.3 V电压,主控使用STM32L151组成的最小系统,SPI、I2C接口分别获取心电信号采集模块、加速度模块的数据,并通过异步串行通信(UART)将数据传输至蓝牙透传模块,并且在终端(手机APP,上位机)实时显示[6]。

三轴加速度电路如图2所示,其CS引脚由10 kΩ电阻拉高后配置ADXL345的输出方式为I2C,其电源电压为3.3 V。将其固定在胸部,加速度随人体的运动而改变。将采集到的三轴加速度数值通过I2C传输数据给主控处理,可通过软件设置关断芯片。

图2 加速度电路Fig.2 Acceleration circuit

为了实现检测装置的低功耗和小型化,装置的充电芯片采用BQ21040,如图3(a)所示,考虑到充电时装置不会采集心电信号,并且出于功耗和节能考虑,装置通过Q2导通与截止来控制系统是否工作,装置在充电时使其停止输出3.3 V工作电压,只保留充电芯片处于工作状态,系统在正常使用时,Q2导通,使其输出3.3 V电压供给各个芯片电源电压,如图3(b)所示。

图3 电源电路Fig.3 Power circuit

2 自适应滤波算法

2.1 LMS滤波算法

1960年,Widrow与Hoff教授在总结前人研究的基础之上,首次提出了以LMS误差为判断标准的自适应算法[7]。LMS算法的准则是使均方误差达到最小,即期望信号与滤波器实际输出之差的平方的期望值E[e2(k)]达到最小,并且依据这个准则来修改权系数向量W(k)。LMS算法框图如图4[8]所示。

图4 LMS算法框图Fig.4 LMS algorithm block diagram

图4中,理想原始心电信号s(k)和噪声信号n(k)不具有相关性或者相关性很小,而参考信号(加速度信号)X(k)和噪声信号n(k)有明确的相关性。在滤波处理过程中,利用参考信号更新最佳滤波系数,使y(k)成为n(k)的最佳估计,这个时候e(k)将逼近s(k),且E[e2(k)]为最小。如果参考信号与MA干扰信号相关性越高,则滤波效果越好。LMS算法的数学表述形式如下:

e(k)=d(k)-y(k)

(1)

y(k)=WT(k)X(k)

(2)

W(k+1)=W(k)+2μe(k)X(k)

(3)

式中:μ是自适应滤波器的步长,它与滤波器的收敛速度和算法的稳定性有关。式(1)是误差估计,式(2)是滤波器的输出。为了使式(3)收敛,μ要满足0<μ<2/trR。其中,R为输入信号的自相关矩阵,trR是矩阵R的迹。可以看出LMS算法的重点在于权值系数更新过程。

2.2 NLMS滤波算法

当人体处于运动状态时,原始心电信号和参考信号的幅度变化较大,由于各个参考信号的量纲和数量级不一致,这种变化不易被LMS算法感知。而归一化最小均方(NLMS)算法是一种能够适应参考信号幅值变化的变步长算法[9],具有收敛速度快的优势。NLMS算法可以看作是对LMS算法针对权值更新系数的改进与优化。与 LMS 算法相比,NLMS采用了可变的步长因子,使其瞬时输出误差达到最小化[10]。X(k)经过归一化以后,则为NLMS算法,其滤波系数迭代公式为

W(k+1)=W(k)+

(4)

式(4)中:参数μ为控制失调的固定收敛因子。可以看到,LMS算法中的步长为一个给定的常数,NLMS算法中的步长为一个随时间变化的量,可把NLMS看作是变步长参数的LMS。NLMS是采用变步长的方法来缩短自适应收敛过程[11],无论对于不相关数据还是相关数据NLMS都要比LMS算法呈现更快的收敛速度,但是,这种改进也会使权值系数的运算量增加[12]。

2.3 NLMS滤波算法的改进

如果μ大,则LMS算法的梯度噪声会放大,假设μ小时,可以减少这种噪声并且具有小的失调,但是收敛速率会变慢,为了使算法快速收敛,则μ值应该尽可能大,而μ增大,就会引起梯度噪声和失调量增加,所以μ是LMS算法很难准确把握的一个参数。

为了减少运算量,可以通过优化NLMS算法的μ与输入量之间的关系;而LMS算法收敛速率较慢,则可以结合迭代次数优化μ,以此来改善算法收敛速度[13]。在NLMS算法的基础上,对数据进行分段处理,在某一迭代次数范围内选择一个固定的μ。譬如,在迭代次数ki~ki+L范围内取μ为1/k,对于这段数据就是LMS算法。假设把数据分成更多段,直至一次迭代作为一段时[14],则步长可以近似为μ≈1/k。在自适应过程开始阶段,迭代次数k较小,从而整个μ较大,其收敛速度很快[15];随着自适应过程的进行,迭代次数k逐渐增大,则μ逐渐减小并趋于稳定,于是,保持权值系数W(k)稳定在最优权值系数附近,失调量较小。其权值更新公式为

W(k+1)=W(k)+1/δke(k)X(k)

(5)

式(5)中:δ为与X(k)相关的系数,μ(k)=1/δk,步长因子μ(k)随着参考噪声X(k)的增大而减小。

可以看出,改进的NLMS算法优化了步长因子并且运算量不会大幅增加,采用改进的NLMS算法明显优于传统LMS和NLMS算法,并且使用变步长的方法实现了自适应过程开始时快速收敛,而进入稳定状态后会有一个小的失调量,从而解决了LMS算法的收敛速度和失调量之间的矛盾。

3 实验结果与分析

根据上文所述方法,在实际应用中制作的心电信号检测装置样品如图5所示,使用标准游标卡尺测量样机大小为39.00 mm×20.00 mm。

为了验证改进NLMS算法的滤波效果,将整个系统固定在镶嵌有采集电极的背心上,并让受试者穿上正常行走。加速度信号如图6所示,采集到含有运动噪声的ECG信号如图7(a)所示。

由图7(b)、图7(c)可知,人体运动状态时的心电信号通过改进的NLMS算法较好地消除除了运动伪迹噪声,信噪比得到了很大提高。

图5 检测装置样品图Fig.5 Test device sample

g为重力加速度图6 原始加速度波形Fig.6 Raw acceleration waveform

图7 经过两种算法处理后的波形对比Fig.7 Comparison of waveforms processed by two algorithms

图8所示为两种算法平方误差曲线,可以看出,改进的变步长LMS算法收敛更快更好。

图8 两种算法的平方误差曲线对比Fig.8 Compare the squared error curves of the two algorithms

4 结论

设计的心电信号监测装置能够在作业活动中实时监测心电信号波形。在心电信号运动伪迹干扰的处理上,对比了LMS算法和改进的NLMS算法在处理运动伪迹噪声的效果,发现在NLMS算法基础上对数据进行分段处理,并且改进优化步长因子,实现了良好的滤波效果。算法对于消除心电信号中的运动伪迹干扰具有广阔应用前景。

猜你喜欢

电信号步长滤波
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
基于联合聚类分析的单通道腹部心电信号的胎心率提取
一种改进的变步长LMS自适应滤波算法
基于Code Composer Studio3.3完成对心电信号的去噪
基于自适应步长RRT的双机器人协同路径规划
基于EKF滤波的UWB无人机室内定位研究
基于随机森林的航天器电信号多分类识别方法
基于动态步长的无人机三维实时航迹规划
一种GMPHD滤波改进算法及仿真研究
基于自适应Kalman滤波的改进PSO算法