实时SLAM的未来及深度学习与SLAM对比
The Future of Real-Time SLAM and Deep Learning vs SLAM学习笔记
作者:家辉, 日期:2016-07-10 CSDN博客: http://blog.csdn.net/gobitan/
本文是作者(Tombone)对2015年12月18日计算机视觉国际会议实时SLAM小组讨论要点的总结。原文发表在作者的博客上,地址参见本文最后。这篇文章主要介绍了会议上的7个话题,在最后聊了一些关于深度学习讨论组的一些信息。
第一部分:为什么SLAM重要
vSALM(Visual SLAM)能够在跟踪摄像机(用于AR的手持或者头盔,或者装备在机器人上)位置和方位的同时构建三维地图. SLAM算法与ConvNets和深度学习是互补的。SLAM关注几何问题,而深度学习主要关注识别问题。如果你想让机器人走到冰箱面前而不撞到墙,就用SLAM。如果你想让机器人识别冰箱里的物品,就用ConvNets。
http://openmvg.readthedocs.io/en/latest/
SLAM相当于实时版本的SFM(Structure From Motion)。vSLAM使用摄像机,放弃了昂贵的激光传感器和惯性传感器(IMU)。单目SLAM使用单个相机,而非单目SLAM通常使用预先标定好的固定基线的立体摄像机。SLAM是基于几何方法的计算机视觉的一个主要的例子。事实上,CMU(卡内基梅陇大学)的机器人研究机构划分了两个课程:基于学习方法的视觉和基于几何方法的视觉。
SFM vs vSLAM
SFM和SLAM解决的是相似的问题,但SFM是以传统的离线的方式来实现的。SLAM慢慢地朝着低功耗,实时和单个RGB相机模式发展。下面是一些流行的开源SFM软件库。
- Bundler: 一个开源SFM工具箱,http://www.cs.cornell.edu/~snavely/bundler/
- Libceres: 一个非线性最小二乘法库(对bundle adjustment问题非常有用),http://ceres-solver.org/
- Andrew Zisserman's多视图几何Matlab函数库,http://www.robots.ox.ac.uk/~vgg/hzbook/code/
vSLAM vs 自动驾驶
自动驾驶汽车是SLAM最重要的一个应用领域。未来很多年里,在自动驾驶领域将持续地研究SLAM。
第二部分:实时SLAM的未来
Andres Davison做了一个非常精彩的关于15年来基于视觉的SLAM的总结。过去10-15年来最典型的几个SLAM系统如下:
- MonoSLAM
- PTAM
- FAB-MAP
- DTAM
- KinectFusion
Davison vs Horn: 机器人视觉的下一篇
Davision正在写一本新的机器人视觉的书,该书第一版由B.K. Horn1986年出版。另外有两本很优秀的图书值得学习。他们分别是Hartlet等著的<Multiple View Geometry>和Thrun等著的<Probabilistic Robotics>。这两本书可堪称SLAM的经典基础,必读。
参考:Davison的15年来的基于视觉的SLAM的PPT链接地址:
http://wp.doc.ic.ac.uk/thefutureofslam/wp-content/uploads/sites/93/2015/12/slides_ajd.pdf
Talk 1: Christian Kerl on Continuous Trajectories in SLAM
Talk 2: Semi-Dense Direct SLAM by Jakob Engel
LSD-SLAM在2014年的ECCV上诞生,是我比较喜欢的一个SLAM系统。LSD_SLAM是Large-Scale Direct Monocular SLAM的缩写。LSD-SLAM对SLAM研究者来说是一个重要的系统,因为它没有使用角点(corners)或者其他任何本地特征(local features)。
原文:LSD-SLAM is an important system for SLAM researchers because it does not use corners or any other local features.
Direct tracking is performed by image-to-image alignment using a coarse-to-fine algorithm with a robust Huber loss. This is quite different than the feature-based systems out there. Depth estimation uses an inverse depth parametrization (like many other SLAM systems) and uses a large number or relatively small baseline image pairs. Rather than relying on image features, the algorithms is effectively performing “texture tracking”. Global mapping is performed by creating and solving a pose graph "bundle adjustment" optimization problem, and all of this works in real-time. The method is semi-dense because it only estimates depth at pixels solely near image boundaries. LSD-SLAM output is denser than traditional features, but not fully dense like Kinect-style RGBD SLAM.
LSD-SLAM的扩展包括
Omni(全景) LSD-SLAM和Stereo(立体) SLAM。
Talk 3: Sattler on The challenges of Large-Scale Localization and Mapping
Talk 4: Mur-Artal on Feature-based vs Direct-Methods
ORB-SLAM的创建者
Raúl Mur-
Artal的演讲集中在Feature-based和Direct-methond的争论上。他坚定地站在feature-based这边。ORB-SLAM是一个优秀的开源SLMA系统。
Talk 5: Project Tango and Visual loop-closure for image-2-image constraints
谷歌的Project Tango是世界上首个试图将SLAM商业化的产品。谷歌想将SLAM能力纳入到下一代Android设备上。
Talk 6: ElasticFusion is DenseSLAM without a pose-graph
ElasticFusion是一个稠密SLAM技术,它需要类似Kinect的RGBD传感器。
Talk 7: Richard Newcombe’s DynamicFusion
Richard Newcombe是最后一个演讲者,他创办的公司最近被Oculus收购了。看到DTAM,KinectFusion和DynamicFusion背后的人如今投入到VR领域,这真是一件很酷的事。
第三部分:深度学习 vs SLAM
SLAM讨论组非常有意思。在我们进入深度学习与SLAM的重要性讨论之前,我应该提到每个讨论组的演讲者都认为:语义(semantics)对于构建一个更大,更好的SLAM系统是非常必要的。
集成语义信息进入SLAM
结束语
今天的SLAM系统帮助机器从几何的角度来理解现实世界,而深度学习则帮助机器进行合理地分类。最后与大家分享一下Newcombe和Davision在视觉SLAM中的令人兴奋的事:基于视觉的算法即将把AR/VR变成数十亿美金的市场。然而,我们不应该忘记密切关注一个万亿美金的市场,那就是机器人。SLAM机器人的时代即将到来。
以上笔记仅供学习参考,由于本人的SLAM基础尚不扎实,理解难免有偏差。要想全面理解作者的文章,请阅读原文:
http://www.computervisionblog.com/2016/01/why-slam-matters-future-of-real-time.html