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

轨迹误差评估完整流程总结(使用 evo 工具)

roslaunch .launch
rosbag play your_dataset.bag -r 2.0

✅ 第二步:录制估计轨迹

 

bash

复制编辑

rosbag record -O traj_only.bag /aft_mapped_to_init 

运行一段时间后 Ctrl+C 停止,生成 traj_only.bag

第三步:提取估计轨迹和真值轨迹为 CSV

 

bash

复制编辑

rostopic echo -b traj_only.bag -p /aft_mapped_to_init > traj.txt rostopic echo -b your_dataset.bag -p /leica/pose/relative > gt_raw.txt

✅ 第四步:转换为 TUM 格式(8列,空格分隔)

python3 convert_traj_raw_to_tum.py traj.txt traj_tum.txt

python3 convert_gt_raw_to_tum.py gt_raw.txt gt_tum.txt

✅ 第五步:对齐估计轨迹的时间戳(手动)

head -n 1 gt_tum.txt
head -n 1 traj_tum.txt

offset = 1746711524.090586901 - 1609059060.110306978 ≈ 137652463.98028

python3 align_traj_time.py traj_tum.txt traj_tum_aligned.txt 137652463.98028

第六步:使用 evo 评估误差(最终步骤)

 

bash

复制编辑

python3 -m evo.main_ape tum gt_tum.txt traj_tum_aligned.txt --align --plot

相关文章:

  • 人工智能-状态空间-猴子摘香蕉
  • 【蓝桥杯省赛真题50】python字母比较 第十五届蓝桥杯青少组Python编程省赛真题解析
  • 【Qt】PyQt5 为什么Qt中的字体显示会模糊或呈现像素化
  • 排序01:多目标模型
  • Redisson 四大核心机制实现原理详解
  • 多模块,依赖android.car.jar后,能调用接口但是没有回调的问题
  • 关于Redisson分布式锁的用法
  • 计算机网络 : Socket编程
  • Java(基础) day01 初识Java
  • window 显示驱动开发-分页视频内存资源
  • 从 Vue3 回望 Vue2:生命周期的清晰化——从混乱钩子到明确时机
  • 分布式锁: Redis和ZooKeeper两种分布式锁对比
  • 操作系统之进程和线程听课笔记
  • IOP出版|第二届人工智能、光电子学与光学技术国际研讨会(AIOT2025)
  • 深入解析ZAB协议:ZooKeeper的分布式一致性核心
  • 济南超算研究所面试问题
  • Elasticsearch 索引副本数
  • Git基础使用方法与命令总结
  • Python线性回归:从理论到实践的完整指南
  • 【时空图神经网络 交通】相关模型2:STSGCN | 时空同步图卷积网络 | 空间相关性,时间相关性,空间-时间异质性
  • 高途一季度净利润同比增长1108%: “与吴彦祖一起学英语”短时间内就实现了盈利
  • 消息人士称俄方反对美国代表参加俄乌直接会谈
  • 德州国资欲退出三东筑工,后者大股东系当地房企东海集团
  • 王伟妻子人民日报撰文:81192,一架永不停航的战机
  • 日本一季度实际GDP环比下降0.2%
  • 上海高院与上海妇联签协议,建立反家暴常态化联动协作机制