RC-MVSNet:无监督的多视角立体视觉与神经渲染--论文笔记(2022年)

摘要1 引言2 相关工作2.1 基于监督的MVS2.2 无监督和自监督MVS2.3 多视图神经渲染

3 实现方法3.1 无监督的MVS网络3.2 参考试图合成3.3 深度渲染一致性3.4 端到端网络优化

4 实验分析4.1 数据集4.2 实施细节4.3 在测试集上的性能4.4 消融实验

5 总结

Chang, D. et al. (2022). RC-MVSNet: Unsupervised Multi-View Stereo with Neural Rendering. In: Avidan, S., Brostow, G., Cissé, M., Farinella, G.M., Hassner, T. (eds) Computer Vision – ECCV 2022. ECCV 2022. Lecture Notes in Computer Science, vol 13691. Springer, Cham. https://doi.org/10.1007/978-3-031-19821-2_38 Source Code Link

摘要

(问题–方法–效果) 【问题】在不同的视图之间找到准确的对应关系是无监督的多视图立体视觉(MVS)的致命弱点。现有的方法建立在相应像素具有相似光度特征的假设上。然而,在真实场景中,多视图图像观察到非兰伯表面和遭遇遮挡。【方法】在2022年8月,我们提出了一种新的神经渲染方法(RC-MVSNet)来解决这种视图间对应的模糊性问题。具体地说,我们施加深度渲染一致性损失来约束靠近对象表面的几何特征,以减少遮挡。同时,我们引入了一个参考视图合成损失,以产生一致的监督,即使对非兰伯表面。【效果】在DTU和坦克和寺庙数据集上进行的大量实验表明,我们的RC-MVSNet方法在无监督的MVS框架上取得了最先进的性能,并且与许多监督方法相比具有一定的竞争力。

1 引言

多视图立体视觉(Multi-View Stereo,MVS)是三维计算机视觉中一项长期存在的基本任务。MVS的目标是从多视点图像和相应的校准摄像机中恢复真实场景的三维点云。近年来,深度学习的广泛应用导致了端到端MVS深度估计网络的出现。一种流行的基于学习的方法MVSNet将来自不同摄像机视图的RGB信息编码为一个代价体,并预测用于点云重建的深度图。后续的全监督方法进一步改进了神经网络架构,降低了内存使用,并在几个基准测试集上具有最突出的深度估计性能。但那些方法严重依赖于监督真实的深度,这需要一个深度传感器来收集训练数据。它将这些方法限制在有限的数据集和主要的室内场景中。为了使MVS在更一般的现实场景中实用,考虑基于无监督学习的替代方法是至关重要的,这些方法可以提供与有监督的方法相比具有竞争力的精度,而不需要任何真实深度。

现有的无监督MVS方法基于光度一致性假设,该假设即属于同一三维点的像素在不同视图方向下具有相同的颜色属性。然而,在现实世界的环境中,如图2所示,遮挡,反射,非兰伯特面、不同的相机曝光和其它变量会使这种假设无效。因此,不准确匹配的点会导致错误的几何重建。虽然有学者提出使用语义线索来消除立体匹配中的歧义,但由于其高度依赖于预先训练的语义特征提取模型(带监督)的准确性,改进非常有限。为了消除与监督的不一致,在本文中,我们建议使用神经渲染来解决在视图依赖的光度效应和遮挡的情况下的模糊性。

最近,人们对新的视图合成越来越感兴趣,特别是随着神经辐射场的引入,它可以模拟依赖的光度效应的基于可微体素渲染的视图。虽然最初关注的是使用输入密集采样视图对每个场景优化,但后续方法建议使用二维CNN编码器,即使用很少的输入图像预测新的视图。除了视图依赖辐射来定义沿视图光线的颜色外,这些方法还学习体积密度,当合成光线时,体积密度可以解释为深度。值得注意的是,深度是以一种纯粹的无监督的方式来学习的。然而,由于主要目标是新的视图合成,从体积密度获得的深度往往是不准确的。在我们的方法中,我们提出体素渲染方法构建新的损失函数,可以解决视图依赖效应和遮挡,同时沿用MVS方法中使用的深度表示,以确保局部准确和平滑的深度预测。

