最近在学习SLAM,需要使用到精度评估工具evo,写下这篇笔记记录自己暂时使用到的命令,在此只做一个记录,后续学习过程中需要使用新命令会逐渐追加上去。
目录
evo的安装
evo的使用
Kitti序列00-10对应关系
kitti2bag工具包安装
kitti2bag工具包使用
Failed to find match for field 'intensity'
参考链接
evo的安装
pip install evo --upgrade --no-binary evo
安装成功后打开终端输入evo,出现下述信息表示安装成功:
usage: evo [-h] {pkg,cat_log} ...(c) evo authors - license: run 'evo pkg --license'
More docs are available at: github.com/MichaelGrupp/evo/wikiPython package for the evaluation of odometry and SLAMSupported trajectory formats:
* TUM trajectory files
* KITTI pose files
* ROS and ROS2 bagfile with geometry_msgs/PoseStamped,geometry_msgs/TransformStamped, geometry_msgs/PoseWithCovarianceStamped,geometry_msgs/PointStamped, nav_msgs/Odometry topics or TF messages
* EuRoC MAV dataset groundtruth filesThe following executables are available:Metrics:evo_ape - absolute pose errorevo_rpe - relative pose errorTools:evo_traj - tool for analyzing, plotting or exporting multiple trajectoriesevo_res - tool for processing multiple result files from the metricsevo_ipython - IPython shell with pre-loaded evo modulesevo_fig - (experimental) tool for re-opening serialized plotsevo_config - tool for global settings and config file manipulation
evo的使用
轨迹评估工具使用总结(一) evo从安装到入门_轨迹误差需要进行轨迹对齐处理吗-CSDN博客
计算绝对轨迹误差ape:
evo_ape kitti kitt_log.txt ~/Lab/datasets/kitti/raw_data/ground_truth/00.txt -r full --plot --plot_mode xyz
使用--ref轨迹对齐:
evo_traj kitti kitt_log.txt --ref ~/Lab/datasets/kitti/raw_data/ground_truth/00.txt -p -a
投影到xz轴显示:
evo_traj kitti kitt_log.txt ~/Lab/datasets/kitti/raw_data/ground_truth/00.txt -p --plot_mode=xz
后续学习遇到具体的命令后会学习之后再总结完善本篇博客内容,其他参考文章:
evo安装、evo使用方法详细介绍使用教程,SLAM轨迹精度评估工具,如何用来评估ORB-SLAM2生成的轨迹精度,评估激光雷达SLAM与视觉SLAM的轨迹精度,量化SLAM的误差_怎么看evo是否安葬成功-CSDN博客 【SLAM】评估轨迹误差,手写ATE、RPE对比EVO_绝对轨迹误差-CSDN博客
https://zhuanlan.zhihu.com/p/108917367
SLAM轨迹精度评估工具evo使用方法_slam evo-CSDN博客
Kitti序列00-10对应关系
各文件与KITTI数据集Raw Data的对应关系如下:
参考如下文章:KITTI数据集Raw Data与Ground Truth序列00-10的对应关系,以及对应的标定参数_kitti rawdata-CSDN博客
kitti2bag工具包安装
1. 升级numpy
这一步很重要,不然后面运行会报错。kitti2bag要求numpy版本>=1.12,ubuntu 16.04默认的是1.11,升级可以通过一条指令来完成
sudo pip install -U numpy
升级完成之后可以通过下述命令查看升级的numpy版本
pip list | grep numpy
能够查看对应版本表示升级成功。
2. 安装kitti2bag
也是一条指令
sudo pip install kitti2bag
kitti2bag工具包使用
使用Kitti2bag工具包将原始kitti数据转换为.bag的形式,我参考下面这篇非常,非常好用,还包含Kitti数据集的下载链接:
kitti数据集转换bag包——图文教程_kitti.ply转bag-CSDN博客
Failed to find match for field 'intensity'
修改kitti2bag的源码:
1.在终端中输入whereis kitti2bag找到该文件的路径
whereis kitti2bag
会显示为/usr/local/bin/kitti2bag
2.用vim打开该文件 sudo vim /usr/local/bin/kitti2bag
修改完成后wq!强制保存并退出,再参考上述kitti2bag工具包使用重新生成.bag文件即可。
参考链接
Lego loam运行kitti出现:Failed to find match for field ‘intensity‘.Failed to find match for field ‘ring‘_failed to find match for field 'ring'. failed to f-CSDN博客