跳到主要内容

PPG光电容积脉搏波基础知识

什么是PPG?

PPG(Photoplethysmography,光电容积脉搏波) 是一种利用光学原理检测血液体积变化的无创测量技术。通过照射皮肤并检测反射或透射的光强度变化,可以获取心血管系统的重要信息。

工作原理

核心原理

  1. 💡 LED发出特定波长的光(通常为绿光525nm或红外光940nm)
  2. 🌊 光线穿透皮肤,部分被血液吸收
  3. 📉 血液体积变化导致光吸收量变化
  4. 📊 检测器测量光强度变化,形成PPG信号

为什么测量PPG?

PPG信号可以提供:

  • ❤️ 心率:脉搏跳动频率
  • 🩸 血氧饱和度(SpO2):结合红光和红外光
  • 💓 心率变异性(HRV):自主神经功能评估
  • 🩺 血管健康:动脉硬化程度
  • 💪 血压估计:结合其他生理参数
  • 🏃 运动强度:实时监测运动状态

PPG波形详解

典型PPG波形结构

         收缩峰
|
|
/----●----\
/ | \ 重搏波(舒张峰)
/ | \ /\
/ | \ / \
/ | \_______/ \___
| | | |
起点 上升支 降支 重搏切迹

波形组成部分

1. 收缩峰(Systolic Peak)

  • 位置:波形的最高点
  • 生理意义:心脏收缩时血液快速进入动脉
  • 时间:对应ECG的T波后
  • 特征:振幅最大,上升速率快

2. 重搏波(Dicrotic Notch & Peak)

  • 重搏切迹:收缩峰后的小凹陷
  • 重搏峰:切迹后的小波峰
  • 生理意义:主动脉瓣关闭引起的压力波反射
  • 临床价值:反映血管弹性和外周阻力

3. 基线

  • 定义:波形的最低点
  • 意义:舒张末期的血液体积

波形参数

参数英文缩写计算方法临床意义
峰峰间期PP间期相邻两个收缩峰的时间间隔计算心率
脉搏波幅度PA收缩峰到基线的距离反映心输出量和血管弹性
上升时间RT起点到收缩峰的时间反映血管顺应性
下降时间DT收缩峰到下一起点的时间反映外周阻力
重搏波指数DPI重搏峰高度/收缩峰高度血管老化指标

PPG信号类型

按检测方式分类

1. 透射式PPG(Transmissive)

[LED] → → → [组织] → → → [检测器]
(光线穿透)

特点

  • ✅ 信号强度大,信噪比高
  • ✅ 适合指尖、耳垂等薄组织
  • ❌ 不适合手腕等厚组织
  • 📱 应用:医用血氧仪、指夹式设备

2. 反射式PPG(Reflective)

[LED] → → → [组织]
↓ ↓ ↓ (光线反射)
[检测器]

特点

  • ✅ 可用于任何身体部位
  • ✅ 适合可穿戴设备
  • ❌ 信号较弱,易受干扰
  • ⌚ 应用:智能手表、手环、额头贴片

按光源波长分类

光源类型波长穿透深度主要应用
绿光525 nm浅(1-2mm)心率监测、HRV分析
红光660 nm中(2-5mm)血氧测量(配合红外)
红外光940 nm深(5-10mm)血氧测量、深层血管

为什么手表常用绿光?

  • 💡 绿光被血液吸收最强,对心率检测最敏感
  • 🎯 能量消耗低,适合长时间监测
  • 🌈 受皮肤色素影响相对较小

心率计算方法

方法1:峰峰间期法(最常用)

心率(BPM) = 60 / PP间期(秒)

示例

如果PP间期 = 0.857秒
心率 = 60 / 0.857 ≈ 70 BPM

方法2:频域分析法

步骤:
1. 对PPG信号进行FFT变换
2. 找到频域中的主频率峰值
3. 心率 = 主频率 × 60

优势:抗干扰能力强,适合运动场景

方法3:滑动窗口计数法

心率 = (窗口内峰值个数 × 60) / 窗口时长(秒)

适用场景:实时监测,快速响应

血氧饱和度(SpO2)测量

原理

血氧饱和度通过双波长PPG测量:

计算原理

氧合血红蛋白(HbO2)脱氧血红蛋白(Hb) 对不同波长光的吸收不同:

波长HbO2吸收Hb吸收特点
660nm(红光)脱氧血红蛋白吸收更多
940nm(红外)氧合血红蛋白吸收更多
SpO2计算公式:
SpO2 = A - B × (R/IR)

其中:
- R = 红光的AC分量/DC分量
- IR = 红外光的AC分量/DC分量
- A、B为经验系数(通常A≈110, B≈25)

正常值范围

