twice论文-深度估计-Don’t Forget The Past: Recurrent Depth Estimation from Monocular Video

这篇论文大体看下来,感觉加了个LSTM,这样可以使视频在每一帧有时空上的连续性。

0 摘要:

就是说像自动驾驶之类的需要连续的更新深度信息,但是目前得到的深度都是独立帧的,视频的帧与帧之间是相互独立的,我们的方法主要的是产生一个让视频帧之间有联系的,即基于时间的一系列的深度图。并且,我们把三种估计深的方法形成一个常规的框架,然后我们把这些框架和卷积LSTM结合起来这样就可以产生具有时空结构的深度进而产生更加准确的深度估计。我们的方法是灵活的,就是说他可以任何的深度模式相结合。我们首先让循环网络和自我监督的单目深度估计和补全结合

1 介绍

 

2 相关工作

主要介绍了监督深度估计,自我深度估计,和使用深度相机或者雷达进行深度补全,以及介绍了通过视频进行深度估计的相关研究,因为本文就是通过视频进行研究的。

 

3.方法

3.1 监督学习的深度估计

3.2自我监督的深度估计

3.3深度补全

3.4本文学习时间序列的深度图

就是说上面的三种方法虽然都进行了深入的研究但是视频在同一时刻的每一帧都是单独的,没有相互关系。自我监督的方法也仅仅是使用了邻近的帧在训练的时候来计算视图的合成损失,就是说大量的丰富的,长的序列结构关系没有被挖掘出来。所以本节展示一个框架去拓展上面三个方法让他们可以可以在训练和测试的时候用到基于时间的数据序列。

我们将深度恢复问题定义为从多模态数据(即图像和稀疏深度图)的时空序列到数据(即稠密深度图)的时空序列转换的问题,也就是说我们在自我监督的基础上改进的呗。我们要求的是当前时刻的密集深度图\hat{D^{_{t}}},给定之前k个时候的密集深度图

(\hat{D_{t-1}},\hat{D_{t-2}}......\hat{D_{t-k}})(\hat{D_{t-1}},\hat{D_{t-2}}........\hat{D_{t-k}}),当前时刻图像的编码特征X_t{},则

(我不知道这个为什么求最小,理解错了吗)

那么上述是理论上增加时空相关性,实现的时候对时空关系进行建模,我们采用了ConvLSTM网络,并且添加添加上述的骨干网络进行图像的深度预测,也就是把ConvLSTM放在了encoder的后面,encoder产生X_t{},然后ConvLSTM的输入和输出入下:

解码器,生成深度图:

4  训练框架

网络架构

整体这个网络是由一个深度预测网络和姿态网络构成。他们两个的编码器都是单独的ResNet-18,对于解码器,深度网络包含4个单元的向上卷积块,整个深度网络的运行过程是这样的:编码器的输出链接ConvLSTM,ConvLSTM接受来自上一个帧的隐藏状态和cell 状态,然后改网络的输出是以不同的空间分辨率从解码器的每个单元中提取出来的视差,姿态网络的解码器是conv(1)和conv(3)堆叠的块,产生一个6元向量,代表了旋转和平移,即外参,因为我们最终要求出来深度,所以要使用外参

ConvLSTM的一些训练的策略

包括隐藏状态的初始化,解决过拟合的问题。

5 实验

5.1 分别和监督,自监督和补全的baseline进行比较分析

5.2 消融研究

预训练的隐藏状态和初始为0的隐藏状态的比较

激活函数使用ELU来代替Tanh去解决梯度消失的问题

训练的序列长度的问题

6 结论

改论文提出对于单目视频和稀疏深度进行估计基于时间序列的深度图这样的一个新的方法,就是使用循环网络来达到时空相关的数据关系,改网络对于监督深度估计,自我监督深度估计和补全进行了一个应用。

有错误,继续改进

你可能感兴趣的:(立体视觉)