赞
踩
参考文章链接:
评估slam输出轨迹精度的工具,自动生成均值、方差、轨迹等信息的图或表。
支持数据集:TUM、KITTI、EuRoC以及ROS bagfile
–save_as_bag | –save_as_kitti | –save_as_tum | |
---|---|---|---|
bag | yes | yes | yes |
euroc | yes | yes | yes |
kitti | no(no timestamps) | yes | no(no timestamps) |
tum | yes | yes | yes |
#将euroc数据集转为tum数据集
evo_traj euroc data.csv --save_as_tum
#需要先安装pip,并更改下载源
sudo apt-get update
sudo apt-get upgrade
sudo apt install python3-pip
sudo gedit ~/.pip/pip.conf
#添加下文内容到pip.conf文件中
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
#安装EVO工具
pip install evo --upgrade --no-binary evo
evo_ape #用于评估绝对位姿误差
evo_rpe #用于评估相对位姿误差
evo_traj #用来画轨迹、输出轨迹文件、转换数据格式
evo_res #生成比较来自evo_ape或evo_rpe的一个或多个结果文件的工具
evo_fig #实验工具,用于重新打开序列化图(使用-serialize_plot保存)
evo_config #用于evo工具全局设置和配置文件操作
输出结果(指标):
用于评估两条时间戳完全相同下轨迹的绝对位姿误差
evo_ape kitti a.txt b.txt
比较KITTI数据集格式的a.txt和b.txt文件中轨迹的绝对误差精度
evo_ape euroc a.csv b.csv
比较EuRoC数据集格式的a.csv和b.csv文件中轨迹的绝对误差精度
evo_ape tum a.txt b.txt
比较TUM数据集格式的a.txt和b.txt文件中轨迹的绝对误差精度
需要注意两个待比较的数据文件必须格式一致,都为kitti、tum或者euroc!
命令可选参数:
evo_ape tum -h #参数介绍,tum可更换未kitti、euroc(下同) -r 后可选参数;不添加-r –pose_relation和可选项,则默认为trans_part full 同时考虑旋转和平移误差得到的ape,无单位 trans_part 考虑平移部分得到的ape,单位为m rot_part 考虑旋转部分得到的ape,无单位(unit-less) angle_deg 考虑旋转角得到的ape,单位°(deg) angle_rad 考虑旋转角得到的ape,单位弧度(rad) –align / -a #采用SE(3) Umeyama对齐,只处理平移和旋转 –align --correct_scale/-as #采用Sim(3) Umeyama对齐,同时处理平移旋转和尺度 –correct_scale/-s #仅对齐尺度 -plot #表示绘图 -plot_mode #绘图模式,二维图或三维图,可选参数为[xy, xz, yx, yz, zx, zy, xyz],默认为xyz --save_plot #存储绘图,后可加目录 --save_results #存储结果,后可加目录 --delta 100 #每隔100米统计一次误差 --delta_unit m #增量的单位,可选参数为[f, d, r, m],分别表示[frames, deg, rad, meters] evo_ape tum a.txt b.txt -a -p -s #-a -s 轨迹匹配与尺度修正 -p 绘图
比较两段相同时间戳下轨迹的相对轨迹误差。实际中两段轨迹在同一时间段下录制,但存在采样频率不同的问题,该工具可针对相同时间戳的数据进行误差计算
evo_rpe tum a.txt b.txt
#参数基本同上3.1
用于画轨迹图、表格、转换数据格式等
evo_traj tum a.txt -p # -p参数会有绘制结果,否则没有
evo_traj tum --ref=groundtruth.txt CameraTrajectory.txt -p -a #--ref参数指定参考轨迹 -p 绘制结果 -a 轨迹匹配
设置evo的一些配置项
evo_config show --brief #查看当前配置项
evo_config set A b #设置A参数值为b
evo_config reset #配置项恢复初始化
将不同传感器轨迹数据统一保存为tum数据格式(time,t_x,t_y,t_z,q_x,q_y,q_z,q_w ),需要利用时间戳进行尺度修正和对齐变换,不同传感器在时间戳和轨迹起终点进行对齐
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。