UniDepth: Universal Monocular Metric Depth Estimation——通用单目度量深度估计

这篇文章的核心内容是介绍了一种名为 UniDepth 的新型单目度量深度估计(Monocular Metric Depth Estimation, MMDE)模型,旨在仅通过单幅图像预测三维场景的度量深度信息,并且能够在不同领域(domain)之间泛化,无需额外的外部信息(如相机参数)。以下是文章的主要研究内容总结:

1. 研究背景与动机

  • 单目度量深度估计的重要性:准确的单目度量深度估计对于三维感知、建模、机器人导航和自动驾驶等应用至关重要。

  • 现有方法的局限性:现有的 MMDE 方法通常依赖于与训练数据相似的相机内参和场景规模,且在不同领域之间的泛化能力较差。这些方法在面对现实世界中多样化的相机和场景时,表现不佳。

  • 通用 MMDE 的挑战:作者提出了一个更具挑战性的任务——通用 MMDE,即在没有任何额外信息(如相机参数)的情况下,仅从单幅图像中预测度量三维场景。

2. UniDepth 模型的核心贡献

  • 伪球面输出表示:UniDepth 采用伪球面坐标系(由方位角、仰角和对数深度组成)来解耦相机和深度信息,避免了传统笛卡尔坐标系中相机和深度信息的纠缠问题。

  • 自提示相机模块:模型包含一个自提示相机模块,能够预测密集的相机表示,为深度模块提供先验知识,帮助模型更好地理解输入图像的全局深度尺度。

  • 几何不变性损失:提出了一种几何不变性损失函数,通过模拟不同相机视角下的图像,确保深度特征在不同相机参数下的不变性,从而提高模型的泛化能力。

3. 网络架构与优化

  • 架构设计:UniDepth 包含编码器主干、相机模块和深度模块。编码器提取图像特征,相机模块预测相机参数,深度模块利用这些信息预测深度图。

  • 优化策略:使用了重新定义的均方误差(MSE)损失函数,结合几何不变性损失,以优化模型的性能。此外,通过停止相机模块到编码器的梯度传播,避免了相机信息对训练过程的过度影响。

4. 实验与评估

  • 数据集:使用了包括 Argoverse2、Waymo、Cityscapes 等在内的多个数据集进行训练,涵盖了多种场景和相机类型。

  • 零样本测试:在多个未参与训练的数据集上进行了零样本测试,如 KITTI、NYU Depth V2 等,验证了模型的泛化能力。

  • 性能对比:UniDepth 在多个基准测试中超越了现有的最佳方法,即使在零样本测试中也表现出色。例如,在 KITTI 深度预测基准测试中,UniDepth 排名第一,与第二名相比 SIlog 指标提高了 15.5%。

5. 消融研究

  • 组件的重要性:通过消融实验验证了伪球面表示、自提示相机模块和几何不变性损失等关键组件对模型性能的贡献。

  • 泛化能力:实验表明,UniDepth 在不同领域的测试集上表现稳定,尤其是在尺度不变指标上表现出色,证明了其强大的泛化能力。

6. 结论

文章最后总结了 UniDepth 的主要贡献,强调了其在通用单目度量深度估计任务中的创新性和有效性。UniDepth 不仅在多个基准测试中取得了优异的性能,还展示了在不同领域之间强大的泛化能力,为单目深度估计领域带来了新的突破。

文章通过提出 UniDepth 模型,解决了单目度量深度估计中的一个关键挑战:如何在没有额外信息的情况下,从单幅图像中准确预测出具有度量意义的三维深度信息,并在不同场景和相机条件下保持良好的泛化能力。这里是自己的论文阅读记录,感兴趣的话可以参考一下,如果需要阅读原文的话可以看这里,如下所示:

官方项目地址在这里,如下所示:

摘要

准确的单目度量深度估计(Monocular Metric Depth Estimation, MMDE)对于解决三维感知和建模中的下游任务至关重要。然而,最近的 MMDE 方法虽然在各自训练领域内表现出色,但它们的准确性仅限于训练领域。这些方法即使在存在中等程度领域差异的情况下也无法泛化到未见领域,这限制了它们的实际应用性。我们提出了一种新的模型 UniDepth,能够在不同领域中仅通过单幅图像重建度量三维场景。与现有的 MMDE 方法不同,UniDepth 在推理时直接从输入图像预测度量三维点,无需任何额外信息,致力于提供一种通用且灵活的 MMDE 解决方案。特别是,UniDepth 实现了一个自提示相机模块,该模块预测密集的相机表示,以调节深度特征。我们的模型利用伪球面输出表示,将相机和深度表示解耦。此外,我们提出了一种几何不变性损失,以促进相机提示的深度特征的不变性。在零样本(zero-shot)设置中对十个数据集进行的广泛评估一致证明了 UniDepth 的优越性能,即使与直接在测试领域上训练的方法相比也是如此。

1. 引言

精确的逐像素深度估计对于理解几何场景结构至关重要,其应用领域包括三维建模 [10]、机器人 [11, 63] 和自动驾驶车辆 [38, 51]。然而,为了有效执行三维重建,提供可靠的度量缩放深度输出是必要的,这也使得单目度量深度估计(MMDE)这一任务变得具有挑战性且本质上是不适定的。尽管现有的 MMDE 方法 [3, 14, 16, 40, 41, 43, 61] 在不同基准测试中表现出色,但它们要求训练和测试数据集具有相似的相机内参和场景规模。此外,训练数据集通常规模有限,且场景和相机的多样性不足。这些特性导致了在现实世界推理场景中的泛化能力较差 [52],其中图像是在不受控制的、任意结构化的环境中以及具有任意内参的相机中捕获的。

只有少数方法 [21, 59] 涉及解决通用 MMDE 这一具有挑战性的任务。然而,这些方法假设在测试时存在受控设置,包括相机内参。尽管这种假设简化了任务,但它有两个显著的缺点。首先,它没有涵盖完整的应用范围,例如野外视频处理和众包图像分析。其次,相机参数的固有噪声直接注入到模型中,导致在高噪声情况下出现较大误差。

在本工作中,我们致力于解决更具挑战性的通用 MMDE 任务,而无需依赖任何额外的外部信息,例如相机参数,从而定义了通用 MMDE 任务。我们的方法 UniDepth 是首次尝试在不受限于场景组成和设置的情况下解决这一难题,并以其通用性和适应性脱颖而出。与现有方法不同,UniDepth 仅从单幅图像中为任何场景提供度量三维预测,无需额外的场景或相机信息。此外,UniDepth 灵活地允许在测试时加入额外的相机信息。我们的设计引入了一个相机模块,该模块输出非参数化的密集相机表示,作为深度模块的提示。然而,仅依赖于这一额外模块显然会导致与训练稳定性和尺度模糊性相关的挑战。我们提出了一个有效的伪球面表示,以解耦输出空间中的相机和深度维度。该表示采用方位角和仰角作为相机的组成部分,深度作为径向组成部分,形成了相机平面和深度轴之间的完美正交空间。此外,相机组成部分通过拉普拉斯球谐编码进行嵌入。图 1 展示了我们的相机自提示机制和输出空间。此外,我们引入了一种几何不变性损失,以增强深度估计的鲁棒性。其背后的思路是,同一图像的两个视图的相机提示深度特征应表现出互惠一致性。特别是,我们对每个训练图像进行两次几何增强,从而为原始场景创建一对不同的视图,模拟不同表观相机。我们对 UniDepth 的整体贡献是提出了首个通用 MMDE 方法,该方法仅从单幅图像预测每个像素的度量三维空间中的点。具体来说,首先,我们设计了一个可提示的相机模块,这是一个能够学习密集相机表示并允许非参数化相机调节的架构组件。其次,我们提出了一个伪球面表示的输出空间,从而解决了相机和深度预测的纠缠性质。此外,我们引入了一种几何不变性损失,以将相机信息从场景的底层三维几何结构中解耦。此外,我们广泛地测试了 UniDepth,并在公平且可比较的零样本设置中重新评估了七种 MMDE 现有最佳方法(State-of-the-Art, SotA),为通用 MMDE 任务奠定了基础。由于其设计,UniDepth 一致地树立了新的最佳水平,即使与非零样本方法相比,在竞争激烈的官方 KITTI 深度预测基准测试中排名第一。

