SLAM的精度评价标准

一些问题

  • “算法进度是用什么评价的”:有,后续第一、二小结
  • “有什么工具吗”:有,后续第三小结
  • “只能靠GPS提供的真值吗”:不是的,有些场景用不了GPS但是有其他所谓“真值”的获取方法。1.1节

一、定量评价

1.1 设备与参考值获取

对于真实场景下录制的数据集,一般以高精度RTK+IMU组合导航设备(室外常用,如KITTI数据集[1])、动作捕捉系统(室内常用,如TUM RGB-D数据集[2])以及测绘领域用的激光全站仪(室内外均可用但只能直接得到位置,我目前只在EuRoC[3]数据集上见到过),使用这些设备获得传感器系统运动的参考值,由于其精度比较高(比如室内动作捕捉系统marker点的位置精度一般在亚毫米级),对于激光/视觉SLAM的厘米级精度来说,该参考值可以视作真值。
对于所谓软件技术合成的数据集(通常利用游戏引|擎渲染得到)如ICL-NUIM[4]和Kimera[5]测试使用的模拟器(忘了具体是啥了),这直接相当于开了上帝视角,模拟器编程时即可获得传感器位姿,因为拍摄图像的相机、激光雷达等传感器的位置就是开发者给定的,如果你用过
Direct3D/OpenGL/Vulkan等图形API,在学如何根据键盘和鼠标输入调整观察摄像机视角时会非常好理解。

1.2 参考值和估计值的数据关联

相对于上文提到的参考值(真值),SLAM得到的传感器系统位姿称之为估计值。
真值轨迹点和通过SLAM估计的轨迹点的数据关联通过时间戳或者SE3、Sim3对齐这种类似ICP的方式进行。

1.3 单对点误差计算

这里“单对点”指的是经过1.2中数据关联得到的一对参考轨迹点和估计轨迹点。评估方式有关注全局一致性的绝对轨迹误差(Absolute Trajectory Error,ATE)和关注局部一致性的相对位姿误差(Relative Pose Error,RPE)。对于单对点,ATE定义如下(后续公式均来自参考文献[2]):
在这里插入图片描述
对于RPE,有三种评价方式:仅平移、仅旋转以及无量纲的综合评价,其中第三者用到的比较少,但是在一些工具比如EVO中有提到。
在这里插入图片描述
以上为无量纲的评价方式,如果P、Q换成R或者T,那么就是对应的仅平移或仅旋转评价方式。

1.4 统计指标

每对匹配的参考轨迹点和估计轨迹点都有一个误差,但我们的目的是评估一整个数据序列上整条轨迹的误差,所以需要使用统计量。一般有这几个:

  • 最大值(Max)
  • 最小值(Min)
  • 均值(Avg)
  • 中位数(Mean)
  • 标准差(Std)
  • 均方根误差(RMSE)
    其中最常用的就是均方根误差,例如对于RPE RMSE,平移部分就可以这样计算:
    SLAM的精度评价标准_第1张图片

ATE RMSE一般只评估平移,可以这样计算:
SLAM的精度评价标准_第2张图片

因此这就变成了论文中大家看到的RPE RMSE Trans、RPE RMSE Rot、ATE RMSE,以及对应的均值和中位数等;

SLAM的精度评价标准_第3张图片

二、定性对比

由于上述指标只能在总体上反映算法在某个序列中的精度水平,具体到某段特殊运动或者特殊场景中的轨迹是否会发生漂移则无法展示,因此通常会有一些轨迹图作为辅助的展示。比如当年VINS-MONO[7]的炫技:
SLAM的精度评价标准_第4张图片
以及对于—段序列中轨迹误差统计得到的箱型图:
SLAM的精度评价标准_第5张图片
还有和其他VIO的轨迹精度定性对比(说是定性,但是在下图和上面的箱型图中还是需要定量计算指标,也许放在“定性对比”—节不合适,回头我看看调整调整):

SLAM的精度评价标准_第6张图片
当然也有些不需要参考轨迹直接使用估计轨迹进行不同算法对比的,比如最新的TUM VIE[8]数据集中进行得简单对比:

SLAM的精度评价标准_第7张图片
有些算法也会尝试通过稠密建图质量的定性表示,侧面说明定位精度的准确,比如ORB-SLAM2[9]开篇就放了这个图:
SLAM的精度评价标准_第8张图片
或者在某些场景中的确无有效手段可以拿到参考真值,此时对于视觉为主要输入的SLAM来说可以以精度更高的激光SLAM作为参考。比如赵世博Q师兄和室友王鹏的工作TP-TIO[10],以LOAM作为参考评估VINS、OKVIS、RVIO等在浓烟场景下工作的可靠性(附图并不是在浓烟环境下,浓烟环境下每一个现有视觉SLAM/VIO没一个能跑下来)∶

三、常用轨迹精度的定量评估工具

3.1 EVO[11]

全名为“Python package for the evaluation of odometry and SLAM”,使用Python写的轨迹评估工具,目前在SLAM领域论文中的“使用率”逐渐上升,可以说已经成为了作为SLAMer一定要会用的工具。
没有对应论文,开源代码在此:

3.2 慕尼黑工业大学轨迹评估工具

慕尼黑工业大学作为SLAM相关数据集的“高产工厂”,在提供针对各类型传感器、各类型场景的数据集序列之外,还提供了对应的轨迹评估工具,轨迹格式简洁、高效。该工具获取页面:

相关wiki页面在此:

3.3 苏黎世大学轨迹评估工具:rpg_trajectory_evaluation

全名为“Toolbox for quantitative trajectory evaluation of vO/VIO”,为文献[12]的开源代码,代码网页链接为:

暂时就想到这些了,想到其他的后补

参考资料:

[1] Geiger, Andreas, Philip Lenz, and Raquel Urtasun. “Are we ready for autonomousdriving? the kitti vision benchmark suite.” 2012 IEEE conference on computer vision andpattern recognition.IEEE,2012.
[2] Sturm,Jurgen, et al. " A benchmark for the evaluation of RGB-D SLAM systems." 2012IEEE/RSJ international conference on intelligent robots and systems.IEEE,2012.
[3] Burri,Michael, et al.“The EuRoC micro aerial vehicle datasets.” The International Journalof Robotics Research35.10(2016): 1157-1163.
[4] Handa, Ankur, et al.“A benchmark for RGB-D visual odometry, 3D reconstruction andSLAM.” 2014 IEEE international conference on Robotics and automation (ICRA).IEEE,2014.
[5] Rosinol,Antoni, et al. “Kimera: an open-source library for real-time metric-semanticlocalization and mapping.” 2020 lEEE International Conference on Robotics and
Automation (ICRA).IEEE,2020.
[6] Yu, Chao, et al.“DS-SLAM:A semantic visual SLAM towards dynamic
environments.” 2018IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS). IEEE,2018.
[7] Qin, Tong,Peiliang Li, and Shaojie Shen.“Vins-mono: A robust and versatile monocularvisual-inertial state estimator.” IEEE Transactions on Robotics34.4(2018):1004-1020.
[8] Klenk, Simon, et al.“TUM-VIE: The TUM Stereo Visual-Inertial Event Dataset.” arXivpreprint arXiv:2108.07329(2021).
[9] Mur-Artal,Raul, and Juan D.Tard6s."Orb-slam2:An open-source slam system formonocular, stereo, and rgb-d cameras."IEEE transactions on robotics33.5(2017): 1255-1262.
[10] Zhao, Shibo, et al.“Tp-tio: A robust thermal-inertial odometry with deep
thermalpoint.” 2020IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS).IEEE,2020.
[11] github.com/MichaelGrupp.….
[12] Zhang, Zichao, and Davide Scaramuzza. “A tutorial on quantitative trajectoryevaluation for visual (-inertial) odometry.” 2018IEEE/RSJInternational Conference onlntelligent Robots and systems (lROS).IEEE,2018.

原文地址

你可能感兴趣的:(ros,c++)