SpO2值状态说明
95-100%🟢 正常健康人群正常范围
90-94%🟡 轻度缺氧需要关注,可能需要吸氧
<90%🔴 缺氧需要医疗干预
<80%🚨 严重缺氧紧急医疗情况

PPG信号质量评估

高质量信号特征

波形清晰规律

  /\    /\    /\    /\
/ \ / \ / \ / \
/ \/ \/ \/ \

收缩峰和重搏波可辨识
基线平稳,无大幅漂移
峰峰间期相对稳定
信号幅度适中(不过饱和、不太弱)

低质量信号特征

运动伪影

   /\  / \/  \
/ \/ \/ \ / \
/ \/ \/

基线漂移严重信号过饱和或过弱高频噪声干扰

信号质量指标(SQI)

# 信号质量评估维度
SQI = 综合评分(
波形完整度, # 0-1分
信噪比, # 0-1分
波形规律性, # 0-1分
幅度合适性 # 0-1分
)

# 质量等级
if SQI > 0.8: 优秀
elif SQI > 0.6: 良好
elif SQI > 0.4: 可接受
else: 不可用

常见干扰及解决方法

1. 运动伪影(Motion Artifact)

表现

  • 信号剧烈波动
  • 无法识别清晰的脉搏峰

原因

  • 身体移动
  • 传感器与皮肤相对运动
  • 外界振动

解决方法

硬件层面:
✅ 改善传感器佩戴方式(如手表表带松紧适度)
✅ 使用加速度计检测运动
✅ 多传感器冗余

软件层面:
✅ 自适应滤波(如卡尔曼滤波)
✅ 独立成分分析(ICA)分离运动分量
✅ 基于加速度信号的运动伪影消除
✅ 深度学习降噪模型

2. 接触不良

表现

  • 信号幅度过小或为零
  • 波形不稳定,断断续续

解决方法

  • 确保传感器紧贴皮肤
  • 清洁皮肤表面(去除汗液、油脂)
  • 调整佩戴位置

3. 环境光干扰

表现

  • 基线不稳定
  • 周期性噪声叠加

解决方法

  • 使用遮光外壳
  • 高频采样(>100Hz)后降采样
  • 自适应环境光消除算法

4. 温度影响

表现

  • 寒冷环境信号变弱(血管收缩)
  • 温度变化导致基线漂移

解决方法

  • 保持测量部位温暖
  • 基线校正算法
  • 等待几分钟让传感器和皮肤达到热平衡

5. 皮肤色素影响

表现

  • 深色皮肤信号幅度较小

解决方法

  • 增加LED功率(注意安全标准)
  • 使用更长波长(如红外光)
  • 自适应增益控制

采样参数说明

采样率选择

应用场景推荐采样率说明
基础心率监测25-50 Hz满足基本需求,功耗低
心率变异性分析100-250 Hz需要准确的峰值时间
血管健康评估125-500 Hz需要精细波形特征
科研应用500-1000 Hz高精度波形分析

重要:根据奈奎斯特定理,采样率应至少是信号最高频率的2倍。PPG信号主要频率<20Hz,但为了保留波形细节,通常采用100Hz以上。

信号幅度

  • 单位:任意单位(A.U.)或百分比
  • 典型范围:因设备而异,通常归一化到0-100%或0-1
  • 注意事项
    • 避免饱和(信号过强导致削波)
    • 避免过弱(信噪比太低)

ADC分辨率

  • 8位:256级,基础应用
  • 12位:4096级,常用于消费级设备
  • 16位:65536级,医疗级精度
  • 24位:16777216级,科研级精度

高级应用

1. 心率变异性(HRV)分析

HRV反映自主神经系统功能:

常用HRV指标

指标含义正常范围临床意义
SDNNPP间期标准差>50ms整体HRV水平
RMSSD连续PP差值均方根>30ms副交感神经活性
pNN50相差>50ms的比例>10%副交感神经活性
LF低频功率(0.04-0.15Hz)-交感+副交感
HF高频功率(0.15-0.4Hz)-副交感为主
LF/HF低高频比值1-3交感/副交感平衡

2. 血压估计

基于PPG的脉搏波传导时间(PTT)方法:

血压 ∝ 1 / PTT²

PTT = ECG的R波 到 PPG的收缩峰 的时间差

优势:无创、连续监测
局限:需要个体校准,精度有限

3. 动脉硬化评估

通过PPG波形特征评估血管弹性:

# 动脉硬化指标
硬化指数 = 身高 / PTT

# 增强指数(Augmentation Index)
AIx = (P2 - P1) / PP × 100%

其中:
- P1:收缩峰压力
- P2:反射波压力
- PP:脉压(收缩压-舒张压)

4. 呼吸率检测

PPG信号中包含呼吸信息:

方法1:基线变化
呼吸导致胸腔压力变化 → 静脉回流变化 → PPG基线波动

