Metric3D v2: A Versatile Monocular Geometric Foundation Model for Zero-shot Metric Depth and Surface Normal Estimation
摘要
Metric3D v2 是一个几何基础模型,用于从一幅图像中进行零样本深度和表面法线估计,这对度量 3D 恢复至关重要。虽然深度和法线在几何上是相关的,并且高度互补,但它们存在不同的挑战。最先进的(SoTA)单目深度方法通过学习仿射不变深度来实现零样本泛化,同时,由于缺乏大规模标记数据,SoTA 法线估计方法的零样本性能有限。为了解决这些问题,我们提出了度量深度估计和表面法线估计的解决方案。
对于度量深度估计,我们指出,零样本单视图模型的关键在于解决各种相机模型和大规模数据训练的度量模糊性。我们提出了一个规范的相机空间转换模块,它明确地解决了模糊性问题,可以毫不费力地插入到现有的单目模型中。
对于表面法向估计,我们提出了一个联合深度 - 法向优化模块,从度量深度中提取多样化的数据知识,使法向估计器能够超越法向标签进行学习。配备了这些模块,我们的深度 - 法向模型可以使用超过 1600 万张图像进行稳定训练来自数千个带有不同类型注释的相机模型,导致零样本泛化到具有看不见的相机设置的野外图像。
引言
单目度量深度和表面法线估计是从单个图像中预测绝对距离和表面方向的任务。作为重要的 3D 表示,深度和法线在几何上是相关的并且高度互补。目前,社区仍然缺乏一个强大的、可概括的几何基础模型能够从单个图像生成高质量的度量深度和表面法线。
度量深度估计和表面法线估计面临着不同的挑战。现有的深度估计方法分为学习度量深度、相对深度和仿射不变深度。尽管度量深度方法在各种基准测试中取得了令人印象深刻的准确性,它们必须使用相同的相机本质对数据集进行训练和测试。因此,度量深度方法的训练数据集通常很小,因为很难使用一个相同的相机收集覆盖不同场景的大型数据集。其结果是,所有这些模型在零样本测试中的泛化能力都很差。
一个折衷的方法是学习相对深度,它只表示一个点离另一个点更远或更近。学习仿射不变深度在上述两类方法之间找到了一个折衷,即深度达到未知的尺度和位移。问题是未知的偏移会导致 3D 重建失真,非度量深度无法满足各种下游应用。
同时,这些模型不能生成表面法线。尽管将深度提升到 3D 点云可以做到这一点,但它对预测深度的准确性和精细细节提出了很高的要求。否则,各种伪影将保留在这种转换的法线中。
与传感器捕获的地面实况(GT)不同,这些注释是从精心和密集重建的场景中导出的,其对捕获设备和场景都具有极其严格的要求。受此标签缺陷的限制,SoTA 表面法线方法通常与强大的零样本泛化相斗争。
方法
规范相机空间变换 (CSTM)
考虑针孔相机模型,其内参数公式为:
[[f^/δ, 0, u0], [0, f^/δ, v0], [0, 0, 1]]
其中 f^ 是焦距(以微米为单位),δ 是像素大小(以微米为单位),并且 (u0, v0) 是主中心。
针对不同相机焦距导致的度量歧义(相同成像尺寸对应不同真实距离),提出两种变换方式,将异构数据映射至统一规范空间(焦距固定为 1000 像素):
| 变换方式 | 训练阶段操作 | 推理阶段操作 | 核心作用 |
|---|---|---|---|
| CSTM-label | 按 ωd = fc/f 缩放真实深度标签,图像不变 | 按 1/ωd 还原为原相机度量深度 | 直接消除深度标签的焦距歧义 |
| CSTM-image | 按 ωr = fc/f 缩放图像 / 光心,同步缩放深度标签 | 按 1/ωr 将深度 resize 至原图尺寸 | 模拟规范相机成像效果,对齐输入分布 |


