引言
你是如何理解世界的三维结构的?你不会带着尺子和量角器四处走动,去测量你看到的每一个物体的精确坐标。你也不依赖于植入大脑中的“黄金标准” 3D 网格数据。相反,你是通过观察来理解的。你转动头部,绕着雕像走一圈,或者开车穿过街道。你的大脑将这些连续的 2D 观察结果拼接成了一个连贯的 3D 模型。
多年来,计算机视觉研究人员一直试图教 AI 生成 3D 内容,但他们往往采用的是“尺子和量角器”的方法。他们依赖有限的 3D 模型数据集,或者需要精确的相机位姿标注 (即相机位置的精确数学坐标) 。这造成了一个巨大的瓶颈: 数据稀缺 。 互联网上有数十亿的图像和视频,但其中很少有带有高质量 3D 标签或相机轨迹的。
如果 AI 能像我们一样——仅仅通过观看大量视频就能学习 3D,那会怎样?
这就是北京智源人工智能研究院 (BAAI) 发表的突破性论文 See3D 的前提。研究人员介绍了一种从“无位姿 (pose-free) ”互联网视频中学习通用 3D 先验的方法。通过将训练数据扩展到数百万个片段,而无需昂贵的标注,他们在 3D 生成方面取得了最先进的结果。

如上图所示,其结果非常多样化,涵盖了从将单张图像转换为 3D 资产,到重建整个场景,甚至编辑 3D 物体。在这篇文章中,我们将拆解 See3D 的架构,解释他们如何通过数据清洗、用“视觉提示”替代复杂的数学运算,以及如何生成连贯的 3D 世界。
背景: 3D AI 中的数据瓶颈
要理解 See3D 的重要性,我们需要看看 3D 生成的现状。
目前大多数现代方法都依赖于 多视角扩散 (Multi-View Diffusion, MVD) 模型。这些是文本到图像模型 (如 Stable Diffusion) 的变体,经过微调可以同时生成一个物体的多个视图。如果你要求生成“一把椅子”,MVD 模型会尝试生成正面、侧面和背面视图,使它们看起来都像是 同一把 椅子。
然而,标准的 MVD 模型遭受一个主要限制: 位姿依赖 (Pose Dependency) 。 为了训练它们,你通常需要告诉模型每张图像的确切相机位置 (例如,“图像 A 在 0 度,图像 B 在 45 度”) 。这种对“相机外参”的依赖迫使研究人员使用合成数据集 (如 Objaverse) ,因为那里的数据是完美的。但合成数据缺乏现实世界的真实感和多样性。
另一种选择是使用真实视频,但获取随机 YouTube 视频片段的准确相机位姿是非常困难且计算昂贵的 (通常使用一种称为运动恢复结构 SfM 的技术,该技术经常失败) 。
See3D 提出了一个根本性的转变: 忘掉位姿。 我们不再给模型输入数学坐标,而是给它视觉线索。如果我们能教模型根据它所看到的来“补全场景”,我们就可以利用几乎无限的互联网视频进行训练。
See3D 方法
See3D 框架由三大支柱组成:
- WebVi3D: 一个庞大的、经过清洗的互联网视频数据集。
- 视觉条件 MVD (Visual-Conditional MVD) : 一个基于噪点视觉提示而非相机位姿来生成视图的模型。
- 生成流水线: 一种基于变形 (warping) 的推理策略,用于从单张图像创建 3D 内容。
让我们逐一分解。

1. 数据清洗: 寻找“具备 3D 感知”的视频
你不能把 YouTube 上的所有内容都丢给 3D 模型。新闻主播静坐的视频无法通过其学习 3D 几何,因为摄像机从未移动。足球比赛的视频也过于混乱,因为物体在独立于背景移动。
为了学习 3D,模型需要由移动的摄像机观察到的静态场景 。 这模仿了赋予我们深度感知的“视差效应”。
研究人员开发了一个自动化流程,将 2500 万个原始视频筛选为一个名为 WebVi3D 的高质量数据集。

