作者: Lingyu Kong、Ruicheng Li、Ruicheng Wang、Sicheng Xu、Chengtang Yao、Jianfeng Xiang、Jiaolong Yang
单位: Tsinghua University、University of Science and Technology of China、Microsoft Research
会议: arXiv 2026 预印本(截至 2026-07-24 未核实正式会议录用)
链接: arXivProject Page | Code(论文页面标注为即将公开)

MoGe3-0

研究动机

1. 深度图看起来清晰,不代表三维几何正确

近年来的单目深度与单目几何基础模型已经能给出相当可靠的全局布局,但在真正把预测反投影成点图并改变视角后,细杆、栏杆、电线、树枝、小物体边缘等区域仍会出现明显扭曲:

  • 细结构被加粗、折弯或粘连;
  • 前景轮廓与背景表面发生几何串扰;
  • 二维 disparity 边缘看起来锐利,三维点图却不在正确表面上;
  • 全局深度指标较好,但局部结构无法用于高保真重建。

MoGe-3 认为,这并不只是一种“分辨率不足”现象,而是当前模型存在 任务空间与计算空间不匹配:网络要恢复三维几何,却主要在二维图像网格中解码和聚合特征。

2. 二维邻近不等于三维邻近

二维卷积、DPT decoder、VAE decoder 或基于 UV query 的 MLP 都以图像平面邻域为主要交互范围。对同一连续表面,这种局部平滑先验通常有效;但在遮挡边界处,两个相邻像素可能分别属于相距很远的前景和背景。二维卷积仍会混合它们的特征,容易把几何拉向折中状态。

相反,三维上相邻的表面点也未必在原始图像中紧邻。作者因此提出:

保留强二维基础模型负责语义和全局场景理解,但将最后的几何细化放到显式三维稀疏结构中,让邻域关系同时受图像位置和当前深度控制。

这和单纯提高输入分辨率的区别在于:高分辨率仍然在二维平面中聚合,而 MoGe-3 试图改变局部几何交互的拓扑。

核心方法

1. 总体框架:Base Model + SSR

MoGe-3 由两个部分构成:

  1. 基础模型:以 MoGe-2 为初始化,使用 DINOv2 编码器,输出初始点图、有效区域、法线、全局 metric scale 和二维特征图;
  2. Self-Guided Sparse 3D Refiner(SSR):把当前点图离散成稀疏体素壳,用 Sparse 3D U-Net 预测 log-depth 残差,然后重新体素化并继续迭代。

MoGe3-1

“Self-Guided”的含义是:第 $k$ 次迭代使用第 $k$ 次当前几何估计来定义稀疏卷积的坐标和邻接结构。预测越准确,下一轮体素壳越接近真实表面,稀疏卷积的局部交互也越合理。

2. 基础点图的仿射不变性

基础模型输出每像素三维点图 $\mathbf P$。与 MoGe-2 相同,几何监督允许沿光轴的仿射变换:

这意味着基础几何头主要学习形状与相机几何,而绝对 metric scale 由独立的全局尺度头补充。MoGe-3 没有推翻 MoGe-2 的点图表示,而是在其后增加一个专门修正局部形变的三维模块。

3. 因子化坐标:固定射线,只修正深度

给定点 $\mathbf p{ij}=(X{ij},Y{ij},Z{ij})$,作者将其转换为

其中:

  • $(u,v)$ 表示点所在的相机射线方向;
  • $\zeta=\log Z$ 表示对数深度;
  • 迭代过程中固定 $(u,v)$,只预测 $\zeta$ 的残差。

这种设计有三个作用:

  1. 把问题约束成沿射线的一维修正。 SSR 不需要重新预测完整 XYZ,优化更稳定;
  2. 对相对尺度更一致。 在 log-depth 上等距量化,对应近似恒定的相对深度精度,而不是恒定的绝对米制间隔;
  3. 避免横向漂移。 像素与射线的对应关系保持不变,不会在迭代中破坏点图拓扑。

