深度学习在SLAM中的应用
来源:互联网 发布:财务报表数据下载 编辑:程序博客网 时间:2024/05/21 23:10
转自AI研习社https://mp.weixin.qq.com/s/uz1GoOQiUtgfUkKkqZOntA
简单介绍几个比较有代表性的工作, 分为以下几类:
I. 相机重定位(Relocalization)
Deep Learning 和 SLAM 结合的开山之作 ,剑桥的论文:PoseNet 。该方法使用 GoogleNet 做了 6 自由度相机 pose 的 regression。训练数据是带有 ground truth pose 的场景帧。
图 1. PoseNet,第一行是原图,第二行是根据所估计的相机姿态做 3D 重建后的场景图,第三 行是原图和重建后的场景的重叠。
论文:Alex Kendall, Matthew Grimes, Roberto Cipolla, "PoseNet: A Convolutional Network for Real-Time 6-DOF Camera Relocalization", in ICCV 2015, https://arxiv.org/abs/1505.07427
代码: https://github.com/alexgkendall/caffe-posenet
II. 特征点提取与匹配:
(1) 帧帧之间的匹配是传统特征法 SLAM 的重要环节。
这里首先推荐一下 EPFL 的文章 LIFT (Learned Invariant Feature Transform ),通过深度神经网络学习图像中的特征点。pipeline 如图 2,LIFT 分别计算了 Detector, Orientation Estimator 以及 Descriptor 。
图 2. LIFT pipeline
和 SIFT 特征相比,LIFT 能够提取出更稠密的特征点,如图 3 所示。
图 3. SIFT(左)和 LIFT(右)提取出来的特征点对比
论文:Kwang Moo Yi, Eduard Trulls, Vincent Lepetit, Pascal Fua, "LIFT: Learned Invariant Feature Transform", in ECCV 2016, https://arxiv.org/abs/1603.09114
代码:http://t.cn/RiepX4E
(2)Toward Geometric Deep SLAM
Magic leap 的文章:Toward Geometric Deep SLAM ,介绍了一种非常出色的特征点(角点)提取和匹配的方法,如图 4 所示:
图 4. Deep Point-Based Tracking
来看看这牛逼闪闪的效果,提出来的点不多不少,准确的定位到了物体的每个角点,简直是强迫症的福音!
图 5. 特征点的提取效果
论文中还和 FAST,Harris 等经典特征提取法做了比较,本文的方法对于噪声比较 robust,提取的特征点看着也比 FAST,Harris 舒服,有兴趣的可以细读文章。我相信本文的方法在今后的特征法 SLAM 系统中定能大放光彩。
论文:Daniel DeTone, Tomasz Malisiewicz, Andrew Rabinovich, “Toward Geometric Deep SLAM”,https://arxiv.org/abs/1707.07410
代码:还没有
III. 端对端视觉里程计:
(1)今年 CVPR 的 SfM-Learner。
文章的核心思想是利用 photometric consistency 原理来估计每一帧的 depth 和 pose。photometric consistency 就是对于同一个物体的点,在不同两帧图像上投影点,图像灰度应该是一样的。论文方法的大体过程请看图 6。
图 6. SfM-Learner 的训练和测试大体过程
各位回忆一下直接法 SLAM 的经典:LSD-SLAM (LSD-SLAM: Large-Scale Direct Monocular SLAM,http://t.cn/RWrwBuu),有没有感觉这篇文章的核心思路和 LSD-SLAM 如出一辙?本质都是优化 photometric error。 来看看 SfM-Learner 的 Loss(最终的 Loss 在此基础上做了优化),
再看看 LSD-SLAM 里面,需要优化的 photometric error 函数:
有没有很像?
论文:Tinghui Zhou, Matthew Brown, Noah Snavely, David G. Lowe, "Unsupervised Learning of Depth and Ego-Motion from Video", in CVPR 2017, https://arxiv.org/abs/1704.07813
代码:https://github.com/tinghuiz/SfMLearner
(2)今年的新文章:SfM-Net。
听名字就和 SfM-Learner 很像,这篇文章和 SfM-Learner 都是出自 Google。论文的核心思想也是利用 photometric constancy 来计算 pose,depth。除此之外,作者还计算了光流,scene flow,3D point cloud 等。可以说是 SfM-Learner 的升级版。
图 7. SfM-Net 网络结构
论文:Sudheendra Vijayanarasimhan, Susanna Ricco, Cordelia Schmid, Rahul Sukthankar, Katerina Fragkiadaki, “SfM-Net: Learning of Structure and Motion from Video”, Learning of Structure and Motion from Video(https://arxiv.org/abs/1704.07804)
代码:还没有
(3)DeMoN
另外一篇和 SfM-Net,SfM-Learner 比较相似的文章:DeMoN,使用 pose, depth 作为监督信息,来估计 pose 和 depth。最后的效果非常不错。网络的核心部分如图所示
图 8. DeMoN 网络核心结构
论文:Benjamin Ummenhofer, Huizhong Zhou, Jonas Uhrig, Nikolaus Mayer, Eddy Ilg, Alexey Dosovitskiy, Thomas Brox, "DeMoN: Depth and Motion Network for Learning Monocular Stereo", in CVPR 2017,https://arxiv.org/abs/1612.02401
代码:https://github.com/lmb-freiburg/demon
IV. 语义 SLAM
CNN-SLAM。
该文章使用直接法估计相机姿态,使用 CNN 来估计 Depth,以及做图像语义分割。然后将 Geometry 和 semantic 融合起来,生成具有语义信息的 map。
图 9. CNN-SLAM pipeline
论文:Keisuke Tateno, Federico Tombari, Iro Laina, Nassir Navab, "CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction", in CVPR 2017, https://arxiv.org/abs/1704.03489
代码:还没有
总结一下
从目前的研究情况来看,深度学习在 SLAM 这个问题上还没有完全取代传统方法的能力。希望各位同僚继续努力!
跳出 SLAM,说点题外话,利用深度强化学习来进行端对端的机器人导航,已经有了不错的结果。人类在环境中导航,不也是直接输入 image,输出 action 吗?有兴趣的可以看看这两篇文章:
(1) [1702.03920] Cognitive Mapping and Planning for Visual Navigation
https://arxiv.org/abs/1702.03920
(2) [1609.05143] Target-driven Visual Navigation in Indoor Scenes using Deep Reinforcement Learning
https://arxiv.org/abs/1609.05143
- 深度学习在SLAM中的应用
- 深度学习在图像分类中的应用
- 深度学习在文本分类中的应用
- 深度学习在NLP中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在OCR中的应用
- 深度学习在目标检测中的应用
- 深度学习在自动驾驶中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在自然语言处理中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在情感分析中的应用
- 深度学习在目标跟踪中的应用
- 深度学习在情感分析中的应用
- 深度学习在CTR中的应用
- MySQL5.7.20安装过程 和常用指令
- MySQL
- (转)智能投顾这么干才靠谱!BondIT获复星B轮投资
- JUnit(四)高级之规则_MD
- 纸带 线段树+离散化
- 深度学习在SLAM中的应用
- 畅通工程之局部最小花费问题 (并查集)
- ARP协议数据报
- 多表查询之子查询,in,any,all,exists,
- 详解DNS的常用记录(下):DNS系列之三
- uva11090 给你一个有向图,求出平均权值最小的环
- ScrollView中EditText导致自动滚动问题
- 一、FFMPEG源码编译
- (转)“AI售前”,一根被忽略的敏感神经