从单张 2D 图像重建 3D 物体是计算机视觉中经典的“病态问题 (ill-posed problem) ”之一。当你看到一张奔跑的马的照片时,你的大脑会瞬间理解其 3D 形状、肢体的关节运动以及被遮挡的部分。然而,对于计算机来说,从像素网格中推断出这种几何结构极其困难,尤其是当物体是可变形的 (deformable) ——即可以弯曲、伸展和移动 (如动物或人类) 时。

传统上,研究人员通过将复杂的 3D 网格模板拟合到图像或求解严格的几何方程来解决这个问题。但最近,一种新的范式出现了: 要求神经网络直接逐像素地预测几何结构。

在这篇文章中,我们将深入探讨 DualPM , 这是一篇介绍名为 双重点图 (Dual Point Maps) 这种巧妙新表示法的研究论文。通过为单张图像预测不是一个,而是两个几何映射图,该方法成功地恢复了关节动物的 3D 形状和姿态,甚至通过非模态 (amodal) 重建解决了物体“不可见”部分的问题。

转向点图 (Point Maps)

要理解 DualPM,我们需要先了解 点图 (Point Map) 的概念。

历史上,针对 3D 的深度学习方法通常预测 深度图 (depth maps) (即每个像素到相机的距离) 。虽然有用,但深度图有局限性;在不知道相机内参 (如焦距) 的情况下,它们无法本质地告诉你一个点在 3D 空间中的确切位置

最近的突破,如 DUSt3R,提出了一种不同的方法: 与其预测深度,不如训练网络输出一个 点图 (Point Map) \(P\)?点图将图像中的每个像素 \(u\) 与相机坐标系中的特定 3D 坐标 \((x, y, z)\) 关联起来。

\[ u \rightarrow P(u) \in \mathbb{R}^3 \]

这简化了许多几何任务。然而,对于可变形物体,标准的点图有一个主要弱点: 它给了你形状,但没有告诉你任何关于 姿态 (pose) 的信息。如果你重建了一匹正在奔跑的马,你会得到一个奔跑状态的马的 3D 网格,但计算机不知道“这个点”对应的是“左膝盖”,或者这条腿相对于静止状态当前弯曲了 45 度。

核心概念: 双重点图

这就是 DualPM 创新的地方。作者认为,要完全理解一个可变形物体,我们需要同时解决两个问题:

  1. 这个点在当前场景中的位置在哪里?( 姿态/Posed )
  2. 这个点在物体上的身份是什么?( 规范/Canonical )

为了实现这一点,网络从单张输入图像中预测 双重点图

1. 姿态图 (The Posed Map, \(P\))

这是标准的重建。它将像素 \(u\) 映射到相机坐标系中的 3D 位置。它准确地表现了物体在图像中出现的样子,包括其当前的变形和方向。

2. 规范图 (The Canonical Map, \(Q\))

这是改变游戏规则的部分。这张图将像素 \(u\) 链接到物体 中性、静止姿态版本 上的对应 3D 点。

想象一匹完全静止站立的“模板”马。规范图告诉我们,照片中的特定像素对应于那匹模板马上的特定坐标。这张图是 姿态不变的 (pose-invariant) 。 无论照片中的马是在跳跃、睡觉还是奔跑,“鼻子”的像素总是映射到规范空间中的“鼻子”坐标。

图 1. 左图: 我们将物体的图像映射为其双重点图 (DualPMs) ,这是一对点图: 定义在相机空间的 P,和定义在物体具有中性姿态的规范空间的 Q。右图: 结果的可视化。

如图 1 所示,这两张图之间的关系非常强大。姿态图 (\(P\)) 和规范图 (\(Q\)) 之间的差异代表了 变形流 (deformation flow) (\(P - Q\)) 。它在数学上描述了物体是如何从中性状态扭曲和移动到观察状态的。

有了这种双重表示,我们可以免费获得对应关系。如果我们想在两张不同图像 (\(I_1\) 和 \(I_2\)) 中找到马身上的同一个点,我们只需寻找映射到相同规范坐标的像素:

描述使用规范图在两张图像之间进行对应匹配的方程。

架构: 如何预测这些图

研究人员设计了一种神经网络架构,专门利用 \(P\) 和 \(Q\) 之间的关系。它不仅仅是并排预测它们;它使用其中一个来帮助寻找另一个。

图 3. 方法概览展示了架构。输入图像 I 被处理成特征 F。规范预测器生成 Q。以 Q 为条件,姿态预测器生成 P。

这一过程如图 3 所示,遵循以下步骤:

  1. 特征提取: 输入图像 \(I\) 通过特征提取器 (使用预训练权重,如 DINOv2) 以获得丰富的图像特征 \(F\)。
  2. 预测规范图 (\(Q\)) : 网络首先预测规范图。这是合理的,因为预测 \(Q\) 本质上是一个分类任务——为每个像素分配一个“身体部位身份”。这对网络来说更容易学习,因为它对相机角度或动物的姿态是不变的。
  3. 预测姿态图 (\(P\)) : 这里有一个巧妙的架构选择。姿态图 \(P\) 的预测是 以预测的规范图 \(Q\) 为条件 的。

显示 P 是 Q 的函数的方程。

通过将点的“身份” (\(Q\)) 输入到几何结构 (\(P\)) 的预测器中,网络在决定将点放在哪里之前,就已经知道它正在重建什么。这显著提高了泛化能力。

看见不可见之物: 非模态重建 (Amodal Reconstruction)

