文章目录
近期调研查看视觉SLAM系列文章,将自己看的一些做一个整理。
1 概要
1.1 简要
题目:Unsupervised Learning of Depth and Ego-Motion from Video, CVPR2017
论文:https://people.eecs.berkeley.edu/~tinghuiz/projects/SfMLearner/cvpr17_sfm_final.pdf
代码:https://github.com/jonathanventura/cylindricalsfmlearner
简介:提出来一种无监督框架,预测无结构视频序列的 单目深度和相机位姿估计,
1.2 背景知识
Structure from Motion:基于运动的重建,旨在利用外部监督,通过特征匹配,位姿估计或立体来消除在测试时出现的一些低纹理度、复杂几何等的一些问题。
Warping-based视点合成:最新方法可以通过深度或流来合成新视角,例如DeepStereo,Deep3D,Appearance Flows。基于warping的主要学习几何关联性中的中间部分。
视频的无监督/自监督学习:Pretest任务:ego-motion估计,追踪,时域一致性,目标运动掩码等。
重投影映射:通过单目视觉相机模型将目标视图中的点投影到源视图中的点
2. Motivation
1)由人类运动意识的形成,说明人类通过过去的视觉经历来建模当前的观察。
因此该方法想要通过观察到的序列来训练模型,预测相机运动和场景结构如图1所示。
2)一个集合视角合成系统当且仅当其场景集合的中间预测和相机位姿与物理真值对应时,才表现好。因此不难完美的几何估计/位姿估计会被 看上去合理的合成视角欺骗,模型也会在另一个场景或不同表现的结构下失败。
–>因此,目标就是建模整个视角合成流程作为卷及神经网络的输入,因此,通过对大规模视频数据进行视点合成的元任务训练,网络被迫学习深度估计和相机姿态估计等中间任务,从而对视觉世界做出一致的解释。
3. 思想
用视点合成作为监督信号,实现端到端的学习。
整体的框图如图2所示,对于深度网络(Depth CNN),输入的是目标视图 I t I_t It,输出像素点的深度 D ^ t ( p ) \hat{D}_t(p) D^t(p).对于位姿网络(Pose CNN),输入的是目标视图 I t I_t It和源视图 I s I_s Is(不止一个,比如 l t − 1 l_{t-1} lt−1与 l t + 1 l_{t+1} lt+1),输出的是源视图相对于目标视图的位姿 T ^ t → t − 1 \hat{T}_{t \rightarrow t-1} T^t→t−1和 T ^ t → t + 1 \hat{T}_{t \rightarrow t+1}