它的代价也很明确:SSR 不能修正相机内参或射线方向错误,所有更新都被限制在当前射线上。

4. 自引导体素化

第 $k$ 次迭代时,将每个像素映射到稀疏坐标

其中 $D$ 是深度轴的量化分辨率。

由于坐标中保留了像素索引 $(i,j)$,输入层每个像素都对应一个唯一稀疏位置,整个几何形成一张只有 $HW$ 个活跃点的“薄壳”,而不需要建立稠密三维体积。

两个图像相邻像素只有在 log-depth 也足够接近时,才会在该三维网格中成为近邻:

因此,在栏杆与远处背景的交界处,即便两者在二维上紧邻,只要深度差较大,就会落入分离的体素层,稀疏 3D 卷积不会像普通 2D 卷积那样直接跨边界混合。

这里需要准确理解论文所谓的“3D”:它是 投影对齐的 $(i,j,D\log Z)$ 稀疏空间,而不是在世界坐标 XYZ 中建立各向同性体素。其优势是计算量与像素数近似线性、天然保持像素对应;但它并不能让任意两个欧氏空间接近、图像位置相距很远的点立即成为邻居。更长距离的交互主要依赖 U-Net 的多尺度下采样和基础模型注入的二维语义特征。

5. Dynamic-Sparsity Sparse 3D U-Net

稀疏 U-Net 在多个尺度上编码体素。第 $l$ 层坐标近似为

下采样后,体素数量不再固定:

  • 同一表面的邻近点可能合并;
  • 图像位置接近但深度层不同的点仍可保持分离;
  • 场景几何不同,会产生不同的稀疏结构和计算图。

这就是论文所说的 dynamic sparsity。与固定二维 U-Net 相比,网络容量不仅由图像尺寸决定,也由当前几何分布决定。

6. 二维语义特征注入

仅输入 $(u,v,\log Z)$,稀疏网络只能看到几何坐标,缺乏物体语义、材质和长程上下文。作者在 U-Net bottleneck 处注入基础 DINOv2 特征:二维 token 根据图像坐标映射到对应的低分辨率体素;若同一二维位置在深度方向出现多个体素,则复制同一二维特征。

这形成一种职责分工:

  • DINOv2 / MoGe-2 提供“这是什么、全局结构如何”的外观先验;
  • Sparse 3D U-Net 决定“哪些点应在三维上互相聚合”。

消融中,用 RGB 代替 DINO 特征仍有一定收益,说明三维体素结构本身有效;但完整 DINO 特征注入明显更强,说明 SSR 不是纯几何优化器,而是语义条件化的几何残差网络。

7. 迭代更新

Sparse U-Net 为每个输入体素预测标量 log-depth 残差 $\Delta\zeta_{ij}^{(k)}$:

更新后重新计算体素坐标,得到下一轮的稀疏壳。经过 $K$ 次迭代后,恢复欧氏点坐标:

输出层采用零初始化,使训练开始时 SSR 等价于恒等映射,不会立即破坏已有的 MoGe-2 几何。这与后续的两阶段训练共同保证了稳定性。

8. 损失函数与两阶段训练

每次迭代都接受几何监督:

其中

  • Global affine-invariant loss:求解最优全局尺度与光轴平移,再计算深度加权的点图 $\ell_1$;
  • Multi-scale local loss:在三维径向分区中共享全局尺度、单独拟合局部平移,强调局部结构而避免每块独立缩放造成退化;
  • Edge-angle loss:约束预测与真值在深度边缘附近的点图梯度方向;
  • 辅助损失:有效掩码 BCE、法线角度误差、log metric-scale 误差。

训练分为两阶段:

  1. warm-up 阶段切断 refiner 对基础特征的梯度,并结合零初始化,让 SSR 先学“在好初始化上做小残差”;
  2. joint fine-tuning 阶段再端到端优化。

