Cascade-MVSNet

Cascade Cost Volume for High-Resolution Multi-View Stereo and Stereo Matching

摘要

现有的基于深度学习的多视图立体方法,通常是通过构建3D代价体,通过正则化代价体回归深度图或者视差图。分辨率越高,所消耗的内存越高。
本文提出了一个级联结构,由粗到细的思想将前一段的深度预测图用于下一阶段的输入,减少下一阶段的深度预测范围,从而减少内存的消耗。

引言

基于深度学习的多视图立体和立体匹配,通常根据一组假设的深度值和warp后的特征图来计算代价体,最终通过通过正则化来回归深度图或者视差图。这种方法受分辨率的限制,通常通过下采样特征图生成代价体,随后通过深度图上采样或者细化的方式来输出最终的高分辨率结果。
如何实现高分辨率的输出?Point-MVSNet通过较小的代价体生成初始的深度估计,通过点的迭代来不断优化深度图。P-MVSNet通过构建额外的2DCNN网络来细化深度图。

网络

Cascade-MVSNet_第1张图片

1.特征提取

MVSNet此类的特征提取,采用的是高层特征图构建的,包包含了顶层的语义特征,但缺乏了底层的细节描述。换句话说,此类的方法对提取全局的信息更为有利,但却缺乏细节。本文采用的特征提取方法为特征金字塔网络,用高分辨率的特征图来构建高分辨率的代价体,分别为原图像大小的1/16,1/4,1。

2.构建网络

基于深度学习的MVS网络里,构建代价体的基本流程为:

  1. 在参考相机视锥空间内划分好深度平面,即通过稀疏重建确定好深度范围,根据深度范围和实际场景的情况划分相应的深度平面(把蛋糕分成几份的意思)
  2. 通过单应性变换,将N-1张源图像提取的特征图扭曲(warp)到划分好的假设深度平面中,构成特征体(Feature volume)。
  3. 最后,通过聚合操作,把特征体转变为代价体。
  • 对于遮挡、反光、无纹理、重复等曲面,一般通过3DCNN来聚集上下文信息,对代价体进行正则化操作。
  • MVSNet使用正平行平面(fronto-parallel planes)作为深度假设平面。
  • 采用了基于方差的相似性度量方案,以适应任意图像数量的输入。

Cascade 代价体优化内容

假设深度范围

  1. 确定第一段的深度范围,能够覆盖整个场景,记作 R 1 R_1 R1
  2. 由第一阶段预测完成的深度作为参考缩小第二阶段的深度范围, R k + 1 = R k ⋅ ω k R_{k+1}=R_k·{\omega}_k Rk+1=Rkωk R k R_k Rk为第k阶段的深度范围, ω k \omega_k ωk是缩减因子。

深度间隔
深度间隔越大,生成的深度图质量越低。

  1. 将第一阶段的深度假设间隔记为 I 1 I_1 I1,最开始的深度间隔较大,用于生成粗略的深度估计。
  2. I k + 1 = I k ⋅ p k I_{k+1}=I_k\cdot p_k Ik+1=Ikpk,在后续阶段将深度间隔缩小,用于更为精细的深度间隔生成更为详细的深度估计值

深度假设平面数量
深度假设平面由公式 D k = R k I k D_k=\cfrac{R_k}{I_k} Dk=IkRk确定,MVSNet中由于代价体的分辨率为固定,当生成高分辨率的深度图时, D k D_k Dk的值需要更大,但显存消耗和运行时间成本也随之增大,级联结构由于 R k R_k Rk的值不断减小,则可以在保证分辨率的同时将 D k D_k Dk的值减小。

空间分辨率
在特征金字塔网络中每阶段输出的特征图分辨率翻倍,同样的每个阶段将代价体的空间分辨率翻倍。一共有N个阶段,第 k t h k^{th} kth阶段的分分辨率定义为 W 2 N − k × H 2 N − k {\cfrac{W}{2^{N-k}}\times {\cfrac{H}{2^{N-k}}}} 2NkW×2NkH,文中N=3。
Warp 操作
将第 ( K + 1 ) t h {(K+1)}^{th} (K+1)th阶段的单应性变换(Homography warp)改写为
在这里插入图片描述

d k m d_k^m dkm表示第k阶段的第m个像素的预测深度值d。
Δ k + 1 m \Delta _{k+1}^m Δk+1m表示第k+1阶段的第m个像素的待学习的残差深度。

损失函数

包含了N个阶段的N-1个中间输出和一个最终输出
在这里插入图片描述

L k L^k Lk表示第k阶段的损失
λ k \lambda^k λk第k阶段对应的损失权重

总结:Cascade MVSNet可以每个阶段都可以看作MVSNet的操作,不同的是它每个阶段都通过不同操作来减少显存消耗,第一阶段用原图的1/16大小生成深度图,之后的每个阶段都是通过上一阶段的输出来改变初始的深度假设范围和深度平面,达到高分辨深度图预测的效果。

结果(只考虑DTU数据集)

Cascade-MVSNet_第2张图片

Cascade-MVSNet_第3张图片

你可能感兴趣的:(论文阅读,深度学习,人工智能,计算机视觉)