HubPart IV · 多视图扩散
Part IV · 多视图扩散家族 · 2023 → 2025

先造出一致的几张视图,再重建

SDS 慢在"逐资产优化"。这一部换思路:微调一个 2D 扩散模型,让它一次性吐出几张相互一致的视图, 再丢给一个重建后端。一致性靠"视图共享 attention"几乎免费换来(Demo 5)。 从 Zero123 的单视图条件,到 CAT3D 的任意视图重建,主攻 痛点 (c) 一致性

§4.1Zero123 · 教 2D 模型"换个角度看"

Zero-1-to-3 (Zero123)— Zero-shot One Image to 3D Object
ICCV 2023 Liu et al. · Columbia · arXiv:2303.11328 · project

想从一张图看到这个物体的新视角,但没有 3D 监督。

关键想法:在 Objaverse 渲染上微调 Stable Diffusion,让它以一个相对相机变换(Δ方位、Δ仰角、Δ半径)为条件生成新视角。第一次教会 2D 扩散模型"显式的视角控制"。

相比 SDS"逐资产优化",这是一次前向就出新视角;但每个视角独立生成,彼此不保证 3D 一致。

Zero123-XL(更大的 Objaverse-XL 重训)与 Stable Zero123(质量过滤 + 仰角条件 + 训练提速)只提保真、不改架构。 问题留在了"独立生成 → 不一致"上——下面三节都是在补这个洞。

§4.2固定视图网格 + 快速前馈重建

Zero123++— a Single Image to Consistent Multi-view Diffusion Base Model
2023.10 Shi et al. · SUDO-AI / UCSD · arXiv:2310.15110

独立生成各视角 → 互相打架。

关键想法:把 6 张固定视角拼成一张 3×2 的大图,在一次扩散里生成——这些视角共享 SD 自己的 self-attention,一致性"免费"得到。再加 reference attention + 调好的噪声调度。

从"每视角一次扩散"变成"所有视角一次扩散"——这是整条线最便宜也最常用的一致性技巧。

有了一组一致视图,重建就能前馈化:One-2-3-452306.16928,跑 Zero123 出多视图 → 一个 cost-volume SparseNeuS 在 ~45s 出 mesh, SDS)、 One-2-3-45++(一致多视图 → 多视图条件的原生 3D 扩散,已经在往 Part VI 靠)、 Instant3D2311.06214,文本→4 视图网格 → transformer LRM 回归 triplane NeRF,~20s——这是通往 Part V 的桥)。

§4.33D-aware attention · 把几何先验做进注意力

统一的招数:让视图之间共享 attention,使网络把它们当成一个联合样本,而不是 N 个独立样本。具体有几味:

  • 共享 / 拼接 self-attention(Zero123++、MVDream):把视图拼在 token 轴上,每个视图的 query 能看到所有视图的 key/value。最便宜、最流行。
  • Epipolar attention(EpiDiff、Era3D 的行注意力):只在几何上有效的对应(极线 / 图像行)之间做 cross-attention,是更强的归纳先验、也更可扩展。
  • 3D-aware 体积 attention(SyncDreamer):每步去噪都把特征投进一个共享 3D 特征体积同步。
  • 显式相机 embedding / 共享噪声 / 共享 UV latent(Zero123、Free3D、SyncMVD)。
Demo 5 · 视图共享 attention · 一致性从哪来
四个视图在并行去噪。关掉共享再点"跑一次去噪":四个视图各自漂移成不同颜色/形状(不一致)。 打开共享:虚线表示视图间的 attention 把它们拉向同一个共识,越去噪越一致。 这就是 Zero123++ / MVDream 的核心——一致性不是事后对齐,而是生成时就耦合
SyncDreamer / Wonder3D / Era3D— 体积同步 · 跨域(RGB+法线) · 高分辨率行注意力

共享 self-attention 还不够准,且分辨率一高 attention 就爆。

关键想法:SyncDreamer 用3D 特征体积每步同步;Wonder3D 同时生成 RGB + 法线(跨域 attention),法线融合直出 mesh;Era3D 用行注意力把极线先验做便宜(省 12× 算力),上到 512² 且支持任意相机内参。

把"拼接 attention"升级成带几何结构的 attention——更锐、更高分辨率、几何更对。

§4.4视频扩散先验 · 把环绕轨迹当成一段视频

既然视频模型天生有时间一致性,那"绕物体一圈"就是一段视频。SV3D2403.12008, 把 Stable Video Diffusion 改成可控环绕视频)、V3D(视频模型出几百帧,密集视图喂重建)、 IM-3D2402.08682,视频生成 + 3DGS 重建的迭代循环,2D 评估次数少 10–100×)。 密集的帧 → 更少 floater、更稳的重建。这是对"少量固定视图覆盖太稀疏"的回应。

§4.5任意视图重建 · CAT3D 收尾

CAT3D— Create Anything in 3D with Multi-View Diffusion Models
NeurIPS 2024 Gao et al. · Google DeepMind · arXiv:2405.10314

真实场景重建需要任意数量的输入/目标视图,不止 4–6 张固定视角。

关键想法:一个多视图扩散模型吃任意数量输入视图、生成大量 3D 一致的目标视图(高效并行采样),再喂一个稳健的 NeRF/3DGS 重建。整个场景 ~1 分钟。

把"生成几张固定视图"推广到"按需生成任意多视图再重建",是这条线在场景尺度上的集大成。

为什么它比 SDS 快,又为什么仍然不够

:生成一组一致视图是一次前向扩散(秒级),重建也前馈,比逐资产 SDS 优化快几个数量级,多样性更好,Janus 从结构上避免。 不够:2D 扩散只近似满足 3D 几何,残余的视图不一致 → floater、鬼影、糊掉的背面(最少被看到的背面约束最弱)。 几张固定视图覆盖稀疏,重建只能对不一致的像素求平均 → 糊。这正是视频先验(更密)和 CAT3D(更多视图)要补的,也是原生 3D 扩散干脆绕开 2D→3D 一致性鸿沟的动机。

这一部的谱系,一句话

单视图条件(Zero123)→ 固定视图网格 + 前馈重建(Zero123++/One-2-3-45/Instant3D)→ 3D-aware attention(SyncDreamer/Wonder3D/Era3D)→ 视频先验(SV3D)→ 任意视图重建(CAT3D)。 两个下游接口:它喂养了 LRM 家族(一致视图正是 LRM 的输入,见 Part V),又被原生 3D 扩散部分取代Part VI 直接在 3D latent 里学分布,不再经过 2D→3D 这道坎)。