思路探索 · 不是综述 · 2026.06

想象的表面

能不能让一个 VGGT 式的长视频前馈模型,一次前向就吐出 SDF 表面——并把相机没拍到的地方,像生成模型那样"想象"出来?

这页文档不写综述,写一次发散的设计空间探索。整篇只追一条线:让一个像 VGGT 那样吃长视频、不要位姿、一次前向的网络, 主输出既不是 pointmap 也不是高斯,而是一张连续的 SDF 表面—— 对扫到的地方忠于测量,对扫不到的地方合理地想象补全。 VGGT 仍是主体,3D 生成派是嫁接上来的器官,而不是反过来。

我会先把这个渴望逼成几条互相拉扯的约束,从中长出两个真正的难题—— 观测与想象之间的那道缝、以及在想象出来的体内怎么给 SDF 定号; 再沿不同哲学组装出五个候选架构,认真讨论 backbone 能不能从现有大模型蒸馏 / LoRA 出来。 目标读者:懂 NeRF / SDF / 3DGS / diffusion / transformer 的研究者。

依据:本地四份综述(feedforward 3DGS · 3DGS×surface · 生成式 3DGS · 现代 3D 生成)+ 对前沿工作的针对性深挖。每条引用均附 arXiv 号、对照摘要页 / 项目页核对; 标 前沿 ⚠ 的是 2026 年极新、独立信源较少的工作,以官方页为准。图为示意,所有架构均为设计推理,未经实现

§0三句话先讲清

① 想要的东西。 一个像 VGGT 那样"吃一段长视频 / 一堆无序图、一次前向、不要位姿"的模型, 但主输出是一张连续 SDF 表面(随时可抽 watertight mesh);对相机扫到的地方忠于观测、对扫不到的地方合理想象补全。 生成是嫁接到重建主体上的器官,而非像 Pixal3D 那样以生成为主体再加一条重建流。

② 这块地被占了多少。 比想象中挤,但核心那格仍空——最近的三个邻居各占住了两条边: Fus3D(VGGT+LoRA → 稠密 SDF,前馈、能隐式外推未观测,但物体尺度); Gen3R(VGGT 接视频扩散先验,场景级真生成补全,但出点云); Mix3R(冻结重建+冻结生成用注意力缝起来出 mesh,但要位姿)。再加上只重建的 IVGT 与出点云的 NOVA3R。 "前馈 + 出 SDF/mesh + 真·采样式补全 + 长视频/场景尺度"这一格,被四面夹住,却没人坐进去。

③ 它不是"VGGT+MILo"那么简单,难点也不在工程。 真正决定成败的是两道缝: 表层那道——观测可信度怎么平滑过渡到生成可信度(§4); 更里面那道——在从没被任何射线碰过的体内,SDF 凭什么"定号"、说哪边是内(§5)。 后者是定义问题不是估计问题,它把"要不要生成先验"从选择题变成了必答题。

§1把一个渴望,逼成两道难题

先把"我想要什么"翻译成硬约束,再看这些约束自己长出什么问题

"做一个像 VGGT 但出 SDF 还能补全"听起来浪漫,落到架构上得先拆成几条互相拉扯的约束。我数出六条:

  1. C1 · 前馈 / 摊销。 一次前向出结果,做逐场景优化。这一条直接否决了 MILo / Radiance Meshes 的原生形态——它们都是 per-scene 优化(几十分钟到两小时)。我们只能借它们的表达和可微取面,不能借它们的训练范式。
  2. C2 · 长视频 / 任意视图数 / 无位姿。 VGGT 家族的看家本领:交替的 frame-wise / global attention、camera token、不需要 COLMAP。要"长",还得能 流式(StreamVGGT 的 causal + KV-cache)和 显存可控(VGGT-Long 分块闭环、FlashVGGT 描述符注意力)。
  3. C3 · 主输出是 SDF 表面。 不是点、不是高斯,是一个空间任一点都有值的连续场,随时取面出 watertight、可 UV、可仿真的 mesh。SDF 自带 Eikonal 正则、CSG 编辑、碰撞查询——这些是点 / 高斯给不了的。
  4. C4 · 观测区忠于测量。 相机看见的几何必须可信、metric-scale、不被生成幻觉污染。这是"重建"的底线。
  5. C5 · 未观测区生成补全。 绕不到的背面、被遮挡的内部、走廊尽头——要像 TRELLIS / TripoSplat 那样"从生成出发"补一个合理形状,而不是留洞或拉成漏斗。
  6. C6 · 一个模型、一个潜空间。 不要"VGGT 出几何 + 另接一个独立生成器"的拼盘,要深度结合:理想情况下观测与生成共享同一套 latent、同一个 decoder,"补全"就是"在同一张图上把空格填上"。
C4 与 C5 是天生的对头,而这对矛盾会裂成两道缝