更关键的是数据流控制:SSR 只从像素精确的合成数据接收梯度,基础模型则同时使用合成与真实数据。 这样做是为了避免真实传感器深度噪声把细节细化器训练成噪声拟合器,同时保留基础模型的真实域泛化。

数据集

1. 训练数据

合成数据包括:

  • 3D Ken Burns、ApolloSynthetic、EDEN、GTA-SfM;
  • Hypersim、IRS、MatrixCity、MidAir、MVS-Synth;
  • Objaverse、OmniWorld、Structured3D;
  • Synscapes、Synthia、TartanAir、UnrealStereo4K、UrbanSyn。

真实或传感器重建数据包括:

  • A2D2、ARKitScenes、Argoverse 2;
  • BlendedMVS、MegaDepth、ScanNet++;
  • Taskonomy、Waymo。

这套划分体现了明确策略:合成数据负责精确几何监督,真实数据负责外观和传感器分布覆盖。

2. 零样本评测数据

论文在九个数据集上进行 zero-shot 评测:

  • Synth4K、Spring;
  • NYUv2、KITTI、ETH3D、DIODE;
  • Sintel、iBims-1、HAMMER。

它们覆盖合成/真实、室内/室外、稠密真值/稀疏 LiDAR 等不同条件。

3. 为什么需要新的局部指标

普通全图 AbsRel 或 $\delta_1$ 会被大面积平坦区域主导,细栏杆即使完全错误,对全局平均值影响也很小。作者因此自动构造 fine-grained region mask:

  1. 用多尺度下采样残差检测高频深度结构;
  2. 用 morphological top-hat / bottom-hat 检测细近景与细远景空隙;
  3. 用 SAM2 分割扩展到语义完整的小区域;
  4. 对每个区域固定全局尺度,只拟合局部平移,再计算更严格的 $\delta_{0.01}$。

这种指标比全局指标更敏感,但也引入了 SAM2 分割质量、阈值和区域筛选规则等额外变量。它是有针对性的诊断指标,不应替代完整的全局与边界评测。

算力

1. 训练配置

  • 优化器:AdamW,$\beta_1=0.9$、$\beta_2=0.999$、weight decay $10^{-2}$;
  • 梯度裁剪:$\lVert g\rVert_2\le1$;
  • 全局 batch size:96;
  • 训练设备:16 张 NVIDIA A100;
  • 混合精度:DINO encoder 使用 bfloat16,其余模块使用 float32;
  • refiner 峰值学习率:$2\times10^{-4}$;
  • 2D heads 峰值学习率:$10^{-4}$;
  • DINO backbone 峰值学习率:$5\times10^{-6}$;
  • 前 1,000 steps 冻结 backbone,至 2,000 steps 线性 warm-up;
  • 前 5,000 steps 切断 refiner 到 backbone 的梯度;
  • 训练时默认 $K=3$ 次细化。

论文未明确给出总训练步数、总训练时长和显存峰值,因此只能判断它是一个明显高算力训练方案,不能给出完整 GPU-hour。

2. 推理开销

在单张 A100、FP16、batch size 1 下:

方法 分辨率 延迟
MoGe-2 ViT-L $700^2$ 39 ms
MoGe-3 ViT-L,3-step $700^2$ 121 ms
MoGe-3 ViT-G,3-step $700^2$ 177 ms
Depth Anything 3 $630\times840$ 213 ms
Depth Pro $1536^2$ 142 ms
InfiniDepth $512\times672$ 133 ms
Pixel-Perfect Depth $512\times672$ 275 ms

三次 SSR 将 ViT-L 延迟从 39 ms 增加到 121 ms,即细化器并非“几乎免费”,而是约带来 82 ms、总延迟约 3.1 倍。它仍快于论文所列的部分高细节方法,但相较基础 MoGe-2 有显著成本。

实验结果

