当前位置: 首页 > 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

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

相关文章:

  • 人工智能-状态空间-猴子摘香蕉
  • 【蓝桥杯省赛真题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 | 时空同步图卷积网络 | 空间相关性,时间相关性,空间-时间异质性
  • vue复杂数据类型多层嵌套的监听
  • DDS(数据分发服务) 和 P2P(点对点网络) 的详细对比
  • Qwen2.5-VL模型sft微调和使用vllm部署
  • yocto项目例子
  • 美创科技针对《银行保险机构数据安全管理办法》解读
  • 武汉火影数字全息剧秀制作:科技与艺术的梦幻联动
  • RAG数据处理:PDF/HTML
  • OpenCV CUDA模块中矩阵操作------降维操作
  • 22、能源监控与优化 - 数据中心模拟 - /能源管理组件/data-center-energy-monitoring
  • OCCT知识笔记之OCAF框架详解