在计算机视觉飞速发展的世界里,教会机器理解 3D 空间是一项巨大的挑战。我们希望机器人能在建筑工地上导航,增强现实 (AR) 眼镜能在家具上叠加信息,数字助手能理解像“找到带岛台的厨房”这样复杂的空间查询。

为了实现这一目标,人工智能系统通常依赖于多模态学习 。 它们结合不同类型的数据——RGB 图像、3D 点云、CAD 模型和文本描述——来构建对世界的稳健理解。然而,现有的方法有一个明显的“阿喀琉斯之踵”: 它们通常假设数据是完美的。它们要求每个对象在所有模态下都能完全对齐,并具有完整的语义标签。

但现实世界是混乱的。机器人可能有点云数据,但没有摄像头图像。可能存在平面图,但没有相应的 3D 扫描。

CrossOver 应运而生,这是由斯坦福大学、微软、苏黎世联邦理工学院 (ETH Zurich) 和 HUN-REN SZTAKI 的研究人员提出的一种新颖框架。这篇论文介绍了一种灵活的、场景级的对齐方法,它在推理过程中不需要完美的数据对或显式的对象标签。

在这篇文章中,我们将剖析 CrossOver 的工作原理,它如何学习一种 3D 场景的“模态无关”语言,以及为什么它的“涌现行为”是 3D 场景理解领域的颠覆性变革。

CrossOver 概念图,展示了一个办公室的 3D 模型以及它如何检索匹配的点云并合并场景。

问题: “完美数据”陷阱

传统的多模态方法通常在对象级别上运作。它们获取一组三元数据——比如一张椅子的图像、该椅子的点云以及文本“一把木椅”——并学习将它们映射到同一个特征空间。像 PointCLIP 或 ULIP 这样的方法在这方面已经取得了成功。

然而,当扩展到整个场景时,这种方法面临两个主要局限性:

  1. 缺乏上下文: 对齐单个对象忽略了它们之间的关系。孤立的“椅子”与“餐桌旁的椅子”是不同的。
  2. 僵化的要求: 这些方法假设每个实例都有对齐的数据。如果你想将房间的视频与 CAD 模型匹配,但视频中缺少 CAD 模型中存在的特定灯具,传统算法通常会失效。

现实世界的应用需要场景级的理解 , 这种理解需要对缺失模态具有鲁棒性,并且在推理过程中不依赖于预先标记的对象分割 (语义分割) 。

解决方案: CrossOver

CrossOver 通过学习整个场景的统一嵌入空间来解决这些问题。它对齐了五种不同的模态:

  1. RGB 图像 (\(\mathcal{I}\))
  2. 点云 (\(\mathcal{P}\))
  3. CAD 网格 (\(\mathcal{M}\))
  4. 平面图 (\(\mathcal{F}\))
  5. 文本描述 (\(\mathcal{R}\))

核心创新在于 CrossOver 不要求这些模态同时存在。相反,它使用灵活的训练管道来学习如何将任何可用的输入转换为共享的“语言” (嵌入空间) 。

架构概览

该框架以渐进的方式运作,从理解单个实例过渡到理解整体场景。

CrossOver 架构概览,展示了实例级和场景级交互。

如图 2 所示,该架构分为三个主要的概念模块:

  1. 实例级多模态交互 (Instance-Level Multimodal Interaction) : 使用可用数据学习特定对象的表示。
  2. 场景级多模态交互 (Scene-Level Multimodal Interaction) : 将这些对象融合为一个单一的场景描述符 (\(\mathcal{F}_S\))。
  3. 统一维度编码器 (Unified Dimensionality Encoders) : 最终的推理引擎,可以接收原始数据 (如原始点云) 并将其映射到场景描述符,而无需知道单个对象的位置。

让我们逐步分解这一方法。

第一步: 实例级交互

第一阶段是关于特定对象的定位与表示。虽然目标是场景理解,但模型首先要学会识别其组成部分。

