1. 引言
21世纪以来,我国出生率不断下降和死亡率呈不断上升的趋势,老龄化程度的加剧,心血管疾病的发病人数持续增加。据国家心血管病中心发布的相关报告,中国心血管病患病人数3.3亿 [1],心力衰竭是心脏病的终末阶段。这是全球严重的临床和公共卫生问题。早期识别对心力衰竭的治疗和预后非常重要。但是目前传统心音诊断需要医生借助听诊器并且要拥有丰富的经验,而心电诊断需要借助医院的设备。对于家庭个人使用以及社区医生使用而言,一款低成本、操作简单的心音心电监测系统是很有必要的。因此本文设计了一种较为便携的心衰分析系统,具有心音心电同步实时采集、显示及本地存储的功能,同时能将采集的信号上传至云平台进行存储,并且通过云平台的深度神经网络模型来区分是否心衰,方便了后续的治疗。
2. 系统整体设计
本系统整体框架图如图1所示,由硬件采集端、手机应用软件、云数据平台所构成。硬件采集端通过电极和驻极体麦克风采集心音心电信号,原始信号通过单片机计算处理后传送手机APP显示和存储,手机端上传至云数据平台存储分析。
3. 硬件电路设计
3.1. 主控单元
主控单元采用了STM32L432KBU6,其整个电路如图2所示。主控使用四线SPI与ADS1292R通信,CLK引脚提供512 KHz时钟信号给ADS1292R,DRDY为外部中断引脚,当接收ADS1292R的中断请求时,该引脚电平被拉低,响应中断并开始接收原始心电数据,对其进行去噪处理后,按一定的数据格式,通过通用异步收发传感器串口发送给蓝牙模块 [2],蓝牙模块再传给手机App进行显示。主控芯片内置的12位ADC模块对心音信号进行数模转换。
3.2. 心音信号
心音信号采用了NE5532运放,NE5532是一种双运放高性能低噪声运算放大器,具有较好的噪声性能、优良的输出驱动能力及相当高的小信号带宽,电源电压范围大等特点 [3],很适合作为音频放大。如图3所示心音信号通过两级放大,然后使用主控芯片的内置ADC模块进行模数转换。
3.3. 心电采集
ADS1292R是多通道同步采样24位ADC,具有内置的可编程增益放大器、内部基准和内部振荡器。该芯片是包含了低功耗医疗心电图、体育和健身应用所需的所有功能,其便携性、经济性、紧凑性,便于小型化设计 [4]。如图4所示心电采集电路,使用II导联方式采集,并接入右腿驱动信号用于消除人体的共模干扰。ADS1292R对采集的原始信号进行A/D转换、放大,作为从机通过 SPI_MISO、SPI_MOSI 两个数据引脚,以特有的帧格式将数据发送给主控模块,3B的帧头、3B呼吸信号以及3B心电信号,组成每帧9B的数字信号 [5]。

Figure 3. Heart sound acquisition circuit
图3. 心音采集电路
3.4. 电源模块
电源模块分为两个部分,其中TPS73201专为ADS1292R提供3.0 V模拟部分供电,TPS73033则为整个硬件系统提供3.3 V供电。TPS73201和TPS73033都具有高电源抑制比(PSRR),低噪声,快速启动,以及优秀负载瞬态响应,为系统提供稳定的供电。
3.5. 蓝牙模块
采用了TLS-01低功耗蓝牙4.0模块,该模块基于TELINK公司的TLSR8266F512芯片开发的低功耗BLE射频模块,可以实现与蓝牙智慧连接(Bluetooth Smart Ready)手机、平板、笔记本之间的便利连接,支持slave和mater模式操作,包括广播、加密连接更新与通道映射更新,其具有功耗低、体积小、抗干扰能力强等特点。
4. 软件设计
4.1. 信号处理
4.1.1. 心电信号处理
在采集心电信号的过程中,会受到多种噪声的干扰,包含了了高频噪声、50 Hz工频干扰、基线漂移、肌电噪声等,其中最大的干扰来自于工频干扰和基线漂移。因此,加入50 Hz陷波器去除工频干扰,陷波器是IIR (无限冲击响应)数字滤波器,该滤波器差分方程一般表达式为:
(1)
式中:
和
分别为输入和输出信号序列,
和
为滤波器系数。
中值滤波 [6] 对于心电基线漂移这种非线性信号有较好的效果。中值滤波的基本方式为:首先定义一个长度为奇数的L长窗口,
,N为正整数。设在某一个时刻窗口内的信号样本为
,对这个L个信号样本值按从小到大的顺序排序后,处在i处的样值便定义为中值滤波的输出值
:
(2)
心电信号滤波效果如图5所示。
4.1.2. 心音信号处理
心音信号的频率主要集中在20~600 Hz范围内,采集的心音信号中同样含有其他噪声,其中包括了50 Hz工频干扰和高频噪声 [7]。只需要在单片机编程中加入600 Hz的数字低通滤波器和50 Hz陷波器就可以较好地抑制噪声。如图6所示心音信号滤波效果。