为此,我们引入了RC-MVSNet,一种新的端到端可微分的无监督多视图立体视觉网络。结合视图依赖渲染和结构化深度表示的优点,我们的方法在竞争激烈的DTU数据集中实现了最先进的深度预测结果,并在坦克和寺庙数据集的超范围样本上展现了鲁棒性能。综上所述,我们的贡献如下:

我们提出了一种基于神经体素渲染的参考视图合成损失,以生成RGB监督,能够解释视图依赖的光度效应。我们引入高斯-均匀混合采样来学习接近物体表面的几何特征,以克服现有的无监督MVS方法中存在的遮挡伪影。我们引入了一种深度渲染一致性损失,通过深度先验来细化初始深度图,并确保预测的鲁棒性和平滑性。

2 相关工作

2.1 基于监督的MVS

许多监督方法已经提出使用CNN网络来预测RGB输入的深度图和深度图过滤来重建点云。大多数最先进的方法采用3D代价体。MVSNet作为一项具有代表性的工作,通过单应性变换将相机参数和特征编码为代价体,并通过三维CNN对体积进行正则化,以生成深度预测。之后有一些工作通过引入多阶段架构和从粗到细的方式学习深度预测,提高了MVSNet的性能和降低了内存消耗。此外,还有用卷积循环的GRU或LSTM单元代替了密集的三维卷积。然而,对真实深度的依赖限制了它们在特定数据集的应用,因此,探索无监督的方法是有必要的。

2.2 无监督和自监督MVS

端到端无监督和基于伪标签的多阶段自监督学习在三维视觉中起着关键的作用,特别是在多视图重建系统中。光度一致性的基本假设为无监督的MVS提供了可行性。例如,Unsupvised MVS提出了第一个基于端到端学习的无监督MVS框架:相邻视图用于测得深度反向变换成参考视图,并强制执行光度一致性和结构相似性(the structured similarity of image,SSIM)来最小化参考图像和变换后的图像之间的差异。JDACS提取的语义特征的交叉视图一致性,并通过非负矩阵分解对分割图进行监督。然而,它仍然需要一个预先训练的语义特征提取主干,且交叉视图语义一致性的收敛不稳定,无法提供可靠的监督。U-MVSNet采用流深一致性损失来解决有歧义的监督问题。利用密集的二维光流对应关系来生成具有不确定性感知一致性的伪标签,在一定程度上提高了监督能力。然而,这种方法不能以端到端的方式进行训练,因为它需要复杂的预训练和微调。Self-supervised CVP-MVSNet也提出通过无监督预训练出深度伪标签,然后进行迭代自监督训练来细化伪标签;但它仍然受到有歧义的监督影响。此外,这些无监督和自监督的方法缺乏一个遮挡感知模块学习来自的不同方向的特征,导致点云重建不完整。

相反,我们的简单但有效的模型通过参考视图合成损失直接学习场景的几何特征。这大大降低了训练的复杂性,并减轻了有歧义的光度监督。它还通过类似于NeRF的渲染,避免了由遮挡引起的问题。

2.3 多视图神经渲染

近年来,各种神经渲染方法被提出,主要集中于新视图合成的任务。特别是,神经辐射场用一个具有位置和方向的连续隐式函数表示场景用于高质量的视图合成;一些后续工作,提高了其效率和性能。NeRF也有一些扩展,它们引入了多视图信息,以增强视图合成的泛化能力。MVSNeRF提出利用平面扫描代价体,已广泛应用于多视图立体视觉和几何感知场景理解,并将其与体素渲染相结合,用于神经辐射场重建;然而,它不能在无监督的情况下产生高质量的深度预测。NerfingMVS使用SfM的稀疏深度点来学习完整的深度来指导NeRF的优化过程。我们的方法利用了精确的神经渲染和代价体的有效泛化能力,并提供了基于端到端无监督学习的精确深度估计,这超过了以往所有的无监督多视角立体视觉方法,并演示了室内对象和超范围的室外场景的精确重建。

3 实现方法

在本节中,我们描述了RC-MVSNet。给定N个图像作为输入,以及它们相应的相机的内参K和外参(R,T),我们的方法预测了在参考相机视图中的深度图。整个流程图如图3所示。

