11

旷视研究院 · 2020年09月17日

在超难数据集上登顶CVPR 2020 SLAM挑战赛,旷视用了这样的方案

640.jpg

相信做SLAM(即时定位与地图构建)的同学都知道或者领略过TartanAir,这个CMU于今年3月发布的超难数据集的“风采”。据CMU研究人员介绍,构建该数据集的目的就是为了推动视觉SLAM的极限。而在完全基于该数据集举办的 CVPR2020 SLAM 挑战赛上,旷视研究院 SLAM 组以绝对优势包揽该挑战赛全部赛道的冠军。本文对团队的方案进行了介绍,希望与同学们交流讨论。

实时定位与地图构建(Simultaneous Localization and Mapping,SLAM)技术是机器人导航控制领域一项极为重要的基础技术,虽然近年来SLAM领域发展迅猛,但算法在各类环境下的鲁棒性问题仍然有待探索,这其中数据集扮演着关键角色。

image.png
完整视频点击这里

一个典型的SLAM工作:利用视频序列同时估计相机姿态和构建环境地图,视频源于Direct Sparse Visual-Inertial Odometry using Dynamic Marginalization, Lukas von Stumberg, Vladyslav Usenko, Daniel Cremers, 2018 IEEE International Conference on Robotics and Automation (ICRA)

当前已有的数据集虽然极大推动了领域的发展,但与实际应用当中的场景丰富度与运动模式相比,它们依然存在较大提升空间。为此 TartanAir 数据集横空出世,作为对真实世界数据不足的补充,基于虚幻引擎强大拟真能力构建的 TartanAir,包含大量风格迥异、环境变量多元的场景。

另外,正是由于使用了虚拟环境,团队才能从各种视角、运动模式出发来收集数据样本,这在真实世界的数据收集中往往十分困难。
640.gif

TartanAir 数据示例,官网:http://theairlab.org/tartanair-dataset/

CVPR2020 SLAM 挑战赛完全基于TartanAir开展,共有两个赛道 Monocular Track、Stereo Track。每个比赛都要在给定的16个序列上算出轨迹并提交。