重建要"我只说我看见的",生成要"我替你脑补没看见的":一个保守、一个大胆。把这对矛盾压到一张连续 SDF 上,它会沿两条不同深度的接缝裂开——

  • 表层的缝(§4):哪里、以多硬的方式,把"测出来的几何"交接给"编出来的几何",才不让交界处裂开、也不让幻觉渗回观测区。
  • 更里的缝(§5): 在从没被任何射线碰过的体内,SDF 的符号(内 / 外)从哪来。这不是"估计得准不准",而是"压根有没有定义"。

这两道缝,是这一整页真正要回答的东西;剩下的(backbone、载体、取面、五个架构)都是为了把它们缝好而做的准备。

§2邻居在哪,空地在哪

诚实地标出已有工作的位置,才能看清那颗星要放进哪一格

在动手设计前,先做一件最容易被跳过、却最重要的事:把邻居的位置标出来。 我用两根轴张成一张图——横轴是"纯重建 ↔ 纯生成"(对未观测区域有多敢编), 纵轴是"输出点 / 高斯 ↔ 输出 SDF / mesh"(离干净表面有多近)。实心点是前馈,空心点是逐场景优化。 两根轴画不下第三件要紧事——尺度(物体 vs 场景 / 长视频),用点旁的"物 / 景"小字补上。

空地 · 前馈 · 出 SDF/mesh · 真生成补全 · 长视频/场景 敢编 · 生成补全 → 保守 · 纯重建 SDF / mesh ↑ 点 / 高斯 VGGT pointmap · 景 AnySplat · VolSplat · MapAnything IVGT 前馈连续 SDF · 只重建 · 景 Fus3D VGGT+LoRA→SDF · 隐式外推 · 物 MILo 逐场景 · mesh-in-loop SDFRaster Radiance Meshes 逐场景 · tet 辐射 · 无 SDF NOVA3R 前馈 amodal · 出点云 · 景 Gen3R VGGT+视频扩散 · 真补全 · 出点 · 景 GEN3C · Bolt3D · Lyra(出高斯) Mix3R 冻结重建+冻结生成 · 要位姿 Points-to-3D 点云条件化冻结 TRELLIS TRELLIS SLAT→mesh/3DGS · 物 TripoSplat · Pixal3D 我们要的那个模型 实心 = 前馈 空心 = 逐场景优化 物 = 物体尺度 · 景 = 场景 / 长视频
定位图。 实心 = 前馈,空心 = 逐场景优化;点旁"物 / 景"标尺度。左下角是 VGGT / AnySplat / MapAnything(重建、出点); 左上是 IVGT(前馈连续 SDF,只重建)与 Fus3D(VGGT+LoRA 出 SDF、能隐式外推,但物体尺度); 右下是 NOVA3R(amodal 点云)与 Gen3R(接视频扩散、场景级真补全,但出点);右上是 Mix3R(冻结重建+冻结生成出 mesh,要位姿)、Points-to-3D、TRELLIS。 MILo / Radiance Meshes / SDFRaster 在左侧但是逐场景优化(空心)。金色虚框那一格——前馈 + 出 SDF/mesh + 真·采样式补全 + 长视频/场景——四面被夹,却没人坐进去。

把这张图读成一句话:我们要的那颗星,由四条边界定,而每个邻居只占住其中两到三条。下表把最该正面对线的近邻摊开。

工作它已经做到做到 = 我们的差异点
Fus3D VGGT backbone + LoRA 微调 + 卷积上采样头,把体积 latent 解成 64³ 稠密 SDF → Marching Cubes;前馈 <3 秒、免标定,还能隐式外推未观测处的 SDF物体尺度(Objaverse/DTU);补全是确定性回归非采样;64³ 偏低;不出高斯——但它已证明"冻结/LoRA VGGT + SDF 头"能跑
IVGTVGGT 谱系、pose-free,学一个可任意点查询的连续 SDF+color,抽 mesh,跨场景泛化;同一个场还顺带出 pose/NVS/depth/normal不补全未观测区;非长视频流式;没有生成先验
Gen3R 把 VGGT 的 token 经 adapter 对齐到视频扩散外观 latent,联合生成几何+外观,场景级、真生成式补全未观测内容输出 RGB 视频 + 深度 / 点云 / 位姿,不是 SDF/mesh,不能直接 marching——这正是我们用 SDF 切进去的缝
Mix3R 用 Mixture-of-Transformers 在一个冻结前馈重建模型与一个冻结 3D 生成模型之间插全局注意力,两阶段出 mesh/3DGS需要位姿;物体/资产尺度;不是连续 SDF——但它把"冻结重建 + 冻结生成、用注意力缝"趟通了
NOVA3R前馈、像素对齐,scene token + flow-matching 3D decoder,连遮挡几何一起恢复,少重影;scene+object 两级输出点云非 SDF/mesh;补全与重建未在同一表面场里统一
TRELLIS / TRELLIS.2结构化 latent(稀疏体素 SLAT),一份 latent 解 mesh/3DGS/RF;TRELLIS.2 的 O-Voxel 统一几何+PBRobject-centric 生成,不吃视频、不做 metric 重建——但它的 SLAT 正是 C6"共享潜空间"的现成答案
这张表怎么读

