脉搏波波峰波谷自动检测方法
【技术领域】
[0001]本发明属人体健康监护技术领域,涉及一种脉搏波波峰波谷自动检测方法,尤其涉及脉搏波中存在大量人为、系统噪声以及心率快速变化的情况。可用于临床心电图自动识别、动态心电图预处理,特别适合于基于手机的应用、网络心电图预处理。
【背景技术】
[0002]脉搏波的传播过程不仅受到心脏本生的影响,还受到沿途动脉和周围组织器官状况的影响,因此蕴含着丰富的人体生理和病理信息,历来都受到中外医学界的重视,现已成为中西医共同的研宄热点。通过脉搏波信号能够检测心血管功能的多项指标,具有无创、快速等特点,是防治心血管疾病的重要手段。
[0003]在临床中,脉搏信号并不都是理想的,往往存在许多无法预料的噪声以及抖动,这些内部、外部干扰往往会影响信号识别的准确性,一旦分析设备的结果产生了错误,对后续的诊断以及治疗都会产生重大影响。
[0004]目前,脉搏波信号的处理算法研宄还不成熟,特别是信号的特征提取,使其在检测设备中的应用发展缓慢。目前脉搏波波峰波谷的检测方法有:
[0005]通过阈值法进行脉搏波信号特征提取。其基本方法是根据相邻周期脉搏波形相交点为极小值,幅值最大点为极大值,设定一个阈值,当波形数据中两个点差值大于阈值,则认为找到了极大值与极小值。该方法简单易懂,但在实际应用中由于不同人群的脉搏波信号差异较大以及基线漂移等因素,却很难设置一个精准的阈值。
[0006]通过差分阈值法进行脉搏波信号特征提取。其基本方法是根据差分值的变化来确定相应特征点。由于脉搏波信号并不是一个稳定的信号,通常会出现抖动,所以差分序列会在同一点附近出现多个局部极大值,难以精确检测波形。现有的检测方法无法确保检测的准确性。
【发明内容】
[0007]本发明的目的是针对现有技术的不足而提出的一种脉搏波波峰波谷自动检测方法,能够准确的检测出脉搏波波峰、波谷位置,误识、漏识率极低且能自动适应各心率信号。为医务工作者们判断心血管疾病提供了一种参考依据。
[0008]实现本发明目的的具体技术方案是:
[0009]本发明是一种脉搏波波峰波谷自动检测方法,包括如下步骤:
[0010]a)输入采集到的一段脉搏波数据;
[0011]b)去除人为噪声或系统采集噪声产生的大幅度波动,并模拟出原数据;
[0012]c)将整段数据按周期进行分割;
[0013]d)在各个周期内分别求出其极大、极小值对应位置,即为波峰、波谷,再加上相对整段数据的位置,得到最终的波峰、波谷位置;
[0014]e)输出标识了波峰、波谷位置的脉搏波波形。
[0015]步骤b)所述的去除人为噪声或系统采集噪声产生的大幅度波动,并模拟出原数据包括如下步骤:
[0016]①计算各脉搏波数据点之间的平均幅度差,记为AD ;
[0017]②计算相邻数据点之间瞬时斜率KiAi= (D(i+l)_D(i))/At,其中D为脉搏波数据,At是相邻两数据点之间的时间差;将两点间的斜率KgKm进行比较,Km为标准脉冲波斜率的极限值,若KfK1^Kf-Km,则说明该位置点出现了人为或系统噪声,对脉搏波产生了干扰;此时通过修改该点的数值,即令D(i+1) = D(i) + AD或D(i+1) = D(i)-AD,模拟出原数据,其中AD为各数据点之间的平均幅度差;由此通过计算斜率的方法判断出人为或系统噪声所在位置,去除噪声并模拟出原数据,令i = i+1 ;
[0018]③重复步骤②直至i = N-1,输出修正后的数据Dn,其中N表示输入脉搏波数据的总个数;至此已将原先输入的存在干扰信号的脉搏波数据修正为适于分析的脉搏波;
[0019]步骤c)所述的将整段数据按周期进行分割包括如下步骤:
[0020]①计算所取数据点波形幅度的平均值,记为Da;
[0021]②比较各数据点幅度与整体数据平均值的大小,若Dn(i) ^DaB.Dn(i+l) >Da,记录此时的i值,即通过幅度的平均值Da对数据进行分割得到分割点i,令i = i+1 ;
[0022]③重复步骤②至i = N-1,式中N表示输入脉搏波数据的总个数,依次记录的i值记为序列I ;
[0023]④由于脉搏波波形容易出现小范围的抖动,如果在均值点附近存在抖动的话,在一个周期内会出现多个分割点;因此需要增加一个阈值V去除多余点,若I(n+1)-1(n)多V,记录此时的n+1值;若I (η+1)-Ι (η) ( V,则不进行记录;其中V = (I (n)-1 (η_1))/2,初始值设置为V = T*fs/2,T为脉冲波周期的平均值、fs为数据采样频率;令n = n+1 ;
[0024]⑤重复步骤④直至n = L-1,式中L表示序列I的长度;
[0025]⑥步骤④中依次记录的n+1值构成一个新序列A ;Dn(A(m))至Dn(A(m+l))之间的数据即为脉搏波的一个周期。
[0026]步骤d)所述的在各个周期内分别求出其极大、极小值对应位置包括如下步骤:
[0027]①在Dn(A(m))至011(4(111+1))之间的数据中,比较出最大值记录为MAX、记录在这一周期内取得最大值时的序号Nmax,最小值记录为MIN、取得最小值时的序号Nmin,令m = m+1 ;
[0028]②将步骤①中得到的该周期内的最大、最小值序号Nmx、Nmin加上该周期相对于整段数据的位置A(m),最终得到该最大、最小值对应于整段数据的序号Nmx’、Nmin’,即Nmax ’ =Nmx+A (m)、Nmin — N MIN+A (m);
[0029]③重复步骤①直至m = M-1,式中M表示序列A的长度;
[0030]④输出峰值序列MAX及其对应序列号Nma/,谷值MIN及其对应序列号Nmin’。
[0031]与现有方法相比,本发明的优点在于:
[0032](I)、本发明对输入的脉搏波数据段去除了人为噪声及系统采集噪声并模拟出原始信号,解决了人为噪声对检测准确性的影响,提高了可靠性。
[0033](2)、本发明通过输入脉搏波数据幅度的平均值为界限,并通过阈值设置去除数据抖动产生的多个分界点,有效地将整个数据段按周期进行分割。
[0034](3)、本发明中阈值的设定能够根据不同的脉搏速率进行自适应。
[0035](4)、本发明通过求出每个周期内最大值、最小值的相对序列号,加上每个周期的起始序列号,能够准确地定位整个数据段内每个周期的波峰、波谷位置。
[0036]总之,本发明通过对人为、系统噪声的识别与消除,在此基础上将信号按周期进行分割,最终标示出波峰、波谷位置,提供了一种崭新的脉搏波检测方法,使脉象分析设备对信号参数的提取更加准确。
【附图说明】
[0037]图1为实际采集到脉搏波信号的示意图;
[0038]图2为本发明流程图;
[0039]图3为采用均值对整段数据按周期分割后的分割点示意图;
[0040]图4为通过阈值筛选后的分割点示意图;
[0041]图5为本发明实际效果图。
【具体实施方式】
[0042]实施例
[0043]本发明为一种脉搏波波峰波谷自动检测方法,其流程图参见图2,包括如下步骤:
[0044]a、输入采集到的一段脉搏波数据,在本例中输入脉搏波数据共有N = 2000个数据点,其采样频率为10Hz,共26个脉搏波周期;
[0045]b、去除人为噪声或系统采集噪声等产生的大幅度波动,模拟出原数据,包括如下步骤:
[0046]①计算各脉搏波数据点之间的平均幅度差,记为AD ;本实施例中通过计算得AD=10