APP下载

基于信号质量评估的可穿戴动态心电监护

2011-05-11孙佳新吴怡之许红安刘文轩

网络安全与数据管理 2011年4期
关键词:电信号卡尔曼滤波心率

孙佳新 ,吴怡之 ,许红安 ,刘文轩

(1.东华大学 信息科学与技术学院,上海201620;2.华东师范大学 信息科学与技术学院,上海200062)

目前,心血管疾病已经成为危害人类健康的主要疾病之一。可穿戴心电技术是在人们日常穿戴的衣物中嵌入心电采集系统,使其在自然状态下随时随地获取心电数据,是人体心电实时监护的有效方法。但由于人体处于运动状态,心电信号受到的干扰大,难以正确处理和评估。目前国内外有很多学者对动态心电进行了研究,例如盛虎提出的新型动态心电监护系统弥补了信号采集功能和分析功能脱离的不足,实现了心电数据实时分析,但是该系统成本较高[1];国外有些学者将卡尔曼滤波应用于动态心电信号检测,并与自适应算法结合,以提高检测的正确率,但由于算法比较复杂,不能进行实时监控[2];李桥等人将卡尔曼滤波应用于危重病人监护,并结合了信号质量评估,但主要针对静态生理信号,不适用于动态心电监护[3]。

本文提出了一种新的基于信号质量评估和卡尔曼滤波的可穿戴动态心电监护的方法,该方法将信号质量评估、卡尔曼滤波以及可穿戴技术相结合,实现了便携式高可靠的长时间人体心率评估。

1 可穿戴动态心电特征分析

心电信号作为心脏电信号在人体体表的表现,信号微弱,频率主要介于 0.01 Hz~100 Hz之间,其中与心率评估密切相关的 QRS波群主要集中在 0~(58±19)Hz,90%的频谱能量集中在0.25 Hz~35 Hz之间,而高频心电信号的频带范围则在100 Hz~1 000 Hz[4]。在动态心电信号采集的过程中,心电信号干扰中的肌电干扰、基线漂移(小于5 Hz)和运动伪迹(小于7 Hz)均比静态情况下严重。目前医学上运用最广泛的电极是传统的氯化银电极,虽然这种电极采集到的信号稳定,但是对皮肤损伤较大,不适合长期使用。可穿戴动态心电采集宜采用对人体无损害、能够长时间使用的织物柔性电极,但织物电极信号的自身特点,需要在处理时采用不同方法。

本文通过集成在智能服装上的织物电极获取运动状态下的人体心电信号,并进行特征分析,作为建立相应处理模型的依据。静止状态与运动状态下心电信号的功率谱如图1所示。从图中可以看出当频率在0 Hz~7 Hz时,运动状态下的功率要远大于静止状态下的功率,这是因为在人体运动时电极与人体的相对运动剧烈,使得运动伪迹干扰的影响增大,另外由人体呼气引起的基线漂移干扰也同时增大。在QRS波群集中的频段,运动状态下的功率略大于静止状态下的功率,这是由于人体运动以及肌肉紧张收缩而引起的肌电干扰所致。

经实验证明,在走路状态和慢跑状态下用织物电极采集的信号,虽然受到了一定的干扰,但是波形并没有失真,完全能够用来进行后期的处理。

2 基于信号质量评估和卡尔曼滤波的动态心率估计模型

准确的心率估计是可穿戴监护系统的最基本要求,R波检测算法是获得心率的最便利的方法,然而心率的检测经常受到干扰的影响而出现错误。卡尔曼滤波算法简单,所需的数据量小,在没有信号先验知识的情况下仍能有效地估计信号趋势的变化和噪声干扰,是一种估计信号趋势的有效方法。信号质量指数SQI(Signal Quality Index)可以实时地表征动态心电信号的质量,从而作为卡尔曼滤波器参数调节的依据,提高估计准确性。本文提出了一种新的基于信号质量评估和卡尔曼滤波的动态心率测量和评估的方法,首先对心电信号进行R波提取并计算心率,接着利用R波检测和加速度计的结果来获得运动状态下心电信号质量指数SQI,然后根据SQI对卡尔曼滤波器参数进行调节,最后对心率进行重新估计,以获得更为准确的结果。系统结构图如图2所示。

2.1 动态心电R波识别和心率测量

R波检测算法必须具备准确性与快速性两个特点,而这两者之间又存在着矛盾。常用的算法有面积法、小波变换法、幅度法和斜率法等,这些算法都是基于心电信号中的R波具有幅度和斜率较大的特点实现的。其中面积法虽然准确率较高,但算法很复杂,而小波变换法速度较慢,不适合用于实时分析,因此本文采用的R波检测算法是幅度法和斜率法。

