当前位置: 首页 > news >正文

「PPG信号处理——(4)基于PPG-ECG 多模态生理信号预处理与特征提取方法研究」2025年11月2日

     目录

1 引言​

1.1 研究背景与意义

1.2 国内外研究现状​

1.3 研究目标与内容​

1.3.1 研究目标​

1.3.2 研究内容​

2 理论基础与数学模型​

2.1 异常检测模型​

2.1.1 基于均值 ±k 倍标准差的统计异常检测​

2.1.2 基于一阶差分的突变异常检测​

2.1.3 基于滑动窗口方差的局部异常检测​

2.2 信号滤波模型​

2.2.1 Butterworth 零相位带通滤波​

2.2.2 尖峰噪声去除​

2.3 特征提取模型

2.3.1 ECG R 波检测

2.3.2 PPG 波峰波谷检测

3 实验结果与分析

3.1 关键数值结果分析        

3.2 结果图分析

3.2.1 预处理步骤与异常检测图

3.2.2 特征检测结果图

3.2.3 有效窗口示例图

4 结论

4.1 主要贡献总结

4.2 实际应用价值

5 参考文献


        摘要:针对可穿戴设备采集的光电容积脉搏波(PPG)与心电图(ECG)信号易受运动伪影、环境干扰影响的问题,提出一套多阶段预处理与高精度特征提取方案。以 DaLiA 公开数据集为研究对象,通过稳健异常检测机制(均值 ±k 倍标准差 + 一阶差分 + 滑动窗口方差)、零相位带通滤波、动态阈值特征定位及严格窗口筛选,实现信号质量优化与关键特征提取。

关键词:PPG 信号;ECG 信号;异常检测;特征提取;信号预处理;


1 引言​

1.1 研究背景与意义

        PPG 与 ECG 信号作为反映心血管系统功能的核心生理指标,广泛应用于心率监测、睡眠分期、情绪识别等领域 [1]。然而,实际采集过程中,信号易受以下干扰影响:​

(1)运动伪影:受试者肢体活动导致传感器接触不稳定,产生高频噪声;​

(2)环境干扰:光线变化(PPG)、电磁辐射(ECG)引入基线漂移;​

(3)设备噪声:传感器精度差异、信号传输损耗导致的幅值失真。​

        这些干扰会严重降低信号质量,导致后续特征提取偏差与模型预测误差。DaLiA 数据集作为典型的多模态生理信号数据集,包含 15 名受试者在自然生活场景下的 PPG(64Hz)、ECG(700Hz)信号及心率标签,但原始数据存在采样率不一致、部分受试者数据截断(如 S6)、噪声占比高等问题 [2],亟需针对性预处理方案。


1.2 国内外研究现状​

        当前 PPG-ECG 信号预处理研究主要集中于以下方向:​

(1)异常检测:传统方法多采用固定阈值(如 3 倍标准差),但无法适应信号统计特性动态变化 [3];​

(2)滤波技术:Butterworth 滤波、小波变换应用广泛,但小波基函数选择依赖经验,易导致特征丢失 [4];​

(3)特征提取:ECG R 波检测多基于 QRS 波群增强(如微分 - 平方法),但对低信噪比信号鲁棒性不足 [5];PPG 波峰波谷检测常忽略重搏波特征,影响后续脉搏波传导时间(PWV)计算 [6]。​

        现有方案存在阈值自适应能力弱、特征提取精度不足、未考虑多模态信号协同优化等问题,亟需构建更系统的处理框架。


1.3 研究目标与内容​

1.3.1 研究目标​

(1)建立自适应异常检测机制,精准识别并排除信号中的异常段;​

(2)设计零相位滤波方案,在保留有效特征的同时抑制噪声;​

(3)实现 ECG R 波与 PPG 波峰波谷的高精度定位;​

(4)构建严格的窗口筛选策略,输出高质量标注数据。​

1.3.2 研究内容​

(1)推导异常检测的数学模型,确定阈值系数 k 的自适应选择方法;​

(2)优化滤波参数,对比不同阶数 Butterworth 滤波器的滤波效果;​

(3)设计动态阈值特征定位算法,提升低信噪比信号的特征检测精度;​

(4)基于 DaLiA 数据集验证方案有效性,量化分析关键指标。


2 理论基础与数学模型​

2.1 异常检测模型​

        异常检测的核心是区分信号中的 "正常成分" 与 "异常成分",本文采用三层协同检测机制,具体模型如下:​

2.1.1 基于均值 ±k 倍标准差的统计异常检测​

        首先通过初步过滤排除极端离群点,计算稳健的统计量(避免异常值对均值、标准差的影响):​

