Benchmarking 6DOF Outdoor Visual Localization in Changing Conditions论文详解

Benchmarking 6DOF Outdoor Visual Localization in Changing Conditions论文详解

6 文章的Github:

https://github.com/tsattler/visuallocalizationbenchmark

只提供了The Aachen Day-Night Dataset 数据集的测试代码。

一:文章中出现的专有名词介绍

1:visual localization的定义如下:

Long-term visual localization is the problem of estimating the camera pose of a given query image in a scene whose appearance changes over time

长期视觉定位是在外观随时间变化的场景中估计给定查询图像的相机姿态的问题

2:6DOF6自由度位姿估计

6D 姿态估计6D指的是6自由度,旋转的3个自由度+平移的3个自由度,需要估计的目标姿态是相对于相机的坐标系来定义。 6D姿态估计有很多重要的现实应用,例如机器人抓取与控制、自动导航、增强现实等。

3: pose estimates相机位姿估计

https://huangwang.github.io/2019/05/29/%E7%9B%B8%E6%9C%BA%E4%BD%8D%E5%A7%BF%E4%BC%B0%E8%AE%A1%E5%85%A5%E9%97%A8/

相机位姿估计是指给定若干图像,估计其中相机运动的问题。求解方法通常分特征点法和直接法两种。

特征点法的思路是先从图像当中提取许多特征,然后在图像间进行特征匹配,这样就得到许多匹配好的点,再根据这些点进行相机位姿的求解。根据传感器形式的不同,可以分成三种情况:

  • 2D-2D,单目相机获取的影像,只能获得像素坐标
  • 3D-3D配对点,RGBD或双目相机,可以获取深度信息
  • 3D-2D,已知一张图中的3D信息,另一张图只有2D信息

二:文章内容:

Abstract:

视觉定位使自动驾驶汽车能够在其周围环境中导航,并使用增强现实应用程序将虚拟环境链接到现实世界。实用的视觉定位方法需要对各种观看条件(包括昼夜变化以及天气和季节变化)都具有较强的鲁棒性,同时提供高精度的6自由度(6DOF)相机姿态估计。在本文中,我们介绍了专门设计用于分析这些因素对视觉定位的影响的第一个基准数据集。通过使用精心创建的地面真实姿态查询在各种条件下拍摄的图像,我们通过使用最新定位方法进行的广泛实验,评估了各种因素对6DOF摄像机姿态估计准确性的影响。

1. Introduction

在该文中,作者提出并构建了用于在变化条件下进行基准视觉定位的第一个数据集,通过使用最先进的定位方法进行广泛的实验来评估各种因素对6DOF相机姿态估计精度的影响,同时作者展示了查询多张图片而不是单张照片的价值,特别是在具有挑战性的条件下。但作者也表明,包括SfM在内的现有算法在处理夜间变化和植被环境的季节变化方面存在严重问题,而且长期的定位问题并未完全解决。也为未来的实验工作提出了一些可能的方法,并将他们的基准数据集在visuallocalization.net上公开,以鼓励长期视觉定位的研究。

主要贡献如下:

(i)我们创建了一个新的户外基准,其中包含地面真实性和度量标准,用于在光照(日/夜),天气(晴天/雨/雪)和季节等变化的条件下评估6DOF视觉定位(夏天冬天)。我们的基准测试涵盖了多种场景,例如行人和车辆的定位,以及来自单个和多个图像以及序列的定位。

(ii)我们对数据集上的计算机视觉和机器人社区的最新算法进行了广泛的实验评估。我们证明,包括SfM在内的现有算法在植被环境中的昼夜变化和季节变化方面都存在严重问题。

(iii)我们展示了使用多张图片而不是使用单张图片进行查询的价值,尤其是在具有挑战性的条件下。

(iv)我们可以在visuallocalization.net上公开我们的基准,以刺激长期视觉本地化的研究。

 

2. Related Work

2.1 Localization benchmarks.

将我们的基准数据集与现有数据集进行了视觉定位和位置识别。与数据库图像相比,用于位置识别的数据集通常提供在不同条件下捕获的查询图像。但是,他们既不提供3D模型,也不提供6DOF地面真实姿势。因此,它们不能用于分析条件变化对姿势估计精度的影响。相反,用于视觉定位的数据集通常会提供地面真实姿势。但是,由于依赖特征匹配来生成地面真相,因此它们在查询图像和数据库图像之间没有表现出明显的变化。据我们所知,我们是第一个提供各种变化条件和准确的6DOF地面真实性的数据集。因此,我们的基准是衡量条件变化对姿势估计精度影响的第一个基准。(见表1)

                                                                                           表1 提供的各种变化条件和准确的6DOF地面真实性的数据集

