文章:Evaluating Visual Odometry Methods for Autonomous Driving in Rain
作者:Yu Xiang Tan, Marcel Bartholomeus Prasetyo, Mohammad Alif Daffa
编辑:点云PCL
欢迎各位加入知识星球,获取PDF论文,欢迎转发朋友圈。文章仅做学术分享,如有侵权联系删文。
公众号致力于点云处理,SLAM,三维视觉,高精地图等领域相关内容的干货分享,欢迎各位加入,有兴趣的可联系dianyunpcl@163.com。文章未申请原创,侵权或转载联系微信cloudpoint9527。
摘要
随着自动驾驶的需求不断增加,需要具备在恶劣天气条件下同样有效运行的强大导航系统。视觉里程计是用于这些导航系统的一种技术,它利用车载摄像头的输入来估计车辆的位置和运动。然而在恶劣的天气条件下,如大雨、雪或雾,视觉里程计的准确性可能会受到严重影响。在本文评估了一系列视觉里程计方法,包括基于我们的 DROID-SLAM 的启发式方法。具体而言,这些算法在晴朗和雨天的城市驾驶数据上进行了测试,以评估它们的稳健性。我们编制了一个包括来自不同城市的各种雨天条件的数据集。其中包括牛津机器人车数据集、慕尼黑的4Seasons数据集以及新加坡收集的数据集。使用绝对轨迹误差(ATE)评估了不同的视觉里程计算法,包括单目和双目摄像头配置。我们的评估表明,深度与光流视觉里程计(DF-VO)算法在短距离(<500m)内的单目配置下表现良好,而我们提出的基于DROID-SLAM的启发式方法在长期定位方面相对表现良好的双目配置下表现良好。这两种算法在所有雨天条件下都表现出色。
主要贡献
本文评估了一系列不同的视觉里程计算法,包括我们基于DROID-SLAM的启发式方法 ,用于雨中的城市驾驶。目标是找到在多雨天气中表现相对良好的视觉里程计算法,以实现稳健的定位。整合了可用的开源雨天数据集,并将它们与雨天数据集合并,以创建一个全面的数据集套件进行评估。开源数据集包括牛津机器人车和4Seasons数据集。我们的数据集是在新加坡收集的,而牛津机器人车和4Seasons数据集分别来自牛津和慕尼黑。因此研究中使用的综合数据集包含了来自气候和地理位置不同的城市的各种道路和雨天条件。图1展示了这三个数据集的示例图像。
图1. 来自三个数据集的示例图
分析了各种方法的优点和局限性,并提供了未来研究方向的见解,以提高这些情景下基于视觉里程计的算法的稳健性和可靠性。我们的贡献包括:
(a)对现有视觉里程计算法在晴朗和雨天条件下的全面评估
(b)对不同视觉里程计算法在雨天条件下的优点和局限性的分析。
内容概述
选择了七种开源算法在晴天和雨天条件下进行评估,选择这七种算法是为了覆盖不同类型的VO方法。这里简要介绍了每种算法的实现,并强调了受雨水影响的设计部分。特别是将考虑特征提取和匹配策略以及处理失败的方法。
A. 直接稀疏视觉里程计(DSO)
DSO是一种经典的单目方法,使用关键帧执行相机姿态和3D世界模型的联合优化。它在三个数据集上进行了测试:TUM monoVO、EuroC MAV 和ICL-NUIM 数据集,并且表现出了稳健的准确定位结果。DSO能够处理低纹理环境,使用其新颖的特征选择策略,并具有多种检测异常值或跟踪失败的方法。DSO用于特征选择的策略在寻找图像中特征的均匀分布和每个特征的独特性之间进行权衡。DSO采用异常值检测,其中具有超过阈值的误差的匹配点被丢弃。阈值取决于图像的中值残差,考虑到图像质量较低的部分,允许具有较高误差的匹配通过阈值。这在雨天条件下很常见,图像质量会随机变化,需要自适应阈值来考虑图像质量的变化。当当前帧的光度误差超过前一帧的误差的两倍时,被视为跟踪失败,算法会尝试恢复定位。这允许在图像质量改善时恢复算法,但会以失去质量差的部分的定位为代价。这样的设计对于传感器融合方法可能是有利的,其中每个传感器能够确定何时发生了故障,但不适用于雨天条件下的纯VO。
B. 半直接视觉里程计
SVO是一种经典的混合直接和间接方法,允许单目和立体配置。它旨在在微型空中飞行器(MAVs)上的机载计算机上实现精度和速度的良好平衡,并在TUM RGB-D、EuroC MAV和ICL-NUIM数据集上进行了测试。在EuroC和ICL-NUIM数据集上,其性能与DSO相似。 SVO使用更强大的深度预测模型以最小化异常值的影响。它还使用仿射照明模型来处理较长时间范围内的光照变化。异常值和光照变化更有可能在雨天条件下发生,这样的设计可以提高雨天中的定位精度。SVO的立体设置改善了深度预测,并有望提高较长路径的定位精度。
C. CNN-SVO
CNN-SVO 是一种混合学习和经典方法,它通过卷积神经网络实现了对单幅图像深度的预测,从而改进了SVO。这个网络将贝叶斯深度滤波器初始化为均值和方差,而不是一个大范围的不确定值,因此滤波器能够更快地收敛到真实深度值,从而提高了鲁棒性和运动估计。因此,与专为MAV设计的SVO相比,CNN-SVO在自动驾驶应用中表现明显更好。CNN-SVO使用与SVO相同的特征提取和匹配策略。
D. Depth and Flow for Visual Odometry (DF-VO)
DF-VO 是一种基于学习的直接单目视觉里程计方法,它使用混合的稠密和稀疏特征。它使用深度学习模型进行光流和深度预测,同时使用经典方法进行姿态估计和尺度恢复。DF-VO还考虑了一些极端情况,当找到的特征不足时,会使用恒定速度运动模型来替代跟踪。这在雨天情况下非常有用,因为图像的过度曝光通常只发生在短时间内,比如转弯或通过道路上没有阴影的区域。
E. TartanVO
TartanVO是一种基于学习的、间接的、单目方法,它使用密集特征。它被设计成具有泛化能力,无需对其进行微调即可在未见过的数据集上表现良好。它在TartanAir数据集上进行了训练,这是一个全天候的无人机数据集,并在城市驾驶和航空数据集上进行了测试。它不具备特征提取和匹配策略,因为它同时使用深度学习模型进行光流和姿态预测。它也不会检测到定位失败或离群值。这可能导致它对雨天造成的极端失真比较敏感,尽管它是在全天候数据上训练的。
F. ORB-SLAM3
ORB-SLAM3是一种传统的、间接的VSLAM方法,它使用稀疏特征,支持单目和立体设置。它使用了ORB特征,这些特征检测速度快,对噪声具有抗性。ORB-SLAM3在EuRoC数据集上进行了测试。在单目摄像头配置中,它平均优于DSO和SVO,而在立体设置中,它优于SVO。ORB-SLAM3还旨在将发现的特征均匀分布在图像上,其中图像被分成一个网格来搜索角点特征。还使用了一个阈值来找到每个单元格内的最佳特征,如果找到的特征不足,就会降低这个阈值。这样的设计确保了即使在质量较差的图像上也能找到足够的特征,但牺牲了特征的质量。通过使用方向一致性测试以及在计算单应性和基本矩阵时的RANSAC过程来检测离群值。当找不到足够的对应关系时,跟踪也会停止。因此,在雨天条件下,图像遭受大量失真时,该算法将停止定位并执行重新定位。
G. DROID-SLAM
DROID-SLAM是一种基于学习的、间接的VSLAM方法,它使用稠密特征,支持单目和立体摄像头设置。它是在TartanAir数据集上进行训练的,这是一个全天候的合成无人机数据集。DROID-SLAM用于预测每个像素的光流和置信度分数的光流模型。在捆绑调整优化步骤中使用了每个像素匹配,并由置信度分数加权,从而最大化了使用的信息。这种设计确保了即使图像受损,跟踪也不会丢失,因为置信度值会防止错误匹配恶化姿态估计。但是,这取决于模型对置信度预测的准确性,如果对质量较差的匹配给予高置信度,将导致姿态估计中的错误。DROID-SLAM不会检测跟踪是否失败,因此在极端条件下,无法找到匹配时,可能会导致定位不准确。
H. 基于DROID-SLAM的启发式方法
这是提出了一种DROID-SLAM算法的变种,以包含额外的地图信息和启发式方法,用于检测和改进雨天条件下立体摄像头设置下的定位不准确性。地图信息可以轻松从任何在线路由服务中获取,用于提供一个保守的全局参考路径(CGRP)以提高定位精度。这些启发式方法旨在根据图像模糊度动态修改关键帧选择标准。模糊度越高,应该采取更多的关键帧,以减少模糊引起的不准确性。这样的设计提高了定位的鲁棒性和精度。
实验
对于每个评估的算法,我们实现了由各自的开源代码库提供的默认配置参数,包括每种方法的独特参数以及图像预处理步骤。仅修改了相机的内部参数以匹配来自每个数据集的图像数据。对于基于学习的方法,模型也保持原样,没有进行微调或额外的训练。需要注意的是,有些方法是为航空设计的,因此默认配置可能不适用于城市驾驶背景。对于每个数据集,使用了立体摄像机设置的左图像进行单目评估,并在输入VO方法之前对图像进行了去畸变处理。每个序列的地面真值被插值,以使每个地面真值姿态对应于每个图像帧。还进行了清理以删除任何错误点。对于Oxford Robotcar数据集,选择了一个稍后的起始点,其中车辆已经在主要道路上,以使其与其他两个数据集的起始点一致。
图2. 比较来自Oxford Robotcar数据集的1序列的相同场景的模糊值。
单目视觉里程计在长距离上无法很好地定位,当评估整个路线时,所有方法以及数据集的ATE都很高。为了在不同雨天的不同模糊值之间进行有意义的比较,我们评估了每个数据序列的前500米,并在表I中报告了结果。
我们还对所有数据集使用了立体摄像头设置,以评估晴天和雨天的长期定位,并在表II中呈现了其结果。
图3:DF-VO与SVO的输出轨迹在Oxford Robotcar数据集的05-29序列的整个路线上进行了比较。
图4:TartanVO在Oxford Robotcar数据集的10-29序列的前500米上的评估输出。红线显示了视频中车辆不移动的路段。
总结
本文对各种视觉里程计(VO)方法进行了在晴天和雨天数据集上的评估。我们发现采用深度预测模型的VO方法能够在雨天序列中保持一致的尺度。双目视觉能够提供尺度信息,但需要额外的地图信息才能在长期定位中表现良好。经典方法在雨天往往容易失效,不建议在雨天条件下使用,除非与其他传感器配对以进行传感器融合方法。在所有单眼方法中,没有一种方法在三个数据集中表现很好的效果。然而在Oxford Robotcar数据集的前500米中,DF-VO表现始终出色,可以用于雨天短期局部的传感器融合方法。对于更长的数据集定位,可以考虑使用立体视觉的方法。
资源
自动驾驶及定位相关分享
【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法
自动驾驶中基于激光雷达的车辆道路和人行道实时检测(代码开源)
更多文章可查看:点云学习历史文章大汇总
SLAM及AR相关分享
结构化PLP-SLAM:单目、RGB-D和双目相机使用点线面的高效稀疏建图与定位方案
以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除
扫描二维码
关注我们
让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入知识星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。
分享与合作方式:微信“cloudpoint9527”(备注:姓名+学校/公司+研究方向) 联系邮箱:dianyunpcl@163.com。
为分享的伙伴们点赞吧!