该流程有四个步骤:
- 下采样 (Downsampling) : 降低分辨率以提高效率。
- 语义过滤 (Semantic Filtering) : 使用 Mask R-CNN 检测并移除以人或汽车等动态物体为主的视频。
- 基于光流的过滤 (Flow-Based Filtering) : 使用光流 (分析像素运动) 来寻找更微妙的运动,如摇曳的树木或流动的水。如果场景部分的移动方式与摄像机运动暗示的不符,该视频将被丢弃。
- 轨迹过滤 (Trajectory Filtering) : 使用点追踪来确保摄像机实际移动了足够的距离。如果摄像机只是原地旋转或几乎不移动,它就无法提供足够的 3D 信息。
结果是得到了 1600 万个视频片段 (约 3.2 亿帧) ,这些片段是从不同角度观察的静态场景——与以前的标准相比,这是一个庞大的数据集。
2. 核心创新: 时间依赖视觉条件
这是论文中技术上最有趣的部分。如何在不使用相机坐标的情况下控制相机视角?
研究人员引入了 视觉条件 (Visual Condition, \(v_t^i\)) 。
在标准的扩散模型训练设置中,你取一张图像,对其添加噪声 (使其看起来像雪花点) ,然后教模型去除噪声。在这里,目标是 多视角预测 (Multi-View Prediction) 。 给定参考图像 (图像 A) ,生成目标图像 (图像 B) 。
See3D 并没有告诉模型“在坐标 (x, y, z) 生成图像 B”,而是提供了图像 B 的一个“受损 (corrupted) ”版本作为提示。
视觉条件的配方
视觉条件不仅仅是目标图像;它是一个经过精心处理的信号,旨在指导模型而不使其变得“偷懒”。
- 掩码 (Masking) : 他们随机遮挡目标图像的部分区域。这迫使模型学习几何知识来填补空白,而不是仅仅复制像素。
- 加噪 (Noising) : 他们向目标图像添加高斯噪声。
- 时间依赖混合 (Time-Dependent Mixture) : 这是关键所在。
在扩散模型中,生成过程发生在时间步长 (\(t\)) 上,从纯噪声 (\(t=1000\)) 到清晰图像 (\(t=0\)) 。
- 在高噪声水平下 (早期步骤) : 模型严重依赖视觉提示来建立场景的全局结构。
- 在低噪声水平下 (后期步骤) : 模型需要细化细节。如果此时视觉提示太强,模型可能会过度依赖它,简单地复制噪点输入。
为了解决这个问题,研究人员使用了一个混合函数。随着时间步长 \(t\) 的减小 (接近最终图像) ,“视觉条件”会淡出受损的图像提示,并将其替换为模型自己的噪声潜变量表示。

这迫使模型使用视觉提示作为向导来决定看哪里 (相机控制) ,但依靠其学习到的先验知识来决定看起来像什么 (纹理和几何) 。
此条件 \(V_t\) 的数学公式为:
\[ V _ { t } = [ W _ { t } * C _ { t } + ( 1 - W _ { t } ) * X _ { t } ; M ] , \]这里,\(W_t\) 是随时间变化的权重因子,\(C_t\) 是受损的图像提示,\(X_t\) 是噪声潜变量。
3. 3D 生成流水线
到目前为止,我们讨论的是训练。但在推理过程中,该模型如何从单张图片生成 3D 场景呢?我们没有“目标图像”来用作视觉条件——我们正试图创造一个!
解决方案是 基于变形的流水线 (Warping-Based Pipeline) 。
直觉很简单: 如果你有一张图像和一个深度图,你可以将像素“变形 (warp) ” (重投影) 到一个新的视点。它看起来不会很完美——在未见区域暴露的地方会有空洞,在深度错误的地方会有扭曲——但它为 See3D 模型提供了一个完美的视觉提示。

