基于前项差分和动态阈值的PPG心率测量算法

A-小鲸鱼 2019-09-25 17:49:05 3612

近年来,随着大众生活水平的日益提高,各种可穿戴健康设备逐渐成为了一个热点领域。这些设备具有体积小、续航长、使用便利等诸多优点,能够实现评价人体的多种生命体征,为人们生活方式的改善提供有益建议。在生命体征的评价指标中,实时心率具有极其重要的地位。本文基于Maxim的新款超低功耗微控制器MAX32660,运用前项差分和动态阈值方法,实现了一种PPG信号的心率提取算法。该算法为MAXREFDES1207而设计,并进行了测试,效果优良,适合可穿戴设备的心率实时测量。


原理与背景

目前,国内外开发了许多电子设备用于的心率测量,其本质上是分别运用了四种不同的测量方法:电势测量法、生物阻抗法、动脉血压法和光电测量法。前三种方法分别利用人体的心电、生物电阻抗和动脉压的周期性变化来计算心率,干扰度大、硬件要求高,因而较少被可穿戴设备采用。比较常用的是光电测量法。光电测量法即“光电容积脉搏波描记法 ”,即通过绿光LED光源结合接收传感器管照射人体的血管,根据血管对光的反射量的改变获得PPG信号,从而测量心率。由于人体的皮肤、骨骼、肌肉等对光的反射是固定值,而血管容积随着脉搏的变化而不断变化,所以血管对光的反射是波动值,其波动频率即为心率。目前,光电测量法是市面上可穿戴器件的主流,Maxim的低功耗心率手环MAXREFDES1207也是基于这一原理进行心率的提取。

从PPG信号获取心率有多种成熟的算法,如阈值法、模板法,甚至有些算法还利用了机器学习的原理。其中,阈值法算量小,但是准确度较低;模板法准确度较高,但算法复杂;机器学习方法准确度最高,但是对硬件要求甚高,一般的微控制器无法胜任。由于本设计需要在MAXREFDES1207的MAX32660平台上实现,需要做到心率的实时计算并兼顾到结果的准确性,故本文在阈值法的基础上加以改进,结合前项差分的预处理方法实现算法,实现准确、实时的心率输出。


算法实现

1.数据预处理

一般而言,从传感器中读取的原始信号含有较多噪声。其中最为显著的噪声由体表的运动产生。在测量过程中,人并不能保证完全静止,这些扰动会使测量部位和传感器之间的距离发生变化,导致接收到的信号发生变化。最为典型的干扰是呼吸干扰,会使得信号的基线发生缓慢漂移。一路典型的PPG原始信号如图1所示。可见,信号的基线受到呼吸的影响,有较为严重的漂移。同时可以观察到,信号中含有较大的直流分量,这都给心率的提取造成了障碍。


图1 原始PPG信号

鉴于此,本算法使用前项差分法进行数据预处理,即计算原始PPG信号

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 点赞 收藏 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
A-小鲸鱼
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区