陈敏,王娆芬
上海工程技术大学电子电气工程学院,上海201620
在社会老龄化和城市化进程加快、居民不健康生活方式盛行的背景下,中国心血管病患病率和死亡率一直处于不断上升阶段,并呈现出低龄化趋势且在低收入群体中快速增长及个体聚集现象[1]。心电图是人体心电信号的反映,心脏专家通过对心电图的观察,可以识别心电信号的异常,从而判断人体心脏的健康状况。除医院内广泛使用的Holter 心电监护仪外,家用可穿戴心电设备也逐渐普及[2-3]。这就需要对心电信号进行自动分类,并且有很好的实时性,从而实现对心脏健康状况的实时监测,及时发现心律异常并采取相应措施[4]。
整个心电信号自动分类过程中,特征提取是至关重要的部分,众多学者对此进行了研究。Li等[5]使用小波包和近似熵对心电信号进行特征提取,小波分析方法具有多分辨率分析的特点,在时频域能有效表征信号的局部特征,但存在小波基函数的选择等问题;Rajesh 等[6]使用经验模态分解(Empirical Mode Decomposition,EMD)方法对心电信号进行分解,对得到的IMF 分量进行熵等特征的计算得到特征向量。EMD 是一种自适应的信号处理方法,自适应分解得到的若干个IMF分量在时频上都有其物理意义。然而EMD分解中会出现端点效应、模态混叠、过包络和欠包络等问题[7],针对这些缺点出现过很多改进的方法,比如总体经验模态分解[8]、总体完备经验模态分解[9-10]等,但是这些改进方法依然不能够有效解决EMD存在的问题。胡健等[11]提出使用新的特征提取方法—— 局部均值分解(Local Mean Decomposition,LMD)方法对心电信号进行自适应分解,该方法能够解决EMD方法的端点效应、过包络、欠包络问题,但仍然存在模态混叠问题。因此本文对LMD 方法进行改进,提出一种总体局部均值分解(Ensemble Local Mean Decomposition,ELMD)方法,并应用ELMD 方法对心电信号进行分析。ELMD 方法通过对预处理后的心电信号多次加入不同的高斯白噪声后再进行局部均值分解,对每次得到的若干个乘积函数分量(Product Function,PF)求均值,得到最后的PF 分量。该方法分解得到的PF 分量能够克服由信号间歇性引起的信号时频分布的混叠,即在一个PF分量中只出现信号相同时间尺度的特征。
对优化后的PF 分量进行特征计算,得到一组能有效代表心电信号特性的特征向量。最后送入支持向量机进行分类,实现对正常心电信号和4种常见心律失常心电信号的自动分类。
LMD 是一种新的自适应时频分析方法,它能够将非线性、非平稳的复杂信号自适应地分解为若干个具有物理意义的PF 分量和一个残余分量,在机械故障诊断和脑电信号分析中得到广泛应用[12-14]。具体算法如下:找出原始信号x(t)所有的局部极大值点和极小值点nj,求取相邻两个极值点的均值,用滑动平均法进行平滑处理,得到局部均值函数m11(t),并通过局部均值点计算包络估计值aj:
将aj用直线连接起来,采用滑动平均法对折线进行平滑处理,得到包络估计函数a11(t);从x(t)中分离出局部均值函数,得到h11(t);将分离得到的h11(t)除以a11(t)进行解调,得到调频信号:
重复上述步骤n次,直到s1n(t)为纯调频函数,此时:
则x(t)分解出的第一个PF分量为包络信号a1(t)和纯调频信号s1n(t)的乘积,即:
从x(t)中分离出PF1(t),将得到的新信号u1(t)作为源信号迭代上述步骤k次,直到uk(t)为单调函数。最后,xi(t)被分解为k个PF 分量和一个残余分量uk(t),表示为:
ELMD方法是对LMD方法的一种改进。ELMD的本质是对信号加入不同的高斯白噪声后进行局部均值分解,对每次得到的若干个PF 分量求均值作为最后的结果。其具体的计算流程如下:
(1)对去噪之后的心电信号x(t) 加入不同的高斯白噪声:
其中,ωi(t)(i=1,2,…,M)是不同的均值为0、方差为ε的高斯白噪声。
(2)对xi(t)进行LMD 分解,得到k个PF 分量和一个残余分量uk(t),表示为:
(3)计算M次分解得到的PF 分量p和余量r的均值:
其中,、即为ELMD分解的结果。
心电信号经过ELMD 的分解,原信号的特征信息会被分布到不同的时间特征尺度上,从而放大了原信号隐含的特征信息。
本文数据采用美国麻省理工学院心律失常数据库MIT-BIH。MIT-BIH 数据库广泛应用于学术研究和工程实施[15-16],它由48 段长度为半小时的记录组成,来自47 个个体。每个心拍都至少由两名心脏学专家进行心律失常类型的标注,包括束支传导阻滞、房性早搏、室性早搏、房颤、起搏心跳、ST段改变等15种心律异常。本文对4种常见心律失常疾病:左束支传导阻滞(Left Bundle Branch Block,LBBB)、右束支传导阻滞(Right Bundle Branch Block, RBBB)、房性早搏(Artial Premature Contraction,APC)、室性早搏(Premature Ventricular Contraction, PVC)和 正 常(Normal,N)心电信号进行分类,选择的数据编号及心拍样本数量如表1所示。
表1 心电数据编号及样本数量Tab.1 Electrocardiogram(ECG)data number and sample size
心电信号在采集过程中,必然会受到各种类型噪声的干扰,如工频干扰、基线漂移和高频干扰等[17]。本文使用Sing等[18]提出的方法,选择db6小波基函数将心电信号分解为9层。由于第9层近似系数的频率范围为0~0.351 Hz,主要是基线漂移,因此不用于重构。此外,90~180和45~90的频带范围包含工频干扰和高频干扰,也不用于重构。通过对第3层到第9层的细节系数重构,实现对心电信号的去噪。
去噪后使用WFDB工具箱的ecgpuwave函数,实现对QRS波群的检测。如图1所示,实现了对记录编号100的心电信号QRS波群的检测。在QRS波群位置前取120个点,在QRS波群位置后取180个点进行心拍分割。分割后的单个心拍如图2所示。
对预处理后的单个心拍使用ELMD方法进行自适应分解。其中,设定高斯白噪声的方差ε值为0.2,加入白噪声的次数M值为100。利用白噪声信号具有频率分布均匀的统计特性,且白噪声的均值为0,不同的白噪声加入心电信号中形成混合信号后,进行多次分解得到的多个PF分量平均值能够自动剔除白噪声成分。在对白噪声进行分解时,ELMD频域上表现为一个高通滤波器和一系列连续的带通滤波器组的组合。混合信号经ELMD分解后,心电信号中的所有尺度会自动地分解到白噪声所确定的滤波器组中与之相关的通频带中,因此能够显著减少模态混叠现象。
图1 QRS波群检测Fig.1 QRS complex detection
图2 预处理后的单个心拍Fig.2 Single heartbeat after preprocessing
对5种不同类型的心拍进行ELMD分解,均能得到4 个PF 分量和一个残余分量。图3是5 种不同类型心电信号的ELMD 分解结果,分别选取记录编号为100、109、118、200和232的心电数据。可以观察到每种心律失常类型所对应的PF 分量波形各不相同,由于残余分量所包含的信息较少,所以选择前4个PF分量进行特征提取。
ELMD分解后,计算每个PF分量的样本熵(SE)、平均功率(MP)、奇异值(SV)和标准差(SD),得到16维特征。其中,SE 反映信号的复杂程度[19];MP 反映每个PF 分量的频带信息;SV 反映信号的稳定性[20];SD 反映信号的变化特性。组成的特征矩阵如表2所示。
每类心电信号类型选择800个样本进行分析,采用卡方检验方法分析每一个特征与所属类别的相关性并进行评分,对分数求log后,得到图4的相关系数图。可以看出每一个特征对心电信号的分类都起到一定的作用。图5为随机选择的3 个特征的箱型图表示,可以观察到每类心电信号的特征值都有明显的差异分布,即每类心电信号的特征值都具有较好的分类辨识度。
图3 N,LBBB,RBBB,APC,PVC的ELMD分解图Fig.3 Ensemble local mean decomposition(ELMD)diagrams of N,LBBB,RBBB,APC and PVC
表2 心电特征矩阵名称Tab.2 Names of ECG feature matrixes
首先对数据集进行划分,在每类心电信号中随机选取70%的数据作为训练集,剩余的30%作为测试集,得到2 800组训练样本和1 200组测试样本,分类模型选择支持向量机(SVM)。SVM通过引入高斯核函数,将输入向量映射到一个高维的特征向量空间中,并在该特征空间中构造最优分类超平面,实现对正常信号和4 种心律失常类型心电信号的分类。其中,使用遗传算法(GA)和十折交叉验证对SVM中涉及到的惩罚因子C和核函数参数η进行寻优操作。最后得到最优惩罚因子的值为22.633 4,最优核函数参数的值为3.049 4。使用参数优化后的SVM 对心电信号进行分类。
本文采用总准确率(Total Accuracy,TA)、灵敏度(Sensitivity,Se)和特异性(Specificity,Sp)3 种方法对心律失常分类效果进行分析和评估。公式如下:
图4 心电特征与心律失常的相关性Fig.4 Correlation between ECG features and arrhythmia
其中,TP 表示当前心拍类型正确分类的心拍个数;FP表示不属于当前心拍类型被错分为当前心拍类型的心拍个数;TN 表示属于当前心拍类型被错分为其他类型的心拍个数;FN 表示不属于当前心拍类型且被错分为其他类型的心拍个数。
图5 心电特征值分布Fig.5 ECG feature value distribution
将得到的特征矩阵输入参数优化后的SVM进行分类,得到的混淆矩阵如表3所示。通过表3可以观察到,使用ELMD方法进行特征提取的分类结果中,5种心电信号类型都达到了近乎完全正确的分类,有4 个RBBB 错分为APC,相对来说,这两种心拍类型容易混淆。通过对混淆矩阵的计算,得到表4的评价指标结果。可以看到除RBBB的灵敏度外,其他评价指标均达到99%以上,达到了很好的分类效果。
表3 分类结果的混淆矩阵表示(ELMD方法)Tab.3 Confusion matrix of classification results(ELMD method)
表4 心律失常分类的实验结果(ELMD方法)Tab.4 Results of classification of arrhythmia(ELMD method)
本文还对相同的心电信号样本使用LMD方法进行自适应分解,对得到的3个PF分量进行相同的特征提取并使用相同的分类器进行分类。得到的混淆矩阵和评价指标结果如表5和表6所示。通过表3和表5对比可以看出,LMD方法RBBB和APC的区分表现得更糟糕,RBBB有12个样本被错分为APC,有9个APC被分类为RBBB,且其他类型分类错误的样本数量均高于表3中的数量。在表6中,LMD方法LBBB、RBBB和APC的灵敏度均低于97%,尤其是RBBB 的灵敏度仅为91.67%。灵敏度越低表示漏诊率越高,说明很多RBBB的心拍错分为其他类型。验证了ELMD方法相比于LMD方法具有明显的优越性。
除与LMD 方法进行对比外,本文将使用ELMD方法得到的结果与其他特征提取方法的分类结果进行比较,分类器均为SVM 且分类种类相同。如表7所示,使用EMD[6]和小波变换(WT)、近似熵(ApEn)[5]作为特征提取方法的分类精确度均比本文方法低。因此证明本文的实验方法是一种效果很好的心电信号自动识别方法。
有效的心电特征提取对心律失常的正确分类有着重要意义。本文使用了一种新的心电信号特征提取技术—ELMD方法对预处理后的心电信号进行特征提取,并使用遗传算法优化后的SVM进行分类。通过MITBIH数据库的4 000个样本进行分析后,评价指标结果表明使用ELMD方法提取的特征比使用LMD方法提取的特征更具代表性,且准确率达到了99.61%,结果优于其他文献,验证了本文方法的可靠性。本次研究主要是在特征提取方法上进行了创新,没有考虑病人的差异性。因此,下一步的研究目标计划是让训练集和测试集的样本来自不同的病人,找到有效的特征提取方法实现心电信号的精确分类,从而得到更好的适用性。
表5 分类结果的混淆矩阵表示(LMD方法)Tab.5 Confusion matrix of classification results(LMD method)
表7 与其他文献的结果比较Tab.7 Comparison with the results from other literatures
表6 心律失常分类的实验结果(LMD方法)Tab.6 Results of classification of arrhythmia(LMD method)