一种LMS自适应滤波PPG信号心率提取方法与流程

文档序号:18544891发布日期:2019-08-27 21:34阅读:2222来源:国知局
一种LMS自适应滤波PPG信号心率提取方法与流程

本发明涉及一种ppg信号的心率提取方法,特别是一种lms自适应滤波ppg信号心率提取方法,属于心率检测技术领域。



背景技术:

心率是非常重要的生理参数,通过对心率进行全天候的监测能够帮助人们随时了解自身的健康状况。目前可穿戴设备中常用的心率信号采集方法为光电容积描记法(photoplethysmography,ppg)。集成了ppg心率采集法的传感器已经应用到可穿戴设备上了,例如美信公司生产的型号为max30102心率传感器。但该方法采集到的ppg脉搏波信号中参杂了运动噪声,从中计算出准确的心率值需要先滤除其中的因运动过程中造成的信号伪影。

针对ppg采集信号中的运动伪差,2013年,alzahrania等用三轴加速度计采集运动信息构建运动干扰参考信号,三轴加速度信号与运动干扰信号具有一定的相关性,因此利用三轴加速度信号做滤波处理能够降低运动干扰对ppg信号的影响。2015年,po-hsianglai利用三轴加速度信号和ppg信号的频谱中峰值个数、幅值大小、参考心率等之间的关系提出了一种抗运动干扰心率提取算法。同年,zhilinzhang提出了在运动情况下从手腕式设备采集的ppg信号中提取心率的算法框架,该算法框架包括信号分解、稀疏重构、谱峰追踪三个部分。2016年,刘劲松等人用lms自适应滤波算法滤ppg信号中运动干扰噪声。上述方法在运动强度不大时效果良好,然而,在运动干扰强烈,波形中出现突变的情况下,效果并不理想,算法上仍有改进空间。



技术实现要素:

本发明的目的是:抑制运动伪差对ppg信号造成的噪声,提高ppg信号在人体在各个运动状态下心率值计算的准确率。

为了达到上述目的,本发明的技术方案是提供了一种lms自适应滤波ppg信号心率提取方法,用于在ppg心率传感器采集到的信号中提取出人体心率值的近似值,其特征在于,包括以下步骤:

步骤1、利用人体心率值正常范围构造出带通滤波器,将原始ppg信号经过带通滤波器滤除人体心率值正常范围外的带外噪声,得到预处理信号d;

步骤2、在心率传感器采集信号时利用三轴加速度传感器同步采集xyz三轴加速度数据,利用xyz三轴加速度数据分别构造lms自适应滤波器的参考信号,并级联成三通道级联型lms自适应滤波器,将步骤1得到的预处理信号d作为三通道级联型lms自适应滤波器的输入,得到滤波器响应y;

步骤3、利用谱峰追踪心率算法根据步骤2得到的滤波器响应y计算出ppg心率值,并经三点滑动平均算法和限定公式优化得到步骤1中原始ppg信号对应的心率值。

优选地,所述原始ppg信号为传感器采集的n通道信号的均值,步骤1中,所述带通滤波器为h(f):ω表示原始ppg信号的频率。

优选地,步骤2中,所述三通道级联型lms自适应滤波器的滤波过程包括以下步骤:

步骤201、计算第n次迭代时lms自适应滤波器对所述三轴加速度传感器获得的加速度输入信号acc(n)的响应y(n),y(n)=ω(n)acc(n),式中,ω(n)表示第n次迭代的系数向量;

步骤202、计算响应y(n)和期望信号d(n)的误差值e(n),e(n)=d(n)-y(n);

步骤203、根据误差值e(n)调整系数向量:ω(n+1)=ω(n)+μ(n)e(n)x(n),式中,μ(n)是第n次迭代的步长因子,收敛的条件为0<μ(n)<1/λmax,λmax是加速度输入信号acc(n)自相关矩阵的最大值,每一级lms自适应滤波器的误差值e(n)作为下一级lms自适应滤波器的期望信号d(n)。

优选地,所述步骤3包括以下步骤:

步骤301、将所述滤波器响应y在时域分解为a个长度为h的时间窗,各个时间窗之间的不仅时间为s,每次对单独的时间窗内的滤波器响应y信号进行nf点的离散傅里叶变化求对应的频谱;

