QRS Detection Based on Neural-Network
Yu XuehongXu Xiaohan
(Electronic Science and Engineering Department,Nanjing University, Nan Jing210093)
Abstract:In this paper, we have developed an adaptive matched filtering algorithm based upon an artificial network (ANN) for QRS detection. We used an ANN adaptive whitening filter to model the lower frequencies of the ECG signals which are inherently nonlinear and non-stationary. The residual signal which contained mostly higher frequency QRS complex energy was then passed through a linear matched filter to detect the location of the QRS complex. The results demonstrate that this ANN whitenting filter is very effective for removing the time-varying, nonlinear noise characteristic of ECG signals. With this novel approach, the detection rate for a very noisy patient record in the MIT/BIH arrhythmia database is 99.2%, which compares favorably to the 97.8% achieved with a band-pass filtering method.
Keywords:ECG signalsQRS detectionANNMatched filtering algorithmWhitening filter▲
1引言
在心电信号分析系统中,QRS复合波的检测是一项非常重要的工作。QRS波检测中的困难,不仅是因为QRS复合波的信号通频带因人而异、因时而异,而且还在于心电信号中存在着大量的各种各样的如前所述的噪声,这些噪声的频谱与QRS波的频谱范围发生重叠。当噪声强度比较大时,一般方法的检测的正确率并不能令人满意。我们介绍一种新的基于神经网络数字滤波方法,直接从原始输入信号出发进行滤波,得到了令人满意的效果。
2原理
系统整体结构框图如图1所示。
图1基于神经网络白化匹配滤波器的QRS波检测方法
Fig 1Block diagram of ANN-based adaptive matched filter for detection of QRS complexes in an ECG signal
2.1基于神经网络的白化滤波器
我们用一个三层前向BP神经网络来代替常用的线性AR模型,如图2所示,以适应噪声的非线性,而对应的白化滤波器则如图3所示。
在三层前向BP网络中,我们设计中间层即隐层单元是非线性的,而输入输出层是线性的。对AR模2型,我们可以看出,此BP网络相当于在AR模型的输入和输之间加了一层非线性的隐层单元,用以实现非线性。
图2三层前向BP网络
Fig 2Multilayer nonlinear artificial neural network
图3用BP网络的白化滤波器
Fig 3Block diagram of adaptive noise removal filter based on artificial neural metwork
隐层单元的作用函数为S型作用函数f(x)=1/(1+e-x/T),T控制f(x)的非线性度。T越小,f(x)的非线性度就越高。由此可知每一个隐层单元的输出值为:
(1)
其中:Wij为输入层与隐层之间的连接权重;bj为偏置项。
输出层的输出是对各隐层单元输出的线性加权和:
(2)
白化滤波器的输出也即是BP网络的瞬时误差为:
(3)
BP网络的内部权重调节算法采用BP算法,由于输出层的输出是对各隐层单元输出的线性加权和,因此隐层一输出层的权重调节可以使用AR模型的权重调节公式,为:
ut+1=ut+2μetzt+α(ut-ut-1)(4)
其中:ut=(u1,u2,…,uq)t为t时刻隐层各单元与输出层单元间的连接权重,zt=(z1,z2,…,zq)t为t时刻隐层各单元的输出值。
输入层—隐层之间的权重调节公式为:
Wjt+1=Wjt+2μδjxt+α(Wjt-Wjt-1)(5)
其中:Wjt=(W1j,W2j,…,Wmj)t为输入层各单元与第j个隐层单元之间的连接权重;xt=(x1,x2,…xm)t为输入层各单元的输入值;δj=ujetzj(1-zj)为上一层回传来的误差项;α与前面一样为动量因子。
2.2匹配滤波器
我们在进行ECG信号的白化之前,先在ECG信号中噪声平坦段选取几个正常的QRS复合波,对它们进行平均处理,以此来获得较小噪声的模板信号作为匹配滤波器的冲激响应。
由于模板中有噪声,而这些噪声都是有色噪声,因此对所获得的模板也要与原始信号一样进行白化处理,白化后的模板再作为匹配滤波器的冲激响应用于匹配滤波。图1中的模板白化部分就是完成这个功能的。
模板的白化过程与原始信号的白化过程完全一样,白化滤波器的结构就使用原始信号所用的白化滤波器的结构,系数也使用原始信号白化滤波器的系数,即原始信号白化滤波器的系数作了更新后,模板的白化滤波器的系数也马上跟着更新,保证模板的白化与原始信号的白化同步。
白化后的模板如下式所示:
(6)
其中:k=1,…,L-M,L为QRS波模板的长度;M为输入层单元的个数。
当白化的原始信号和白化的模板都得到以后,匹配滤波器就可以实现了。
匹配滤波器实际上可以认为是一个冲激响应为h(t)=s(t0-t)的无限冲激响应(FIR)滤波器,使得输出信号的信号比为最大。
匹配滤波器输出y(t)为:
ym(t)=x(t)*h(t)(7)
即匹配滤波器的输出是白化的原始信号和白化的模板的卷积,也即
(8)
其中:WQRSi、yw(t-i)(i=1,…,L)分别为白化后的模板和白化后的原始信号。
2.3QRS波检测定位
对匹配滤波后的ECG信号先后进行差分滤波、取平方、滑动平均及可变阈值的QRS波检测,来获得QRS波检测的最后结果。
3结果与讨论
3.1实验结果
我们用上述方法对MIT/BIH心电信号库中噪声较大的105号数据和108