它由一个主干分支和一个辅助分支组成。主干建立在Cascade MVSNet基础上,它以从粗到细的方式预测深度图 。辅助分支建立在神经辐射场基础之上,除了几何图形之外,它也建模了与视图相关的场景外观。使用体素渲染,合成参考视图,并与输入图像进行比较,即使在视图依赖效应的情况下,也能产生准确的监督。为了保证网络分支之间的几何一致性,在引入了额外的深度渲染一致性损失,即使在遮挡的情况下也能获得更完整和准确的深度预测。请注意,在训练过程中,这两个分支同时进行优化,相互提供监督。在推理过程中,只使用主干网来进行深度预测。

3.1 无监督的MVS网络

主干网络密切遵循Cascade MVSNet架构。输入图像

(

I

j

)

j

=

1

N

(I_j) _{j=1}^N

(Ij​)j=1N​最初使用一个共享的2D U-Net进行编码,从而生成像素级特征。然后,在参考相机的坐标系中构造了一个特征代价体。利用摄像机的内参和外参将每个代价体的体素位置投影到每个输入图像中,并通过双线性插值法查询像素特征。变换后的特征体

(

V

j

)

j

=

1

N

(V_j) _{j=1}^N

(Vj​)j=1N​,通过计算特征方差,跨视图融合成一个特征体C:

C

=

Var

(

V

1

,

,

V

N

)

=

j

=

1

N

(

V

j

V

ˉ

j

)

2

N

    

(

1

)

C=\operatorname{Var}\left(V_1, \cdots, V_N\right)=\frac{\sum_{j=1}^N\left(V_j-\bar{V}_j\right)^2}{N}~~~~(1)

C=Var(V1​,⋯,VN​)=N∑j=1N​(Vj​−Vˉj​)2​    (1) 使用3D U-Net进一步细化特征代价体C,最后以从粗到细的方式在参考视图中输出一个深度图。

光度一致性 为了监督在没有任何真实深度的情况下的深度图预测,现有方法强制参考图和其他源输入视图之间的光度一致性。其关键思想是在被变换到参考视图后,将参考图像

I

1

I_1

I1​和任何源图像

I

j

I_j

Ij​之间的相似性最大化。给定相应的内参K,参考视图到源视图的相对转换T,以及参考视图中预测的深度图D,我们通过逆变换将参考图像中的任何像素pi(齐次符号)变换到源图像:

p

^

i

=

K

T

(

D

s

(

p

i

)

K

1

p

i

)

    

(

2

)

\widehat{p}_i =KT(D_s(p_i)·K^{-1}p_i)~~~~(2)

p

​i​=KT(Ds​(pi​)⋅K−1pi​)    (2) 通过在变换后的像素位置

p

^

i

\widehat{p}_i

p

​i​对源图像的颜色值进行双向采样,即

I

^

1

j

(

p

i

)

=

I

j

(

p

^

i

)

\widehat{I}_1^j(p_i)=Ij(\widehat{p}_i)

I

1j​(pi​)=Ij(p

​i​),从而获得第j个新参考图像

I

^

1

j

\widehat{I}_1^j

I

1j​。除了获得新参考图像

I

^

1

j

\widehat{I}_1^j

I

1j​之外,还生成了一个二值掩模

M

j

M_j

Mj​,掩盖了投影在源图像边界之外的无效像素。在无监督的MVS系统中,所有的N−1源视图都被逆变换成参考视图来计算光度一致性损失:

L

P

C

=

j

=

2

N

1

M

j

1

(

(

I

^

1

j

I

1

)

M

j

2

+

(

I

^

1

j

I

1

)

M

j

2

)

    

(

3

)

\mathcal{L}_{P C}=\sum_{j=2}^N \frac{1}{\left\|M_j\right\|_1}\left(\left\|\left(\hat{I}_1^j-I_1\right) \odot M_j\right\|_2+\left\|\left(\nabla \hat{I}_1^j-\nabla I_1\right) \odot M_j\right\|_2\right)~~~~(3)