2.2 3D structure-based localization

3D方法通过描述符匹配在查询图像中的2D特征与SfM点云中的3D点之间建立对应关系。然后,将这些2D-3D匹配项用于估算查询的相机姿态。我们评估了主动搜索[52]和城市规模定位方法,这是一种基于已知重力方向的确定性几何离群值过滤器,作为有效的可扩展定位方法的代表。

2.3 2D image-based localization(会用要的方法)

2D使用从图像数据库检索到的最相似照片的姿态来近似查询图像的姿态,它们通常用于位置识别和闭环检测。它们在规模变化时时仍然有效,并且可以对变化的条件保持健壮。主要用了DenseVlad和 NetVlad两种方法。

我们还评估了机器人技术中闭环检测的事实上的标准方法,其中条件变化的鲁棒性对于长期自主导航至关重要:FAB -MAP [18]是一种基于单词袋(BoW)范式[60]的图像检索方法,该方法显式地对不同视觉单词的共现概率建模。

2.4 Sequence-based

基于序列的图像检索方法被用于机器人技术中的闭环检测。与单幅图像检索方法相比,以正确的顺序要求匹配的图像序列可以显着降低假阳性率,从而产生令人印象深刻的结果,包括与SeqSLAM进行直接的昼夜匹配[43]。我们在基准测试中评估OpenSeqSLAM 。可以将具有已知相对姿势的多个摄像机建模为通用摄像机[48],即具有多个投影中心的摄像机。存在用于来自2D-3D匹配的多相机系统[31]和相机轨迹[10]的绝对姿势估计的方法。是的,它们从未在变化的条件下应用于本地化。在本文中,我们证明了在具有挑战性的场景中使用多张图像可以显着提高性能。

 

3. Benchmark Datasets for 6DOF Localization

这里作者讲了三个数据集,本文提出的三个基准数据集的详细统计信息。对于每个数据集,使用在相同参考条件下拍摄的图像构建参考3D模型,例如,RobotCar Seasons数据集的“阴天”。如下图所示:

                                                                                  三个基准数据集的详细统计信息

3.1 The Aachen Day-Night Dataset 数据集

    原始的数据集包含德国旧城内亚琛拍摄拍摄的4,479幅参考图像和369幅查询图像,它提供了一个3DSfM模型,但没有查询图片的正确值。作者的The Aachen Day-Night数据集基于此原数据集,并通过消费者手机拍摄到的日夜图片扩充了原有数据集。
    为了获得日间查询的姿态的正确值,作者使用COLMAP从参考和日间查询图像创建中间3D模型。重建的规模通过将其与地理定位的原始The Aachen模型对齐来恢复。为了获得夜间查询的图片的正确值,首先作者使用启用了软件HDR的Google Nexus5X手机捕获了98个夜间查询图像。由于缺乏足够的特征匹配,导致它们包含在中建模型后的相机姿态非常不准确。为了获得夜间查询的姿态的真实值,作者采用手动标记2D-3D匹配的方法,作者手动为每个夜间查询选择从类似观点拍摄的日间查询图像,其中对于每个选定的日间查询,作者将其中间模型中的可见3D点投影到其中,作者再以这些投影为参考,在夜间查询中手动标记了10到30个相应的像素位置。
为了估计这些姿势的准确性,作者测量了手动标记的2D-3D相关性和姿态不确定度的平均重投影误差。作者表明,由于图像距离现实场景较远,姿态的真实性是相当准确的。

3.2 RobotCar Seasons 数据集

      原始数据集包含英国牛津超过12个月的自主车辆平台记录的超过2000万幅图像。作者的RobotCar Seasons数据集基于此公开可用的Oxford RobotCar数据集的子集。所有选定的图像都采用安装在车辆左侧,后侧和右侧的三个同步全局快门Point Grey Grasshopper2摄像机拍摄。在10km路径的100条可用遍历中,我们在阴云条件和9个查询遍历中选择一个参考遍历,这些遍历涵盖了广泛的条件(参考表2)。

      由于庞大的尺寸和三台相机之间缺乏视觉重叠,从这些数据中建立一个一致的3D模型非常具有挑战性。因此,作者建立了49个不重叠的局部子图,每个子图覆盖100米的轨迹,其中对于每个子图,使用RobotCar上的惯性导航系统(INS)报告车辆位置初始化数据库摄像机姿态,然后迭代地对三维点进行三角化,合并轨迹,并使用束调整来修改结构和姿态。可以通过注册它们和INS姿势进行对比来恢复重建的规模。
      但由于GPS漂移,INS姿态不能直接作为正确值,并且SfM的白天和晚上图像之间没有足够的功能匹配。 因此,作者使用在车辆上安装的LIDAR扫描仪为每种条件下的49个子图分别构建了局部3D点云,然后使用ICP 将这些模型与参考轨迹的LIDAR点云对齐。作者指出,对齐的方法为查询图像提供了姿势的正确值。

