非侵入式血压预测技术文档:基于PPG与rPPG信号的深度学习方法
2026-01-25 05:09:19作者:冯梦姬Eddie
概述
本项目实现了一篇论文中的方法——《使用深度学习评估非侵入性血压从PPG和rPPG信号预测》[1],该文发表在《传感器特刊“无接触传感器在医疗保健中的应用”》中。项目提供了下载MIMIC-II数据库数据、数据预处理以及训练神经网络以进行基于PPG/rPPG的血压预测所需的脚本。
该项目要求Tensorflow 2.4.1和Python 3.8环境,并且可以自命令行执行。
如果您在研究中使用了此仓库,请考虑引用以下论文:
@inproceedings{schrumpf2021assessment,
title={Assessment of deep learning based blood pressure prediction from PPG and rPPG signals},
author={Schrumpf, Fabian等},
booktitle={CVPR会议论文集},
year={2021}
}
安装指南
虚拟环境创建
首先,确保您已安装virtualenv工具,通过命令安装它:
pip install virtualenv
然后,创建一个使用Python 3.8的虚拟环境:
virtualenv --python=/usr/bin/python3.8 venv
激活虚拟环境:
source venv/bin/activate
最后,安装项目依赖:
pip install -r requirements.txt
使用说明
项目执行流程
- 下载MIMIC-III数据:使用
download_mimic_iii_records.py下载所需记录。 - 数据预处理:运行
prepare_MIMIC_dataset.py对数据进行预处理并划分窗口。 - 转换为TFRecord格式:通过
h5_to_tfrecord.py将处理后的数据分割成训练、验证和测试集,并转换为TFRecord格式。 - 神经网络训练:利用
ppg_train_mimic_iii.py训练基于PPG的数据预测模型。 - 模型个性化:采用
ppg_personalization_mimic_iii.py对特定个体数据进行模型微调。 - rPPG个性化调整:通过
retrain_rppg_personalization.py进一步微调模型以适应rPPG数据。
数据集和模型获取
数据集及预先训练的模型可以从Zenodo处下载。
API使用文档
本项目未明确提供API接口,但各脚本通过参数调用实现功能,具体操作遵循上述使用说明的步骤指导。
项目安装方式
- 环境配置: 已在安装指南部分详细说明。
- 执行脚本: 在虚拟环境中,直接调用相应脚本文件,并按其提供的命令行参数执行。
示例脚本调用
下载数据示例:
python3 download_mimic_iii_records.py -i MIMIC-III_ppg_dataset_records.txt -o ./mimic_downloads
数据准备示例:
python3 prepare_MIMIC_dataset.py -d ./mimic_downloads -o dataset.h5
请注意,根据具体需求调整以上命令的参数和路径。
引用
- Schrumpf, F., Frenzel, P., Aust, C., Osterhoff, G., & Fuchs, M. (2021). CVPR 会议论文集.
请按照实际需求,参考这些步骤和指令来执行项目,进行血压预测的相关研究与实验。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0214
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
项目优选
收起
deepin linux kernel
C
32
16
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
469
465
暂无描述
Dockerfile
778
5.08 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
877
2.03 K
Ascend Extension for PyTorch
Python
758
968
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
697
1.4 K
昇腾LLM分布式训练框架
Python
185
231
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.1 K
1.14 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
2.25 K
677