Figure 6. Filtering effect of heart sound signal
图6. 心音信号滤波效果图
4.2. 心衰分类神经网络模型
长短期记忆(LSTM)是一种特殊的循环神经网络(RNN)。原始的RNN训练中,随着训练时间的加长以及网络层数的增加,容易出现的梯度消失、梯度爆炸的问题,而LSTM则有效的解决这些问题。LSTM对时间序列信号进行分类有很好的效果。结合医学知识和深度学习,本文提出了一种能够根据同步的心音与心电进行快速心衰筛查的多模态深度神经网络EPCG-Net,其使用LSTM和一维卷积神经网络(1D-CNN)进行特征的提取,并将心音图(PCG)与心电图(ECG)特征融合后进行分类。
4.2.1. 数据预处理
在本网络模型中,对心音而言,先用4000采样率进行重采样,接着使用带通滤波器将心音信号滤除5~2000 HZ的波段,再使用窗口长度为5S的切片器将其随机切分,最后使用窗函数为汉明窗,窗长为50的短时傅里叶变换(STFT)和梅尔标度滤波器(Mel-Scalt fliters)将数据映射至时频域,构建MFSC (logmel-frequency spectral Coefficients)图 [8]。由于音频信号和电信号不同的特征,对PCG进行和ECG不同的预处理,先使用500采样率对其进行重采样,再通过长度为7的汉明窗对其进行特征映射,最后获得分类结果。如图7所示信号预处理流程图。
4.2.2. 神经网络模型
参照自然语言处理领域Encode-Decode编码方式 [9] 与图像分割领域FCN (Full Convolution Networks) [10] 的概念,设计了一个十四层深度,包含12层1D-Conv、2层LSTM、4个ResBlock [11] 的深度心音信号分类网络,网络结构见图8。该模型的本质为一组分布在高维向量空间的非线性多峰函数族,模型学习的过程即为使用该函数族拟合输入心音数据与给定标签之间的映射关系,通过批量随机梯度下降的方式对该非凸函数族进行优化,求解函数族参数的其最大似然。SeqToOne架构可以在带有时许的输入上充分利用时许信息,FCN理应可以计算任意尺寸的输入并产生相应空间维度的输出。在HSC-LNet中,经过预处理的数据先通过一层1D-CNN,对输入的梅尔频谱矩阵进行降维和初步的特征提取,以减少后续LSTM层的迭代次数与计算量;再使用一个双层LSTM对输入数据时频特征进行提取和编码;接着使用全卷积的结构,通过一组10层1D-CNN以下采样的方式进行特征提取、升维;最后通过Softmax激活函数,对高维特征进行分类、预测,该结果为患者样本的预测结果。特别地,下采样实现了不同程度的卷积运算在不同级别学习特征。随着网络深度的增加,学习到的特征也从低维转换为高维。网络深度增加的同时导致了梯度消失问题的出现,因此引入了残差块来解决该问题。分别在2~4、4~6、6~8、8~10卷积层之间加入ResBlock,增加特征利用率,解决梯度消失问题。

Figure 7. Signal preprocessing flow chart
图7.信号预处理流程图

Figure 8. Neural network structure diagram
图8. 神经网络结构图
5. 系统测试验证
本系统主要由前端信号采集硬件和后端云数据平台两部分所构成,通过以上两方面的分析论证,最终设计出本系统。将采集硬件的导联电极和驻极体麦克风心音采集装置贴在相应的位置,实物PCB板如图9所示,打开相应的Android程序通过蓝牙连接采集硬件,测得实时的心音和心电信号如图10所示。
数据集来自浙江省某三甲某医院,包含了105组心衰患者和196组非心衰患者。其中PCG采样率为4000,长度分布在15~20 s不等;ECG采样率为500,长度与相对应的心音等长。挑选该组数据集中的32组心衰标签和59组非心衰标签组成验证集,其余的归为训练集。模型训练情况如图11所示。
在本数据集上,与其他的分类方法相比,对比结果如表1所示。本文提出的EPCG-Net模型在分类精度上有较大的提高。

Table 1. Comparison of various algorithms
表1. 各类算法的比较
表中列出的算法主要是近几年采用比较多的采用MFCC (Mel-Frequency Cepstral Coefficients)做数据预处理和CNN相结合的算法。本文采用的MFSC相比较而言,具有相关性,在频谱上面较为平滑,利于提取特征。
将对10名心衰患者和30名非心衰志愿者各分成两组进行系统性测试,测试结果如表2所示。
结果表明本系统对心衰分类准确度约为90%,与模型训练结果基本吻合。本系统的算法具有一定竞争力,模型实在样本较小的条件下优化得到的,如果进行更大的样本进行训练测试,在准确度上应该还有进一步的提高。
6. 结语
针对心血管疾病患者和医生的实际需求,本文设计了心音心电联合采集分析系统。通过基于低功耗STM32的信号采集装置采集生理信号,通过蓝牙发送给手机App显示并上传至云平台,减少去医院使用专业设备的需求,便于普及到养老院、社区卫生所等地方。而医生可以登录云平台查看患者数据,方便管理病患数据。同时云平台上的心衰分类网络判断是否心衰这一结果对于患者有较大的参考价值,在临床上也有较大的价值。