论文阅读: GeoNet: Unsupervised Learning of Dense Depth, Optical Flow and Camera Pose(CVPR2018)

CVPR2018_GeoNet: Unsupervised Learning of Dense Depth, Optical Flow and Camera Pose
提出了一个联合估计深度、光流和pose的网络。
,这是在left-right consistency的无监督估计、sfmlearner的基础上开展的又一作品。

该论文主要贡献点:
- 提出了一个几何一致性代价(geometry consistency loss),来解决光照变化等情况

  • 解决移动物体和遮挡:通过rigid flow and object motion两种机制

同样在介绍中,也表示深度学习在处理弱纹理区域的优势。
同时该实现能实现比较快的深度预测

1.基本结构和代价函数

如图:
论文阅读: GeoNet: Unsupervised Learning of Dense Depth, Optical Flow and Camera Pose(CVPR2018)_第1张图片
总体分为两步:第一步是重建所有刚体的空间几何信息:对图片先进性深度估计,然后估计位姿;第二步在此基础上用一个residual flow learning module来处理物体移动问题

第一步:DepthNet, PoseNet

第一步不考虑视频中运动的物体
DepthNet
对单帧图像进行深度估计

PoseNet
将所有序列的图像按照channel concat到一起,一起输入来一次性训练所有帧之间的Pose.
代价函数为:
根据之前循环得到的深度和位姿,可以计算重投影光度误差:
这里写图片描述
以及edge-aware depth smoothness loss:
论文阅读: GeoNet: Unsupervised Learning of Dense Depth, Optical Flow and Camera Pose(CVPR2018)_第2张图片

第二步:ResFlowNet

作者基于ResNet来实现,用来处理运动物体,即形成所谓residual non-rigid flow。

ResFlowNet的初始值来自于第一步得到的光流F1,输出移动物体相当于当前帧的光流F2,则移动物体的真实为F1+F2。

几何前后一致性(geometric consistency enforcement)

和普通前后一致性检查相同,即在每两帧之间进行光流一致性检查(作者在此会特意略过有遮挡的画面部分):
论文阅读: GeoNet: Unsupervised Learning of Dense Depth, Optical Flow and Camera Pose(CVPR2018)_第3张图片
只是这儿作者提到只在没有遮挡的地方进行检查

最终的代价函数

这里写图片描述

除此之外,作者还基于FlowNet做了改进来估计光流,作为Optional.

2.结果

速度:每帧的深度估计、光流预测、位姿预测分别花了15ms,45ms,4ms。
精度:深度估计比sfmLearner更好,但比left-right consistency的双目差一点;Pose估计和sfmlearner一样的验证方式(kitti00-08训练,09-10测试),结果比ORBSLAM更好一点,比sfmLearner更好一点。
尺度:
需要注意的是,所有无监督单目估计的深度结果都需要乘上一个尺度,因此最终的Pose也是需要乘上一个尺度才能和ORBSLAM2的结果进行比较的。

作者提到两个问题:
1.这样大的优化容易陷入局部最优解;
2.当画面中出现占据画面太大的移动物体时,预测系统容易判别失败。

一个小收获:SfmLearner有更新,更正了之前的错误。

你可能感兴趣的:(深度,位姿估计)