它不是泼冷水,是把护城河量准:四个邻居已经各自证明了我们想要的一部分能 work。 Fus3D 证明"VGGT 前馈出 SDF"能(还顺带隐式外推未观测);Gen3R 证明"前馈接生成先验、场景级补全"能;Mix3R 证明"冻结重建 + 冻结生成缝一起出 mesh"能;IVGT 与 NOVA3R 把 SDF 端与 amodal 端各自坐实。 于是剩下的科学问题被收窄成一句:把"连续 SDF/mesh"、"真·采样式补全"、"长视频/场景尺度"、"单次前馈"四件事压进同一个体积潜空间——而且在没被观测的体内还得稳定地定一个号(§5)。

§3三道根本张力

任何候选架构都要在这三道题上选边——选什么,就决定了它是谁

张力一 · 像素对齐 ↔ 体素 / 体积对齐

VGGT 的原生输出是逐像素的(每像素一个 pointmap / depth),feedforward 高斯派(pixelSplat → AnySplat)也大多逐像素放高斯。 但"SDF 本质上是个体积场"——把体积场硬塞进"每像素一个值"的容器,是范式不匹配。 VolSplat 已经论证逐像素的两个先天病:相机多看几眼的地方被不公平地塞更多基元;遮挡 / 无纹理区 2D 匹配出错。

我的倾向

把几何载体从逐像素挪到稀疏体素 / 体积 latent。VGGT 的逐像素 token 只当输入侧感知, 通过一次可微反投影 / 体素化(AnySplat 已有现成做法、Fus3D 也是先聚成体积 latent)聚到 3D 骨架上——之后 SDF、补全、取面全在这个 3D 容器里发生。 好处是它正好和 TRELLIS 的 SLAT、Atlas/NeuralRecon 的体素 TSDF 是同一种几何容器,重建端与生成端能共用一个体素 latent(直击 C6)。

张力二 · 重建保真 ↔ 生成可信

领域共识已经收敛出一个清晰配方(GEN3C / Bolt3D / GA-GS):观测区域钉死在测量上,生成只许在"洞"里发力。 GEN3C 维护一个显式 3D cache,从新视角渲染再 condition 一个 video diffusion,让模型"把全部生成力气花在没观测过的区域"; GA-GS 给每个基元一个可学的"authenticity 真实度标量"调 opacity,让模型自己学会"这块是真测的 / 这块是我编的"。 搬到 SDF 上,这道缝就是 §4 的主题——而且 SDF 的连续性会让它比点 / 高斯派缝得更干净。

张力三 · 可微取面:训练时 ↔ 推理时;而且要分清 GPU 批友好 ↔ CPU 瓶颈

MILo / Radiance Meshes / SDFRaster 把"可微取面"放进逐场景优化的循环里——每一步重抽 mesh、梯度回流。 前馈设定下这是奢侈的。但第一个洞察是:可微取面只在训练时需要——训练时网络出体素 SDF → 跑一次可微取面层 → 渲染 / 比对 → 梯度顺着取面层回流; 推理时一次前向出 SDF,最后跑一次(非可微也行)取面出 mesh。取面不再是瓶颈。

第二个洞察:别用 Delaunay 当那层 loss

"取面层"不能随便挑,它分两类,而前馈训练里只有一类塞得进 forward:

  • 格点类(GPU 批友好 ✓): Marching Cubes 的可微实现 DiffMC(DISO 包)、FlexiCubesSparseFlex / Sparc3D(稀疏、可到 1024³、支持开表面)。固定连通性、纯 GPU、可 batch——前馈网络一个 batch 同时跑几十个场景时,唯一跟得上的取面层。
  • Delaunay 类(CPU 瓶颈 ✗): MILo 的"高斯当 pivot → 在线 Delaunay → Marching Tet"、TetWeave 的"点 + 方向 SDF → 在线 Delaunay"。质量与自适应性极好,但 Delaunay 是 CPU 计算几何、连通性不可微、难 batch,放进前馈训练前向里会拖垮吞吐。

所以更准确的说法是:借 MILo 的"mesh-in-the-loop 监督思想",但用 DiffMC / FlexiCubes 这类格点取面来实现,把 Delaunay 留给"推理时跑一次"或"per-scene 精修"。这条区分直接决定了候选 B、C 的可行性评分(§7)。

§4表层那道缝:观测可信度怎么过渡到生成可信度

§1 留下的第一道难题——它是整件事成败的咽喉

把它具体化。设在体素 $v$ 处要给出最终 SDF $\hat f(v)$,有两个来源: 观测推断 $f_{\text{obs}}(v)$(来自 VGGT 几何 + 多视图,只在被看见的体素可靠), 生成先验 $f_{\text{gen}}(v)$(来自补全模块,处处可用但不一定对)。再设一个可观测性 / 置信度场 $c(v)\in[0,1]$,融合写成

观测区 (c→1) 未观测区 (c→0) cam 观测表面 想象的背面 c(v)=1 c(v)≈0 缝在这里:c 平滑下降,SDF 从"测的"过渡到"编的"——别让它出现台阶
融合公式 $\hat f(v)=c(v)\,f_{\text{obs}}(v)+\bigl(1-c(v)\bigr)f_{\text{gen}}(v)$ 难点全在交界带:$c$ 太硬 → mesh 在观测 / 生成边界裂开;$c$ 太软 → 生成幻觉渗进观测区污染保真。

怎么学出一个好的 $c(v)$、又不让它退化成全 0 或全 1? 三个可操作的招:

为什么选 SDF 本身就有利于缝这道缝

点 / 高斯派做补全(NOVA3R / Bolt3D)时,"观测点"和"生成点"是两堆离散基元,交界靠数量和重叠勉强糊上,容易重影、穿插。 而 SDF 是连续场——观测与生成在它上面是同一个函数的两段,能用 Eikonal 强制它们在缝处一阶连续。这是"为什么要 SDF 而不是高斯"的最强论据之一。

§5更里那道缝:在想象出来的体内,怎么给 SDF 定号

§1 留下的第二道难题——本页认为这是整个方向最深、也最值得押的科学赌注

§4 的融合公式默认 $f_{\text{gen}}(v)$ 是个现成的带符号距离。但这里藏着整件事最硬的一块骨头。 把所有 SDF-原生的场景补全工作摆在一起看,会发现一个一致的"回避":它们几乎都不真输出带符号距离,而是退回无符号距离(UDF)或占据(occupancy)。 LT3SD(最像"SDF 原生 + 会补全"的场景生成器)用 truncated unsigned DF;XCube / SemCity / DynamicCity 这些能做场景补全的,用占据栅格。这不是巧合。

cam 射线扫到的前壁:外/面/内 — 符号是测的 背壁没被任何射线碰到 哪边是"内"? +/− ? watertight 生成先验 → 替你定号
定号问题。 前壁被射线扫到,"穿过=外、停下=面、之后=内"是出来的;背壁从没被任何射线碰过,"哪边是内"没有观测依据——它不是被估计错,而是没定义。只有一个 watertight 先验能替它承诺一个符号。
为什么大家都绕开符号

符号的意义是"这一点在表面里还是外"。在观测区,相机射线天然给了内外,符号是测出来的。 但在从没被任何射线碰过的体内(遮挡物体内部、走廊尽头的墙后),"哪边是内"没有任何观测依据——不是被估计错了,而是压根没定义,除非先假设一个 watertight 封闭先验。 IVGT 这类只重建的方法用一招聪明绕开:只给观测到的表面定号,没看见的地方干脆不承诺。但我们要补全,就必须在没人看见的体内主动承诺一个符号——这是重建方法从不必面对、而我们逃不掉的新问题。

这反过来点出,为什么"共享潜空间 + 生成先验"(候选 A)在这一点上比"逐体素回归"(候选 B)更对路:

一句话:观测决定"面在哪",先验决定"哪边是内"。 谁能在没被看见的体内稳定地承诺一个符号、又不污染观测区,谁就真正解决了"前馈出 SDF 还能补全"这件事。

§6把系统拆成可替换的模块

七层。每层都有几个可选项;一套连贯的选法 = 一个候选架构

有了 §3 的三道选边、§4–§5 的两道缝,就能把系统拆成七个正交的模块层,列清每层的选项。下一节的五个候选架构,其实就是在这张"配置表"上走五条不同的路径。

L6推理模式 离线批处理(VGGT 全局注意力) 流式 / causal(StreamVGGT 的 KV-cache)· 分块闭环(VGGT-Long)· 描述符注意力(FlashVGGT) L5监督 / 训练 格点取面 loss(DiffMC/FlexiCubes)+ mesh 一致性(MILo 思想)+ Eikonal + 深度/法线 + 补全 loss 教师蒸馏:VGGT(几何)· 3D 生成器(形状先验)· 符号可信度监督 L4观测↔生成 缝合 + 定号 硬约束(钉死观测体素)· 置信度/authenticity 场(软融合)· 符号可信度场 latent 3D inpainting(mask 即未观测)· 3D cache(GEN3C) L3生成补全模块 体素 latent diffusion(SLAT 式,补未观测体素)· 视频扩散先验对齐(Gen3R)· render→condition→generate(GEN3C) 全局 scene-token amodal(NOVA3R)· 条件化冻结生成器(Points-to-3D / Hunyuan3D-Omni / Amodal3R) L2表面表达 + 取面头 体素 SDF + DiffMC/FlexiCubes/SparseFlex(格点·GPU 批友好)· per-anchor SDF(DiGS 式) Delaunay-tet + Marching Tet(MILo/TetWeave,仅推理)· tet 辐射/SDF 场(Radiance Meshes/SDFRaster) L1几何载体 / latent 稀疏体素 SLAT(TRELLIS)· 体积 latent 网格(Fus3D)· 连续隐式场(IVGT) 半结构 VoxSet(LATTICE)· 全局 scene token(NOVA3R)· 体素对齐(VolSplat) L0Backbone VGGT(交替注意力 + camera token)· π³(置换等变、无参考帧)· MapAnything(因子化 metric) StreamVGGT(causal,长视频)· 蒸馏/LoRA 出的轻量学生 ↑ 自底向上:感知 → 载体 → 表面 → 想象 → 缝合/定号 → 监督 → 部署
七层模块栈。蓝 = 感知 / 部署,绿 = 表面,紫 = 生成。每层独立可换;一个候选架构就是从 L0 走到 L6 的一条特定连线。下面逐层说选项。

L0 · Backbone:感知与几何先验从哪来

这是整栋楼的地基,也是"能不能从大模型蒸馏 / LoRA 出来"这个问题的主战场(§8 详谈)。几种现实选法:

L1 · 几何载体:transformer 的"空间记忆"长什么样

由张力一,我倾向把载体定在稀疏体素 / 体积 latent。具体形态有谱系:

L2 · 表面表达 + 取面头:SDF 挂在什么支撑上

这是绿色心脏。四种支撑,各配一种取面(训练时用格点类可微,推理时再考虑 Delaunay,见 §3 张力三):

L3 · 生成补全模块:想象力从哪注入

L4 缝合/定号 · L5 监督 · L6 部署

这三层分别在 §4–§5、§8、§9 展开,这里只列选项以备引用:缝合/定号 = {硬约束 · 置信度场 · 符号可信度 · latent inpainting · 3D cache};监督 = {格点取面 loss + MILo mesh 一致性 + Eikonal + 深度/法线 + 补全 loss + 教师蒸馏};部署 = {离线 · 流式 · 分块闭环}。

§7五个候选架构

从模块栈里走出的五条不同哲学路径——发散的核心在这一节

下面五个不是"五选一",而是五种把同一组零件组装起来的世界观。我刻意让它们在 L1/L2/L3 上分歧最大,好照出设计空间的边界。 每个都给:一句话哲学、配方、数据流图、利弊、与谁对线。

候选 A一份潜变量,半填半梦SLAT 即真相,补全即 inpainting

哲学:把"重建"和"生成"彻底统一成同一个稀疏体素 latent 上的一次条件采样。观测把 latent 填了一半,diffusion 把剩下一半梦出来——它们从来就是一回事。最贴近 C6,定号也最自然(先验天生闭合带号)。

VGGT/π³ (L0) → 可微反投影聚到稀疏体素 SLAT (L1) → 已观测体素固定为条件、未观测为 mask → 在 SLAT 上跑 LoRA 微调自 TRELLIS.2 的 latent flow,条件补全 (L3) → 共享 decoder 出体素 SDF + PBR (L2: DiffMC 取面) → 缝合/定号由 latent-inpainting 天然完成 (L4)
VGGT长视频 稀疏体素SLAT(半填) latent diffusionLoRA←TRELLIS.2条件补全空格 共享 decoderSDF+PBR meshDiffMC
补全与重建在同一 latent 分布里,缝最自然、先验自带符号(C6 满分)
可直接 LoRA 复用 TRELLIS.2 已学好的 3D 形状先验,省数据
一份 latent 顺带能解 3DGS / PBR(SLAT 本性)
TRELLIS 是 object-centric,扩到大场景 / 长视频 metric 是真硬骨头
"把 VGGT 逐像素特征可微聚成 SLAT"这一步需要新设计
diffusion 采样步数 vs 前馈速度的矛盾(需 §8 的少步蒸馏)

对线:TRELLIS(借 SLAT 与先验)、Pixal3D(借视图对齐反投影)、AnySplat(借可微体素化)、Points-to-3D / Hunyuan3D-Omni(借"用部分点云条件化冻结生成器"给补全端兜底)。最该正面对的是 Gen3R——它几乎就是"候选 A 把 SLAT 换成视频扩散先验";我们的差异必须死死落在体积 SDF 输出 + 定号上,否则就被它覆盖。

候选 B摊销的 mesh-in-the-loopMILo 不当训练范式,当一层 loss

哲学:保留 MILo 最美的部分——"训练里随时有可微 mesh、梯度从 mesh 回流"——但摊销成前馈。网络一次前向出 anchor + 每 anchor SDF,取面层只在训练时可微。补全做成一个"幻觉 head",专门预测表面背后的 SDF。

VGGT (L0) → 体素对齐 anchor + per-anchor SDF(MILo pivot 思路,但前馈出 (L1/L2))→ 训练时:格点 DiffMC 取面 → 渲 mesh → 深度/法线/erosion/interior loss 回流 (L5) → 幻觉 head 用 interior-occupancy 信号把"被遮挡体素"补成闭合 (L3) → 推理时只跑一次取面 (L6)
VGGT前馈 anchor + SDF体素对齐 DiffMC 取面仅训练 · 回流 幻觉 head补遮挡 SDF 闭合 SDF 场 mesh
继承 MILo 的几何质量(mesh 一致、~10× 少顶点、薄结构防侵蚀)
推理时只跑一次取面,不背逐场景优化的时间
"幻觉 head"复用 MILo 的 interior-occupancy 机制,改动小、好讲故事
幻觉 head 的"想象力"弱——它是回归不是采样,背面易过平滑、定号没真先验
若坚持 MILo 原版在线 Delaunay 当 loss,会 CPU 卡死 batch(§3)
补全质量大概率不如有真正 diffusion 先验的 A / D

对线:MILo / TetWeave(借 mesh-in-loop 监督思想)、IVGT / Fus3D(借前馈出 SDF)。差异:取面层降级为训练 loss + 一个 amodal 幻觉 head。两难在于:用 Delaunay 当 loss 会卡 batch,换格点 DiffMC 又稀释了"MILo 亲儿子"的卖点。最稳妥、但补全上限低——更像"扎实占身位"。

候选 C四面体场作统一基元一个 tet 场同时是几何、外观、快渲、可微 mesh

哲学:赌 Radiance Meshes / SDFRaster 路线——四面体场是那个能把所有需求一口气满足的基元:既能精确快渲(比 3DGS 还快),又能在顶点上挂 SDF,又能环内可微取面。前馈预测一个 tet 场,生成模块负责把它延伸进未观测空间。

VGGT (L0) → 前馈预测 Delaunay tet 顶点 + 每顶点 SDF + 外观(即 SDFRaster 的可前馈版, L1/L2)→ SDF→opacity 光栅化做可微体渲监督 (L5) → 生成模块在表面 frontier 处"densify/extend" tet 顶点补全 (L3) → circumsphere 光栅化实时渲 + 一次 MT 出 mesh (L6)
VGGT tet 顶点+SDF+色前馈 SDFRaster frontierdensify/延伸 tet 光栅化快渲circumsphere 一次 MT→mesh
一个表达搞定四件事,架构最干净;快渲是免费副产品
SDFRaster 已把"tet+SDF+可微 MT"打通,我们只补"前馈 + 延伸"
tet 场 metric-scale 天然,适合大场景 / 长视频
Delaunay 拓扑随顶点移动会翻面——前馈一次吐顶点比优化更易触发不连续
在线 Delaunay 难进 batch(§3);"生成式延伸 tet"几乎没人做过
tet 数据结构 + 可微光栅化的工程量最重

对线:Radiance Meshes / SDFRaster(借 tet 场表达与光栅化)、Radiant Foam(Voronoi 实时可微光追的近亲)、TetWeave(借 Delaunay 稳定化)。差异:把它们从逐场景优化变前馈,并加生成式延伸。潜在最优雅,也最冒险的一条。

候选 D把造梦者蒸进重建者两个冻结教师,一个流式学生

哲学:不自己学先验,。冻结两个大模型当教师——VGGT 教"观测处的几何",一个原生 3D 生成器(TRELLIS / Hunyuan3D)教"未观测处的形状分布"——把它们的知识蒸进一个小而流式的学生 SDF 网络。把"蒸馏 / LoRA"用到极致。

教师1 冻结 VGGT(几何监督,观测区)+ 教师2 冻结 3D 生成器(形状监督,未观测区,可条件化吃部分观测)→ 学生:轻量 causal transformer + 体素 SDF head (L0/L2) → 蒸馏 loss = 观测区匹配 VGGT 几何 + 未观测区匹配生成器形状 (L5) → KV-cache 流式 (L6)
教师1 · VGGT(冻)观测几何 教师2 · 3D 生成器(冻)未观测形状 流式学生causal + 体素 SDF SDF→mesh 蒸馏
学生小、可流式、可部署(VGD 已证明 VGGT 蒸馏落地);第一步 Fus3D 已跑通
不需大量带真值 SDF 的 3D 数据——教师当伪标注器
LoRA3D 证明"冻结几何 backbone + LoRA + 新 head"work
两个教师的"几何观"在缝处可能打架(VGGT metric vs 生成器归一化 scale)
把 object-centric 生成器适配成"吃部分场景观测"仍难(但 Points-to-3D / Hunyuan3D-Omni 已给出可借做法,并非全无先例)
学生上限受教师钳制,难超过教师

对线:Fus3D(已把"冻结/LoRA VGGT + SDF 头"跑通,直接当起点)、Mix3R(已把"冻结重建 + 冻结生成、注意力缝"趟通,正是这里的双教师融合)、Gen3R(最接近的完整系统)、StreamVGGT / VGD / LoRA3D / Lyra(蒸馏机制与落地)。工程最可控、最快出原型——真正的创新留在"补全 + 尺度 + 定号",而非 backbone。

候选 E流式的 amodal SDF 记忆最贴原话:长视频前馈 + 出 SDF + 边走边补全

哲学:把 StreamVGGT 的"持久记忆"从 KV-cache 升级成一个持久的体素 SDF 记忆体。每来一帧:更新被看见体素的 SDF(观测);同时让一个补全模块持续"重梦" frontier 之外的体素(生成)。这是 NOVA3R 的 amodal + IVGT 的 SDF + StreamVGGT 的流式,三合一。

StreamVGGT causal backbone (L0) → 持久稀疏体素 SDF 记忆 + 全局 scene token (L1) → 每帧:观测体素 SDF 由深度钉住(硬约束) + 全局 token 驱动 diffusion decoder 重梦 frontier 外体素 (L3/L4: NOVA3R amodal 在 SDF 上) → 格点取面训练监督 (L5) → 任意时刻可 marching 出当前完整 mesh (L6)
帧 t-1 · t · t+1 → StreamVGGTcausal+KV 持久体素 SDF 记忆观测体素=硬钉(蓝) · frontier 外=重梦(紫) amodal diffusion重梦 frontier 外 任意时刻 meshmarching
逐字对上原话:长视频 · 前馈 · 流式 · 出 SDF · 边走边补全
机器人 / AR 在线扫描的杀手级形态:随时有完整可仿真 mesh
观测硬约束 + frontier 重梦,缝的位置随相机移动自然推进
最难训:流式 + diffusion 重梦 + SDF 一致性,三个动态系统耦合
"重梦"要保证时序一致(别每帧把背面梦成不同样子)——需记忆 / 锚定
持久体素记忆的显存随探索范围增长(需 XStreamVGGT 式压缩)

对线:StreamVGGT / STream3R / Point3R(流式持久记忆的现成模板)、NOVA3R(amodal 补全)、IVGT(前馈 SDF)、XStreamVGGT(KV 压缩)。这是终极形态,也是最难的;建议作为 D 或 A 验证后的"北极星",而非起点。

五个候选的配置矩阵

A 半填半梦B 摊销 MILoC tet 场D 蒸馏E 流式 amodal
L0 backboneVGGT/π³VGGTVGGTVGGT(冻)→学生StreamVGGT
L1 载体稀疏体素 SLAT体素 anchortet 顶点体素持久体素+全局 token
L2 表面/取面DiffMCDiffMC(MILo 监督)tet 场(SDFRaster)体素 SDF体素 SDF+取面
L3 补全latent diffusion幻觉 head(回归)生成式延伸 tet蒸馏自生成器amodal diffusion
L4 缝合/定号inpainting+先验定号interior occupancyfrontier 延伸双教师融合硬约束+置信度
L6 部署离线/少步离线离线+实时渲流式流式在线
补全上限中高
工程风险很高
离原话最近

§8能从大模型里"抠"出 backbone 吗?

蒸馏 / LoRA 的可行性——三条路里有两条已被端到端验证

答案是。逐条给可操作的 recipe,并标清"已证 / 待补":

路 1 · 冻结 / LoRA VGGT + SDF head(已被 Fus3D 端到端验证)