2. 相关工作

度量和尺度无关深度估计。区分单目度量深度估计(MMDE)和尺度无关(即相对尺度)的单目深度估计至关重要。MMDE 现有最佳方法通常将训练和测试限制在相同领域。然而,挑战在于,例如在 NYUDepthv2 [35](NYU)和 KITTI [18] 等基准测试中,往往忽视了在出现微小领域差异时性能显著下降的问题。另一方面,尺度无关深度方法,包括 MiDaS [42]、OmniData [13] 和 LeReS [58],通过在广泛的数据集上进行训练展现出强大的泛化能力。它们的局限性在于缺乏度量输出,这限制了其在下游应用中的实际使用。单目度量深度估计。端到端可训练神经网络在 MMDE 中的引入,由 [14] 开创,标志着一个重要的里程碑,同时也引入了通过尺度不变对数损失(Scale-Invariant log loss, SIlog)进行优化的过程。随后的发展见证了从基于卷积的架构 [16, 27, 31, 40] 到基于变换器的方法 [3, 41, 57, 61] 的先进网络的出现。尽管在既定基准测试中取得了令人印象深刻的成就,但 MMDE 模型在零样本场景中面临挑战,揭示了在外观和几何领域偏移方面需要强大的泛化能力。通用单目度量深度估计。最近的努力集中在开发适用于跨不同领域的 MMDE 模型 [4, 21, 59]。这些模型通常利用相机感知能力,要么通过直接将外部相机参数纳入计算 [15, 21],要么通过基于内在属性对形状或输出深度进行归一化,如 [1, 28, 59] 中所见。然而,这些通用 MMDE 方法通常采用特定策略来提高性能,例如几何预训练 [4] 或基于数据集的先验,如重塑 [59]。此外,这些方法假设在训练和测试时都能获得无噪声的相机内参,这也限制了它们仅适用于针孔相机模型。此外,现有最佳方法依赖于预定义的反投影操作,模糊了学习深度和三维场景之间的区别。相比之下,我们的方法旨在克服这些限制,提出了更具挑战性的视角,例如通用 MMDE。通用 MMDE 涉及直接从输入图像预测三维场景,无需任何额外信息,除了输入图像本身。值得注意的是,我们在测试时不需要任何额外的先验信息,例如对相机信息的访问。

3. UniDepth

现有的 MMDE 现有最佳方法通常假设可以访问相机内参,从而模糊了纯深度估计和实际三维估计之间的界限。相比之下,UniDepth 旨在创建一个通用的 MMDE 模型,该模型可以在多样化场景中部署,而无需依赖任何其他外部信息,例如相机内参,从而实现三维空间估计。然而,尝试直接从单幅图像中预测三维点而没有适当的内部表示,将忽视几何先验知识,即透视几何,这使得学习过程不得不从数据中重新学习透视投影定律。第 3.1 节介绍了伪球面表示的输出空间,以固有地解耦相机射线的角度和深度。此外,我们初步研究表明,深度预测显然受益于对传感器获取的先验信息,从而引入了第 3.2 节中的自提示相机操作。通过几何不变性损失在内部深度特征水平上进一步解耦,该损失在第 3.3 节中进行了描述。这一损失确保了深度特征在被引导的相机预测调节下保持不变,促进了强大的相机感知深度预测。整体架构以及由设计选择组合产生的优化结果在第 3.4 节中进行了详细说明。

3.1 三维表示