LPC​=j=2∑N​∥Mj​∥1​1​(

​(I^1j​−I1​)⊙Mj​

​2​+

​(∇I^1j​−∇I1​)⊙Mj​

​2​)    (3) 这里,∇表示像素级梯度,⊙表示像素级乘积。

3.2 参考试图合成

光度一致性假设不同输入视图之间的像素颜色一致,而这在反射材料中常见的视图依赖效应并不成立。此外,如果参考视图中的某些像素在匹配的源视图中被遮挡,则会强制执行不正确的颜色相似性。为了解决这些缺点,而不是使用容易出错的源图像变换,我们建议使用神经辐射场合成源图像的参考视图,通过网络学习如何处理视角依赖效应和遮挡。

隐式神经体结构 与主干分支的代价体C类似,隐式神经体积 C’ 也通过计算特征方差构造,如等式 (1)中定义。但是,由于我们希望仅使用从源视图中获得的信息来合成参考视图,因此我们从变换后的体积

(

V

j

)

j

=

2

N

(V_j)_{j=2}^N

(Vj​)j=2N​中计算方差体 C’ ,而不使用参考特征体积

V

1

V_1

V1​。因此,我们收集了N−1个源视图的特征,并应用3D U-Net U(·) 来学习隐式神经体F,我们将其表示为F=U(C’)。

点特征聚合 要恢复场景的几何图形和外观,从参考照相机中心沿

ϕ

ϕ

ϕ 的方向发射光线。对于沿射线的每个点

q

R

q \in \mathbb{R}

q∈R,我们通过双周期采样源图像查询RGB值

=

(

I

j

[

x

j

,

y

j

]

)

j

=

2

N

ℓ= (I_j[x_j, y_j])_{j=2}^N

ℓ=(Ij​[xj​,yj​])j=2N​,其中

x

j

y

j

x_j和y_j

xj​和yj​表示点q的二维位置。除了这些性质外,我们还通过在位置q处的三线性插值,从隐式神经体F中获得了一个神经特征f = F (q)。这些神经特征克服了传统的神经辐射场方法的糟糕泛化性,该方法需要对每个场景进行训练或微调,通过从几何感知的代价体回归属性,例如,在我们的例子中是隐式的神经体。这提高了我们的方法在与不同训练集上的鲁棒性。这些输入特征被连接到点特征中,我们使用多层感知机MLP M(·)将这些特征转换为预测的体密度 σ 和颜色 c = [r,g,b]。整个过程可以概括为:

σ

,

c

=

M

(

q

,

ϕ

,

f

,

)

    

(

4

)

σ,c = M(q,ϕ,f,ℓ)~~~~(4)

σ,c=M(q,ϕ,f,ℓ)    (4)

[4] Chen, A., Xu, Z., Zhao, F., Zhang, X., Xiang, F., Yu, J., Su, H.: Mvsnerf: Fast generalizable radiance field reconstruction from multi-view stereo. arXiv preprint arXiv:2103.15595 (2021) 3, 5, 7, 8, 23 [15] Mildenhall, B., Srinivasan, P.P., Tancik, M., Barron, J.T., Ramamoorthi, R., Ng, R.: Nerf: Representing scenes as neural radiance fields for view synthesis. In: European conference on computer vision. pp. 405–421. Springer (2020) 3, 4, 7, 8, 23 [17] Roessle, B., Barron, J.T., Mildenhall, B., Srinivasan, P.P., Nießner, M.: Dense depth priors for neural radiance fields from sparse input views. arXiv preprint arXiv:2112.03288 (2021) 7

根据之前的工作[4,15,17],我们使用位置编码对位置q和方向d进行编码。

参考视图合成损失 在NeRF中,我们沿着相机射线

r

(

t

)

=

o

+

t

ϕ

r (t) =o+tϕ

r(t)=o+tϕ采样K个候选点,其中o是相机原点,ϕ是像素的观察方向。对于从近到远平面范围内的样本距离

t

k

t

n

t

k

t

f

t_k(t_n≤t_k≤t_f)

tk​(tn​≤tk​≤tf​),我们查询相应的密度

σ

k

σ_k

σk​和颜色

c

k

c_k

ck​。要计算像素级的颜色

C

^

(

r

)

\widehat{C}(r)

C

(r),颜色值沿光线