标准点图的一个主要局限性是它们只代表相机能看到的部分。如果从侧面看一匹马,身体的另一侧就丢失了。这被称为 自遮挡 (self-occlusion)

为了重建 完整的 3D 形状,DualPM 引入了 非模态点图 (Amodal Point Maps)

网络不是将一个像素映射到单个 3D 点,而是将一个像素映射到 一系列点 。 想象一下从相机通过特定像素发射一条射线。这条射线可能会击中马的可见侧 (入射点) ,穿过身体,并从另一侧穿出 (出射点) 。

图 2. 非模态点图示意图,显示一条射线穿过环形物体,在 p1, p2, p3, p4 多个点处相交。

如图 2 可视化所示,网络预测点的层级 \((p_1, p_2, \dots)\)。

  • 第 1 层: 可见表面。
  • 第 2 层: 表面的背面 (隐藏) 。
  • 后续层: 射线可能穿过的任何其他褶皱或肢体。

通过预测这些有序的层,该方法重建了物体的整个体积,而不仅仅是可见的外壳。

使用合成数据训练

训练用于 3D 的深度学习模型通常需要海量数据。获取真实动物的 3D 真值 (ground truth) 数据几乎是不可能的 (你无法轻易给野生斑马穿上动作捕捉服) 。

作者通过完全在 合成数据 上进行训练解决了这个问题。他们使用了 “Animodel” 数据集,该数据集由绑定了骨骼的动物 3D 模型组成。

图 4. 合成训练数据,展示了在各种姿态和环境中渲染的马。

训练流程 (图 4) 包括:

  1. 获取一个 3D 模型 (例如,一匹马) 。
  2. 随机对其进行关节活动 (摆姿态) 。
  3. 从随机视角和随机光照下进行渲染。
  4. 从渲染器生成真值 \(P\) 和 \(Q\) 图。

值得注意的是,该模型 每个类别仅在仅仅一个或两个 3D 资产上进行训练 。 人们可能预期模型会过拟合到那个特定的 3D 网格。然而,因为网络学习的是预测规范坐标 (结构身份) ,它令人惊讶地能很好地泛化到同一类别中不同动物的真实照片上。

为了强化学习,他们使用了一个损失函数,该函数将预测点与真值进行比较,并按置信度加权:

涉及置信度分数的损失函数方程。

实验结果

DualPM 方法在应用于真实世界图像时显示出了令人印象深刻的结果,明显优于 3D-Fauna 等先前的最先进方法。

定性比较

在下方的图 5 中,你可以看到重建质量的差异。

  • 输入视角 (Input View) : 叠加在原始图像上的重建。
  • 新颖视角 (Novel Views) : 旋转以展示 3D 结构的重建。

DualPM (Ours) 恢复了复杂的细节和正确的关节连接,而 3D-Fauna 在动物处于困难姿态 (如第一行中跳跃的马) 时,往往会产生“糊状”或扭曲的形状。

图 5. 与最先进技术的比较。与 3D-Fauna 相比,DualPM 展示了更清晰、更准确的马、牛和羊的 3D 重建。

为什么条件化很重要

作者进行了消融实验 (ablation study) ,以证明以规范图 \(Q\) 为条件来预测姿态图 \(P\) 是至关重要的。

在图 7 中,我们看到当 \(P\) 仅以 \(Q\) 为条件 (下排) 时,泛化能力非常稳健。如果网络过多地依赖原始图像特征 \(F\) (上排) ,它可能会被合成训练集中未见过的纹理或光照搞混。\(Q\) 充当了一个稳定的语义桥梁。

图 7. 消融实验表明,仅以规范图 Q 为条件比以图像特征 F 为条件能带来更好的泛化效果。

对新物种的泛化

也许最令人惊讶的结果是模型的 零样本 (zero-shot) 能力 。 一个 在马上训练的模型被测试用于牛和羊的图像。因为这些四足动物共享相似的拓扑结构 (四条腿、头、尾巴) ,对马的“规范”理解相当好地迁移到了其他动物身上。

图 A8. 未见类别的结果。仅在马上训练的模型可以泛化重建牛和羊。

应用: 骨骼拟合与动画

因为 DualPM 提供了规范图 (\(Q\)) ,我们确切地知道网格的每个部分在其中性姿态下 应该 在哪里。这使得将 3D 骨骼拟合到重建结果中变得轻而易举。

一旦拟合了骨骼,静态图像就可以变得栩栩如生。研究人员展示了他们可以拍摄一张马的单张照片,对其进行重建,拟合骨骼,然后应用动作捕捉数据来制作马奔跑的动画。

图 6. 动画。展示提取的骨骼如何允许对重建的马进行动作重定向和动画制作。

结论

双重点图 (Dual Point Maps) 代表了 3D 计算机视觉向前迈出的重要一步。通过将问题分解为“它在哪里” (\(P\)) 和“它是什么” (\(Q\)) ,研究人员将复杂的几何推断问题转化为可管理的学习任务。

能够利用极少的合成数据进行训练并泛化到真实世界图像,表明这种表示法捕捉到了可变形物体几何结构的某些本质。此外,非模态 (amodal) 层的引入解决了长期存在的自遮挡问题,使计算机能够像人类一样“想象”物体的不可见侧面。

对于该领域的学生和从业者来说,DualPM 凸显了选择正确 表示法 (representation) 的重要性。有时,解决难题的关键不是更大的网络,而是定义输出的更聪明的方式。