Professional Documents
Culture Documents
502022230018 潘禹龙
摘 要
关键词: SLAM,视觉里程计,闭环检测
1 引言
机器人在缺少环境的先验信息的情况下,仅基于其自身的传感器构建实时地图和定位具有
重要意义。这个问题最初在 1986 年的 IEEE Robotics and Automation Conference 上被提出,并被
命名为 SLAM。SLAM 是机器人领域的关键问题,也是大量相关应用的基石,例如自动驾驶、无
人机、智能物流、智能服务机器人、增强现实、外太空探索等。机器人在所处环境中的位置以及
对所处环境的理解是后续相关决策(例如路径规划、避障、任务相关操作等)的基础,越高层次
的任务对于环境的理解能力要求越高。
SLAM 根据自身所使用的传感器类型的不同,可以分为激光 SLAM 和视觉 SLAM 两种。激
光 SLAM 采用激光雷达作为传感器,具有精度高、速度快、响应快的优点,其缺点是体积大、价
格昂贵以及信息单一。而视觉 SLAM 采用摄像头作为传感器,成本更低、数据信息更为丰富。
视觉 SLAM 根据传感器与工作模式的不同可进一步分类为单目 SLAM、双目 SLAM 和 RGB-
D SLAM。单目视觉 SLAM 基于单目相机完成,因此具有结构简单,成本低的优点。当单目相
机与物体之间产生相对运动时,距离不同的物体在图像序列中产生的位移也不同,依据物体在
图像中的视差就能判断相机距离不同物体的远近关系,但是单目视觉 SLAM 无法计算物体距离
相机的绝对深度,具有尺度不确定性的问题。双目视觉 SLAM 通过两个相机对同一场景进行拍
摄,两相机间距为基线,通过像素在两成像平面的视差就能计算得到物点到相机的距离,双目
视觉 SLAM 的有更高的精度和更好的鲁棒性,能够适应复杂的室内外环境,但计算量太大,实
时性较差。RGB-D SLAM 使用激光传感器,利用红外结构光原理或飞行时间法(Time of Flight,
,来测量相机到物体的距离,虽然不需要像双目视觉 SLAM 一样进行大量计算,但是成本
TOF)
较高、且测量范围小、噪声大、易受外界环境因素影响。
1
图 1: 传统视觉 SLAM 框架结构
2 发展历程
2
误差对图像的梯度进行跟踪,通过对当前帧和关键帧进行匹配得到当前帧的位姿并更新关键帧,
最后通过闭环检测进行位姿和地图的优化。2014 年 Forster 等提出了 SVO[5],结合了特征点法
和直接法,是稀疏直接法视觉里程计。2016 年 Jakob Engel 等提出了 DSO[3],DSO 通过计算点
在每一帧中的投影残差值估计相机运动,并通过光度标定,降低光照对跟踪的影响,有效的提
高了系统的鲁棒性。
随着计算机硬件能力的提升以及相关理论的发展,以卷积神经网络为代表的深度学习技术
发展起来,并应用到众多计算机视觉的研究领域中,取得了突破性的进展。近年来,涌现出了
许多深度神经网络与 SLAM 结合的工作。相较于传统算法,将深度学习技术与 SLAM 融合的深
度学习 SLAM 系统具有更好的鲁棒性和更强的环境适应性。深度学习 SLAM 系统主要可分为两
类:
1. 端到端方式:直接使用深度神经网络估计相机的位姿变换,网络模型是一个从图像序列
到相机位姿变换的直接映射。端到端方式可细分为有监督方式和无监督方式。
有监督方式使用标记数据集训练深度神经网络模型,并用模型直接估计相机的运动变换。模
型的输入是两帧图像,输出是相机的位姿变化以及深度图。2015 年,Konda 等 [8] 最早通过卷积
神经网络以图像序列作为输入来预测相机速度和位姿的变化,是将深度学习与 SLAM 结合的最
早研究成果之一。Wang 等提出 DeepVO[16],该方法将卷积神经网络和递归神经网络相结合,不
仅能通过 CNN 自动学习图像特征,而且能够利用 RNN 隐式地学习图像间的内在联系及动力学
关系,是目前效果最好且应用最为广泛的深度学习 SLAM 算法。
无监督方式则利用两帧图像深度图与位姿之间的约束关系构建误差函数从而估计位姿变换
以及深度图。2017 年,Godard 等 [6] 最先在 CVPR 会议上提出了采用无监督学习的方式来进行
单一图像的深度估计的方法。为了解决相机参数未知的问题,Zhou 等 [17] 提出了一种改进算法。
通过深度 CNN 和位姿 CNN 两个网络分别生成深度图和图像间的位姿,根据深度图与位姿将原
图像投射到目标图像上,最后通过比较真实目标图像与投射产生的目标图像的重建误差来训练
网络。该学习方式在网络结构设计、初始值设定和训练方法上都采用了较为合适的策略,是目
前效果最好的无监督学习方法之一。2018 年,Li 等提出一种基于无监督学习方法的单目视觉里
程计估计网络 UnDeepVO[9],系统由位姿估计器和深度估计器两部分构成,与大多数单目无监
督的学习方案相比,该方法能够真实地恢复相机位姿的尺度。
2. 结合深度学习的语义 SLAM 系统:语义 SLAM 将语义信息与视觉信息融合,相较于传统
的图像特征,语义特征对于环境变化有较好的鲁棒性。而深度学习的主要作用则是识别图像中
的语义信息。2017 年,Bowman 等 [1] 引入了期望最大值方法来动态估计物体与观测的匹配关
系。作者把语义 SLAM 转换成概率问题,利用概率模型计算出来的物体中心在图像上重投影时
应该接近检测框的中心这一思想来优化重投影误差。Lianos 等 [10] 提出视觉语义里程计(VSO)
方法,使用距离变换将分割结果的边缘作为约束,同时利用投影误差构造约束条件,从而实现
中期连续点跟踪。
3
3 最新研究
3.1 DROID-SLAM
3.2 NeRF-SLAM
3.3 IMAP
4
同时共同优化关键帧位姿。除此之外,IMAP 对信息量大的 RGB-D 像素进行动态采样,以减少
几何不确定性,提升系统运行的实时速度。
3.4 NICE-SLAM
4 总结
参考文献
[1] Sean L Bowman et al. “Probabilistic data association for semantic slam”. In: 2017 IEEE international conference on
robotics and automation (ICRA). IEEE. 2017, pp. 1722–1729.
[2] Andrew J Davison et al. “MonoSLAM: Real-time single camera SLAM”. In: IEEE transactions on pattern analysis and
machine intelligence 29.6 (2007), pp. 1052–1067.
[3] Jakob Engel, Vladlen Koltun, and Daniel Cremers. “Direct sparse odometry”. In: IEEE transactions on pattern analysis
and machine intelligence 40.3 (2017), pp. 611–625.
[4] Jakob Engel, Thomas Schöps, and Daniel Cremers. “LSD-SLAM: Large-scale direct monocular SLAM”. In: European
conference on computer vision. Springer. 2014, pp. 834–849.
5
[5] Christian Forster, Matia Pizzoli, and Davide Scaramuzza. “SVO: Fast semi-direct monocular visual odometry”. In: 2014
IEEE international conference on robotics and automation (ICRA). IEEE. 2014, pp. 15–22.
[6] Clément Godard, Oisin Mac Aodha, and Gabriel J Brostow. “Unsupervised monocular depth estimation with left-right
consistency”. In: Proceedings of the IEEE conference on computer vision and pattern recognition. 2017, pp. 270–279.
[7] Georg Klein and David Murray. “Parallel tracking and mapping for small AR workspaces”. In: 2007 6th IEEE and ACM
international symposium on mixed and augmented reality. IEEE. 2007, pp. 225–234.
[8] Kishore Reddy Konda and Roland Memisevic. “Learning visual odometry with a convolutional network.” In: VISAPP
(1) 2015 (2015), pp. 486–490.
[9] Ruihao Li et al. “Undeepvo: Monocular visual odometry through unsupervised deep learning”. In: 2018 IEEE interna-
tional conference on robotics and automation (ICRA). IEEE. 2018, pp. 7286–7291.
[10] Konstantinos-Nektarios Lianos et al. “Vso: Visual semantic odometry”. In: Proceedings of the European conference on
computer vision (ECCV). 2018, pp. 234–250.
[11] Raul Mur-Artal, Jose Maria Martinez Montiel, and Juan D Tardos. “ORB-SLAM: a versatile and accurate monocular
SLAM system”. In: IEEE transactions on robotics 31.5 (2015), pp. 1147–1163.
[12] Richard A Newcombe, Steven J Lovegrove, and Andrew J Davison. “DTAM: Dense tracking and mapping in real-time”.
In: 2011 international conference on computer vision. IEEE. 2011, pp. 2320–2327.
[13] Antoni Rosinol, John J Leonard, and Luca Carlone. “Nerf-slam: Real-time dense monocular slam with neural radiance
fields”. In: arXiv preprint arXiv:2210.13641 (2022).
[14] Edgar Sucar et al. “iMAP: Implicit mapping and positioning in real-time”. In: Proceedings of the IEEE/CVF Interna-
tional Conference on Computer Vision. 2021, pp. 6229–6238.
[15] Zachary Teed and Jia Deng. “Droid-slam: Deep visual slam for monocular, stereo, and rgb-d cameras”. In: Advances in
neural information processing systems 34 (2021), pp. 16558–16569.
[16] Sen Wang et al. “Deepvo: Towards end-to-end visual odometry with deep recurrent convolutional neural networks”. In:
2017 IEEE international conference on robotics and automation (ICRA). IEEE. 2017, pp. 2043–2050.
[17] Tinghui Zhou et al. “Unsupervised learning of depth and ego-motion from video”. In: Proceedings of the IEEE confer-
ence on computer vision and pattern recognition. 2017, pp. 1851–1858.
[18] Zihan Zhu et al. “Nice-slam: Neural implicit scalable encoding for slam”. In: Proceedings of the IEEE/CVF Conference
on Computer Vision and Pattern Recognition. 2022, pp. 12786–12796.