我们方法的通用性要求仅基于图像观察来推断深度和相机内参,以便进行三维预测。我们设计了一个伪球面表示的三维输出空间,其基由方位角、仰角和对数深度定义,即 (θ, ϕ, zlog),与笛卡尔表示 (x, y, z) 相比。这种伪球面表示的优势在于,它通过设计确保了相机 (θ, ϕ) 和深度 (zlog) 组件的解耦,与笛卡尔表示中存在的纠缠形成对比。值得注意的是,在这种输出空间中,非参数化的密集相机表示在数学上表示为一个张量 C ∈ RH×W×2,其中 H 和 W 分别是输入图像的高度和宽度,最后一个维度对应于方位角和仰角值。而在典型的笛卡尔空间中,反投影涉及齐次相机射线和深度的乘法,而在我们提出的表示空间中,反投影操作则涉及相机和深度表示的连接。射线定义为 (r1, r2, r3) = K−1[u, v, 1]T,其中 K 是校准矩阵,u 和 v 是像素坐标中的像素位置,1 是一个全为一的向量。因此,齐次相机射线 (rx, ry) 对应于 (r1/r3, r2/r3)。此外,可以通过拉普拉斯球谐编码(SHE)对角密集表示进行嵌入。相机嵌入张量定义为 E = SHE(C),E ∈ RH×W×d,其中 d 是所选谐波的数量。SHE(·) 计算一组球谐函数,即 {Y}l,m,其度数为 l,阶数为 m,并沿着通道维度进行连接,其中 Yl,m 表示为:

其中 Pl,m 是度数为 l、阶数为 m 的相关勒让德多项式,αl,m 是归一化常数。特别是,单位球面上的球谐函数构成了球流形的正交基,并保留了内积。所使用的谐波总数为 81,这是通过将度数 l 限制为 8 得到的。与傅里叶变换相比,SHE 是一个更数学的选择,用于产生相机嵌入。

3.2 自提示相机

相机模块在最终的三维预测中起着关键作用,因为其角密集输出占用了输出空间的两个维度,即方位角和仰角。最重要的是,这些嵌入提示深度模块,以确保对输入场景的全局深度尺度进行引导的知识。这种提示对于避免场景尺度的模式崩溃至关重要,并减轻了深度模块从头开始预测深度的负担,因为尺度已经由相机输出建模。然而,相机模块的内部表示基于针孔参数化,即通过焦距 (fx, fy) 和主点 (cx, cy)。这四个概念上对应于内参的分量随后被投影为标量值,即 ∆fx, ∆fy, ∆cx, ∆cy。然而,它们并不代表相机参数,而是针孔相机初始化的乘法残差,即 H/2 对于 y 分量和 W/2 对于 x 分量,从而导致 fx = ∆fxW/2, fy = ∆fyH/2, cx = ∆cxW/2, cy = ∆cyH/2,从而对输入图像大小具有不变性。随后,基于内参对每个像素坐标应用反投影操作,以产生对应的射线。射线被归一化,因此它们代表单位球上的向量。关键步骤涉及从反投影射线中提取方位角和仰角,有效地创建一个“密集”的角相机表示。这种密集表示经过 SHE 处理以产生嵌入 E。将嵌入表示无缝传递到深度模块作为提示,在那里它们作为调节因子发挥重要作用。通过深度模块的初始化特征 D ∈ Rh×w×C 和相机嵌入 E 之间的交叉注意力层来强制执行调节,其中 (h, w) = (H/16, W/16)。经过相机提示的深度特征 D|E ∈ Rh×w×C 定义为

D∣E=MLP(CA(D,E)),

其中 CA 是交叉注意力块,MLP 是具有一个 4C 通道隐藏层的多层感知机。图 3 揭示了我们相机模块的一个主要优势。特别是,在高噪声内参或相机不可知的情况下,UniDepth 可以引导相机预测,从而表现出对噪声的完全不敏感。然而,如果在测试时提供任何外部密集相机表示,我们可以替换相机模块的输出以提高 3D 重建的峰值性能。这种适应性增强了模型的多功能性,使其能够在不同设置中无缝运行。此外,图 3 表明,在训练时使用噪声自提示可以增强 UniDepth 对测试时噪声外部内参的鲁棒性。