r

(

t

)

r (t)

r(t)积分:

C

^

(

r

)

=

k

=

1

K

w

k

c

k

    

(

5

)

\hat{\mathbf{C}}(\mathbf{r})=\sum_{k=1}^K w_k c_k~~~~(5)

C^(r)=k=1∑K​wk​ck​    (5) 这里

w

k

=

T

k

(

1

e

x

p

(

σ

k

δ

k

)

)

w_k = T_k(1−exp(−σ_kδ_k))

wk​=Tk​(1−exp(−σk​δk​))为积分权值,其中

δ

k

=

t

k

+

1

t

k

δ_k = t_{k+1}−t_k

δk​=tk+1​−tk​为相邻采样位置之间的间隔,

T

k

T_k

Tk​表示从

t

n

t_n

tn​到

t

f

t_f

tf​的透光率累积:

T

k

=

exp

(

k

=

1

k

σ

k

δ

k

)

    

(

6

)

T_k=\exp \left(-\sum_{k^{\prime}=1}^k \sigma_{k^{\prime}} \delta_{k^{\prime}}\right)~~~~(6)

Tk​=exp(−k′=1∑k​σk′​δk′​)    (6) 在等式(5)中优化辐射场颜色输出

C

^

\hat{\mathbf{C}}

C^,即在参考视图中的一个像素(x、y)的合成RGB值,采用由均方误差组成的渲染一致性损失

L

R

C

\mathcal{L}_{RC}

LRC​:

L

R

C

=

C

^

(

r

)

C

(

r

)

2

2

    

(

7

)

\mathcal{L}_{R C}=\|\hat{\mathbf{C}}(\mathbf{r})-\mathbf{C}(\mathbf{r})\|_2^2~~~~(7)

LRC​=∥C^(r)−C(r)∥22​    (7) 这里的

C

(

r

)

\mathbf{C(r)}

C(r)是指参考图像

I

1

I_1

I1​中的像素颜色

I

1

[

x

,

y

]

I_1[x,y]

I1​[x,y]。

3.3 深度渲染一致性

使用辅助渲染分支和渲染一致性损失显著提高了无监督深度预测的质量。这是通过对两个分支的联合训练和优化一个共享的二维图像编码器而得到的结果。为了进一步优化渲染一致性和改进无监督深度预测,我们还应用了高斯-均匀混合采样和深度渲染一致性损失,提高了两个网络分支的有效性。

高斯–均匀混合采样 在等式(5)中沿光线采样点进行体素渲染,现有方法将

[

t

n

,

t

f

]

[t_n, t_f ]

[tn​,tf​]划分为K个均匀分布的子区间:

t

k

U

[

t

n

+

k

1

K

(

t

f

t

n

)

,

t

n

+

k

K

(

t

f

t

n

)

]

    

(

8

)

t_k \sim \mathcal{U}\left[t_n+\frac{k-1}{K}\left(t_f-t_n\right), t_n+\frac{k}{K}\left(t_f-t_n\right)\right]~~~~(8)

tk​∼U[tn​+Kk−1​(tf​−tn​),tn​+Kk​(tf​−tn​)]    (8) 这种采样策略是低效的,而且也独立于主干分支的深度预测。我们建议在预测深度图D的深度先验指导下,按照高斯分布对候选点进行采样,如图4所示。

假设一个像素p =(x, y)的预测深度为

z

p

=

D

(

x

y

)

z_p = D(x,y)

zp​=D(x,y),我们使用以下分布对候选样本距离进行采样样:

t

k

N

(

z

p

,

s

p

2

)

    

(

9

)

t_k \sim \mathcal{N}(z_p, s_p^2) ~~~~(9)

tk​∼N(zp​,sp2​)    (9)

w

h

e

r

e

  

s

p

=

min

(

z

p

t

f

,

z

p

t

n

)

3

    

(

10

)

\mathbf{where}~~s_p = \frac{\min (|z_p-t_f|,|z_p-t_n|)}{3}~~~~(10)

where  sp​=3min(∣zp​−tf​∣,∣zp​−tn​∣)​    (10) 这里的

z

p

z_p

zp​和

s

p

s_p