步骤302、将前一时间窗口的估计心率n0的频谱位置作为参考,并且搜索区域p0=[n0-δs,...,n0+δs]内最高谱峰位置ncur,式中,δs表示10;

步骤303、计算心率值的估计值计算公式为:式中,fs表示滤波器响应y的采样频率,

步骤304、进行三点滑动平均算法,计算公式如下:

式中,b-1和b-2表示前两个连续时间窗口的估计心率值;α、β、γ表示0.9、0.05、0.05;

步骤305、进行限定公式优化,限定公式为:

式中,λinc和λdec表示限定常数,为经验常数;best表示最终得到的心率值;

本发明提供的一种级联型lms自适应滤波ppg信号心率提取方法的自适应的参考信号来自三轴加速度信号,该算法在滤除ppg信号中的运动干扰时效果更好,最后通过谱锋追踪法计算出的心率值准确率更高,后采用三点滑动平均算法和限定公式增加心率提取的可靠性,并且在人体各种运动状态下均能提高心率值的准确率。

在现有的lms自适应滤波算法ppg信号处理技术基础上,改进lms自适应滤波器的结构,将现有单级的lms自适应滤波器的参考信号取自xyz三轴加速度的均值,改为xyz三轴加速度三通道lms自适应滤波器的级联形式,此改进能够提高因lms自适应滤波器的参考信号与运动伪差部分相关或相关性差时的滤波效果,进一步提高了现有的lms自适应滤波器的有效性,适用性和精确度。

在现有的谱峰追踪算法的应用基础上,将三点滑动算法与限定公式相结合,进一步提高了现有单一的谱峰追踪算法计算出的心率值的准确率,得出线性拟合的心率变化曲线更好。

附图说明

图1是本发明的实施例中一种lms自适应滤波ppg信号心率提取方法流程图;

图2是本发明的实施例中滤除带外噪声的前后对比图;

图3是本发明的实施例中单级lms自适应滤波器流程图;

图4是本发明的实施例中单级lms自适应滤波器滤除运动噪声失败频域分析图;

图5是本发明的实施例中级联型lms自适应滤波器抑制运动噪声频谱分析图;

图6是本发明的实施例中单级和级联滤波器滤波效果对比图;

图7是本发明的实施例中单级和级联lms自适应滤波器心率提取精度曲线对比图;

图8是本发明的实施例中未使用三点滑动算法的心率提取精确度曲线图;

图9本发明的实施例中不同运动状态下两种处理算法的误差率对比。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

本发明提供的一种lms自适应滤波ppg信号心率提取方法包括以下步骤:

(1)利用人体心率值正常范围构造出带通滤波器,将原始ppg信号经过带通滤波器滤除人体心率值正常范围外的带外噪声,得到预处理信号d。

原始ppg信号为传感器采集的n通道信号的均值,其中,所述带通滤波器h(f)为:ω表示原始ppg信号的频率。

(2)在心率传感器采集信号时利用三轴加速度传感器同步采集xyz三轴加速度数据,利用xyz三轴加速度数据分别构造lms自适应滤波器的参考信号,并级联成三通道级联型lms自适应滤波器,(1)中预处理信号d作为滤波器的输入,得到滤波器响应y。

三通道级联型lms自适应滤波器的滤波过程如下:

步骤201、计算第n次迭代时lms自适应滤波器对所述三轴加速度传感器获得的加速度输入信号acc(n)的响应y(n),y(n)=ω(n)acc(n),式中,ω(n)表示第n次迭代的系数向量;

步骤202、计算响应y(n)和期望信号d(n)的误差值e(n),e(n)=d(n)-y(n);

步骤203、根据误差值e(n)调整系数向量:ω(n+1)=ω(n)+μ(n)e(n)x(n),式中,μ(n)是第n次迭代的步长因子,收敛的条件为0<μ(n)<1/λmax,λmax是加速度输入信号acc(n)自相关矩阵的最大值,每一级lms自适应滤波器的误差值e(n)作为下一级lms自适应滤波器的期望信号d(n)。

(3)利用谱峰追踪心率算法根据(2)得到的滤波器响应y计算出ppg心率值,并经三点滑动平均算法和限定公式优化得到(1)中原始ppg信号对应的心率值,包括以下步骤:

