pyPPG: A Python toolbox for comprehensive photoplethysmography signal analysis

Marton A. Goda, Peter H. Charlton, Joachim A. Behar
{"title":"pyPPG: A Python toolbox for comprehensive photoplethysmography signal analysis","authors":"Marton A. Goda, Peter H. Charlton, Joachim A. Behar","doi":"arxiv-2309.13767","DOIUrl":null,"url":null,"abstract":"Photoplethysmography is a non-invasive optical technique that measures\nchanges in blood volume within tissues. It is commonly and increasingly used\nfor in a variety of research and clinical application to assess vascular\ndynamics and physiological parameters. Yet, contrary to heart rate variability\nmeasures, a field which has seen the development of stable standards and\nadvanced toolboxes and software, no such standards and open tools exist for\ncontinuous photoplethysmogram (PPG) analysis. Consequently, the primary\nobjective of this research was to identify, standardize, implement and validate\nkey digital PPG biomarkers. This work describes the creation of a standard\nPython toolbox, denoted pyPPG, for long-term continuous PPG time series\nanalysis recorded using a standard finger-based transmission pulse oximeter.\nThe improved PPG peak detector had an F1-score of 88.19% for the\nstate-of-the-art benchmark when evaluated on 2,054 adult polysomnography\nrecordings totaling over 91 million reference beats. This algorithm\noutperformed the open-source original Matlab implementation by ~5% when\nbenchmarked on a subset of 100 randomly selected MESA recordings. More than\n3,000 fiducial points were manually annotated by two annotators in order to\nvalidate the fiducial points detector. The detector consistently demonstrated\nhigh performance, with a mean absolute error of less than 10 ms for all\nfiducial points. Based on these fiducial points, pyPPG engineers a set of 74\nPPG biomarkers. Studying the PPG time series variability using pyPPG can\nenhance our understanding of the manifestations and etiology of diseases. This\ntoolbox can also be used for biomarker engineering in training data-driven\nmodels. pyPPG is available on physiozoo.org","PeriodicalId":501256,"journal":{"name":"arXiv - CS - Mathematical Software","volume":"10 6","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2023-09-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Mathematical Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2309.13767","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Photoplethysmography is a non-invasive optical technique that measures changes in blood volume within tissues. It is commonly and increasingly used for in a variety of research and clinical application to assess vascular dynamics and physiological parameters. Yet, contrary to heart rate variability measures, a field which has seen the development of stable standards and advanced toolboxes and software, no such standards and open tools exist for continuous photoplethysmogram (PPG) analysis. Consequently, the primary objective of this research was to identify, standardize, implement and validate key digital PPG biomarkers. This work describes the creation of a standard Python toolbox, denoted pyPPG, for long-term continuous PPG time series analysis recorded using a standard finger-based transmission pulse oximeter. The improved PPG peak detector had an F1-score of 88.19% for the state-of-the-art benchmark when evaluated on 2,054 adult polysomnography recordings totaling over 91 million reference beats. This algorithm outperformed the open-source original Matlab implementation by ~5% when benchmarked on a subset of 100 randomly selected MESA recordings. More than 3,000 fiducial points were manually annotated by two annotators in order to validate the fiducial points detector. The detector consistently demonstrated high performance, with a mean absolute error of less than 10 ms for all fiducial points. Based on these fiducial points, pyPPG engineers a set of 74 PPG biomarkers. Studying the PPG time series variability using pyPPG can enhance our understanding of the manifestations and etiology of diseases. This toolbox can also be used for biomarker engineering in training data-driven models. pyPPG is available on physiozoo.org
pyPPG:一个用于全面光容积脉搏波信号分析的Python工具箱
光容积脉搏波是一种非侵入性的光学技术,可测量组织内血容量的变化。它越来越多地用于各种研究和临床应用,以评估血管动力学和生理参数。然而,与心率变异性测量相反,这个领域已经有了稳定的标准和先进的工具箱和软件,但对于连续光容积脉搏图(PPG)分析,没有这样的标准和开放的工具。因此,本研究的主要目标是识别、标准化、实施和验证关键的数字PPG生物标志物。这项工作描述了一个标准python工具箱的创建,表示为pyPPG,用于使用标准的基于手指的传输脉搏血氧计记录的长期连续PPG时间序列分析。改进后的PPG峰值检测器在2054个成人多导睡眠描记仪记录总计超过9100万次参考节拍的评估中,具有最先进基准的f1得分为88.19%。当在100个随机选择的MESA录音的子集上进行基准测试时,该算法的性能优于开源原始Matlab实现约5%。为了验证基准点检测器,由两名标注员手动标注了3000多个基准点。该检测器始终表现出高性能,所有基点的平均绝对误差小于10 ms。基于这些基准点,pyPPG设计了一套74PPG生物标志物。利用pyPPG研究PPG时间序列变异性,可以提高我们对疾病表现和病因的认识。这个工具箱也可以用于训练数据驱动模型的生物标志物工程。pyPPG可在physiozoo.org上获得
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信