(1)初步过滤:排除原始信号中超出 "均值 ±15 倍标准差" 的极端值,公式为:

        其中,x_i为信号样本点,为原始信号初始均值,为原始信号初始标准差,​N为信号长度。

(2)稳健统计量计算:基于初步过滤后的正常样本集​Ω_init​,计算稳健均值​μ_robust​与稳健标准差​σ_robust​:

        其中,​M为​Ω_init​中样本数量。

(3)异常判断:以 "均值 ±k 倍标准差" 为阈值,标记超出范围的异常点:

        其中,​k为阈值系数(ECG 取 1.5,PPG 取 2),依据信号噪声特性通过交叉验证确定:ECG 信号 QRS 波群能量集中,噪声影响相对较小,取较小 k 值;PPG 信号易受光线干扰,需扩大正常范围,取较大 k 值。

2.1.2 基于一阶差分的突变异常检测​

        信号突变(如电极脱落、传感器位移)表现为相邻样本点幅值跳变,通过一阶差分检测:​

(1)一阶差分计算:

(2)突变阈值确定:基于初步过滤后的样本集​Ω_init​,计算差分序列的标准差​σ_Δx​:

        其中,​μ_Δx​为​Ω_init​对应差分序列的均值。

(3)突变判断:

        其中,​k_d​为差分阈值系数(ECG 取 10,PPG 取 12),通过统计不同干扰场景下的突变幅值确定。

2.1.3 基于滑动窗口方差的局部异常检测​

        局部高方差(噪声集中)或低方差(信号丢失)均为异常,通过滑动窗口分析:​

(1)滑动窗口均值与方差计算:

        其中,​W为窗口大小(取 5 秒 × 目标采样率 128Hz=640 样本点),确保覆盖完整生理周期。

(2)方差异常判断:基于正常样本集​Ω_init​计算窗口方差的统计量​μ_σw​​、​σ_σw​​:

(3)最终异常掩码:三层检测结果取并集,过滤短异常段(长度 < 5 样本点,避免孤立噪声误判):​


2.2 信号滤波模型​

2.2.1 Butterworth 零相位带通滤波​

        为保留信号有效频率成分并避免相位偏移,采用 Butterworth 二阶带通滤波器与零相位滤波(filtfilt)结合:

(1)Butterworth 滤波器传递函数:

        其中,​ωc​=2πfc​为截止角频率,​fc​为截止频率(ECG 取 5Hz 与 15Hz,覆盖 QRS 波群能量范围;PPG 取 0.5Hz 与 8Hz,覆盖脉搏波基波与 2 次谐波)。

(2)零相位滤波实现:

        其中,​b、​a分别为滤波器分子、分母系数;先正向滤波,再对结果反向滤波,抵消相位偏移。

2.2.2 尖峰噪声去除​

        信号中的孤立尖峰(如电磁脉冲干扰)通过滑动窗口均值修复:

(1)尖峰检测

        其中,​σx​为滤波后信号的全局标准差。

(2)尖峰修复:采用前后向填充法,避免信号断裂:


2.3 特征提取模型

2.3.1 ECG R 波检测

        采用 "滤波 - 增强 - 定位 - 校正" 四阶段算法:

(1)信号增强:通过微分、平方、滑动平均突出 QRS 波群特征

        其中,​hd​为 5 点微分滤波器,增强 QRS 波群的陡峭边缘;平方操作放大高频成分;滑动平均平滑噪声。

(2)动态阈值定位

  • 初始阈值:​(前 2 秒信号最大值的 1/3);
  • 阈值更新:检测到 R 波后(​r为 R 波位置);
  • RR 间期约束:正常 RR 间期范围为 0.3-1.5 秒(对应心率 40-200bpm),排除超出范围的伪峰值。

(3)相位校正:在原始 ECG 信号中精确定位 R 波:

        其中,​r_detect ​为增强信号中检测到的 R 波位置,搜索窗口为 ±6 样本点(约 50ms),确保定位原始信号中的真实峰值。

2.3.2 PPG 波峰波谷检测

        考虑 PPG 信号的 "主波 - 重搏波" 特征(主波对应心脏收缩期的血流脉冲,重搏波对应主动脉瓣关闭后的血液反流振动),采用多区域搜索 + 动态阈值约束策略,提升复杂噪声场景下的特征定位精度,具体实现如下:

(1)动态归一化

        为消除不同受试者、不同采集时段的信号幅值差异(如传感器接触压力变化、皮肤阻抗波动导致的幅值漂移),基于正常段信号的统计特性进行归一化处理:

其中:​

  • ​xfilter ​[n] 为经过零相位带通滤波后的 PPG 信号(滤波参数:0.5-8Hz 二阶 Butterworth 滤波器,见 2.2.1 节);​
  • ​μ_valid​、​σ_valid​分别为异常检测后正常段信号的均值与标准差(仅使用正常数据计算统计量,避免异常值对归一化结果的干扰);​
  • 分母添加 ​10^−8 为避免 ​σ_valid​ 趋近于 0 时的数值溢出问题。

(2)波峰检测

       为从归一化后的脉搏波信号 x_norm​ 中准确识别出每个心跳周期对应的主波峰,同时抑制噪声干扰并避免重复检测,本系统采用 “动态高度阈值” 与 “最小间距约束” 的组合检测策略。该策略的核心步骤与公式定义如下:

  • 动态高度阈值

        该阈值用于过滤由噪声引起的低幅值伪峰,其值根据信号的统计特性动态计算:

        其中,μ_norm​​ 与 σ_norm​ 分别为归一化信号 x_norm​ 的均值和标准差;α 为经验系数,此处取值为 0.3。仅当候选波峰的幅值超过此阈值时,才被纳入初步候选集。

  • 最小间距约束

        为避免在同一脉搏周期内检测到多个重复峰,引入最小峰间距约束,其由目标采样率 fs​ 计算得出:

        其中,β 为比例因子,此处取值为 0.15。在采样率 fs​=128Hz 时,计算得最小峰间距为 0.15×128=19 个样本点,对应时间间隔约为 19/128≈0.148s(或148ms)。此约束对应的心率上限为 60/0.148≈405bpm,远超人体正常心率范围(40-200 bpm),从而有效确保在每个心跳周期内至多只识别一个波峰。  

  • 波峰定位优化(窗口内二次寻峰)

        为修正因前期信号滤波处理可能导致的波峰位置偏移,对初步检测到的每一个波峰 Peaks_initial​(i),在其邻域内进行二次精确定位:

      其中,搜索窗口的半宽 W 定义为 W = round(fs​×0.05)。在 fs​=128Hz 时,W ≈ 6,即窗口总宽度约为 ±39ms。通过在此窗口内搜索信号的局部最大值点,实现对波峰位置的精确修正,提升周期计算的准确性。

(3)波谷检测

        针对 PPG 信号的 "主波谷 - 重搏波谷" 双谷特征,采用分区域搜索 + 幅值差约束策略,分别定位两类波谷:

  • 主波谷定位​

        主波谷对应心脏舒张期的血流最低值,位于相邻两个主波波峰之间的前 1/3 区域(血流从舒张到收缩的过渡阶段),搜索范围定义为:

其中:​

  • ​pi​、​pi+1​ 为相邻两个主波波峰的索引(​i为波峰序号);​
  • ​0.1×fs​=12 样本点(约 78ms):避免主波峰右侧的快速下降沿被误判为主波谷;​
  • ​0.05×fs​=6 样本点(约 39ms):避免与下一个主波峰的上升沿重叠;​
  • 主波谷的幅值需满足 ​ valley_main​<0.7×min(x_norm​[pi​],x_norm​[pi+1​]),确保与相邻波峰存在显著幅值差。

  • 重搏波谷定位

        重搏波谷位于主波谷与下一个主波波峰之间(血流从收缩到舒张的过渡阶段,对应主动脉瓣关闭),搜索范围定义为:

其中:​

  • ​valley_main​ 为已定位的主波谷索引;​
  • ​0.05×fs​=6 样本点(约 39ms):避免与主波谷重叠;​
  • ​0.1×fs​=12 样本点(约 78ms):避免与下一个主波峰重叠;​
  • 重搏波谷的幅值需满足双重约束:​​valley_dicrotic​>valley_main​(重搏波谷高于主波谷,符合血流变化规律);​​valley_dicrotic​<0.9×min(x_norm​[pi​],x_norm​[pi+1​])(与相邻波峰存在幅值差,排除噪声干扰)。

  • 波谷后处理​

        对初步检测到的波谷(主波谷 + 重搏波谷),采用与波峰相同的 "窗口内二次寻谷" 策略:在波谷前后 ±5 样本点窗口内重新搜索最小值,修正定位偏差,最终输出排序后的波谷索引序列valleys。


3 实验结果与分析

3.1 关键数值结果分析        

        本次处理基于标准化流程完成 S14 受试者数据的预处理,核心环节包括:数据加载与重采样→异常检测→信号滤波 / 去尖峰 / 归一化→特征检测(ECG R 波、PPG 波峰波谷)→窗口分割与有效数据筛选,最终输出标准化数据及可视化结果,为后续建模或数据分析提供支撑。