3.3 几何不变性损失

不同相机捕获的同一场景的空间位置在深度模块被特定相机调节时应对应。为此,我们提出了一种几何不变性损失,以强制执行来自不同采集传感器的同一场景的相机提示深度特征的一致性。特别是,一致性是在从相同三维位置提取的特征上强制执行的。对于每幅图像,我们执行 N 次不同的几何增强,记作 {Ti}N i=1,在我们的实验中 N = 2。该操作涉及采样一个缩放因子 r ∼ 2U[−1,1] 和一个相对 x 轴的平移 t ∼ U[−0.1,0.1],然后将其裁剪为网络的输入形状。这类似于从同一场景和外参但由不同相机捕获的图像中采样一对图像。设 Ci 和 Di|Ei 分别描述对应于增强 Ti 的预测相机表示和相机提示深度特征。显然,当应用两种不同的几何增强时,相机表示会有所不同,即如果 Ti ≠ Tj,则 Ci ≠ Cj。因此,几何不变性损失可以表示为:

其中 Di|Ei 表示经过相机提示 Ei 调节后的深度特征,如第 3.2 节所述,sg(·) 对应于停止梯度分离操作,需要利用 D2|E2 作为伪真值(GT)。双向损失可以计算为:1/2(Lcon(D1|E1, D2|E2) + Lcon(D2|E2, D1|E1))。在特征被视图信息,即相机调节后,应用几何不变性损失是必要的。否则,损失将强制执行固有携带不同相机信息的特征之间的一致性。

3.4 网络设计

架构。我们的网络,如图 2 所示,包括一个编码器主干、一个相机模块和一个深度模块。编码器可以是卷积式的或基于 ViT 的 [12],产生不同“尺度”的特征,即 F ∈ Rh×w×C×B,其中 (h, w) = (H/16, W/16),B = 4。相机模块的参数初始化为 ViT 风格的类别标记或卷积式主干的池化特征图。编码器主干的特征作为堆叠的分离标记传递给相机模块,编码器的类别标记用作相机参数初始化。处理特征以获得最终的密集表示 C,如第 3.2 节所述,并进一步通过 SHE(·) 嵌入为 E,如第 3.1 节所述。需要注意的是,停止梯度操作是必要的,因为相对于图像多样性而言,有效相机的多样性较低。事实上,相机模块组件很容易过拟合,并且明显主导了整体主干梯度。深度模块接收编码器特征以调节初始潜在特征 L ∈ Rh×w×C,通过一个交叉注意力层获得初始深度特征 D。潜在特征张量 L 是通过沿 B 维度对特征 F 进行平均得到的。此外,深度特征通过相机提示 E 进行调节,以获得 D|E,如第 3.2 节所述。经过相机提示的深度特征进一步通过自注意力层进行处理,其中使用的位置编码是 E,并进行上采样以产生多尺度输出。对数深度预测 Zlog ∈ RH×W×1 对应于插值中间表示的均值。最终的三维输出 O ∈ RH×W×3 是预测射线和深度的连接,O = C||Z,其中 Z 是 Zlog 的逐元素指数化。优化。优化过程由第 3.1 节中最终三维输出空间 (θ, ϕ, zlog) 中的均方误差(MSE)损失的重新表述指导:

其中 ε = ˆo − o* ∈ R3,ˆo = (ˆθ, ˆϕ, ˆzlog) 是预测的三维输出,o* = (θ*, ϕ*, z*log) 是真值三维值,λ = (λθ, λϕ, λz) ∈ R3 是每个输出维度的权重向量。V[ε] 和 E[ε] 分别是每个三个输出维度上的经验方差和均值向量,即 {ε(i)}N i=1。需要注意的是,如果对于某个维度 d,λd = 1,则该维度的损失表示为标准 MSE 损失。如果 λd < 1,则如果该维度以对数空间表示(例如深度维度 zlog),则为该维度添加了一个尺度不变性损失项;如果该输出以线性空间表示,则添加了一个平移不变性损失项。特别是,如果仅考虑最后一个输出维度,即对应于深度的维度,并且使用 λz = 0.15,则对应的损失是标准 SIlog。在我们的实验中,我们设置 λθ = λϕ = 1 和 λz = 0.15。因此,最终的优化损失定义为:

其中 α = 0.1。这里定义的损失为所设计的输出表示提供了动机。具体来说,如果采用笛卡尔表示并将损失直接应用于输出空间,则会导致反向传播通过 (x, y) 和 zlog 错误。然而,x 和 y 分量是从 rx · z 和 ry · z 推导而来的,如第 3.1 节所述。因此,相机分量的梯度(由 (rx, ry) 表示)和深度的梯度变得纠缠在一起,导致次优优化,如第 4.3 节所述。

4. 实验

4.1 实验设置

训练数据集。使用的训练数据集是 Argoverse2 [53]、Waymo [49]、DrivingStereo [56]、Cityscapes [7]、BDD100K [60]、MapillaryPSD [1]、A2D2 [19]、ScanNet [8] 和 Taskonomy [62] 的组合。得到的数据集大约包含 300 万张具有不同相机和领域的现实世界图像,与例如 Metric3D [59] 和 ZeroDepth [21] 相比,它们分别利用了 800 万和 1700 万训练图像。零样本测试数据集。我们通过在十个未在训练中见过的数据集上测试这些模型来评估它们的泛化能力。具体来说,每种方法都在 SUN-RGBD [48](不包括 NYU 分支)、Diode Indoor [50]、IBims-1 [26]、VOID [54]、HAMMER [25]、ETH-3D [44]、nuScenes [5] 和 DDAD [20](使用 [41] 中提出的分割)的验证分支上进行测试,并使用官方掩模进行评估。此外,UniDepth 和来自 [21, 59] 的模型在 NYU-Depth V2 [35] 和 KITTI [18] 上进行了零样本测试。特别是,KITTI 测试在经过校正的 Eigen-split 测试集 [14] 上进行,使用 Garg 评估掩模 [17],而 NYU 测试使用 [28] 中的评估掩模。评估细节。所有方法都使用公平且一致的流程进行了重新评估。特别是,我们没有利用任何测试时增强。我们使用训练图像形状进行零样本测试,并在相同的验证分支和掩模上进行评估。遗憾的是,ZeroDepth 缺乏完整的代码可复现性,因此我们仅报告原始论文中的结果,并且为了可视化,我们使用他们提供的代码和权重。当方法没有报告特定测试数据集的配置时,我们使用 NYU 和 KITTI 的设置分别用于室内和室外测试。

我们使用常见的深度估计评估指标:均方根误差(RMS)及其对数变体(RMSlog)、绝对平均相对误差(A.Rel)、阈值为 1.25i 的内点像素百分比(δi)、对数尺度下的尺度不变误差(SIlog):100 × Var(εlog)。此外,我们报告了 [37] 中提出的基于点云的指标,即 Chamfer 距离(CD)和 F 分数(FA),其中后者聚合为数据集最大深度的 1/20 以内的曲线下面积。所有方法在评估期间都利用了真值内参。然而,我们展示了 UniDepth 有和没有真值内参的结果。实现细节。UniDepth 使用 PyTorch [39] 和 CUDA [36] 实现。对于训练,我们使用 AdamW [34] 优化器(β1 = 0.9, β2 = 0.999),初始学习率为 0.0001。对于每次实验,我们将学习率除以 10 的因子用于主干权重,并将权重衰减设置为 0.1。作为学习率调度器,我们使用余弦退火,从训练的 30% 开始退火到十分之一。我们运行 100 万次优化迭代,每个批次大小为 128,每个训练数据集在每个批次中均匀表示。特别是,我们采样 64 张图像,然后为一致性损失采样同一图像的两个不同增强视图。增强包括几何和外观(随机亮度、伽马、饱和度、色调偏移和灰度)增强。ViTL [12] 主干使用来自 DINO-pretrained [6] 的权重初始化,ConvNext-L [33] 使用 ImageNet [9] 预训练权重。所需的训练时间大约为 12 天,使用 8 个 NVIDIA A100 GPU。使用三个不同的种子进行消融实验,并进行 100k 训练迭代,使用原始训练集大小的 20% 的随机子集。