sp​分别是所提出的正态分布的均值和标准差。由于我们在对象表面附近采样更多的候选点, 这使得渲染的几何特性能够更有效地优化。此外,由于我们采用可微高斯抽样,从主干分支的深度预测获得了如何提高深度的有用线索,在遮挡的情况下也一样。为了使训练稳定,帮助网络收敛,特别是在端到端训练的开始阶段,有一半的样本以高斯分布从等式(9)中取出,另一半以均匀分布在整个距离区间之间取出。

深度渲染一致性损失 我们的渲染一致性网络通过密度估计来编码几何图形。我们可以通过沿着射线的密度积分,将密度估计值转换为参考视图中的深度图:

z

^

(

r

)

=

k

=

1

K

w

k

t

k

    

(

11

)

\hat{z}(\mathbf{r})=\sum_{k=1}^K w_k t_k~~~~(11)

z^(r)=k=1∑K​wk​tk​    (11) 我们使用与等式(5)中相同的渲染权重,

t

k

t_k

tk​是3.2节中介绍的一个候选采样点,遵循正态分布。为了加强由主干分支和辅助渲染分支匹配的几何评估,我们将具有附加深度渲染一致性损失的

L

D

C

L_{DC}

LDC​之间的差异最小化,定义为Smooth-L1损失:

L

D

C

=

Smooth

L

1

(

z

^

(

r

)

z

p

)

   

(

12

)

\mathcal{L}_{D C}=\text{Smooth}_{L_1}(\hat{z}(\mathbf{r})-z_\mathbf{p})~~~(12)

LDC​=SmoothL1​​(z^(r)−zp​)   (12) 这里,

z

^

(

r

)

\hat{z}(\mathbf{r})

z^(r)是渲染一致性网络的积分后的深度值,

z

p

z_\mathbf{p}

zp​为主干网络对应的像素深度值。

3.4 端到端网络优化

与基于伪标签的多阶段自监督方法不同,我们的模型是以端到端的方式从头开始训练的,没有任何预处理或预训练。第3节中指明骨干和辅助网络分支在整个数据集上联合训练。最后,最小化以下总体损失:

L

=

λ

1

L

P

C

+

λ

2

L

R

C

+

λ

3

L

D

C

+

λ

4

L

S

S

I

M

+

λ

5

L

S

m

o

o

t

h

+

λ

6

L

D

A

   

(

13

)

\mathcal{L} = \lambda_1 \mathcal{L}_{PC}+ \lambda_2 \mathcal{L} _{RC} + \lambda_3 \mathcal{L} _{DC}+ \lambda_4 \mathcal{L}_{SSIM} + \lambda_5 \mathcal{L}_{Smooth} + \lambda_6 \mathcal{L} _{DA}~~~(13)

L=λ1​LPC​+λ2​LRC​+λ3​LDC​+λ4​LSSIM​+λ5​LSmooth​+λ6​LDA​   (13) 损失

L

S

S

I

M

L_{SSIM}

LSSIM​和

L

S

m

o

o

t

h

L_{Smooth}

LSmooth​,确保了预测深度图的结构相似性和平滑性。将颜色波动增强应用于输入图像,并计算在不同颜色增强下预测的深度图之间的

L

1

L1

L1损失,从而得到

L

D

A

L_{DA}

LDA​。我们使用固定权重的λ1 = 0.8,λ2 = 1.0,λ3 = 1.0,λ4 = 0.2和λ5 = 0.0067。数据增强的权重用λ6 = 0.01,每两个epoch增加一倍。

4 实验分析

4.1 数据集

DTU数据集是一个具有多视图图像和相应的摄像机参数的室内数据集。我们遵循MVSNet 的设置来划分训练、验证和评估集。在7种不同的光照条件下,从49或64个视图中扫描出124个场景。在DTU基准测试中,模型在训练集上进行训练,并在评价集上进行测试。我们使用官方误差指标来评估结果:1)精度:用结果的距离到结构光参考结果的距离,表明重建的质量;2)完整性:真相结果到重建结果的距离,表明重建部分在整个点云的比例;3)总体性:精度和完整性的平均值,它反映了重建的整体质量。 坦克和寺庙数据集是一个具有各种户外场景的大型数据集。它包含一个中间子集和一个高级子集。对这个基准测试的评估是通过向官方网站提交生成的点云来在线进行的。在这个基准测试中,计算每个场景的F分数,我们分别比较中间和高级子集的平均F分数。