研究人员针对不同的数据维度使用了不同的编码器:

  • 1D 编码器 (文本) : 使用预训练的 BLIP 编码器来处理“对象指称 (object referrals) ”——即对对象空间关系的描述 (例如,“椅子在桌子的左边”) 。
  • 2D 编码器 (图像) : 使用 DinoV2 从对象的多个视图中提取视觉特征。
  • 3D 编码器 (点云/网格) : 使用稀疏卷积网络 (I2PMAE) 来编码几何形状。重要的是,对于点云,他们还编码了空间位置成对关系 (这个对象离其他对象有多远?) ,从而在早期注入场景上下文。

对比损失 (Contrastive Loss)

为了对齐这些模态,模型使用了对比损失函数。这个想法很简单: 图像中“椅子”的嵌入在数学上应该接近点云中同一“椅子”的嵌入,而远离“桌子”的嵌入。

对象实例 \(\mathcal{O}_i\) 的损失函数定义为:

实例级对比损失方程。

在这里,模型将点云 (\(\mathcal{P}\))、网格 (\(\mathcal{M}\)) 和文本 (\(\mathcal{R}\)) 特征专门与图像 (\(\mathcal{I}\)) 特征对齐。

为什么要与图像对齐? 作者选择 RGB 图像作为“基础”模态,因为它们是最丰富且信息量最大的数据源。通过将所有内容锚定到图像空间,模型避免了在此阶段显式尝试对齐每一对组合 (例如,网格对文本、平面图对点云) 的组合爆炸问题。这种效率是模型可扩展性的关键。

第二步: 场景级融合

一旦模型拥有了单个实例的特征,它就需要将它们聚合为场景嵌入 (Scene Embedding)

仅仅对房间内所有对象的特征取平均值可能会掩盖重要的细节。相反,CrossOver 采用了加权多模态场景融合 (Weighted Multimodal Scene Fusion) 。 它汇集场景中所有实例的所有可用模态的特征,并计算加权和。

多模态场景融合方程。

在这个方程中,\(w_q\) 代表可训练的注意力权重。网络学习哪些模态为描述场景提供了最可靠的信号,并相应地对其进行加权,以生成主场景向量 \(\mathbf{F}_S\)。

第三步: 统一维度编码器

这可以说是论文中最关键的贡献。

第二步中描述的机制需要我们知道对象在哪里 (实例分割) 以便提取它们的特征。但在现实世界的应用中——比如机器人进入一个新房间——我们没有标记好的对象边界框。我们只有原始的视频流或原始的 LiDAR 扫描。

为了解决这个问题,CrossOver 训练了统一维度编码器 。 这些是独立的网络,接收原始的、未分割的场景数据,并尝试预测第二步中创建的丰富的 \(\mathbf{F}_S\) 表示。

  • 1D 编码器: 处理一组关于场景的文本描述。
  • 2D 编码器: 使用 DinoV2 处理原始的多视图图像或平面图。
  • 3D 编码器: 使用 Minkowski Engine (稀疏卷积) 处理原始场景点云。

这里的训练目标意味着“蒸馏”。我们希望原始 3D 编码器能够产生与复杂的、分段融合模型一样好的结果。

对齐维度编码器的场景级损失函数方程。

在这里,\(\alpha, \beta, \gamma\) 是超参数,用于平衡 1D、2D 和 3D 编码器与主场景嵌入 \(\mathbf{F}_S\) 的对齐。

总损失结合了场景级对齐与实例级对齐:

总组合损失方程。

最后,在这些步骤中用于衡量查询 \(q\) 和键 \(k\) 之间相似度的对比损失是标准的 InfoNCE 损失:

对比损失函数方程。

推理管道

一旦训练完成,该系统就非常灵活。你可以输入一种模态的查询 (例如,点云) 并检索完全不同模态的匹配项 (例如,平面图) 。

推理管道图示,展示了查询到数据库的相似度匹配。