该过程迭代工作:
- 单目深度估计: 模型预测起始图像的深度。
- 迭代稀疏对齐: 关键步骤。 单目深度估计器在绝对尺度上通常很差 (它们不知道走廊是 10 米还是 100 米长) 。See3D 使用“稀疏关键点” (匹配视图间明显的特征) 来几何对齐深度图。它最小化了变形后像素应该在的位置与实际所在位置之间的误差。
- 变形 (Warping) : 对齐后的深度图用于将当前视图变形到下一个相机位置。
- 细化 (Refinement) : 这个变形后的、混乱的图像成为 视觉条件 。 它被输入到 See3D 模型中。模型看到变形的建议 (指示了相机角度) ,并“构想”出缺失的细节、纹理和遮挡区域,生成高质量的新视图。
- 重复: 这个新视图成为锚点,过程沿着轨迹继续。
最后,一旦生成了一系列连贯的图像,就使用标准的 3D 高斯泼溅 (3D Gaussian Splatting, 3DGS) 来重建实际的 3D 物体或场景。
实验与结果
研究人员将 See3D 与几个最先进的基准进行了比较,包括 LucidDreamer、ViewCrafter 和 ZeroNVS 。
单视图转 3D
在这个任务中,模型接收一张照片并试图生成 3D 场景。结果表明,See3D 在其他模型失败的地方很好地保持了结构完整性。

在上面的“Warped Image (变形图像) ”一列中,你可以看到输入条件——它是黑暗的、扭曲的,且充满了空洞。然而,“Ours” (See3D) 将其恢复到了逼真的质量 (Reference/GT) ,远胜于 LucidDreamer 或 ViewCrafter。定量指标 (PSNR, SSIM) 证实了这一点,显示峰值信噪比 (PSNR) 比竞争对手提高了 4 分贝以上。
稀疏视图转 3D
在这里,模型被给予物体的 3 张图像,并被要求填补空白以创建完整的 360 度重建。

结果显示出更少的“漂浮伪影” (漂浮在 3D 空间中的随机噪点) 和更清晰的细节。这表明模型不仅仅是记住了 2D 纹理,而且学习到了底层的 3D 一致性。
开放世界生成与编辑
由于该模型是在多样化的互联网视频 (风景、无人机、游戏、动物) 上训练的,它在“自然场景 (in-the-wild) ”中表现出非凡的泛化能力。
它可以处理 长序列生成 , 创建穿过场景的平滑相机路径,而不会导致几何结构崩溃:

它还支持 3D 编辑 。 你可以遮挡 2D 图像中的物体 (例如,“把这个花瓶换成狐狸”) ,模型将生成与场景光照和透视一致的新物体,并跨越多个视图。

结论与启示
See3D 代表了生成式 AI 向前迈出的重要一步,因为它正面解决了数据瓶颈问题。作者没有等待更好的标注数据集,而是想出了如何利用我们已有的数据——数以百万计的无位姿视频。
主要收获:
- 规模至关重要: 通过设计一个接受无位姿数据的流水线,训练可以扩展到 1600 万个以上的视频,极大地提高了泛化能力。
- 视觉提示 > 显式位姿: 你并不总是需要精确的数学来控制相机。一个“变形”的视觉提示足以让扩散模型理解透视。
- 混合流水线: 纯生成通常缺乏几何一致性,而纯变形缺乏纹理质量。See3D 结合了两者: 变形提供结构,扩散提供真实感。
这项工作使我们更接近这样一个未来: 我们可以从任何视频片段或照片生成交互式 3D 环境,从而使得游戏、VR 和模拟的 3D 内容创作民主化。“所见即所得 (You See it, You Got it) ”的概念表明,只要我们有视觉数据,我们就能重建世界。
](https://deep-paper.org/en/paper/2412.06699/images/cover.png)