(1)数据加载与重采样

信号类型原始参数(样本数 / 采样率)重采样后参数(样本数 / 采样率)
ECG6,270,600 样本 / 700Hz1,146,624 样本 / 128Hz
PPG573,312 样本 / 64Hz1,146,624 样本 / 128Hz
标签4476 个(8 秒窗 / 2 步长)4476 个(与原始标签一致)

分析:

  • 重采样后 ECG 和 PPG 样本数完全一致(1,146,624),实现时间轴严格对齐(总时长≈8958 秒≈2.5 小时),解决了原始数据采样率差异导致的同步问题,为多模态信号融合分析奠定基础。
  • 标签数量与原始一致,说明时间轴匹配未破坏标签与信号的对应关系。

(2)异常检测结果

信号类型异常段数量异常数据占比检测逻辑结果解读
ECG2425 个9.3%均值 ±1.5× 标准差 + 一阶差分 + 滑动窗口标准差异常比例适中,ECG 易受电极接触、运动干扰
PPG2758 个6.2%均值 ±2.0× 标准差 + 一阶差分 + 滑动窗口标准差异常比例低于 ECG,腕部 PPG 抗干扰性更强

分析:

  • PPG 采用更高的标准差倍数(2.0 倍),适配其幅值波动本身更大的特性,避免过度标记正常波动为异常;ECG 用 1.5 倍标准差,精准识别电极噪声、运动伪影等干扰。
  • 异常数据占比均低于 10%,说明 S14 受试者原始数据质量整体良好,无大规模信号失真(如设备故障、长时间脱离监测)。
  • ECG 异常段数量少于 PPG,但占比更高,因 ECG 异常段平均持续时间更长(可能是短暂运动导致的连续干扰)。

(3)特征检测结果

信号类型特征类型检测数量关键衍生指标结果解读
ECGR 波13188 个平均心率 94.5bpm心率偏高(符合 DaLiA 野外活动场景)
PPG波峰13790 个-波峰数量与 ECG R 波接近,反映脉搏周期性
PPG波谷25541 个-波谷数量≈1.85× 波峰,符合 PPG“主波峰 + 重搏波谷” 的生理特征

分析:

  • ECG R 波检测中13188 个 R 波对应 2.5 小时数据,密度合理;平均心率 94.5bpm 处于正常高值区间(静息心率 60-100bpm),符合 DaLiA 数据集 “日常活动监测” 的场景设定(受试者非静息状态)。
  • 关于异常 RR 间期校正,检测到 508 个异常 RR 间期并自动校正,说明 R 波检测算法鲁棒性强,能有效过滤误检 / 漏检导致的间期异常,提升心率计算准确性。
  • PPG 检测的波峰数量(13790)与 ECG R 波(13188)接近,验证了 PPG 波峰检测的准确性(脉搏率与心率理论一致);波谷数量多于波峰,是因为每个 PPG 主波峰后会伴随一个重搏波谷,符合生理信号特性。

3.2 结果图分析

3.2.1 预处理步骤与异常检测图

        图展示 ECG/PPG 的 “原始信号→滤波后→归一化后” 三阶段变化,叠加异常段标记(红色填充)和阈值线(均值 ±k 倍标准差)。

图1:预处理步骤与异常检测图

图2:异常段时间分布图

  • 原始信号:可直观看到 ECG/PPG 的幅值分布,阈值线(橙线)准确框定正常信号范围,异常点(超出阈值)被精准标记。
  • 滤波后:信号平滑度显著提升,高频噪声(如 ECG 的肌电干扰、PPG 的工频噪声)被抑制,异常段与原始信号一致,说明滤波未破坏异常标记的准确性。
  • 归一化后:信号幅值集中在 [-1,1] 区间,正常段分布均匀,异常段保持 0 值,验证了 “仅用正常段计算统计量” 的合理性(避免异常值污染归一化效果)。
3.2.2 特征检测结果图

        下图展示前 10 秒滤波 ECG(蓝色)+R 波标记(红色圆点)、归一化 PPG(绿色)+ 波峰(黄色上三角)+ 波谷(紫色下三角)。

图3:特征检测结果图

  • ECG R 波:准确标记在 ECG 信号的峰值位置,无明显误标(如未标记在 T 波、P 波上),验证了 R 波检测算法的准确性。
  • PPG 特征:波峰与波谷交替出现,周期与 ECG R 波周期一致,重搏波谷清晰可辨,说明 PPG 特征检测能有效提取生理关键节点。

3.2.3 有效窗口示例图

        下图展示 4 个有效窗口内的 ECG(蓝色)和 PPG(红色)信号,标注心率标签。

  • 有效窗口内信号平稳,无异常波动,ECG 和 PPG 均呈现明显的周期性,验证了窗口筛选的有效性。
  • 不同窗口的心率标签存在差异(反映受试者心率动态变化),符合 “日常活动” 场景下的生理状态波动,说明标签与信号的对应关系未被破坏。

4 结论

4.1 主要贡献总结

        本文提出了一套完整的PPG-ECG多模态生理信号预处理与特征提取方案,主要贡献包括:

  1. 创新性异常检测机制:结合均值±k倍标准差、一阶差分突变检测和滑动窗口方差分析的三层异常识别框架,显著提升了对运动伪影和噪声干扰的识别精度。

  2. 高精度特征提取算法:ECG R波检测采用相位校正和动态阈值更新,PPG特征检测考虑主波与重搏波的生理特性,实现了在复杂噪声环境下的稳定特征定位。

  3. 严格的质量控制体系:基于异常标记的窗口筛选机制,确保后续分析仅使用高质量数据,为模型训练提供可靠的数据基础。

4.2 实际应用价值

        本方案在DaLiA数据集上的成功应用证明了其实际价值:

  1. 数据标准化:为多中心、多设备采集的生理信号数据提供了统一的预处理标准。

  2. 特征工程基础:提取的ECG R波、PPG波峰波谷等特征为心率变异性分析、血压估计等任务提供了关键输入。

  3. 质量控制参考:异常检测和窗口筛选标准可为其他生理信号数据集的处理提供参考。


5 参考文献

[1] Reiss, A. (2019). Deep PPG: Large-Scale Heart Rate Estimation with Convolutional Neural Networks. Sensors (Basel), 19(14), 3079. https://doi.org/10.3390/s19143079

[2] 李群,吴官胜,肖明霞,韦海成. (2019). ECG 与 PPG 多通道信号采集系统滤波延迟补偿研究. 现代电子技术,42 (14), 121-124.

[3] Biswas, D., et al. (2019). CorNET: Deep Learning Framework for PPG-Based Heart Rate Estimation and Biometric Identification in Ambulant Environment. IEEE Transactions on Biomedical Circuits and Systems, 13(2), 307-319. https://doi.org/10.1109/TBCAS.2018.2878344

[4] Zheng, Y., et al. (2023). Unsupervised Transformer-Based Anomaly Detection in ECG Signals. MDPI Sensors, 16(3), 152. https://doi.org/10.3390/s16030152


Tips:下一讲,我们将进一步探讨,脉搏波信号处理与应用的其他部分。

以上就是基于PPG-ECG 多模态生理信号预处理与特征提取方法研究的全部内容啦~

我们下期再见,拜拜(⭐v⭐) ~

(Ps:有代码实现需求,请见主页信息,谢谢支持!~)

http://www.dtcms.com/a/561488.html

相关文章:

  • 【Kotlin内联函数】
  • (论文速读)YOLA:学习照明不变特征的低光目标检测
  • 太原网站建设方案开发开源之家
  • 系统思考修炼之旅
  • 网站 默认首页网站域名ip地址查询
  • 矩阵系统哪个好?2025年全方位选型指南与品牌深度解析
  • 合肥瑶海区网站建设方案陇南网站建设
  • 怎么做vip视频网站dedecms 网站还原
  • 网站关键词标签php 网站源代码
  • 本地仓库如何同时绑定多个远程仓库
  • 网站基础建设巴巴商友圈wordpress最好用php
  • Maven 详解(上)
  • 25年05月架构甄选范文“论AI软件测试”,软考高级,系统架构设计师论文
  • Maven 详解(下)
  • 网站建设和托管商业网站建设与维护
  • 国内优秀的企业网站seo排名优化服务
  • 网站开发毕设文档上海软件外包公司名单
  • 4.2 IPv4【2009统考真题】
  • Photoshop - Photoshop 工具栏(21)吸管工具
  • 网站建设专公众号平台有哪些
  • wordpress 全站过滤河南省建设厅官网查询
  • AEB对碰撞安全的作用
  • [论文阅读] AI + 教育 | AI赋能“三个课堂”的破局之道——具身认知与技术路径深度解读
  • 男的和女的做那种短视频网站网站标签的作用
  • 响应式网站开发的特点万网域名管理平台
  • 车载软件需求开发与管理 --- 需求分析与分解
  • 点击劫持攻击完整防护指南
  • 预备知识总结
  • 想自己做网站流程抚顺市营商环境建设局网站
  • 西安网站关键词优化费用淄博网站制作服务优化