幅度法算法简单、速度快,在干扰较小时有很高的准确率,但是这种算法比较容易受到心电信号中的大T波干扰,从而导致心率估计不准,如图3所示。斜率法的抗干扰能力比幅度法强,准确率高,缺点是算法比较复杂,容易受高频肌电干扰的影响。

识别出R波过后,本文以10 s为一个时间窗口,计算该窗口内R-R间隔的均值,并以此得到10 s内的心率测量值,公式为:

式中,Tend表示10 s时间窗内最后一个R波发生的时刻,Tbegin表示 10 s时间窗内第一个 R波发生的时刻,n表示10 s内R波的个数。在用两种算法得到各自心率值后,取其平均值作为最终的心率估计值。

2.2 卡尔曼滤波心率估计器

卡尔曼滤波可以用来对随机信号进行估计,因此适用于心率的计算。首先引入一个离散控制过程的系统,该系统可以表示为一个线性随机微分方程[5]:

再加上系统的测量值:

式(2)、式(3)中,X(k)是 k时刻的系统状态,即心率状态;U(k)是k时刻对系统的控制量;A和B是系统参数;Z(k)是k时刻的心率测量值;H是测量系统的参数;W(k)和V(k)分别表示过程和测量的噪声(为高斯白噪声)。

假设现在的时刻为k,根据系统的模型,可以基于k-1时刻心率预测出现在的心率:

式(4)中,X(k|k-1)是利用 k-1时刻进行预测的结果,即k时刻心率的先验估计。X(k-1|k-1)是k-1时刻心率的最优结果,即k-1时刻心率的后验估计。U(k)为k时刻的控制量,如果没有控制量,U(k)可以为0。定义P(k|k-1)是先验估计误差的协方差,P(k-1|k-1)是后验估计误差的协方差,则有:

其中AT表示A的转置矩阵(因为本文是一维的,所以A是常数),Q是系统过程的协方差。

结合预测值和测量值,可以得到现在时刻k的最优化估计值 X(k|k):

其中,Kg为卡尔曼增益,即本系统需要调节的参数,其表示形式为:

从式(7)可知,当测量噪声协方差 R越小,增益 Kg(k)则越大,即测量值Z(k)的权重越大;而当测量噪声协方差R越大,增益Kg(k)则越小,即测量值Z(k)的权重越小。

最后,计算k时刻后验估计误差的协方差:

2.3 动态心电信号质量评估

本文综合R波检测和加速度计的结果来评估运动状态下的心电信号质量。首先,由于不同的R波检测算法对于不同类型干扰的敏感性不同,当人体由于运动产生较大干扰时,两种算法会得出不同的结果,而当干扰较小时,结果几乎相同,因此本文通过比较不同的R波检测算法,对同一心电信号的分析结果来估计心电信号的干扰大小,得出心电信号的质量指数SQI。其次,人体运动剧烈时,肌电干扰、电极移动干扰都会加剧,因此心电信号质量差。本文将加速度计嵌入到智能服装中,与心电信号同步采集,评估人体运动剧烈程度,作为心电信号质量评估的依据之一。综上所述,本文定义心电信号质量指数SQI为:

其中,N(k)表示以某一秒的起始时刻为中心左右各取5 s,在这10 s的窗口内两种R波检测算法检测出的R波匹配的数目。NA表示幅度算法检测出的R波的个数,NS表示斜率算法检测出的R波的个数,S表示加速度计检测出的人体运动的剧烈程度,S的值介于0~1之间,当 S等于0时表示人体处于静止状态,S的值越大表示人体运动越剧烈。前面提到,幅度算法在干扰较小时对于R波的检测有很高的准确性,而斜率算法的抗干扰能力要强于幅度算法。因此在体现人体运动剧烈程度的S的值越小时,幅度算法检测出的结果所占的权重越大;而当S的值越大,即人体运动程度越剧烈时,斜率算法检测出的结果所占的权重越大。

由式(8)可知,心电信号质量指数 SQI的值介于0~1之间,接近或等于0表示心电信号质量很差,而接近或等于1表示心电信号质量很高。

2.4 基于SQI的卡尔曼滤波心率估计器参数调节

当心电信号由于人体运动而受到干扰时,使用R波检测算法得到的心率将出现一定误差,本文提出在运动状态下对R波检测算法得到的心率应用卡尔曼滤波进行最佳估计,并研究了通过心电信号质量指数SQI调节卡尔曼滤波器增益系数的方法。由于当心电信号在人体运动时会受到干扰,这将使心电信号质量指数发生变化,而这种干扰大小的变化表现为卡尔曼滤波器方程中测量噪声协方差R的变化,因此根据SQI值调节测量噪声协方差R:

