Token导航 LogoToken导航TokenDH.com
Fitfile Hr Artifact Corrector logo
数据服务stdio官方级别未说明来源级核验

Fitfile Hr Artifact Corrector

MCP Server

用于检测和校正FIT文件中光学心率伪影的离线机器学习工具包,提供CLI和MCP服务器集成。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
机器学习Python数据分析

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

cygnusb

提供方

cygnusb

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

fitfile hr伪影校正器

FIT心率伪影校正工具包,具有离线ML训练、CLI和MCP服务器,用于基于工具的集成。

这个项目做什么

  • 解析 .fit / .fit.gz 活动文件。
  • 检测可能的光学HR伪影。
  • 用模型预测替换工件点。
  • 导出更正审计数据(original_hr, corrected_hr, confidence, artifact_flag).
  • 提供MCP服务器,为代理工作流提供更正/导出工具。
  • 绘制校正前后的HR图(可选配功率叠加和校正区域突出显示)。

当前的管道针对循环FIT数据进行了优化。

当前模型方法

该项目使用 序列模型 支持两种训练模式:

  • 仅胸部基线:乘坐清洁胸带列车(hr-chest/)学习一般的人力资源动态。
  • 联合训练:将仅限胸部的游乐设施与以下配对旅游相结合 touren/,其中每个 touren// 包含一个 *_chest.fit.gz 还有一个 *_optical.fit.gz。在配对旅游中,该模型使用 光学特征作为输入 和匹配 胸部HR为目标.

常见模型行为:

  • 每个时间步的输入(16个特征): power, cadence, speed, altitude, grade滚动平均值(30s/60s/120s窗口)和时间导数(d_power, d_speed, d_altitude).
  • 具有动态感知损失的序列训练,以阻止不切实际的快速HR下降。
  • OneCycleLR 学习速率调度器,以实现更好的收敛。
  • 验证拆分 (15%) 早停 (耐心5)防止过度拟合。
  • MC退学 基于模型的置信度得分的不确定性估计。
  • 重叠窗口推理 在长途骑行中保持接近训练序列长度。
  • 自适应伪影检测器 从游乐设施自身的HR/功率分布中得出每次乘坐的阈值。
  • 推理结合了:

- 模型预测(重叠窗口) - 自适应伪影检测器 - 每次骑行校准 - MC放弃信心 - 用于残余向下尖峰的后置滤波器

存储库布局

  • src/hf_corrector/ 核心包
  • scripts/ 辅助脚本(训练、批量校正、绘图)
  • outputs/ 生成的报告和更正文件(忽略)
  • models/ 训练模型伪影(忽略)
  • hr-chest/, hr-optical/, touren/ 本地数据集(忽略)

安装

python -m venv .venv
source .venv/bin/activate
pip install -e .

1) 建立清洁胸部训练清单

为胸带骑行提供高质量的门控:

hf-corrector qa-chest \
  --chest-dir hr-chest \
  --out-report outputs/chest_qa_report.json \
  --out-manifest outputs/train_manifest_clean.json

2) 训练ML模型

选项A:仅胸部基线

推荐(苹果硅MPS)

./scripts/train_seq_mps.sh

稳定的预设(更强的平滑/动态约束):

./scripts/train_seq_mps.sh \
  models/model_seq_v1_mps_stable \
  stable \
  outputs/train_manifest_clean.json

人工训练指挥

PYTHONPATH=src python -m hf_corrector.cli train \
  --manifest outputs/train_manifest_clean.json \
  --out models/model_seq_v1_mps \
  --device mps \
  --seq-len 120 \
  --stride 10 \
  --epochs 12 \
  --batch-size 64 \
  --lr 0.001 \
  --lambda-dynamics 0.35 \
  --max-drop-bpm-per-step 1.2 \
  --max-windows 40000 \
  --patience 5 \
  --val-fraction 0.15

如果你通过 --device mps MPS不可用,培训故意失败。

选项B:联合训练 hr-chest/ 并配对 touren/

预期的配对旅游布局:

touren/
  tour1/
    476019853281493296_chest.fit.gz
    476019863744184622_optical.fit.gz
  tour2/
    ..._chest.fit.gz
    ..._optical.fit.gz

组合管道:

  • 从以下位置加载所有仅限胸部的FITs hr-chest/
  • 发现以下所有配对旅游 touren/
  • 在可配置的公差范围内,通过最近的时间戳对齐光学和胸部记录
  • 仅胸部组加成对训练 optical -> chest 群组
  • 将重复的配对组保持在验证分割的同一侧

推荐(苹果硅MPS):

./scripts/train_combined_mps.sh \
  hr-chest \
  touren \
  models/model_seq_combined_mps \
  stable

手动命令:

PYTHONPATH=src python -m hf_corrector.cli train-combined \
  --chest-dir hr-chest \
  --tours-dir touren \
  --out models/model_seq_combined_mps \
  --device mps \
  --seq-len 180 \
  --stride 8 \
  --epochs 16 \
  --batch-size 64 \
  --lr 0.0008 \
  --lambda-dynamics 0.55 \
  --max-drop-bpm-per-step 0.9 \
  --max-windows 50000 \
  --patience 5 \
  --val-fraction 0.15 \
  --pair-match-max-seconds 2.0 \
  --paired-weight 4 \
  --min-paired-points 900

联合训练写作 dataset_report.json 将配对统计数据和接受/拒绝的旅行记录放入模型目录中。

3) 更正FIT文件

hf-corrector correct \
  --fit activity.fit.gz \
  --model models/model_seq_v1_mps_stable \
  --mode balanced \
  --hr-bias 8 \
  --out outputs/run/correction.json

笔记:

  • --hr-bias 仅适用于替换的点。
  • --mode: safe | balanced | aggressive.

4) 导出校正结果

hf-corrector export \
  --fit activity.fit.gz \
  --correction outputs/run/correction.json \
  --out-dir outputs/run \
  --formats csv fit
  • audit.csv 总是生产出来的。
  • 由于中严格的解析器约束,FIT重写可能会在某些文件上失败 fit-tool;出口退货 fit_error 并继续。

5) 绘制人力资源前后图

完全活动+校正区域阴影:

PYTHONPATH=src python scripts/plot_hr_comparison.py \
  --correction-json outputs/run/correction.json \
  --fit activity.fit.gz \
  --out outputs/run/hr_power_full.png \
  --title "Full ride: corrected HR + power"

中间30分钟窗口:

PYTHONPATH=src python scripts/plot_hr_comparison.py \
  --correction-json outputs/run/correction.json \
  --fit activity.fit.gz \
  --window-minutes 30 \
  --window-center middle \
  --out outputs/run/hr_power_middle30.png \
  --title "Middle 30 min: corrected HR + power"

批量校正脚本

./scripts/batch_correct_optical.sh \
  models/model_seq_v1_mps_stable \
  hr-optical \
  outputs/optical_corrected_v2 \
  balanced

MCP服务器

PYTHONPATH=src python -m hf_corrector.mcp_server --model-dir models/model_seq_v1_mps_stable

已知限制

  • FIT重写(fit-tool)对于具有格式错误/边缘情况字段定义的特定供应商FIT变体,可能会失败。
  • 在这些情况下,使用 audit.csvcorrection.json 作为可靠的输出。

目录标签

目录标签

机器学习Python数据分析心率校正本地部署运动数据分析FIT文件处理离线工具

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP