ManyDepth

Apr 25, 2024
1 views
3D Model

引言

常用的自监督深度估计方法常使用(1)单帧信息;(2)多帧信息(视频序列),来预测输入图片的深度。本文提出的深度估计方法是基于视频序列的深度估计方法。

在基于视频序列的深度估计方法中,传统方法(比如ORB SLAM等)通过相邻帧的特征匹配来得到对应的特征点,通过特征点的对应关系来估计相机位姿变换,同时获得特征点的深度信息,这本身就是无监督的方法。

而自监督深度学习中,我们常通过两个网络(1)深度网络;(2)位姿网络,来同时得到相邻帧的深度和相机位姿信息,然后通过精心设计的损失函数使两个网络完成自洽并收敛。这达到了一种端到端的训练,我们只需要简单地将视频序列和一些必要的参数(比如相机内参 $K$ )输入网络,即可完成训练。

经过上述描述,我们可以意识到,在基于视频序列的深度估计方法中上下文信息是非常重要的(不仅在训练时,更在推理时)但是现在的很多方法仅仅在训练时使用这些上下文信息(这是必要的)而在推理时忽略了上下文信息,直接将单帧图像输入网络得到其深度图。就算有一些方法使用上下文信息,也是通过RNN间接使用,这违反了相邻帧间的直接关系,所以效果可想而知是不够理想的。

本文提出了ManyDepth,可以在推理时使用相邻帧信息得到本帧深度图,同时也保留了通过单帧推理深度的能力。除此之外,本文的另外两大贡献有:

(1)给出了处理移动物体和相机静止的一个高效的损失函数和一种训练方法。

(2)首次给出了处理尺度不一致性的 Adaptive Cost Volume 方法(通过学习得到 cost volume extents ,而不是直接设置为参数)。关于 cost volume 笔者也是一知半解,[1]中给出了一个解释 cost volume 的知乎博客。