方法2:幅度调制
呼吸影响心输出量 → PPG波幅随呼吸周期变化

方法3:频率调制
呼吸性窦性心律不齐 → PP间期随呼吸变化

5. 情绪与压力评估

结合多个PPG指标评估心理状态:

测量部位选择

常用测量部位对比

部位优势劣势适用场景
指尖📶 信号强
✅ 准确度高
❌ 不便长时间佩戴
❌ 易受寒冷影响
医疗诊断、短时测量
手腕✅ 适合长期佩戴
💪 方便日常使用
📉 信号较弱
🏃 易受运动干扰
健康监测、运动追踪
耳垂📶 信号较强
🎧 不影响活动
❌ 佩戴不便
❌ 容易脱落
运动监测、特殊应用
前额✅ 血管丰富
🧠 接近大脑
❌ 社交接受度低
❌ 易受汗液影响
医疗监护、睡眠监测
胸部✅ 大血管
❤️ 接近心脏
❌ 需要专用设备
❌ 不便日常佩戴
专业监测、科研

测量姿势建议

静息测量

  • 🪑 坐姿或平躺
  • 💆 身体放松
  • 🤚 测量部位与心脏同高
  • ⏱️ 静息2-5分钟后测量

运动测量

  • 💪 确保传感器固定牢固
  • ⌚ 使用支持运动模式的设备
  • 📊 测量后查看信号质量指标

使用我们产品的建议

初级用户 - 快速入门

  1. 选择合适的设备

    推荐:反射式手腕PPG传感器
    - 佩戴方便
    - 适合日常监测
    - 支持心率和SpO2
  2. 正确佩戴

    • 📏 手环松紧适度(能放入一根手指)
    • 📍 佩戴在腕骨后2-3cm处
    • 🧼 保持皮肤清洁干燥
  3. 使用可视化工具

中级用户 - 数据分析

  1. 数据采集

    # 使用我们的SDK采集PPG数据
    from aiecg_sdk import PPGClient

    client = PPGClient(api_key='your_api_key')
    data = client.collect_ppg(duration=60, sampling_rate=100)
  2. 调用分析API

  3. 数据可视化

    • 📊 查看波形图表
    • 📉 分析长期趋势
    • 🎯 识别异常模式

高级用户 - 深度定制

  1. 算法集成

    - 🔧 接入完整API
    - 🎨 自定义数据处理流程
    - 🤖 训练个性化模型
  2. 多模态分析

    - ❤️ 结合ECG和PPG
    - 🏃 融合加速度数据
    - 🌡️ 整合环境参数
  3. 私有化部署

PPG vs ECG 对比

维度PPGECG
测量对象血液体积变化心脏电活动
传感器光电传感器电极
佩戴方式接触式,无需导电胶需要导电胶或干电极
便携性⭐⭐⭐⭐⭐ 极佳⭐⭐⭐ 一般
心率检测✅ 准确✅ 准确
心律失常检测⚠️ 有限✅ 准确
血氧测量✅ 支持❌ 不支持
HRV分析✅ 可以✅ 更准确
运动抗干扰⚠️ 较差✅ 较好
成本💰 低💰💰 中高
适用场景日常健康监测、可穿戴设备医疗诊断、专业监测

结论

  • 🏠 日常健康管理:PPG是首选(方便、经济)
  • 🏥 医疗诊断:ECG更准确(特别是心律失常)
  • 🔬 科研应用:建议同时使用ECG+PPG(互补优势)

重要提示

医疗免责声明
  • 📱 PPG设备主要用于健康监测和健身追踪
  • 🚫 不能替代专业医疗设备和诊断
  • 🩺 如发现异常读数,请咨询医生
  • 🚨 紧急情况请立即就医
测量建议
  • 📏 建立个人基线:在相同条件下多次测量
  • 🕒 固定时间测量:如每天早晨起床后
  • 📊 关注趋势:单次数据波动是正常的
  • 💾 保存历史数据:便于长期对比分析
数据解读
  • ✅ 正常的心率范围:60-100 BPM(静息)
  • ✅ 正常的SpO2:95-100%
  • ⚠️ 心率过高/过低:可能是运动、情绪、疾病等原因
  • ⚠️ SpO2 < 94%:建议医学评估

相关资源

参考文献

  1. Allen J. "Photoplethysmography and its application in clinical physiological measurement." Physiol Meas. 2007.
  2. Elgendi M. "On the Analysis of Fingertip Photoplethysmogram Signals." Curr Cardiol Rev. 2012.
  3. Castaneda D, et al. "A review on wearable photoplethysmography sensors and their potential future applications in health care." Int J Biosens Bioelectron. 2018.
  4. PhysioNet - PPG研究资源库