如图 3 所示,推理不需要对象检测或分割。查询场景通过其特定的编码器 (例如,用于点云的 3D 编码器) 获得一个向量。数据库包含来自其他编码器 (例如,用于平面图的 2D 编码器) 的向量。简单的相似度检查即可检索出最佳匹配。

实验与结果

研究人员在两个主要数据集上评估了 CrossOver: ScanNet3RScan 。 他们测试了模型的两个主要任务: 实例检索 (寻找特定对象) 和场景检索 (寻找特定房间) 。

涌现行为 (Emergent Behavior)

最引人注目的结果之一是“涌现行为”。回想一下,在实例训练期间,模型主要将模态与图像对齐。它并没有被明确训练将点云直接映射到文本

然而,由于点云和文本都被映射到了图像空间,它们通过传递性最终也被相互映射了。

雷达图,对比 CrossOver 与 ULIP-2 和 PointBind 等基线模型。

图 4(a) 清晰地展示了这一点。绿色区域代表 CrossOver。即使对于像 点云 \(\to\) 网格点云 \(\to\) 文本 这样的配对 (缺乏显式的成对训练或仅有间接训练) ,CrossOver 的表现也显著优于 ULIP-2 和 PointBind 等基线。这证明了共享嵌入空间具有鲁棒性且在语义上是有意义的。

跨模态场景检索

CrossOver 能否根据点云找到匹配的平面图?

定量结果令人震惊。在下方的图 6 中,我们可以看到召回率 (正确匹配出现在前 K 个结果中的百分比) 。

图表展示了不同模态对的场景匹配召回率。

CrossOver (绿色虚线) 在图表中占据主导地位。无论是将图像映射到点云 (\(\mathcal{I} \to \mathcal{P}\)) 还是将点云映射到文本 (\(\mathcal{P} \to \mathcal{R}\)),它都实现了比最先进基线高得多的召回率。

定性结果让这些数字变得生动起来。

场景检索的定性对比。CrossOver 正确识别了场景,而其他方法失败了。

在图 5 中,查询是一个平面图 (左下) 。目标是找到相应的 3D 扫描

  • PointBind (现有方法) 失败了,检索到了不相关的场景。
  • CrossOver 正确地将其 Top-1 匹配识别为确切的房间 (绿色对勾) 。

可视化显示 CrossOver 理解了布局——家具的排列和结构——而不仅仅是匹配孤立的对象纹理。

处理缺失模态

在现实场景中,数据很少是完整的。研究人员通过使用非重叠的数据块进行训练来模拟这种情况——例如,在一半数据集上训练图像到点云,在另一半数据集上训练图像到网格。

表格展示了部分数据可用性下的性能。

表 4 显示,即使模型在训练期间从未见过共享同一图像的特定点云-网格对 (非重叠) ,性能仍然很高。这种“模态桥接”能力意味着 CrossOver 有效地学习了场景的底层几何和语义,而与其用于捕获场景的具体传感器无关。

结论

CrossOver 代表了 3D 场景理解向前迈出的重要一步。通过摆脱僵化的、对象级的对齐,拥抱灵活的、场景级的嵌入空间,它解决了计算机视觉中的几个实际问题。

主要收获:

  • 模态无关性: 它将图像、点云、平面图和文本视为同一底层现实的不同视图。
  • 无需分割: 统一维度编码器允许模型在推理过程中处理原始传感器数据。
  • 涌现对齐: 将各种数据类型对齐到一个共同的锚点 (图像) 允许模型“学习”它没有被明确教过的关系,例如将文本直接连接到 3D 几何。

对于学生和研究人员来说,CrossOver 展示了经过深思熟虑的架构选择后, 对比学习所能发挥的威力。它为数字孪生 (CAD/平面图) 与物理现实 (视频/LiDAR) 的无缝连接提供了可能,为增强现实、机器人技术和自动化施工监控打开了新的大门。