运动手表和手机 App 在隧道、高楼、树荫、操场看台等地方经常丢星,一段轨迹就此断开,导出的文件里表现为相邻两个记录点之间突然隔了几十秒、几百米。52Run 的跑步轨迹修复工具就是处理这件事:把文件读进来、把断口找出来、把缺失路段补上,重算距离与配速,再导出成能重新导入 App 的标准文件。
常见来源有三类:一是佳明 Garmin、高驰、颂拓等手表在信号弱区自动降采样,记录点从每秒一个变成十几秒一个;二是手机 App 在后台被系统限制,采集中断后恢复;三是文件本身在传输、转换、编辑过程中丢失了中间的记录点。前两类是设备行为,第三类是文件损坏,工具都会按同一套逻辑处理。
三种格式都能解析,也都支持导出。保真度排序是 FIT > TCX > GPX:FIT 是佳明自有的二进制格式,字段最全,带心率、步频、海拔、设备信息,导出时会重新编码并写入正确的 CRC 校验与 semicircle 坐标;TCX 是 XML 结构,兼容性最好,几乎被所有平台接受;GPX 结构最简单,但天生不含设备信息与心率以外的扩展字段,适合当交换格式用。
只看「时间差大于 5 秒」是不够的 —— 很多设备本来就是十几秒才记一个点,这样会把正常文件全部标红。本工具先统计本次文件采样间隔的中位数,得到一个基准,再结合配速窗口(3 分 30 秒至 9 分每公里)与时速上限(默认 25 km/h)分类:配速正常且不超过中位间隔 4 倍的,判为设备采样稀疏,灰条忽略;配速正常但间隔明显过长的,才是真的丢了一段,标红需要修复;折合时速超上限的判为可疑跳点,原地不动的判为信号丢失。阈值会跟着文件自动调整,也可以手动改。
运动文件里的经纬度是 WGS-84 国际坐标系,而国内地图(腾讯、高德、百度)使用的是加密后的 GCJ-02,两者在重庆一带相差数百米。如果直接把 WGS-84 的坐标点画到国内地图上,整条轨迹会整体偏移、还会贴错路。本工具的做法是:内存里只保存原始 WGS-84 坐标,只在绘制到地图的那一刻转换成 GCJ-02,导出时再转回 WGS-84,保证地图上不错位、导入 App 也不偏移。境外坐标不做加密转换,会自动按原始坐标显示。
| 数据 | 处理方式 |
|---|---|
| 原始记录点(时间、经纬度) | 保留,补的那部分按配速分摊时间戳 |
| 心率、海拔、步频 | 保留原值;缺失的用前后值线性插值补齐并标注估算 |
| 每段距离、累计距离 | 全部重算(补点后必变) |
| 分段配速、平均速度 | 全部重算 |
| lap / session 汇总值 | 重算总距离、总计时、平均速度等,否则平台会判为无效活动 |
| 设备信息、运动类型 | 重新编码时照样写回,导出固定为跑步 |
断口两端之间要怎么连,有三种选择:直线插值最快,按固定时间间隔在两点之间线性铺点,适合短断口;路线规划补点会把断口起点终点送去算真实路网,补出来的点贴合道路,适合长距离丢失;手动拖拽由你在地图上自己加锚点、拖位置,适合越野、操场绕圈这类机器猜不准的路线。三种方式产出的是同一份路径点串,最后统一按原配速把时间铺上去。
导出的 FIT / TCX / GPX 都是标准格式,Keep、咕咚、Garmin Connect、Strava、悦跑圈、华为运动健康等平台都能导入。需要说明的是:导入后记录会正常出现在历史列表、详情页与打卡页,但轨迹的形状、距离、配速完全取决于文件内容,所以导出前一定要在地图上确认一遍断口补得对不对。
本工具只处理户外跑步。室内跑、跑步机、泳池游泳这类记录文件里根本没有 GPS 坐标,无法也不必修复,遇到这类文件工具会直接提示。骑行、徒步等运动虽然也有轨迹,但配速与心率规律不同,不在本工具范围内。
所有解析、检测、补点、重算、导出都在你的浏览器里完成,运动文件不会上传到任何服务器,关闭页面后数据即从内存释放。唯一需要联网的功能是「腾讯地图」Tab(加载地图底图)与后续的路线规划补点,这两项只发送断口起终点的坐标,不发送你的完整文件与个人信息。