4.2 实施细节

训练细节 所提出的RC-MVSNet是在DTU数据集上进行的训练。我们使用由MVSNet的开放源代码提供的高分辨率DTU数据。我们首先将输入的图像大小调整为600×800,遵循以前的方法。然后,我们将调整大小的图像裁剪成512个×640补丁。我们采用Cascade MVSNet的骨干,构建了分3个阶段的多尺度管道。对于每个阶段,我们使用不同的特征图和3D-CNN网络参数。整个网络由Pytorch中的Adam优化器对15个epochs进行优化,初始学习率为0.0001,在10、12和14个时代后缩小了2倍。我们使用4个NVIDIA RTX 3090 GPU以批大小为4进行训练。 测试细节 在DTU训练集上训练的模型用于在DTU测试集上的测试。输入图像号N设置为5,每个分辨率为1152×1600。测试每个样本需要0.475秒。在DTU训练数据集上训练的模型直接用于坦克和寺庙中间和高级数据集的测试,而不进行微调。图像大小设置为1024×1920或1024×2048,输入图像编号N设置为7。然后,我们使用光度和几何一致性来过滤一个场景的预测深度图,然后融合到一个点云中。我们定义的几何和光度一致性类似于在MVSNet中使用的一致性。图1显示了RC-MVSNet和以前的无监督方法的点云的可视化,图5显示了我们的方法在测试数据集上的重建。

4.3 在测试集上的性能

DTU数据集的评估 我们评估了在DTU测试集上的深度预测性能,并与表1中以前的最先进的方法进行了比较。我们的RC-MVSNet体系结构在所有端到端无监督方法中实现了最好的准确性、完整性和总体得分(对于所有指标越低越好)。 我们的模型将JDACS [26]的总分从0.358提高到0.345。完整性提高了0.023,证明了我们的方法在解决由遮挡引起的不完整预测方面的有效性。总体得分也优于多阶段自我监督方法,甚至是大多数监督方法。除了点云重建的性能外,我们还提供了预测深度图的评估。我们将它们与有监督的MVSNet和以前的无监督方法进行了比较,结果总结在表3中,我们的方法再次达到了最先进的精度。 对坦克和寺庙的评估 我们在DTU训练集上训练所提出的RC-MVSNet,并在不进行微调的情况下对坦克和模板数据集进行测试。我们将我们的方法与最先进的有监督的、基于伪标签的多阶段自监督方法和端到端无监督方法进行了比较。表2显示了对中间子集的评估结果。我们的RC-MVSNet在无监督方法中取得了最好的性能。特别是我们的平均得分比M3VSNet显著提高+17.37,比JDACS 显著提高+9.56。此外,我们还获得了在所有子场景中的最先进的性能,这充分证实了我们的方法的有效性。

4.4 消融实验

我们提供了一个消融分析,演示了该方法中每个组成部分的点云重建性能增益。在补充材料中,我们还评估了渲染过程中采样不同数量的射线时的性能。

无监督方法的每个组成部分的效果 为了评估我们的方法中每个部分的性能增益,我们在图6中提供了使用不同的核心贡献组合训练的模型的定性比较。我们可以很容易地观察到,参考视图合成和深度渲染一致性都能产生更好的重建结果,特别是在考虑完整性时。定量结果列于表4中,进一步证明所有组成部分的重要性。

5 总结

我们证明了无监督的多视图立体视觉方法可以改良先前的光度一致性假设来改进。因此,我们提出了一种新的基于渲染一致性的无监督MVS方法(RC-MVSNet)。为了处理有歧义的监督,我们提出了一个通过可微体素渲染的参考视图合成损失。为了解决由遮挡引起的不完全性,我们引入了高斯-均匀混合采样来学习靠近物体表面的几何特征。为了进一步提高深度图的鲁棒性和平滑性,我们提出了一种具有深度渲染一致性损失的方法。实验证明了我们的RC-MVSNet方法的有效性。

精彩内容

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: