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

roslaunch .launch

rosbag play your_dataset.bag -r 2.0

✅ 第二步:录制估计轨迹

复制代码

bash

复制编辑

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

相关推荐
1candobetter5 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
一次旅行5 天前
Docker安全总结
安全·docker·eureka
老葱头蒸鸡5 天前
(3)Docker搭建Network网络
云原生·eureka
weixin_395448916 天前
cursor日志0224
eureka·flink·etcd
hopsky6 天前
Docker Compose 启动的容器内存 监控
docker·容器·eureka
海兰6 天前
Docker部署OpenClaw及常见问题解决(win11)
docker·容器·eureka
曹天骄6 天前
在 Docker 容器中控制宿主机 Docker:DoD 与 DinD 的技术原理解析
docker·容器·eureka
sunshinebo6 天前
一次 GitLab 无法启动的排查:Docker 日志把 500G 磁盘打满
docker·eureka·gitlab
weixin_395448916 天前
dataset.py_0224_cursor
eureka·flink·etcd