evo是一款用于视觉里程计和slam问题的轨迹评估工具。核心功能是能够绘制相机的轨迹,或评估估计轨迹与真值的误差。支持多种数据集的轨迹格式(TUM、KITTI、EuRoC MAV、ROS的bag),同时支持这些数据格式之间进行相互转换。在此仅对其基本功能做简要介绍。
evo工具github地址:Home · MichaelGrupp/evo Wiki · GitHub
一、安装
安装方式极其简单,采用pip安装:
pip install evo --upgrade --no-binary evo
或者通过github下载源码后(https://github.com/MichaelGrupp/evo),使用源码安装:
pip install --editable . --upgrade --no-binary evo
安装时会自动安装相关依赖项。
安装完毕后,在命令行输入evo,若显示了相关信息,则表明安装成功。若提示"command not found"也不用惊慌,很多人遇到这种问题,重启电脑即可找到evo相应指令。
二、绘制轨迹
1. 基础指令
evo绘制轨迹的指令为:evo_traj,后跟必要参数有:数据的格式(tum/kitti/bag/euroc等)+ 轨迹文件。轨迹文件可以有多个,例如:
evo_traj tum traj1.txt traj2.txt
这个指令只是显示轨迹的基本信息,若要绘制轨迹,则增加可选参数 -p 或 --plot
evo_traj tum traj1.txt –p
2. 轨迹对齐
我们时常需要将估计轨迹与真实轨迹同时绘制,可