4.2 与现有最佳方法的比较

我们的方法在表 1 中一致地优于先前的现有最佳方法。我们在尺度不变方面表现出色,如 SIlog 所示,平均提高了 34.0%,并且在 δ1 和 FA 方面平均提高了 12.3%。然而,UniDepth 可能在某些情况下无法捕获特定场景的尺度,例如在 ETH3D 和 IBims-1 中。这一缺点体现在尺度依赖指标的下降上,例如 FA 分别下降了 11.8% 和 31.4%,尽管在尺度不变方面分别提高了 36.9% 和 28.5%。因此,我们推测我们的方法仍然会从针对特定领域的微调中受益匪浅。表 1 的最后两行展示了 UniDepth 的完整设计,即仅使用输入图像通过自提示预测密集的相机表示来运行,如公式 (3) 中所述。实验表明,不仅在大多数测试集上保持了性能,而且 UniDepth 通过引导相机预测还可以优于具有真值相机的模型,例如在 ETH3D 和 IBims-1 中的 SIlog。另一方面,在具有特别超出领域相机类型的情况下,例如 ETH3D 或 HAMMER,引导相机预测会导致额外的噪声用于缩放深度预测,从而恶化 δ1 的结果。

 表 2 和表 3 显示了在两个流行的基准测试 NYU [35] 和 KITTI [18] Eigen-split 上的结果。尽管与在相同领域上训练的模型进行比较,UniDepth 在这两个基准测试中都树立了新的最佳水平。重要的是,KITTI 深度预测基准测试提供了一个完全公平的评估,强调了我们的方法的出色零样本性能及其与当前 MMDE 现有最佳方法相比的鲁棒性,因为 UniDepth 在提交时在该基准测试中排名第一,与第二佳方法相比 SIlog 提高了 15.5%。性能差异并非仅仅归因于数据集特性,如与 Metric3D 和 ZeroDepth 的比较所示。尽管在较小的数据集上进行训练,UniDepth 仍然优于这两种方法。特别是,UniDepth 在 NYU(表 2)上的 δ1 比 Metric3D 和 ZeroDepth 分别提高了 5.8% 和 7.3%,在 KITTI(表 3)上分别提高了 1.1% 和 9.4%。此外,ZoeDepth 具有与我们的基于 ViT 的方法相似的容量,并且在 MiDaS 数据集 [42] 上进行了预训练,但在表 1 中的通用零样本场景中显示出局限性,其性能与传统 MMDE 方法相当,特别是在尺度不变指标上。为了公平比较,我们在表 4 中提供了一个比较,其中 Metric3D、iDisc 和 UniDepth 重新训练于 Metric3D 数据的一个严格子集,即原始 Metric3D 数据集的四分之一,使用第 4.1 节中详细描述的相同框架。结果是双重的:它们表明 UniDepth 仍然超越了 Metric3D,尽管使用了训练集的一个子集,并且表明针对单一领域的 MMDE 现有最佳方法并未充分利用训练多样性。图 4 中的定性结果强调了该方法在零样本设置中捕捉整体尺度和场景复杂性的能力。

4.3 消融研究

通过消融实验评估了在第 3 节中引入的每个组件的重要性。所有消融实验都利用了预测的相机表示,除非另有说明。第一种区别涉及 Oracle 模型,该模型在训练和测试期间都使用已知的相机信息运行,处理的任务类似于 [21, 59]。另一方面,基线是一种直接预测三维点的简单编码器 - 解码器实现,如第 3 节开头所述,而 Baseline++ 利用了所提出的伪球面表示。模块的架构在实验中保持一致。In-Domain 列反映了在训练域的验证集上进行测试,而 Out-of-Domain 对应于第 4.1 节中详细描述的零样本测试。值得注意的是,In-Domain 结果表现出较高的同质性,而 Out-of-Domain 则更加嘈杂,但更能反映在下游应用和野外部署中预期的性能。

