medical_SDK/SIMPLIFIED_PIPELINE_README.md

3.7 KiB
Raw Blame History

简化信号数据处理流程说明

功能概述

本系统提供了一个整合的 complete_signal_processing_pipeline() 函数,该函数按照您的逻辑要求,将整个信号数据处理流程整合为一个函数,避免了代码重复。

处理流程

完整流程步骤

  1. 数据读取: 读取原始二进制文件
  2. 数据解析: 解析设备数据包
  3. 通道映射 (MAPPER): 执行通道映射处理
  4. 信号预处理: 执行滤波等预处理操作
  5. 指标计算: 计算各项生理指标
  6. 结果保存: 生成多个CSV文件保存结果

使用方法

1. 运行程序

./your_program_name

2. 选择功能

程序启动后会显示以下选项:

请选择测试模式:
1. 测试新解析函数 (查看解析结果)
2. 运行原有测试流程
3. 运行完整信号数据处理流程 (推荐)
请输入选择 (1, 2 或 3):

选择选项 3 来运行完整的信号数据处理流程。

3. 自动执行

选择选项3后程序会自动执行以下步骤

=== 开始完整的信号数据处理流程 ===
步骤1: 读取原始数据...
步骤2: 解析设备数据包...
步骤3: 执行通道映射...
步骤4: 执行信号预处理...
步骤5: 计算生理指标...
步骤6: 生成指标汇总...
=== 完整信号数据处理流程完成 ===

输出文件

程序会自动生成以下4个CSV文件

  1. channel_data_mapped_.csv - 通道映射后的数据
  2. channel_data_processed_.csv - 预处理后的数据
  3. calculated_metrics_detailed.csv - 详细指标数据
  4. metrics_summary.csv - 指标汇总统计

技术特点

1. 代码整合

  • 将原本分散在多个函数中的逻辑整合为一个函数
  • 避免了重复的数据读取和解析代码
  • 统一的数据流处理

2. 错误处理

  • 每个步骤都有完善的错误处理
  • 如果某个步骤失败,会给出明确的错误信息
  • 支持继续处理其他数据对象

3. 进度显示

  • 实时显示每个步骤的执行进度
  • 显示数据对象处理的详细信息
  • 最终生成完整的处理报告

支持的指标类型

ECG相关指标

  • 心率 (Heart Rate)
  • T波振幅 (T Wave Amplitude)
  • QRS宽度 (QRS Width)
  • ST段偏移 (ST Offset)

PPG相关指标

  • 心率 (Heart Rate)
  • 血氧饱和度 (SpO2)
  • 灌注指数 (Perfusion Index)
  • 脉搏波宽度 (Pulse Width)

HRV指标

  • SDNN, RMSSD, pNN50, 三角指数

统计指标

  • 均值、标准差、最小值、最大值、峰峰值、信号质量评分

注意事项

  1. 文件路径: 确保原始数据文件路径正确
  2. 内存使用: 大量数据处理时注意内存使用情况
  3. 处理时间: 完整流程可能需要较长时间,请耐心等待
  4. 磁盘空间: 确保有足够的磁盘空间保存输出文件

优势

相比原有代码的优势

  1. 代码简化: 从多个重复函数整合为一个函数
  2. 流程清晰: 按照逻辑顺序执行,步骤明确
  3. 维护性: 修改流程只需要修改一个函数
  4. 可读性: 代码结构更清晰,易于理解

使用建议

  • 推荐使用选项3运行完整流程
  • 如果需要单独测试某个步骤可以使用选项1或2
  • 首次使用建议先运行完整流程了解整体效果

扩展功能

如需添加新的处理步骤或修改现有流程:

  1. complete_signal_processing_pipeline() 函数中添加新步骤
  2. 更新进度显示和错误处理
  3. 添加相应的输出文件生成逻辑

技术支持

如遇到问题,请检查:

  1. 原始数据文件是否存在且格式正确
  2. 系统内存是否充足
  3. 磁盘空间是否足够
  4. 相关依赖库是否正确安装