1. 全局与局部几何均有提升

表 1 的跨数据集平均结果中:

方法 Local Point Rel↓ Local Point $\delta_{0.01}$↑ Relative Point Rel↓ Relative Point $\delta_1$↑ Metric Depth $\delta_1$↑
MoGe-2 3.19 46.6 8.73 90.4 77.3
MoGe-3 ViT-L 2.79 55.9 7.91 92.0 82.7
MoGe-3 ViT-G 2.80 56.8 7.43 92.4 82.7

最明显的增益出现在严格的局部点图 $\delta_{0.01}$:ViT-L 从 46.6 提升到 55.9。全局相对点图与 metric depth 也有改善,说明端到端联合训练没有只在局部制造视觉锐化。

但 Boundary F1 并非最佳:MoGe-3 ViT-L 为 16.0,InfiniDepth 为 19.3,Depth Pro 为 16.3,MoGe-3 ViT-G 为 17.3。论文也明确承认,SSR 改善的是三维结构保真度,而不是保证像素级深度边缘最锐利。

2. 二维深度图与三维点图必须一起看

MoGe3-2

定性比较中,一些方法的 disparity 边缘很清楚,但点图在新视角下出现栏杆弯曲、背景粘连等问题。MoGe-3 的主要优势不是让深度图“更好看”,而是让图像边界两侧的点在三维中保持分离。

这也是本文对评测方式的重要提醒:只展示彩色深度图不足以判断单目几何质量,至少还应观察点云旋转、新视角渲染或局部表面结构。

3. 三维 refinement 优于参数匹配的二维 refinement

关键消融结果:

设置 Local Point Rel↓ Local Point $\delta_{0.01}$↑ Boundary F1↑
Frozen base model 3.19 46.6 15.6
参数匹配 2D U-Net 3.19 47.0 14.8
Sparse 3D,RGB input 3.13 49.7 14.9
Sparse 3D,DINO feature,$D=200$ 2.76 55.1 15.6

参数匹配的 2D U-Net 几乎不能改善局部点图,而稀疏 3D 版本显著提升。这是支持“归纳偏置而非单纯参数量”的核心证据。

不过,该消融在冻结 MoGe-2 基础模型、仅训练 refiner 的设置下完成,和最终端到端模型并不完全相同。它能证明 3D refiner 更适合当前任务,但不能独立量化所有联合训练收益。

4. 体素分辨率并非越高越好

$D$ 控制 log-depth 轴的量化精度:

  • $D=100$ 的体素较粗,局部结构分离不足;
  • $D=200$ 在局部精度和占用密度之间取得最佳平衡;
  • $D=300$ 某些误差继续下降,但严格阈值精度变差;
  • $D=400$ 明显退化,因为体素过稀,稀疏卷积难以形成有效邻域。

这说明三维离散化存在典型的 bias-density trade-off:更细的几何格点并不必然带来更好的可学习邻域。

5. 迭代具有一定的训练步数外泛化

模型训练时使用 $K=3$,推理时测试到 $K=7$。局部指标在第一步提升最大,随后逐渐饱和,全球指标基本稳定;超过训练迭代数后没有明显发散。

MoGe3-3

这说明网络学到的更像稳定的小残差更新,而不是依赖固定展开长度的三步网络。但论文只展示有限迭代范围内的经验稳定性,不能据此断言更新算子在理论上收敛。

6. 更大骨干与 SSR 具有互补性

ViT-G 在多数全局指标上进一步改善,表明 SSR 并没有被更强二维特征替代。不过,局部 Point Rel 在 ViT-G 上为 2.80,略差于 ViT-L 的 2.79,而计算开销从 121 ms 增至 177 ms。因此,扩大骨干的收益主要体现在整体表征,不是所有细节指标都单调提升。

MoGe3-4

优势与不足

