跳转至

Generative Structure from Motion with Native 3D Diffusion

会议: NeurIPS 2026
arXiv: 2610.35522
论文: https://arxiv.org/abs/2610.35522
代码: https://dotb1ue.github.io/GenSfm/
领域: 重建与渲染
关键词: 稀疏视角重建, 原生3D扩散模型, 运动恢复结构, 联合位姿去噪, 纹理采样

一句话总结

提出 GenSfM 框架,将原生 3D 扩散模型作为稀疏无标定多视角物体结构与相机位姿恢复的核心推理引擎,通过多模态 DiT 联合去噪 3D 形状与各视角位姿潜在表征,并在精细阶段通过位姿感知的多尺度逐体素图像特征采样消除层叠误差,实现兼具高保真度几何、纹理与亚度级位姿精度的端到端物体级 SfM。

研究背景与动机

从少量无标定稀疏视角中联合恢复物体的 3D 几何结构与相机运动参数,是计算机视觉与机器人领域的核心基础课题。经典 SfM 与 MVS 依赖多视角特征匹配与光度一致性约束,在视角稀疏、纹理匮乏或基线较宽的物体级拍摄场景下,因缺乏足够的视差重叠与先验支撑而极易崩溃,且完全无法恢复未见区域的遮挡几何。前馈式重建网络(如 DUSt3R、VGGT)虽然引入了数据驱动几何先验来联合回归点图与位姿,但本质仍属于观测驱动,对大面积未见几何缺乏完整的物体分布模型。

将大规模 3D 生成先验引入稀疏重建成为另一条重要路线,然而现有的“先重建后生成”级联范式(如 ReconViaGen)通常将外部预测的位姿或点图作为条件直接喂给 3D 生成器进行补全。这种硬性级联让前馈估计中的位姿与几何误差单向传递并层叠放大,各模块各司其职,无法在统一的 3D 原生分布约束下对所有输入视角形成全局自洽的联合假设。

为了打破几何重建与生成先验之间的级联壁垒,本文彻底翻转了系统设计视角:不再将 3D 生成模型作为后处理补全器,而是直接将其作为稀疏多视角 SfM 的第一性推理机制。核心 idea:将多视角物体的完整几何结构与相机位姿恢复统一建模为原生 3D 扩散模型的单次联合条件推断问题,在多模态 DiT 的统一自注意力下联合去噪形状与视角位姿,辅以位姿对齐的逐体素精细特征采样,实现无外部位姿骨干网络的端到端生成式 SfM。

方法详解

整体框架

GenSfM 采用由粗到精(Coarse-to-Fine)的两阶段原生 3D 扩散生成架构。粗阶段负责在紧凑的潜在空间内联合恢复物体稀疏结构(Sparse-Structure, SS)与所有输入视角的相机位姿矩阵 \(\mathbf{P}_i\);精细阶段则利用粗阶段解算出的几何与相机参数,在三维体素与输入图像之间建立精确投影,通过位姿感知的逐体素特征采样指导结构化潜在变量(Structured-Latent, SLat)的扩散去噪,最终解码为三维高斯或网格表面。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["多视角无标定输入图像<br/>N帧无位姿RGB"] --> B["多尺度增强图像条件编码<br/>DINOv2语义 + 4层CNN纹理金字塔"]
    B --> C["联合形状-位姿扩散去噪 (多模态DiT)<br/>共享自注意力 + 注册Token全局通信"]
    C --> D["3D原生UV体素解码与位姿解析<br/>紧凑4³网格 + DLT最小二乘求解相机参数"]
    D --> E["位姿感知逐体素特征投影采样<br/>语义特征SLat重编码 + 纹理特征金字塔池化"]
    E --> F["精细几何与纹理扩散去噪 (SLat DiT)<br/>解码为高质量3D高斯/辐射场/网格"]

关键设计

1. 3D 原生多视角紧凑位姿标记化:消除冗余开销与解算低自由度投影

为了在原生 3D 扩散架构中同时表征多个视角的相机几何,模型继承了 3D 空间稠密 3D-2D 投影场的思想,将每个激活体素中心在第 \(i\) 个视角下的透视投影归一化 UV 坐标构造为 \(64^3\) 分辨率的 UV 体积 \(\mathbf{u}_i \in [0, 1]^{2 \times 64^3}\)。然而,透视投影矩阵仅具有有限的自由度(3×4 矩阵),全尺寸稠密体积存在严重的参数冗余;如果为每个视角分配与单张图像相同的 token 量,随着输入视角数增加,序列长度将迅速爆炸。

为此,设计了一个专用的 3D 卷积位姿 VAE,通过四级下采样将每个视角的 UV 体积极端压缩为紧凑的 \(4^3\) 空间网格潜在变量 \(\mathbf{z}^p_i \in \mathbb{R}^{8 \times 4 \times 4 \times 4}\)。单个视角的位姿 token 数量相比 \(16^3\) 方案大幅削减了 64 倍(仅 64 个 token),使得序列长度在扩展至多个视角时依然轻量。在推理时,生成的位姿潜在变量经由位姿 VAE 解码回 UV 体积,结合视锥内激活掩码,通过直接线性变换(Direct Linear Transform, DLT)最小二乘法解析恢复相机的投影矩阵 \(\mathbf{P}^*_i\):

\[\mathbf{P}^*_i = \arg\min_{\mathbf{P}_i} \sum_{j=1}^{L} \|\pi(\mathbf{P}_i, \mathbf{x}_j) - \mathbf{u}_{j,i}\|^2\]

进一步通过 RQ 分解精确分解出相机的内参矩阵 \(\mathbf{K}\) 与外参矩阵 \([\mathbf{R} \mid \mathbf{t}]\)。

2. 联合多模态形状-位姿 DiT 与增强多视角条件机制:统一多视角自洽推理

为了实现形状假设与相机位姿的双向约束,粗阶段将形状潜在序列 \(\mathbf{z}^s_t\) 与各视角的位姿潜在序列 \(\{\mathbf{z}^{p}_{i, t}\}_{i=1}^N\) 串联拼入同一序列,并引入可学习的全局注册标记(Register Tokens)\(\mathbf{z}^r\) 充当所有视角与三维空间之间全局信息汇聚的共享总线。在输入层,除了向形状与位姿嵌入各自网格对齐的 3D 绝对位置编码之外,还为每个视角的位姿 token 与对应的输入图像条件分配了共享的视角身份嵌入 \(\mathbf{e}^v\),在交叉注意力中牢固绑定该视角与其图像源。

在条件注入上,针对标准 DINOv2 图像特征空间分辨率粗糙、难以提供高精度 2D-3D 对应细节的短板,粗阶段引入了一个 4 级卷积特征金字塔 \(\Phi_{\mathrm{cnn}}^s\)。将卷积特征按 DINOv2 patch 网格下采样后沿通道维度拼接,形成统一宽度(1536 维)的条件序列 \(\mathbf{z}^I_i\)。在 DiT 的每一层中,所有视角条件不设掩码地并行供查询交叉注意力,同时通过根据各模态时间步(形状时间步 \(t^s\) 与视角独立时间步 \(t^p_i\))分别调制的 AdaLN,在全局共享自注意力下协同进化去噪,彻底消除了传统分步流程中的视角漂移与累积误差。

3. 位姿感知的逐体素精细几何与纹理增强:像素对齐特征投影反哺

进入精细生成阶段,核心目标是根据粗阶段预测出的高精度几何体素与多视角相机参数,为每个激活体素赋予高保真度的局部纹理与微观几何,解决全局交叉注意力导致的表面模糊现象。由于输入视角的相机外参与内参均已在粗阶段精确解耦,系统将粗阶段预测的激活体素集合 \(\{\mathbf{x}_j\}_{j=1}^L\)(\(L \le 32768\))直接透视投影至所有输入图像平面中,获得确定的亚像素坐标 \(\mathbf{u}_{j, i} = \pi(\mathbf{P}^*_i, \mathbf{x}_j)\)。

针对投影点,模型分别采集互补的双路特征:一路提取多尺度 ConvNeXt 金字塔的 16 通道纹理特征 \(\mathbf{c}_j^{\mathrm{tex}}\),补充丰富的局部高频细节;另一路双线性采样粗阶段复用的 DINOv2 特征,并通过预训练且冻结的 SLat 编码器重新映射到与目标结构特征相同的隐流形空间,生成 8 通道语义特征 \(\mathbf{c}_j^{\mathrm{sem}}\)。多视角特征在投影处进行无参数的跨视角均值池化,并与含噪体素特征拼接:

\[\mathbf{h}_0(\mathbf{x}_j) = W_{\mathrm{in}}^l \left[ \mathbf{f}_j^t \oplus \mathbf{c}_j^{\mathrm{sem}} \oplus \mathbf{c}_j^{\mathrm{tex}} \right]\]

这一机制将精细阶段的计算复杂度从依赖全图图像 token 数量转为仅正比于激活体素数量,同时使原本遮挡或未观测的背阴区域能够借助三维生成先验与临近可见表面实现平滑且具上下文自洽的精细补全。

损失函数 / 训练策略

两阶段模型均基于条件流匹配(Conditional Flow Matching, CFM)目标函数进行端到端优化。粗阶段通过线性插值路径 \(\mathbf{z}_t = (1-t)\mathbf{z}_0 + t\bm{\epsilon}\) 计算速度场,联合最小化形状与位姿速度预测均方误差:

\[\mathcal{L}_{\mathrm{coarse}}(\phi) = \mathbb{E}_{t^s, \mathbf{t}^p, \mathbf{z}_0, \bm{\epsilon}} \left\| \mathbf{v}_\phi(\mathbf{z}_t, \mathbf{z}^I, t^s, \mathbf{t}^p) - (\bm{\epsilon} - \mathbf{z}_0) \right\|_2^2\]

在训练过程中采用双时间步耦合模式(以 0.8 的概率令形状与所有位姿共享同一时间步,以 0.2 的概率为各流独立采样时间步),既保证了推理时同步采样轨迹的校准度,又使各模态的 AdaLN 调制具备应对独立噪声扰动的解耦鲁棒性。位姿 VAE 在预训练时采用可见性分类的 Dice 损失与 UV 回归的 L1 损失,辅以 \(10^{-3}\) 权重的 KL 散度约束。全模型在 8 张 H200 GPU 上采用 AdamW(学习率 \(10^{-4}\),余弦退火调度)并在 43 万高质量 3D 资产(Objaverse-XL, HSSD, 3D-FUTURE, ABO)多视角渲染图上完成训练。

实验关键数据

主实验

在合成数据集 Toys4k 与真实采集数据集 GSO 上,针对 4 视角无标定输入场景,分别在统一对齐协议下对比了代表性前馈重建方法(表 2 协议:输入视角点图最小二乘 Umeyama 对齐)与 3D 生成方法(表 3 协议:10 万点表面采样点云相似性 ICP 对齐)。

表 1:与前馈重建及生成基线在 Toys4k 与 GSO 上的主结果定量对比

数据集 方法 PSNR ↑ SSIM ↑ LPIPS ↓ CD-med ↓ (\(\times 10^{-3}\)) [email protected] ↑ [email protected] ↑
Toys4k FreeSplatter 22.00 0.9183 0.0913 2.7160 0.3163 0.7112
LucidFusion 22.24 0.9251 0.0827 4.1596 0.1527 0.6670
ReconViaGen 21.88 0.9216 0.0721 1.1237 0.3369 0.8434
TRELLIS-M 24.01 0.9355 0.0658 0.4329 0.5570 0.9604
GenSfM (本文) 28.61 0.9609 0.0308 0.2184 0.6701 0.9823
GSO FreeSplatter 20.07 0.8948 0.1135 3.2859 0.2713 0.6736
LucidFusion 20.94 0.9097 0.0943 3.8702 0.1755 0.7164
ReconViaGen 20.88 0.9021 0.0856 1.0495 0.3524 0.8789
TRELLIS-M 22.28 0.9138 0.0867 0.5200 0.5079 0.9655
GenSfM (本文) 26.36 0.9411 0.0472 0.2801 0.6095 0.9842

表 2:输入视角相机位姿预测精度对比(相对旋转误差 RRE、Acc@5°/15°、相对平移方向误差 RTE 及视场角误差 RFOV)

方法 Toys4k: RRE ↓ (°) Acc@5° ↑ RTE ↓ (°) RFOV ↓ (°) GSO: RRE ↓ (°) Acc@5° ↑ RTE ↓ (°) RFOV ↓ (°)
FreeSplatter 26.45 0.2438 32.32 12.51 29.10 0.2327 32.81 13.13
ReconViaGen 16.54 0.2044 19.56 9.54 14.48 0.2260 16.16 8.95
VGGT 10.29 0.5969 18.61 37.66 9.33 0.6310 17.69 36.08
GenSfM (预测内参) 1.60 0.9723 5.51 2.90 1.27 0.9821 5.08 2.86
GenSfM (真值内参参考) 1.44 0.9798 2.38 – 1.13 0.9892 2.11 –

消融实验

在 Toys4k 上对各模块进行逐层累加消融实验(均采用点图最小二乘对齐评估):

表 3:各设计模块在 Toys4k 上的累加消融对比

阶段 变体配置 PSNR ↑ LPIPS ↓ CD-med ↓ [email protected] ↑ RRE ↓ (°) Acc@5° ↑
Stage 1 基线 (独立逐视角交叉注意力) 27.00 0.0383 0.2811 0.6078 5.62 0.8653
+ 全局无掩码交叉注意力 27.49 0.0359 0.2568 0.6324 5.20 0.9069
+ 多尺度卷积视觉条件增强 27.65 0.0353 0.2488 0.6346 4.59 0.9228
+ 共享全局注册 Token (\(\mathbf{z}^r\)) 28.23 0.0327 0.2204 0.6670 3.55 0.9478
Stage 2 + 原生多视角训练精细解码器 (完整模型) 28.61 0.0308 0.2184 0.6701 3.65 0.9416

关键发现

  • 联合自注意力消除累积误差:将全局多视角交叉注意力与共享注册 Token 引入粗阶段后,位姿估计准确率 Acc@5° 从 86.53% 显著提升至 94.78%,且严格几何匹配阈值 [email protected] 从 0.6078 大幅增长至 0.6670。这证明全局跨视角通信是同时收敛形状与位姿解空间的关键枢纽。
  • 位姿估计达到亚度级精度:GenSfM 在无需任何显式特征匹配与外部位姿估计模块的情况下,实现了超过 97% 的 Acc@5°,旋转误差相比强前馈基线 VGGT 降低了 5 倍以上(10.29° 降至 1.60°),并且能直接内生解算精准的相机 FOV(误差低于 3°)。
  • 逐体素投影重编码突破渲染分辨率瓶颈:在精细阶段,原生多视角训练结合 SLat 重编码与 ConvNeXt 多尺度金字塔池化,将新视角渲染 PSNR 进一步推升至 28.61 dB,有效去除了由于相机微小扰动导致的表面浮动与伪影。

亮点与洞察

  • 翻转 SfM 的主次范式:不同于以往将 3D 生成作为后验平滑器的串联设计,GenSfM 证明了纯粹的原生 3D 生成扩散先验本身就足以作为高精度运动恢复结构(SfM)的主推理引擎。
  • 紧凑 UV 体积降维解耦:将 \(64^3\) 的三维投影体积激进压缩至 \(4^3\) 空间潜网格,大幅减少 64 倍 token 数量,使得在 Transformer 中容纳数十个相机的潜在序列在算力上成为可能,同时完全保留了解算精确相机参数的必要几何自由度。
  • 以体素投影替代二次注意力:在精细阶段巧妙地回避了上万激活体素与数千图像 token 间的二次复杂度全交叉注意力,借由粗阶段准确的相机参数将图像特征通过双线性插值直接锚定到激活体素上,算力消耗与视角数量解耦且完全线性。

局限与展望

  • 输入视角规模受限:目前模型的训练和测试主要集中在 4 个视角的物体级中心拍摄场景,对于视角数大幅扩展(如 10+ 视角)以及大尺度无中心室外场景的通用性尚待拓展。
  • 强分布偏移下的局部特征错位:在严重超出训练分布的极端场景下,若粗阶段生成的位姿或外参存在系统性偏差,会导致精细阶段的像素投影采样发生错位,进而在表面产生高频纹理重影。
  • 底座分辨率与几何尺度继承:模型的最终网格与体素精度在上限上仍受限于底层 TRELLIS 骨干网络的潜在空间分辨率(\(64^3\)),未来随底层 3D 表达尺度的扩展仍有显著提升空间。

相关工作与启发

  • vs VGGT / DUSt3R (前馈回归类):DUSt3R 和 VGGT 专注于可见区域的几何与点图回归,难以脑补大面积不可见的背侧表面;GenSfM 直接在全局 3D 空间中扩散去噪,兼顾了可见区域的高保真度与遮挡侧的自洽完整性。
  • vs ReconViaGen (前馈结合生成先验类):ReconViaGen 采用外部前馈位姿与几何作为初始条件喂入生成器,导致前置误差单向累积;GenSfM 通过共享自注意力在同一骨干中端到端联合去噪几何与位姿,使位姿与形状互相校准。
  • vs CUPID (单图联合位姿生成):CUPID 仅能在单个 SS 潜在通道中拼入单视角位姿;GenSfM 提出了可变长度的紧凑序列标记化机制与多视角共享注册 token,真正将原生 3D 联合去噪扩展至任意多视角 SfM 任务。

评分

  • 新颖性: ⭐⭐⭐⭐⭐ 首次将原生 3D 扩散模型确立为端到端 SfM 的第一推理引擎,打破串联重建范式。
  • 实验充分度: ⭐⭐⭐⭐⭐ 在合成与真实数据集上跨前馈、生成与位姿三大维度进行严格且对等的定量与消融对比。
  • 写作质量: ⭐⭐⭐⭐⭐ 逻辑严密,图文对应清晰,附录技术细节完备。
  • 价值: ⭐⭐⭐⭐⭐ 为无标定稀疏视角三维重建与机器人接触感知提供了全新的端到端解决思路。