架构。与完整模型相比,Oracle模型在零样本测试期间表现出更稳健的尺度依赖性能,突显了所提出任务的固有难度。Baseline模型说明了一种不利用外部信息且缺乏内部和输出空间适当设计的问题解决方法。这种方法在深度和三维重建指标方面,对于域内和域外场景均产生了明显较差的结果。
相机模块。在表5的第3行中,相机模块的优势变得明显,揭示了该模块对域内和域外测试的尺度不变和尺度依赖指标的显著影响。这种差异源于模型对尺度的先验知识缺乏,阻碍了其对多样化训练集的最优利用。仅专注于预测深度,而不是完整的三维输出,在避免训练期间的收敛问题方面证明是有利的。这与第3节中所述的预测三维的方法(无论是否依赖相机信息(第8行和第9行)或受相互交织的优化影响(第4行))相比显而易见。不依赖相机也限制了模型恢复域外样本多模态分布的能力。缺乏(自举)先验会阻止深度模块基于初始尺度估计作为校正机制发挥作用,并施加不必要的计算负担,即从头开始恢复深度值。在比较利用或缺乏相机信息(分别为第2行和第3行)时,对于强烈偏离分布的测试集(如KITTI),这种局限性尤为明显。特别是,Full在KITTI中实现了95.2%的δ1,而“– Camera”在同一测试集中获得了58.9%,尽管两个版本在nuScenes和DDAD上的差异仅为2%。
优化和输出表示。所有消融实验均采用相同的损失LλMSE,但针对不同的输出空间。在第4行中,使用了笛卡尔输出空间,而不是第3.1节中的伪球面,由于相机和深度输出空间的相互交织的公式化,导致性能明显较差。Baseline(第8行)也采用笛卡尔表示,但由于缺乏相机模块,这种选择对该模型的负面影响不那么明显。更具体地说,Baseline的解码器不像第4行那样依赖于不准确的先验相机和尺度信息。此外,第9行对应于具有伪球面表示的Baseline。第8行和第9行之间的比较表明,在直接预测三维输出时,输出表示的选择在定义更好的内部表示和优化方面仍然相关。第5行展示了几何不变性损失的积极影响。该损失通过促进深度特征对不同相机内参引起的外观变化的不变性,有助于提高域内和域外性能。此外,如第3.4节所述,阻止梯度从相机模块传播到编码器(第7行)在避免零样本测试中的尺度和相机过拟合方面特别有益,并稳定了训练。

通过限制相机监督相对于深度监督对编码器权重梯度的主导影响,实现了更稳定的训练。
相机表示。在第6行中,模型采用了稀疏相机表示,特别是具有(fx, fy, cx, cy)的针孔相机模型,导致稀疏相机提示和标量监督;相机模块仍然预测第3.2节中概述的残差分量。这种方法损害了泛化能力,如域外评估中的ARelC所示,尽管域内ARelC略有改善。我们推测,四个提示向深度模块传达的信息不如其密集对应项稳健,导致域内和域外的深度指标性能均低于完整模型。

5. 结论

在这项工作中,我们提出了UniDepth,仅依赖单个输入图像即可预测多样场景中的度量三维点。通过细致的消融研究,我们系统地解决了通用MMDE任务中固有的挑战,强调了我们工作的关键贡献。设计的自提示相机允许无相机测试时间应用,并使模型对相机噪声更具鲁棒性。引入的伪球面输出空间表示充分解耦了相机和深度的优化过程。此外,提出的几何不变性损失有效地确保了相机感知的深度一致性。广泛的验证明确展示了UniDepth如何在零样本体制下在多个基准测试中设定新的最先进水平,甚至超越了域内训练的方法。这证明了我们模型的稳健性和有效性,最重要的是,概述了其推动MMDE领域迈向新前沿的潜力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Together_CZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值