2、PPG信号基础:光电容积脉搏波原理、PPG信号形态特征、心率与脉搏波的关系
智能手环的心率监测功能,绝大多数基于PPG(Photoplethysmography,光电容积脉搏波描记法)技术实现。要理解异常检测算法,首先必须透彻理解PPG信号本身——它从何而来、形态如何、与心率有何关联。本章从物理原理出发,逐步拆解PPG信号的产生机制、形态特征及其与心率的内在联系,为后续滤波和边缘判断打下理论基础。
2.1 光电容积脉搏波原理
光电容积脉搏波描记法(PPG)是一种光学检测技术,其核心物理基础是朗伯-比尔定律(Lambert-Beer Law):当一束光穿过生物组织时,光强会因组织的吸收和散射而衰减。人体组织中,皮肤、肌肉、骨骼等静态组织对光的吸收基本恒定,而血液中的血红蛋白浓度随心脏搏动呈周期性变化,导致光吸收量也呈现周期性波动。
智能手环通常采用以下两种光路设计之一:
- 透射式:LED与光电二极管相对放置,光穿透组织后被接收。适用于指尖、耳垂等较薄部位,信号质量好但功耗较高。
- 反射式:LED与光电二极管并排放置,光经组织反射后被接收。适用于手腕、额头等部位,是智能手环的主流方案。
在反射式设计中,光源通常选择绿光(520-560nm),因为绿光在血液中的吸收率远高于红光和红外光,对血容量变化更敏感。红光(660nm)和红外光(940nm)则常用于血氧饱和度(SpO₂)测量,因为氧合血红蛋白与脱氧血红蛋白在这两个波段的光吸收特性差异显著。
2.2 PPG信号形态特征
一个理想状态下的PPG波形(如图中绿色曲线所示)包含以下关键组成部分:
| 波形特征 | 生理含义 | 信号处理意义 |
|---|---|---|
| 基线(DC分量) | 静脉血、皮肤、骨骼等静态组织的吸收 | 需通过高通滤波去除,避免ADC饱和 |
| 主波(AC分量) | 动脉血容量随心脏搏动的变化 | 幅度通常为DC的1%-5%,需放大处理 |
| 上升支 | 心脏收缩期,血液快速射入动脉 | 斜率反映心肌收缩力,可用于脉搏波传导时间分析 |
| 下降支 | 心脏舒张期,血液回流 | 形态受血管弹性和外周阻力影响 |
| 重搏波(Dicrotic Notch) | 主动脉瓣关闭,血液短暂回流 | 其位置和深度反映血管弹性;老年或动脉硬化者此波减弱或消失 |
在实际手环佩戴场景中,PPG信号会受到多种干扰:
- 运动伪影:手腕摆动导致传感器与皮肤间相对位移,产生大幅低频干扰,频率范围通常在0.5-5Hz,与心率频段重叠严重。
- 接触压力变化:佩戴过紧或过松都会影响静脉回流和动脉灌注,导致波形幅度和形态改变。
- 环境光干扰:太阳光中的红外成分可能被光电二极管接收,叠加在信号上。
- 皮肤色素沉着:深色皮肤对光的吸收更强,导致信噪比下降。
2.3 心率与脉搏波的关系
心率(Heart Rate, HR)是指心脏每分钟搏动的次数,单位为bpm(beats per minute)。在健康人群中,心率与脉搏率(Pulse Rate)在数值上相等,因为每次心脏收缩都会产生一次可检测的脉搏波。但在某些病理状态下,两者可能不一致:
- 脉搏短绌:如心房颤动时,部分心脏搏动过于微弱,无法在远端产生可检测的脉搏波,导致脉搏率低于心率。
- 期前收缩(早搏):提前出现的搏动可能幅度较小,若检测算法阈值设置不当,可能漏检。
从PPG信号计算心率的基本流程如下:
- 预处理:带通滤波(通常0.5-5Hz)去除基线漂移和高频噪声。
- 波峰检测:通过阈值法、自适应阈值或机器学习方法识别每个心动周期的主波峰。
- RR间期计算:计算相邻波峰之间的时间间隔(单位:秒)。
- 心率换算:HR = 60 / RR间期。例如,RR间期为0.857秒时,HR = 60 / 0.857 ≈ 70 bpm。
- 平滑处理:通常取最近5-10秒的RR间期平均值,或使用滑动窗口加权平均,避免单次测量误差。
2.4 案例拆解:从原始PPG到心率数值的完整链路
为帮助理解上述概念,我们以一个典型的智能手环心率测量场景为例,展示从原始光信号到心率数值的完整处理链路。
场景背景:某手环采用反射式绿光PPG方案,采样率50Hz,ADC分辨率为16位。用户在静坐状态下测量心率,但存在轻微的手部抖动。
初始现象:原始ADC读数在30000-45000之间波动(基线约37500),AC分量幅度约500-1500 LSB。从时域波形看,主波清晰但叠加了约0.8Hz的低频抖动干扰。
关键参数:
采样率: 50 Hz
ADC范围: 0-65535 (16位)
DC基线: ~37500 LSB
AC幅度: ~500-1500 LSB
噪声频率: ~0.8 Hz (手部抖动)
目标心率: 未知,需计算
分析判断过程:
- 首先观察原始波形,发现基线漂移明显,且存在周期性低频波动。通过快速傅里叶变换(FFT)频谱分析,确认0.8Hz处有显著能量峰,而心率频段(1-2Hz)也有能量分布。
- 设计带通滤波器:高通截止频率0.5Hz(去除基线漂移和大部分运动伪影),低通截止频率5Hz(去除高频噪声)。采用二阶巴特沃斯滤波器,级联实现。
- 滤波后信号AC分量清晰,主波幅度约800 LSB,噪声明显抑制。
- 采用自适应阈值法检测波峰:初始阈值为信号最大值的60%,每检测到一个波峰后,阈值更新为最近5个波峰幅度的50%。同时设置最小间隔300ms(对应200bpm上限)。
- 连续检测到10个波峰,计算RR间期序列:0.82s, 0.85s, 0.79s, 0.86s, 0.83s, 0.84s, 0.81s, 0.85s, 0.82s, 0.84s。
- 取中位数0.835s,计算心率:HR = 60 / 0.835 ≈ 71.9 bpm。
结果对比:与参考心电设备(72 bpm)对比,误差约0.1 bpm,满足消费级手环±5bpm的精度要求。
风险与代价:若未进行带通滤波,0.8Hz的抖动干扰会被误判为心率(0.8Hz对应48bpm),导致严重错误。滤波器的引入会带来约0.2s的群延迟,在实时监测中需注意延迟补偿。
复盘经验:PPG信号处理中,滤波器的设计直接决定了心率计算的准确性。在运动场景下,运动伪影频率可能与心率重叠,单纯依靠频域滤波无法完全分离,需要引入加速度计信号进行自适应噪声消除(ANC),这将在后续章节详细讨论。
2.5 常见误区与总结
本章总结:PPG信号是智能手环心率监测的物理基础,理解其光学原理、波形特征和与心率的关系,是设计异常检测算法的前提。核心要点包括:
- PPG基于光吸收随血容量变化的原理,反射式绿光方案是手环主流选择。
- 波形由DC基线和AC分量组成,AC分量包含主波、重搏波等特征,反映心血管状态。
- 心率计算依赖准确的波峰检测和RR间期测量,滤波和阈值策略是准确性的关键。
- 运动伪影是最大的干扰源,后续章节将深入探讨滤波算法和边缘判断策略。