一、安装evo
1.pip直接安装
sudo apt install python-pip
#or
sudo apt install python3-pip
pip install evo --upgrade --no-binary evo --user
#或加速:
pip install evo --upgrade --no-binary evo --user -i https://pypi.tuna.tsinghua.edu.cn/simple
2.源码安装
cd evo
pip install --editable . --upgrade --no-binary evo --user
#或加速:
pip install --editable . --upgrade --no-binary evo --user -i https://pypi.tuna.tsinghua.edu.cn/simple
二、evo测评
1.轨迹绘制evo_traj
cd test/data
evo_traj kitti KITTI_00_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_00_gt.txt -vas -p --plot_mode=xz --save_plot ../data/image
其中:
kitti是数据格式
ref是参考轨迹(可省)
-vas是对齐后的详细信息,-v表示verbose mode
a表示采用SE(3) Umeyama对齐只处理平移、旋转,不加-s表示默认尺度对齐参数为1.0,即不进行尺度对齐(可省)
s表示采用SE(3) Umeyama对齐只处理尺度
as表示采用Sim(3) Umeyama对齐,同时处理平移、旋转、尺度
-p是画出图像,也可以使用**–plot_mode {xy,xz,yx,yz,zx,zy,xyz}**来选择单独绘制某个平面的信息(可省)
–save_plot “保存的路径”+文件名 保存图片(可省)
2.计算绝对位姿误差evo_ape
mkdir results
evo_ape kitti KITTI_00_gt.txt KITTI_00_ORB.txt -r full -vas --plot --plot_mode=xz --save_results results/ORB.zip
其中,-r/–pose_relation可选参数(省去则默认trans_part)
full表示同时考虑旋转和平移误差得到的误差,无单位(unit-less)
trans_part表示考虑平移部分得到的误差,单位为m
rot_part表示考虑旋转部分得到的误差,无单位(unit-less)
angle_deg表示考虑旋转角得到的误差,单位°(deg)
angle_rad表示考虑旋转角得到的误差,单位弧度(rad)
使用ape的时候无需给出**–ref** 的文件,第一个文件即为标准/GT文件
–save_results results/ORB.zip为保存结果及路径(可省)
3.计算相对位姿误差evo_rpe
与evo_ape方法基本一致
4.处理一个指标的多个结果(多算法对比)evo_res
evo_res可用于比较来自同样指标的多个结果文件, 包括打印信息和统计信息(默认),绘制结果,将统计信息保存在表中。将上面产生的压缩文件生成图表和表格。
evo_res results/*.zip -p --save_table results/table.csv
5.数据集格式转换
evo_traj euroc V102_groundtruth.csv --save_as_tum
evo_traj tum V102_groundtruth.tum --save_as_kitti
将文件保存为其他类型的文件,可以使用如下句柄
--save_as_tum save trajectories in TUM format (as *.tum)
--save_as_kitti save poses in KITTI format (as *.kitti)
--save_as_bag save trajectories in ROS bag as <date>.bag
没有**–save_as_euroc**选项,因为EuRoC格式仅对EuRoC数据集的基本事实有意义。
6.修改全局参数配置
修改背景颜色: whitegrid(白色网格)、 darkgrid、 dark、 white、 ticks
#白底网格线
evo_config set plot_seaborn_style whitegrid
修改线条类型:deep, muted, bright, pastel, dark, colorblind
evo_config set plot_seaborn_palette bright
修改线宽
evo_config set plot_linewidth 2.5
修改字体大小
evo_config set plot_fontfamily serif plot_fontscale 3
设置位姿点显示坐标系大小
evo_config set plot_axis_marker_scale 1
打开轨迹同名点连线
evo_config set plot_pose_correspondences true
参考轨迹ref的透明度
evo_config set plot_reference_alpha 0.75
恢复初始设置
evo_config reset
7.卸载evo
pip uninstall evo