(比赛官网:https://sites.google.com/view...

评价指标Score的计算方式为:640.png,Score越小越好。其中取640-1.png来平衡平移和旋转的误差,因为在该数据集上平均角速度(角度为单位)是平均线速度的7倍。

比赛提交时间于2020.08.15截止,根据提交的最优的Score进行排名。旷视研究院 SLAM 组最终包揽该挑战赛全部赛项冠军。此次登顶一方面证明旷视研究院在 SLAM 领域所具备的国际顶尖水平,同时这份成绩也反映了旷视在机器人建图定位方面的业界领先水平。

640-2.png

640-3.png

CVPR2020 SLAM 挑战赛之所以对现有 SLAM 方案十分困难,其原因在于比赛数据拥有极为丰富的场景与场景环境变化,同时相机的各种极端运动模式也为 SLAM 算法的鲁棒性提出了巨大挑战。

1.丰富的场景:如室内场景、城市场景、森林场景、水下场景等,因此需要 SLAM 算法很高的泛化能力,能够胜任于各种场景。

640-4.png

2.场景的变化多种多样:如光照变化、天气变化(雨、雪、雾)、季节变化、弱纹理、动态物体等,需要 SLAM 算法很好的鲁棒性,适应各种场景变化。

640-5.png

3.极端的相机运动:使得视角变化很大,需要鲁棒的 Tracking 算法以至于不容易跟踪丢失。

640-1.gif 640-2.gif

技术方案

针对上述难点,旷视研究院 SLAM 组在此次比赛中的 Mono Track 和 Stereo Track 两个赛道分别采用了以下的技术方案。

1.Mono Track

各阶段提交结果如下:
640-6.png

在 Mono Track 中,研究人员主要用了以下方法:

  • 用 COLMAP 作为 baseline 方法

640-7.png

COLMAP 是一种常用的 SFM 系统,其流程图如上图所示。对输入的图像序列,通过特征提取、匹配以及几何校验来建立特征间的数据关联,然后通过图像配准、三角化特征点以及Bundle Adjustment 来进行增量式的定位与建图。由于 COLMAP 精度高且可扩展性较强,研究人员在比赛中所用方案都是基于 COLMAP 的框架。

  • 用 SuperPoint 和 SuperGlue 进行特征提取和匹配

640-8.png

在 COLMAP 中,通过提取 SIFT 特征点和最近邻匹配来建立特征间的关联。而本次比赛的难点之一就是丰富且不断变化的场景,不论是变化的光线还是雨雪雾等天气的影响,准确的提取特征点以及建立特征点之间正确的匹配都将对结果有着至关重要的影响。如上图所示,人工设计的 SIFT 特征和最近邻匹配在比赛环境中无法达到理想的效果。

针对这一问题,研究人员采用了 SuperPoint 以及 SuperGlue 的方案。SuperPoint 通过利用深度学习来得到图像中的特征点,SuperGlue 通过利用 CNN 和 GNN 将两帧图像的特征点进行匹配。通过测试及验证 SuperPoint+SuperGlue 相比于 SIFT+NN,会有更多正确的匹配,同时有更少的错误匹配。

  • 根据环境进行动态阈值调整

640-9.png

由于场景变化丰富,即使在同一个序列中,也存在着很剧烈的变化,例如从室内到室外、从强光照到弱光照、从强纹理到弱纹理等。这种场景的不均衡分布会给算法精度带来很大的影响。如上图所示,当采用固定阈值时,同一个序列中的两对匹配由于场景变化太快,导致特征点和匹配的数量极度不均衡,将会使得 BA 环节带来精度的损失。

为了解决这一问题,如上图所示,研究人员根据环境的变化动态的调整阈值等参数,使之做到保持每幅图像中特征点和匹配的数量都比较均衡,减小特征点的不均衡分布带来的影响。

  • Loop detection via BoW and geometric validation

640-10.png

另一个关键点就是回环检测。研究人员发现有一些测试数据集存在回环,如果能正确的检测出回环的话可以很大程度上纠正累计误差。

研究人员通过 BoW 进行回环检测,然后通过 geometric validation 剔除错误回环,然后 global BA。通过这种方式来使得精度进一步提升。

如下为一些单目测试集上的结果:

640-11.png640-12.png

2.Stereo Track

各阶段提交结果如下:

640.png

双目的方法跟单目的方法大同小异,不同的是双目每次会输入左目和右目一对图像,且双目带有绝对尺度。除了跟单目中一样的方法,研究人员主要用了以下方法:

  • 由于 COLMAP 不支持双目,首先将 COLMAP 改成双目的 COLMAP,主要添加了COLMAP 中双目的初始化,双目匹配,以及适配于双目的 BA。流程图如下:

640-1.png

当输入一对双目,研究人员对双目的每幅图像提取特征点,然后通过双目匹配和相邻帧匹配来建立特征间的数据关联,然后进行双目初始化、双目配准、特征点三角化等。在BA中,研究人员只优化左目图像的位姿,右目的位姿通过左目和外参得到,同时固定双目的外参。通过上述流程研究人员可以针对双目图像进行增量式的定位与建图。

  • 跟单目的做法一样用 SuperPoint 和 SuperGlue 进行特征提取和匹配
  • 同时使用 SIFT 特征点和 SuperPoint 特征点进行 Mapping

相比于单目的测试数据集,双目测试数据集中,相机运动更加极端。为了保持在极端运动中还能鲁棒的 tracking,研究人员同时使用 SIFT 特征点和 SuperPoint 特征点进行 Mapping,这样能构建更多的 Mappoints,使 Tarcking 更加鲁棒而且不容易 track lost。

  • 其他做法跟单目相同。

如下为一些双目测试集上的结果:

640-2.png640-3.png

总结

截止到 2020.8.15 比赛结束,旷视研究院 SLAM 组最终在 SLAM Challenge 的 Mono Track 和Stereo Track 两个赛道同时获得冠军。以下是研究人员进行的一些基准测试以及研究人员所用的方法在 leaderboard 上的得分,供大家参考。

640-4.png

640-5.png

延伸阅读:旷视SLAM机器人

旷视的 SLAM 技术在机器人产品中得到了广泛应用,业内首创的激光视觉融合导航技术,赋予旷视机器人全新一代的 MegBot-S800 AMR 更精准的定位能力,更强大的环境适应性。

MegBot-S800 AMR,额定负载 800KG,360° 激光雷达覆盖,VSLAM 技术加持,具备低矮物体检测、智能绕障能力。

640.jpg

MegBot-S800 AMR

640-6.png

MegBot-S800 AMR 实机测试画面

旷视机器人在 SLAM 以及 3D 感知等技术上具有多项行业领先的技术创新:

1)高精到点:自然环境导航,构建高精特征地图,实现 ±1cm 全程平均定位精度和 ±5mm 的高精重复到点。

2)视觉-激光融合:融合视觉、激光等多传感器的新一代 SLAM 技术,智能过滤动态物体,实现传统激光 SLAM 无法达到的动态环境适应性。

3)重定位:基于深度学习的视觉场景识别技术,随时随地开机、重启,无需人为干预。

4)地图智能更新:自动评估当前感知环境与建图时刻环境的变化,多车联动,实现地图可靠、智能的自动升级。

5)柔性导航:结合高精度地图和智能避障系统,实现灵巧、安全和高效的智能导航。

6)智能避障:通过深度学习和 3D 技术识别环境中的人体、坑洞、悬浮物等障碍,并实现不同的智能避障策略,达到极高的安全性标准。

相信未来,旷视 SLAM 技术还将带来更大的突破,旷视机器人也将始终坚持用技术革命行业的理念,为大家带来更多惊喜!



专栏文章推荐


欢迎关注旷视研究院极术社区专栏,定期更新最新旷视研究院成果
加入旷视:career@megvii.com
推荐阅读
关注数
7696
内容数
164
专注旷视研究院学术论文解读推送,涵盖计算机视觉,文字识别等
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息