优势

  1. 问题定义准确。 论文清楚区分了“二维边缘锐利”与“三维结构正确”,指出现有深度评测容易遗漏局部几何扭曲。
  2. 归纳偏置具有针对性。 投影对齐的稀疏体素把图像邻接和深度连续性同时纳入邻域构造,可显式阻断跨深度层的信息混合。
  3. 计算利用了点图的薄壳结构。 不建立稠密 $H\times W\times D$ 体积,而只在活跃表面上计算,使全分辨率三维细化成为可能。
  4. 迭代几何与计算图共同更新。 当前预测不仅是待修正的数值,也决定下一轮卷积邻域,形成真正的 self-guided refinement。
  5. 二维语义和三维几何职责分离。 DINOv2 保留强大的外观先验,Sparse 3D U-Net 只负责局部几何残差,工程上比完全抛弃二维骨干更现实。
  6. 消融覆盖关键替代解释。 参数匹配 2D U-Net、RGB 输入、不同体素分辨率和不同迭代次数都直接对应核心设计。
  7. 局部评测更贴近研究目标。 严格阈值与细结构区域能揭示普通全图指标看不到的差异。

不足

  1. 仍然是确定性回归。 论文在 Limitations 中明确承认,像素级前景/背景歧义无法由单值残差完全解决,因此仍可能产生飞点。这正是 MDA 所针对的表示问题。
  2. 不能修正射线与内参错误。 固定 $(u,v)$、只更新 log-depth 使优化稳定,但相机内参或基础点图横向方向一旦错误,SSR 无法纠正。
  3. “三维邻域”是投影对齐的近似。 坐标使用 $(i,j,D\log Z)$ 而非世界 XYZ,仍保留强图像网格约束。它有效隔离深度不连续,但并非通用欧氏三维消息传递。
  4. 依赖初始几何。 若初始深度把两个表面放入错误体素关系,首轮卷积邻域也会错误;迭代虽可修正,但大误差是否能恢复缺乏系统分析。
  5. 计算开销相对基础模型明显。 ViT-L 三步推理从 39 ms 增至 121 ms,对实时或端侧应用并不轻量,且训练需要 16 张 A100。
  6. 局部指标包含复杂启发式。 高频检测、形态学算子、SAM2、区域阈值和局部对齐都可能影响最终排名,需要公开代码后验证复现稳定性。
  7. 细化器主要依赖合成监督。 这有助于获得干净几何,但对透明、反光、运动模糊、真实深度噪声等合成覆盖不足的现象可能存在域差距。
  8. Boundary F1 不是最优。 SSR 更擅长恢复三维结构而非像素级轮廓,不能把“细节更真实”简单等同于“所有边缘指标更好”。
  9. 公开状态尚不完整。 论文声明代码、模型和训练评测脚本将公开,但撰写本文时项目页仍标注 Code/Demo 为后续提供,完整复现条件有待确认。

记忆点

  1. MoGe-3 的核心不是再预测一次深度,而是让当前几何决定下一次特征聚合的邻域。
  2. 坐标表示为 $(u,v,\log Z)$:固定相机射线,只迭代修正相对深度。
  3. 稀疏体素壳只有约 $HW$ 个活跃位置,避免了稠密三维体积的巨大开销。
  4. 图像相邻但深度不连续的点会落入不同体素层,从而减少前景—背景 feature bleeding。
  5. DINO 特征负责语义,Sparse 3D U-Net 负责几何邻域;两者缺一都会影响细节。
  6. 第一轮 refinement 收益最大,后续逐渐饱和;训练三轮、测试七轮仍较稳定。
  7. 最重要的评测观念:清晰的 disparity 不等于正确的 3D point map。
  8. 与 MDA 的互补关系:MoGe-3 改变局部聚合空间,减少三维表面串扰;MDA 改变每像素输出分布,保留多个有效深度模式。理想系统可以在 3D-aware refinement 后继续使用 mixture-density head,而不是把二者视为替代方案。