这条不需要论证可行性——Fus3D 已经原样做出来了:VGGT 当 backbone、LoRA 微调、外挂一个卷积上采样 head,把体积 latent 解成 64³ SDF → Marching Cubes,前馈 <3 秒。 它就是"冻结/LoRA VGGT → 换上 SDF head"的存在性证明。更早的 LoRA3D(ICLR'25)证明了机理(冻结 DUSt3R/MASt3R + rank-16 LoRA + 任务 head,10 张无标定图自校准、不灾难遗忘);AnySplat / VGD 证明了"VGGT 当老师、新 head 出高斯";OV3DSeg-VGGT 甚至证明往冻结 VGGT 上挂一个全新语义 head 也 work。所以"VGGT → SDF head"在 backbone 层是已解的,剩下的是把 Fus3D 从 64³ 物体扩到场景 / 长视频。

为什么 LoRA 在这里特别合适

VGGT 学到的是通用多视图几何对应,这部分我们完全想保留。要新增的只是"把几何读成 SDF"和"补全"两种新行为——这正是 LoRA 的甜区:底层表征不动,只用低秩增量教模型一个新的输出习惯。Fus3D 用的正是 LoRA 而非全量微调,训练成本只有从头训的零头。

路 2 · 蒸馏双向 VGGT → causal 学生(已被 StreamVGGT 验证)

StreamVGGT("Streaming 4D Visual Geometry Transformer")已经把"双向 VGGT 教师 → causal 学生 + KV-cache"打通;XStreamVGGT 再加 KV 剪枝 / 量化压住显存。 候选 E 直接站在它肩上:学生不仅蒸几何,还蒸"frontier 补全"行为。VGD 进一步证明把 VGGT 蒸成领域专用轻量模型能部署。所以"长视频流式 + 出 SDF"在 backbone 层没有原理障碍,是工程问题。

路 3 · 条件化一个冻结 3D 生成器(已有先例,但 metric 尺度仍是真空)

把"部分观测"灌进一个冻结生成器、让它补出其余——已经有一串现成做法,足以给这条路兜底:

残余的真空:是 metric 尺度,而非"能不能条件化"

原生 3D 生成器是 object-centric + canonical pose + 归一化 scale;我们的重建是 scene-level + metric scale + 任意位姿。 好消息:坐标系那一半已被破——Pixal3D 把生成从 canonical 改成视图对齐Points-to-3D 用观测点云隐式带住坐标。 坏消息:没人把"已知的 metric 尺度"显式喂进生成先验——现有做法都靠点云隐式携带尺度,从没有一个"metric 锚点 token"或显式 scale-conditioning。 所以路 3 的残余风险,收窄成更准的一句:怎么让一个尺度归一化的物体先验,老老实实长在重建给定的 metric 坐标系里——值得单立一个"对齐 adapter"去啃。

§9横切的工程决策

不属于任何单层、但每个候选都躲不过的几件事

① Metric scale 从哪来

VGGT / MapAnything / MoGe-2 能出 metric-scale 几何,这是观测端 scale 的锚。生成端(TRELLIS 系)是归一化的,必须用观测端的 scale 去校准。建议:以观测 metric 为准,生成端永远被 rescale 到观测坐标系,而非反过来。

② 置换等变 / 参考帧(长视频的隐形杀手)

VGGT 有 reference-frame 偏向;π³ 用架构(置换等变、无参考帧)根除了它。长视频里相机会回环、乱序——若走 A/B/C,建议 backbone 用 π³,否则补全会被"第一帧过拟合"带偏;E 走 causal 则用 StreamVGGT 的时序锚定。

③ 取面只在训练可微(再强调一次)

DiffMC / FlexiCubes / SparseFlex 都在训练时进 loss、且 GPU 可 batch;推理时跑一次普通取面。别把可微取面误当成推理瓶颈而吓退;也别把 CPU 的 Delaunay 塞进前馈训练前向。

④ 数据:3D 真值永远不够

这是全领域的慢性病。我们的解法天然友好:观测端用海量 posed/unposed 视频自监督(多视图一致性 + VGGT 伪标注),生成端用教师当伪标注器(D 的核心)。真值 SDF 稀缺,但"教师 + 一致性"能撑起大部分监督。

⑤ 评估必须拆成两半

Chamfer / F-score 只衡量观测区;补全区没有真值,得借生成派的指标。建议报告分离指标:观测区精度(CD)+ 未观测区合理性(对合成遮挡场景的 amodal-CD + 感知分)。否则一个"只重建不补全"的模型会在传统指标上虚高。

§10还没想清楚的问题(诚实清单)

把不确定的地方摊开,它们就是路线图

§11如果只能押一条:我的下注

发散完了,收一个口

推荐路径:先 D,再 A,以 E 为北极星

第一步押 D(蒸馏)。 工程风险最低,而且第一步已被证明能跑:复现并扩展 Fus3D(冻结/LoRA VGGT + SDF head)就是起点——不必再赌它 work 不 work,直接赌它能不能从 64³ 物体扩到场景 / 长视频。补全端先挂一个冻结 3D 生成器(按 Points-to-3D / Hunyuan3D-Omni 的条件化做法)。 它能在几周内回答现在最关键的问题——不再是"坐标系桥难不难"(已被 Pixal3D / Points-to-3D 破了一半),而是"显式 metric 尺度怎么灌进归一化的物体先验"。
第二步转 A(半填半梦)。 一旦尺度对齐摸清,把补全升级成 SLAT 上的 latent inpainting——这才是 C6"一个潜空间"的正解,补全上限最高、定号最自然,且顺带拿到 PBR / 高斯。但要警惕:Gen3R 已经是"A 的视频扩散版",我们的差异必须死死落在体积 SDF 输出 + 定号上。
北极星是 E(流式 amodal SDF)。 它逐字命中原话,是这个方向真正的"终局形态";但它把三个动态系统耦在一起,应当在 A 的表达和 D 的训练范式都验证之后再啃。

至于 BC:B 是最稳妥的"MILo 亲儿子",适合先发一篇扎实的"前馈 mesh-in-the-loop"占身位——但 §3 已点出它有个两难(Delaunay 进不了 batch、换格点又稀释卖点),补全上限也低; C(tet 场)潜在最优雅,但"前馈吐 tet 顶点的翻面风险 + Delaunay 难 batch"让它成了最冒险的一条,值得一个敢赌的人单独探索。

一句话收尾

要的不是"VGGT 接一个 MILo",而是让"看见"和"想象"在同一张 SDF 上无缝发生。 Fus3D 已证明前馈能"看见并出 SDF",Gen3R 已证明前馈能"想象整个场景",Mix3R 已证明"冻结重建 + 冻结生成"缝得起来—— 剩下的科学赌注收窄成一句:把连续 SDF/mesh、真采样式补全、长视频/场景尺度压进同一个体积潜空间,并在没被看见的体内稳定地定一个号。 那颗星还在虚框里空着——四面被夹,但没人坐进去。值得去放上那个点。

§R引用

每条均附 arXiv 号、对照摘要页 / 项目页核对; = 2026(及 2025 末)极新、独立信源较少,引用前以官方页为准

VGGT 家族 / 前馈几何 backbone

前馈出 SDF / 表面

SDF / 可微取面 / mesh-in-the-loop / tet 场

生成补全 / amodal / 场景生成

原生 3D 生成 / 结构化 latent / 条件化

蒸馏 / LoRA / 少步

引用说明

本页的设计推理建立在上述工作之上;每条引用均附 arXiv 号,并对照 arXiv 摘要页 / 项目页 / GitHub / OpenReview 核对过标题、作者与主张。标 的是 2026 年(及 2025 末)极新、独立信源较少的工作,正文对它们的描述以官方页为准。图为示意,所有架构均为设计推理,未经实现,非实验结果