由式(9)可知,当心电信号质量相对较高(即SQI值较大)时,R的值相对较小,从而Kg(k)值较大,此时较多地由测量值Z(k)来调整心率值;反之,当心电信号质量较低(即 SQI值较小)时,R值相对较大,Kg(k)值减小,此时较多地由先验估计来调整心率值,从而避免运动干扰的影响。

2.5 卡尔曼滤波方程初始值的确定

在运用卡尔曼滤波进行动态心率估计之前,应确定滤波器方程中系数的初始值。假设人的心率不会发生突变,即k时刻的心率近似等于k-1时刻的心率,因此A=1。另外,前面提到如果系统没有控制量,U(k)可以为0。由于系统的测量值由R波检测算法获得,和心率直接对应,因此H=1。系统测量噪声协方差R=R0=1,该系数会随着心电信号的SQI值的变化而变化。系统过程协方差Q初值设为 0.1,P(0|0)=1。

3 结果和讨论

3.1 评价数据库

本文所采用的评价数据库均由埃德ML870 Power-Lab 8/30数据采集系统获得,该系统通过屏蔽线与传统的氯化银电极、集成在智能服装上的织物电极相连,采集人体在静止、走路、慢跑等状态下的生理信号,采样频率为1 000 Hz,各10 min时间,然后经过放大、滤波和整形等处理,最终在终端上进行实时显示并保存心电数据。

3.2 结果

为了验证本文提出的模型,首先选取了2 min标准心电信号,并对其进行心率计算,如图 4中(a)所示,以此结果作为之后的评价标准。随后在该心电信号的40 s~60 s数据段添加干扰,添加了干扰后的心电信号如图4(b)所示,并用两种R波检测算法和基于卡尔曼滤波的估计算法对其进行心率估计。

由标准心电信号计算所得的心率如图5(a)所示,从图中可以看出,因为心电信号的质量较高,两种R波检测算法的准确率很高,所以在这2 min内得到的心率比较稳定,没有心率突变的情况发生。

在添加了干扰过后,由R波检测算法得到的心率(测量值)和由基于卡尔曼滤波的心率估计算法得到的心率(估计值)如图 5(b)所示。从图中可以看出,由于40 s~60 s的心电信号数据段受到了干扰,因此使得R波检测算法出现了较大的误差,出现了心率突变的情况。而由基于卡尔曼滤波的心率估计算法得到的心率值并没有因为干扰受到太大的影响,心率仍然保持平稳。因此,基于卡尔曼滤波的心率估计算法具有很强的抗干扰性,是一种较为理想的动态心率估计算法。

为了验证该模型能够用于动态心电监护,同样选取了2 min慢跑时的心电信号来进行测试。

测试结果如图6所示,由图中可知,直接由R波检测算法得到的心率在某些时间段会因人体运动产生的干扰而出现较大的误差,而由卡尔曼滤波的心率估计算法得到的结果却有明显的改善,心率能够保持平稳,不会因为运动干扰而出现大的误差。

利用幅值法和斜率法虽然能够计算心率,但心电信号中的各种干扰会影响计算结果,信号的信噪比越低,心率计算的误差会越大。本文提出的新的基于信号质量评估的卡尔曼滤波估计算法,可以显著改善心率估计的误差。

针对可穿戴动态心电监护系统需要嵌入服装、柔性化和低功耗的要求,本文进行了基于信号质量评估和卡尔曼滤波的可穿戴动态心电监护系统的设计,针对可穿戴心电信号处理系统抗干扰的要求,研究了人体生理信号质量评估方法,提出了基于信号质量指数的卡尔曼滤波器的设计,提高了心率估计的准确性,实现了可穿戴的动态心电监护,并最终通过实际的测试表明了该设计的有效性和可靠性。

[1]盛虎.新型动态心电监护系统的研究[D].大连:大连交通大学,2006.

[2]ARNOLD M,MILNER X H R,WITTE H,et al.Adaptive AR modeling of nonstationary time series by means of Kalman filtering[J].IEEE Transactions on Biomedical Engineering,1998,45(5):553-562.

[3]李桥.危重病人生命体征信号质量评估与分析[D].济南:山东大学,2008.

[4]石金兰.面型智能服装的亚健康评估系统的研究[D].上海:东华大学,2008.

[5]敬喜.卡尔曼滤波器及其应用基础[M].北京:国防工业出版社,1973.

猜你喜欢

电信号卡尔曼滤波心率
心率多少才健康
基于联合聚类分析的单通道腹部心电信号的胎心率提取
离心率
离心率相关问题
基于Code Composer Studio3.3完成对心电信号的去噪
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
基于随机森林的航天器电信号多分类识别方法
探索圆锥曲线离心率的求解
基于序贯卡尔曼滤波的OCT信号处理方法研究