3.3 The CMU Seasons Dataset

      CMU Seasons数据集基于CMU视觉定位数据集的子集,该数据集包含卡耐基梅隆大学计算机视觉小组在美国宾夕法尼亚州匹兹堡为期12个月的记录,记录了10万多个图像。 这些影像是使用安装在SUV的车顶45度上的向前/左和45度上的向前/右边的两个相机拍摄收集。
作者指出,与RobotCar数据集一样,GPS不够准确,CMU数据集也太大,无法从所有图像中构建一个3D模型。因此,作者分成17个短序列,对于每个短序列,通过在多个图像帧上跟踪的SIFT点束调整来建立3D模型,接着通过使用全局束调整和手动注释的图像对应关系,将得到的参考路线的子图与其他遍历的相应子图合并。

4. Benchmark Setup

      作者在新基准数据集上评估最先进的定位方法,以测量变化的条件对相机姿态估计精度的影响。
评估措施:作者通过姿态的估计值的和真实值之间的偏差来测量方法的pose精度。位置误差测量通过欧氏距离(估计值与真实值之间的距离表示偏差)。我们测量查询图像的Xm和Y◦中位于其地面真实姿势的百分比。我们通过更改阈值来定义三个姿势精度间隔:高精度(0.25m,2°),中等精度(0.5m,5°)和粗精度(5m,10°)。选择这些阈值以反映自动驾驶所需的高精度。
    评估算法:作者评估了一套最先进的算法,其中涵盖了最常见的定位方法:基于3D结构的方法中,使用Active Search(AS)和City-Scale Localization (CSL);基于2D结构的图像检索的方法中,使用DenseVLAD ,NetVLAD 和FAB-MAP 。为了测量使用多幅图像进行姿态估计的好处,作者评估了两种方法:①OpenSeqSLAM 方法,基于图像检索,并强制序列中的图像按正确的顺序匹配。②Search+GC (AS+GC)方法,给定每幅图像的2D-3D匹配并通过RANSAC循环内的广义绝对相机姿态解算器来估计姿态。

4.1 Evaluation on the RobotCar Seasons Dataset

     与Aachen相比,RobotCar数据集在白天和晚上之间的姿势精度下降幅度更大。对于高精度和中等精度方案,所有方法都无法定位大量查询。有趣的是,在粗精度方案中,DenseVLAD和NetV​​LAD的性能优于所有其他方法(参见图4(右))。这表明即使局部特征匹配失败,它们的全局描述符仍会编码特殊信息。与“夜间”相比,“夜间+雨天”下所有方法的性能都更好,这是由于RobotCar相机的自动曝光所致。 “夜晚”使用了更长的曝光,导致明显的运动模糊。

 


5  结论以及经验教训


    在本文中,作者为视觉定位引入了三个具有挑战性的新基准数据集,这使首次能够分析变化的条件对6DOF相机姿态估计精度的影响。 但作者的实验清楚地表明,长期的视觉定位问题远未解决。
①基于结构的方法(例如Active Search和CSL)对于城市环境中的大多数观看条件均具有鲁棒性。但是,在高精度状态下的性能仍然需要显着提高。
②即使事先给出了位置信息,作者将夜间图像定位到由白天照片建立的数据库中是一个非常具有挑战性的问题。
③即使有事先确定的位置,但有大量植被的景象也具有挑战性。
④SfM通常用于获取本地化基准的正确值,但由于现有本地功能的局限性,因此无法完全解决问题②和③。
⑤像DenseVLAD这样的图像级描述符可以在局部特征匹配失败的情况下成功。他们甚至可以在自动驾驶场景中提供粗略的姿态估计。
⑥使用多个图像进行姿势估计有明显的好处。但是,作者指出关于多图像定位的现有工作很少。因此,充分利用多个图像的可用性是未来研究的另一个有希望的途径。

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值