步骤301、将所述滤波器响应y在时域分解为a个长度为h的时间窗,各个时间窗之间的不仅时间为s,每次对单独的时间窗内的滤波器响应y信号进行nf点的离散傅里叶变化求对应的频谱;

步骤302、将前一时间窗口的估计心率n0的频谱位置作为参考,并且搜索区域p0=[n0-δs,...,n0+δs]内最高谱峰位置ncur,式中,δs表示10;

步骤303、计算心率值的估计值计算公式为:式中,fs表示滤波器响应y的采样频率,

步骤304、进行三点滑动平均算法,计算公式如下:

式中,b-1和b-2表示前两个连续时间窗口的估计心率值;α、β、γ表示0.9、0.05、0.05且α+β+γ=1;

步骤305、进行限定公式优化,限定公式为:

式中,λinc和λdec表示限定常数,为经验常数;best表示最终得到的心率值;

本例中ppg采集信号为5名男性,5名女性,年龄在21~25岁之间,采用静止、跳跃、挥手、跑步四种运动状态,每种组数据采集时间为2分钟,且采样频率和加速度传感器采样频率均为125hz,谱峰追踪心率提取算法的分解时间窗为8秒,各个时间窗之间的步进时间为2秒,时间窗的离散傅里叶变换点数为4096,三点滑动算法参数依次为0.9、0.05和0.05。

图1是一种lms自适应滤波ppg信号心率提取方法流程图。

如图1所示,首先用带通滤波器滤除带外噪声,根据人体的正常的心率范围为24~210次/分,对应频域的范围为0.4~3.5hz,图2为ppg信号带通滤波结果。

图3是单级lms自适应滤波器流程图。

如图3所示,pgg信号经过带通滤波器滤波后的信号d(n)减去自适应滤波构造的运动伪差信号,得到与真实ppg信号相近的信号e(n),单级lms自适应滤波器的参考信号为xyz三轴加速度的均值,图4为单级lms自适应滤波器滤除运动噪声失败频域分析图,图中心率参考信号为ecg方式对心率进行同步测量信号,用于分析对比。

图5是级联型lms自适应滤波器抑制运动噪声频谱分析图。

如图5所示,将lms自适应滤波器改为xyz三轴加速度三通道级联结构的滤波器,将xyz三轴方向的运动噪声分别进行lms自适应滤波,得到的效果图。

图6是本发明的实施例中单级和级联滤波器滤波效果对比图。

如图6所示,在pgg信号的单窗口内的频谱分析对比出级联滤波器的滤波效果比单级滤波器的效果,得出级联滤波器能够滤除因加速度信号构造的参考信号与运动噪声相关性差的误差。

根据级联型lms自适应滤波器得出的结果e(n)信号,在谱峰追踪算法模块,对e(n)信号进行分割为148帧的窗口,窗口步进时间为2秒,对每一帧进行4096点快速傅里叶变换,根据人体心率变化不会出现随机波动的规律,在该窗口对应频域进行区域搜索最大值,其中搜索范围为p0=[n0-δs,...,n0+δs],n0为上一窗口的谱峰。根据公式得到心率的估计值,fs为d信号的采样频率,nf为快速傅里叶变换的点数。估计心率值在三点滑动算法和限定公式平滑心率变化曲线,图7和图8为根据某组数据得到的单级lms自适应滤波器和级联lms自适应滤波器的心率值变化曲线,并计算了该组数据平均绝对百分比误差和平均绝对误差,单级lms自适应滤波器的平均绝对百分比误差和平均绝对误差分别为:1.81%,1.77,级联lms自适应滤波器的平均绝对百分比误差和平均绝对误差分别为:1.38%,1.35。图8为级联lms自适应滤波器在启用三点滑动算法前后的心率精确度曲线对比图,级联lms自适应滤波器的平均绝对百分比误差和平均绝对误差分别为:1.44%,1.40。q

最终40组数据在该方法下得到的心率值的平均绝对误差率的统计图。可以得出本发明在一定程度上提高了ppg信号心率提取的精度,能够抑制因运动伪差对ppg信号心率提取的影响,并且适用于人体各种运动状态,具有较强的泛化性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1