基于穿戴式智慧衣的心电远程实时监护系统设计
2020-06-09邵明刚吴水才周著黄宾光宇宾光宏
邵明刚,吴水才,周著黄,宾光宇,宾光宏
(1.北京工业大学生命科学与生物工程学院,北京100124;2.北京联合大学智慧城市学院,北京100101)
0 引言
中国老年人人口数量逐年增加,人口老龄化程度持续加深,老年人养老逐渐成为社会关注的问题。利用“互联网+人工智能”建设一个智慧健康养老的新模式,有助于提高老年人健康养老的服务水平[1]。心血管疾病多发病于中老年人群,高居居民死亡率的首位[2-3],而心电图是反映心脏电生理特征是否正常的最重要的手段,借助于互联网技术对社区居家老年人进行心电实时远程监护,并使用基于人工智能的方法分析老年人的心血管健康状况,可对心律异常的老年人早发现、早干预,实现对老年人进行心电监护的目的。
近几年来,物联网技术和互联网技术的发展为远程健康监护提供了新的机遇[4-5]。梁铁等[6]提出一种基于平板计算机和云计算的心电监护系统,采用柔性石墨烯电极片提高心电采集器的穿戴舒适性,采用平板计算机传输心电数据到云平台。但是平板计算机连接的心电传感器数量受限,云平台缺乏对心电数据的智能分析。Satija 等[7]提出一种基于智能手机的心电实时采集和信号质量评估系统,智能手机可以实时显示心电信号,但是系统没有对云端心电信号的实时监测和智能分析给出解决方案。Yang 等[8]提出一种基于物联网和云平台的远程心电监测系统框架,但是基于Wi-Fi 的心电采集器的工作时间有待提高,且云端缺乏对心电信号的智能分析。Abawajy等[9]以心电监测系统为例,提出了一个基于物联网和云计算的健康监测系统框架,采用美国麻省理工学院(Massachusetts Institute of Technology,MIT)心电数据库评估系统。该系统可以对心电数据进行分析,医生可以检查用户心电记录。但系统没有对心电采集器和实时监测给出具体的解决方案。
目前远程心电监护系统取得相当大的进步,但还存在一些问题有待完善和解决:(1)心电生理信号采集器的穿戴式设计;(2)心电监护系统多采用离线数据分析或者半实时远程监护,缺乏长期实时远程监护的系统;(3)系统一般采用智能手机或者平板设备对心电信号进行常规处理和分析,比如信号质量检测、信号滤波、R 波检测等,云端心电信号的智能分析功能不足。
针对上述问题,本研究提出一种基于穿戴式智慧衣的心电远程实时监护系统,对社区老年人进行远程心电实时监护并辅助监护人员对老年人进行房颤检测。本系统具有如下优点:(1)心电采集器一般采用湿电极(比如电极贴),容易造成穿戴不舒适、皮肤过敏等现象。而穿戴式智慧衣采用纺织干电极,穿戴方便,行动不受限制,更加适合老年人使用和长期心电监护。(2)云端采用基于机器学习的心电分类算法分析心电数据,云端心电图实时监护平台可以实时显示心电数据并分析结果,辅助监护人员对心电进行房颤检测。
1 系统设计
基于穿戴式智慧衣的心电远程实时监护系统结构如图1 所示,包括穿戴式智慧衣、Android 智能手机App 和私有云服务器3 个部分。穿戴式智慧衣实时采集老年人心电信号。Android 智能手机App 通过无线蓝牙技术接收心电数据,实时传输心电数据到私有云的消息队列服务。私有云服务器的Web 服务提供数据访问接口;消息队列服务实时推送心电数据到社区监护端工作站;数据分析服务对心电数据进行智能分析,辅助监护人员诊断老年人心电图。
图1 基于穿戴式智慧衣的心电远程实时监护系统结构原理图
1.1 穿戴式智慧衣
穿戴式智慧衣由合作单位台湾长庚大学研发[10],主要包括弹性纺织外衣、纺织干电极、屏蔽柔性导电纤维和主控单元,如图2 所示。其中弹性纺织外衣使纺织干电极贴合人体皮肤,有利于信号质量的提升;纺织干电极是传导体表心电信号的传感器;屏蔽柔性导电纤维电气连接纺织干电极和主控单元;主控单元实现心电信号的采集、存储和蓝牙无线传输。
如图3 所示,穿戴式智慧衣的主控单元硬件设计包括7 个部分:三导心电采集模块、三轴加速度模块、SD 卡模块、STM32F401 单片机、无线蓝牙模块、可充电锂离子电池和电源模块。
图2 穿戴式智慧衣组成结构示意图
图3 穿戴式智慧衣主控单元硬件结构图
主控单元的嵌入式软件设计包含3 个功能:(1)心电信号采集功能:按照250 Hz 的采样频率采集三导心电信号;(2)数据存储功能:存储三导心电信号数据到内部SD 卡;(3)蓝牙数据传输功能:管理蓝牙和智能手机的配对连接以及数据的压缩、封包和发送。
穿戴式智慧衣外衣和主控单元实物如图4 所示。
图4 穿戴式智慧衣外衣和主控单元实物图
1.2 Android 智能手机App 设计
Android 智能手机App 主要功能包括:用户账号注册和登录功能、心电数据实时处理功能、云端通信功能和音视频通话功能。其工作流程如图5 所示,具体如下:
(1)使用电话号码注册用户账号和登录系统。
(2)通过蓝牙连接穿戴式智慧衣的主控单元,实时接收心电数据。
(3)实时处理心电数据:①存储心电数据到内部存储器;②显示动态心电数据波形;③按照MQTT 协议[11]封装心电数据,并实时传输到私有云服务器。
(4)可以和社区监护人员进行音视频通话。
图5 Android 智能手机App 工作流程图
Android 智能手机App 采用Android Studio 开发工具和Java 语言设计。使用Eclipse 的Paho 开源工具[12]按照MQTT 协议对心电数据进行封包和传输。视频通话功能采用腾讯云实时音视频[13]的Android SDK 进行开发。
1.3 云端服务器设计
云端服务器包括4 个功能模块:Web 应用程序接口(application programming interface,API)、心电图实时监护平台、消息队列服务和数据分析服务。
Web API 和心电图实时监护平台在本课题组之前研究[14]的基础上进行开发。Web API 采用Java 语言和Tomcat 容器构建,为智能手机App、心电图实时监护平台和消息队列服务提供数据访问接口。心电图实时监护平台采用HTML5 和JavaScript 技术构建,为社区监护人员提供基于浏览器的心电图实时监护界面,支持音视频通话功能。音视频通话功能采用腾讯云实时音视频的Web SDK 开发。
1.3.1 消息队列服务
系统采用消息队列实现心电数据和心电分析结果的实时转发。通过消息队列可以降低系统的耦合性,提高系统的可扩展性。
云端消息队列服务工作流程如图6 所示。智能手机App 实时发布心电数据到消息队列服务;消息队列服务实时推送心电数据到订阅该消息的社区监护工作站和云端数据分析服务;云端数据分析服务发布心电分析结果到消息队列服务,消息队列服务推送心电分析结果到社区监护工作站和老年人智能手机。
图6 云端消息队列服务工作流程示意图
1.3.2 数据分析服务
数据分析服务采用2017 年度课题组在PhysioNet ECG 房颤筛查竞赛中提出的基于机器学习的心电分类算法进行智能分析[15],该算法可以把单导心电数据记录分为正常、房颤、其他异常或者噪声4类。该算法流程包含预处理、特征提取和分类3 个步骤。预处理步骤主要包含R 波提取和RR 间期的计算;在特征提取步骤中,对每个心电数据记录提取4组共20 个特征;在分类步骤中,使用20 个特征训练决策树集合分类器。以下重点论述特征提取和分类
2 个步骤。
(1)特征提取。
该算法对每条心电记录提取4 组共20 个特征,包括4 个房颤特征、10 个形态学特征、2 个RR 间期特征和4 个心拍波形相似性特征。
①房颤特征。
RR 间期的绝对不规则性是检测房颤的一个重要依据,该算法提取4 个基于RR 间期的房颤特征:AFEvidence 特征、香农熵(Shannon entropy,SE)特征、柯尔莫可洛夫-斯米洛夫(Kolmogorov-Smirnov,K-S)检验特征和Radius 特征。
AFEvidence 特征通过dRR 间期的Lorenz 散点图计算[16]。首先在Lorenz 散点图上构建二维直方图,然后根据二维直方图中每个区域所包含的点数和每个组(bin)中包含的点数计算AFEvidence 特征值。
SE 特征采用Dash 等[17]提出的方法基于dRR 间期的直方图进行计算,用来衡量dRR 间期的不确定性。令binNum 表示直方图组(bin)的个数,令pi代表第i个组的概率分布,则SE 特征值的计算公式如下:
K-S 检验通过测量2 个样本的累计概率分布的最大偏差来评估2 个分布是否不同[18-19]。该算法利用K-S 检验评估心电图记录的累计概率分布和房颤参考分布是否一致。通过计算心电图记录的RR 间期比序列[18]和房颤参考分布的显著性水平得到K-S 检验特征值。
该算法提出的Radius 特征用来衡量dRR 间期的不规则性。Radius 特征值计算步骤:先计算dRR间期的二维散点图;再计算能够包含α%(α 根据参数调整实验取70)个点的最小圆,将此最小圆的半径作为Radius 特征值。
②形态学特征。
心电图的形态学特征对诊断心律异常有重要的意义,比如P 波的缺失是诊断房颤的重要依据,长PR 间期、QRS 宽度和ST 段均与心律异常相关。该算法提取10 个形态学特征:QRS 宽度、PR 间期、QT 间期、QS 间期、ST 段幅值、P 波幅值、Q 波幅值、R 波幅值、S 波幅值和T 波幅值。
③RR 间期特征。
为了区分其他异常类型的心电记录,该算法提取2 个基于RR 间期的特征:平均RR 间期和心律异常指标。
平均心率是诊断心动过速和心动过缓的重要指标。该算法提取整个心电记录的平均RR 间期特征来表示平均心率。
除了心动过速和心动过缓,其他异常类型还包含很多难以检测的心律异常种类,因此,该算法采用Tsipouras 等[20]提出的心律异常指标,该心律异常指标是按照4 个基于临床经验的条件来计算。心电记录的每3 个连续的RR 间期依次进行条件判断,如果任何一个条件被满足,则标记为异常心拍。心律异常指标的特征值为异常心拍的个数。
④心拍波形相似性特征。
为了检测噪声类型的心电记录,该算法提取4个心拍波形相似性特征:QRS 相似性指标、高相似性心拍比率、R 波幅值相似性指标和信号质量指标。
QRS 相似性特征代表心电记录中任意2 个心拍波形之间的相关系数的平均值。假设心电记录有N个心拍,ρ(i,j)表示第i个心拍和第j个心拍之间的皮尔逊相关系数,则QRS 相似性(SIQRS)特征值的计算公式如下:
高相似性心拍比率特征表示高相似性心拍的最大比率。令H 表示所有心拍的高相似性心拍的个数集合,则高相似性心拍比率(RHSB)特征值的计算公式如下:
其中,max()表示求取集合H 的最大值。
R 波幅值相似性特征表示所有R 波幅值之间的变异系数。令A 表示所有R 波顶点非负幅值的集合,则R 波幅值相似性(SIRA)的计算公式如下:
其中,σ 和μ 分别表示A 的标准差和均值。
信号质量指标特征用来量化等电位线(上一个心拍T 波的终点至当前心拍P 波的起点)的波动,以此来衡量心拍的信号质量。信号质量指标的特征值为所有心拍中非噪声心拍的比率。令T 表示一个心拍的等电位线的幅值集合,则判断该心拍是否为噪声的参数(noise-level)计算公式如下:
其中,max()和min()分别表示求取集合T 的最大值和最小值;median()表示求取集合A 的平均值。
(2)分类。
该算法使用决策树集合分类器把心电记录分为4 类(正常、房颤、其他异常和噪声)。对每个心电记录提取20 个特征,使用这些特征数据训练决策树集合分类器。决策树集合分类器采用AdaBoost.M2 算法训练,使用MATLAB 工具的fitensemble 函数实现训练过程,采用100 折交叉验证优化关键参数the number of decision trees。
2 性能验证
2.1 心电分类算法的性能验证
决策树集合分类器在竞赛官方的训练集(n=8528)和非公开测试集(n=3 658)上进行了性能验证。在训练集上的成绩详见表1,正常(F1n)、房颤(F1a)和其他异常(F1o)这3 类的F1成绩分别为0.93、0.88 和0.82,总体F1成绩(即F1n、F1a和F1o的平均值)为0.87;总体准确率(Accuracy)、精确率(Precision)和召回率(Recall)分别为0.89、0.85 和0.88。在非公开测试集上的总体F1成绩为0.82[21]。
表1 决策树集合分类器的性能
2.2 系统可靠性验证
如图7(a)所示,将穿戴式智慧衣的主控单元连接福禄克(FLUKE)MPS450 心电信号发生器,智能手机App 可以实时接收和显示心电数据。智能手机App 实时显示的心电数据[如图7(b)所示]与MPS450产生的模拟心电信号保持一致,证明穿戴式智慧衣心电数据采集可靠。
使用穿戴式智慧衣采集人体心电生理信号,传输心电数据(第二导联)到私有云服务器。智能手机App 可实时显示人体心电数据波形[如图7(c)所示],云端心电图实时监护平台可显示动态心电图和心电分析结果[如图7(d)所示],监护人员可以实现和老年人进行视频通话[如图7(e)、(f)所示]。智能手机App 实时显示的心电数据和云端心电图实时监护平台显示的动态心电图保持一致,表明了心电数据远程传输的可靠性。实验结果表明,系统运行正常稳定。
2.3 与其他系统对比
本系统与其他人设计的心电监护系统对比详见表2。梁铁等[6]、Satija 等[7]和Yang 等[8]提出的心电监护系统缺乏云端心电数据分析功能;Satija 等[7]和Yang 等[8]设计的系统心电采集器采用湿电极,可能导致皮肤过敏,穿戴不舒适;Abawajy 等[9]提出的心电监测系统没有提出心电采集器的解决方案。上述系统均不支持云端实时心电监护。而本系统采用的穿戴式智慧衣采集信号准确、穿戴舒适,更适合对老年人进行长期实时心电监护,且云端的心电监护平台可以实时显示老年人心电,并自动分析心电数据进行房颤检测。
图7 系统可靠性验证实验环境及结果
3 结语
本研究设计并实现了一种基于穿戴式智慧衣的心电远程实时监护系统,采用智慧衣实时采集老年人的心电生理信号,采用Android 智能手机实时传输心电数据到私有云服务器。云端采用基于机器学习的算法对心电数据进行房颤检测,心电图实时监护平台可实时显示动态心电图和心电分析结果,辅助监护人员监护老年人心电,且支持和老年人进行视频通话,以便对心律异常的老年人进行干预,实现监护老年人心血管健康的目的。实验结果表明了系统的可行性和可靠性,证明本研究提出的心电监护系统适合在社区中对老年人进行长期、实时心电监护和房颤检测。
表2 远程心电监护系统功能对比
本系统的不足之处在于使用心电信号发生器和公开访问的心电数据库对系统性能进行验证,但没有采集人体心电生理数据进行临床试验,未来计划采用本系统在社区中开展对老年人的心电监护和房颤筛查工作。另一个局限性是基于机器学习的算法仅能检测房颤,无法识别心律异常的其他常见种类,如房扑、室颤等。深度学习是心律异常检测的一种新兴方法,下一步计划结合深度学习方法提高心律异常检测的种类和性能。