StructSplat: Generalizable 3D Gaussian Splatting from Uncalibrated Sparse Views¶
会议: ECCV2026
论文: ECCV 原文
代码: https://github.com/J-C-Zhao/StructSplat
领域: 3D 视觉
关键词: 高斯泼溅、未标定稀疏视图、结构化表示、像素对齐特征注入、相机对齐
一句话总结¶
StructSplat 将几何、语义和纹理交给不同编码路径,再用不向高斯特征泄漏目标图像的相机对齐机制完成前馈重建,在 DL3DV 双源视图、无相机参数输入且无后优化的设置下达到 28.045 dB PSNR。
研究背景与动机¶
从几张照片生成可渲染的三维场景,不仅要知道物体在哪里,还要保住表面颜色和细小纹理。 传统 NeRF 或 3DGS 通常逐场景拟合;可泛化前馈模型省去了这种反复优化,但许多方法仍依赖预先标定的相机。 即使采用 VGGT、MASt3R 等几何基础模型,从未标定输入预测高斯也不等于高质量还原外观。 论文图 3 做了一个直接检验:给 VGGT 特征接颜色预测头,连输入视图的二维重建都出现颜色和细节损失,说明几何特征并非无损的外观容器。
另一个问题来自训练和评测的数据路径。 为了获得同一坐标系下的源相机与目标相机,模型可能把两类图像一起送入带跨视图注意力的编码器。 随后即使只取源视图的 token 预测高斯,这些 token 也已经看过目标图像,渲染监督因此不再是纯粹的未见视角检验。 单纯删去目标 token,无法撤回之前注意力交换的信息。
本文不要求一个骨干同时承担几何、语义、纹理和无泄漏评测的全部职责。 核心 idea:让几何决定空间结构、语义提供物体与场景先验、像素对齐纹理保留细节,同时只把目标图像用于独立的相机估计路径,再把目标相机对齐到纯源视图重建的坐标系。
方法详解¶
整体框架¶
输入是同一场景的若干未标定 RGB 源图像,不需要用户提供相机内参或外参;输出是可用高斯泼溅渲染的全局三维高斯集合。 结构化特征分工先提取几何、语义和纹理,像素对齐高斯解码再逐源像素预测局部高斯属性。 双流相机对齐为纯源图像重建提供一致的目标相机坐标;源相机预测则将各视图的局部高斯变换到世界坐标。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
Input["未标定源图像"] --> Features["结构化特征分工"]
Features --> Decoder["像素对齐高斯解码"]
Features --> Camera["双流相机对齐"]
Target["目标图像<br/>仅相机估计路径"] --> Camera
Decoder --> World["局部高斯转世界坐标"]
Camera -->|源相机| World
World --> Render["高斯泼溅与目标视图"]
Camera -->|对齐后目标相机| Render
这里“无需相机参数”指输入不需要已知标定,并不是渲染不需要目标相机。 论文训练和评测中的目标图像仍参与混合流相机估计,但不会进入用于预测高斯的特征流。 这一边界很重要:方法隔离的是目标外观特征泄漏,不能把评测描述成完全不接触目标图像的相机定位协议。
关键设计¶
1. 结构化特征分工:不给几何骨干强加全部外观任务
VGGT 几何编码器通过跨视图注意力聚合场景关系,输出用于深度和相机估计的三维几何 token。 独立语义编码器逐图提取高层上下文,补充物体组织、场景布局与对应关系方面的先验。 附录明确使用独立且冻结的 DINOv3:VGGT 中为几何任务微调过的 DINOv2 特征可能损失外观信息,另一路语义特征可以避开这种任务偏置。 这里没有额外输出语义分割结果,语义被作为高斯预测的条件信息。
纹理编码器则使用轻量卷积保留高分辨率、逐像素对应的局部外观。 它不追求将颜色和纹理压缩成跨视角不变的概念,而是保留“这个像素具体是什么颜色、附近边缘如何变化”。 三条路径因而具有互补性:几何约束位置,语义缓解稀疏视图下的结构歧义,纹理补充前两者容易丢掉的高频信息。 附录还说明纹理编码器用于减少深度、不透明度、颜色、尺度和旋转等属性间的干扰,但没有给出可据以完整复现的卷积层配置。
2. 像素对齐高斯解码:先融合结构,再在输出前补回细节
解码器在 DPT 的多尺度重组与融合结构上改造,而不是简单把三路向量直接接到最终输出。 重组块先将几何和语义特征投影、调整空间尺寸并拼接,再用投影保持原 DPT 的通道规模;随后经过级联的重组和融合块。 高分辨率纹理特征在最终预测层之前注入,图 4 将其画成晚期相加路径。 这样,纹理不必先经过全部低分辨率结构处理再被恢复,细节到高斯属性之间的路径更短。
不同输出头预测深度、不透明度、颜色、尺度和旋转。 位置由相机 z 轴方向的深度参数化,旋转用局部相机坐标中的四元数表示,之后必须结合预测内外参完成到世界坐标的变换;不能把不同源相机里的局部高斯直接拼在一起。 表 7 给出这些头的输出通道分别为 1、1、3、3、4;深度和尺度采用 Softplus 类激活,不透明度采用带偏移的 Sigmoid,旋转归一化。 颜色头输出为原始值乘 0.25,没有 Sigmoid;作者希望避免梯度饱和,但线性输出本身并不构成颜色落在合法区间的数学保证。
3. 双流相机对齐:共享相机锚点,不共享目标外观特征
几何编码器分别处理“源图像加目标图像”的混合流 A 和“只有源图像”的纯源流 B。 高斯预测只使用 B;A 用于获得目标相机。 两次估计得到的相机可能处于不同参考坐标系,因此不能直接用 A 的目标相机渲染 B 的高斯。 方法利用两流都包含的源相机作为锚点,求出对齐关系后,只把目标相机参数转移过来。
旋转对齐直接在单位四元数空间求共同修正,正文使用拉格朗日乘子求解,附录给出归一化相对四元数和的闭式解。 平移对齐不是仅匹配尺度:它联合求一个尺度和一个三维偏移,使对应源相机的平移残差平方和最小。 按照原文对相机参数的记号,目标相机的转移可写为:
这里的四元数修正、尺度和偏移均从对应源相机求得,而不是用目标像素误差迭代拟合出的场景表示。 该公式转移的是论文定义的相机参数,不应不加说明地替换成另一种相机中心或外参约定。 与仅在评测时调整平移尺度的策略相比,它同时处理旋转、尺度和平移偏移,并让训练期高斯特征始终保持纯源输入。
损失函数 / 训练策略¶
训练把预测高斯同时渲染到源视图和目标视图,以像素、结构和感知误差联合监督。 原文式 (3) 的目标可用以下紧凑记号表达:
训练使用 BF16、DeepSpeed 和 Warmup-Stable-Decay 学习率调度;本文重建训练不使用真实深度或显式深度一致性损失。 这不代表几何编码器没有预训练先验,也不代表没有目标 RGB 监督。 缓存未报告三个损失权重的具体值、完整学习率及批大小,不能补成标准默认值。 附录报告双视图设置在单张 H100 上训练约 2.5 天,峰值显存 73 GB,模型含 1.535 B 参数,单次推理 164.657 ms;该耗时不能外推到任意视图数和分辨率。
实验关键数据¶
主实验¶
表 1 使用 DL3DV 官方基准测试划分,并用在 DL3DV 训练的模型跨数据集评估 ACID 和 RealEstate10K。 所有输出与真值统一缩放并中心裁剪到 256×256;仅目标视图用于计算测试指标,表中不做后优化。 DL3DV 双源视图数值与表 2 对应。下表摘录表 1,PSNR 单位为 dB,SSIM、LPIPS 为无量纲指标。
| 数据集 | 方法 | 相机输入条件 | PSNR ↑ | SSIM ↑ | LPIPS ↓ |
|---|---|---|---|---|---|
| DL3DV | AnySplat | 无相机参数 | 22.377 | 0.716 | 0.150 |
| DL3DV | StructSplat | 无相机参数 | 28.045 | 0.888 | 0.091 |
| DL3DV | NoPoSplat | 已知内参 | 25.592 | 0.838 | 0.104 |
| ACID | AnySplat | 无相机参数 | 22.433 | 0.651 | 0.237 |
| ACID | StructSplat | 无相机参数 | 24.372 | 0.712 | 0.219 |
| ACID | NoPoSplat | 已知内参 | 25.521 | 0.750 | 0.185 |
| RealEstate10K | AnySplat | 无相机参数 | 20.521 | 0.686 | 0.212 |
| RealEstate10K | StructSplat | 无相机参数 | 22.240 | 0.729 | 0.201 |
| RealEstate10K | NoPoSplat | 已知内参 | 24.724 | 0.818 | 0.145 |
相对 AnySplat,三个数据集的 PSNR 差值依次是 5.668、1.939、1.719 dB。 “最好”的结论限定于表 1 的无相机参数方法;跨数据集时,已知内参的 NoPoSplat 仍明显更强,不能将两个输入条件合并宣称全面领先。
消融实验¶
以下为 DL3DV 上的表 3 和表 6,PSNR 单位为 dB。 表 3 是依次增加特征的累积实验;表 6 是相机对齐的单独比较,不是同一条逐模块添加序列。
| 原文表号 | 配置 | PSNR ↑ | SSIM ↑ | LPIPS ↓ |
|---|---|---|---|---|
| 表 3 | 仅几何特征 | 20.610 | 0.622 | 0.343 |
| 表 3 | 几何 + 语义 | 26.236 | 0.848 | 0.151 |
| 表 3 | 几何 + 语义 + 纹理 | 28.045 | 0.888 | 0.091 |
| 表 6 | 无相机对齐 | 27.338 | 0.879 | 0.097 |
| 表 6 | 完整模型 | 28.045 | 0.888 | 0.091 |
加入语义提升 5.626 dB,在此基础上加入纹理再提升 1.809 dB;去掉相机对齐损失 0.707 dB。 这支持特征分工和干净训练路径的价值,但累积消融不能直接当作各模块独立贡献的可加分解。
关键发现¶
- 表 2 中,2、4、6 个源视图对应 PSNR 为 28.045、30.415、31.137 dB,增加观测可进一步改善重建。
- 表 4 的目标外参后优化将本文提高到 29.287 dB;该设置与主表的 28.045 dB 必须分开报告。
- 表 5 中,AnySplat 与本文的旋转 ATE 分别为 0.0866、0.0016,平移 ATE 为 0.1003、0.0093;表中未明确单位及归一化细节,不将其改写成度或米。
- 表 8 的更低采样率、大覆盖场景是另一协议:4 个源视图仅为 20.171 dB,不能与表 2 的 30.415 dB 混为同一任务。
亮点与洞察¶
- 几何基础模型的强项不等于像素保真能力。先做输入视图颜色重建的诊断,再决定增加纹理路径,是比直接扩大骨干更有针对性的设计依据。
- 晚期纹理注入并非放弃三维一致性,而是在已有结构融合之后补回局部信息。它适合借鉴到那些几何正确、渲染却模糊的前馈重建模型。
- 信息泄漏检查应追溯到注意力发生的位置。即使输出只保留源 token,只要之前与目标 token 交互过,就不能认定特征是干净的。
局限与展望¶
- 作者承认极端稀疏输入、严重遮挡、复杂视角相关效应和光照仍有困难;动态场景与大规模环境是后续方向,不是已经解决的能力。
- 两条几何估计流加独立语义编码器带来实际成本。单卡可训练不等于轻量,1.535 B 参数和 73 GB 峰值显存对部署有明显约束。
- 评测目标相机仍依赖目标图像估计。只隔离目标外观特征,不足以证明在完全未知目标图像、任意用户指定相机条件下的同等表现。
- 表 3 缺少完整的特征组合交叉消融,也未给出误差条;语义与纹理增益是否随数据规模、场景类别而变化仍需验证。
- 对齐依赖源相机锚点质量。退化轨迹、很小基线或姿态预测失败时的稳定性,以及推理耗时是否包含双流和对齐的详细边界,缓存没有充分说明。
相关工作与启发¶
- vs AnySplat:两者都面向无内外参输入的前馈高斯重建;本文突出独立语义与纹理路径,并将相机对齐扩展到旋转、尺度和偏移。
- vs Splatt3R / Depth Anything 3:同样利用几何基础模型,但本文认为“几何骨干加高斯头”仍缺外观细节,重点改造多源特征融合和输出前的纹理注入。
- vs NoPoSplat / FLARE:表 1 中这组方法使用已知内参,不能与完全无相机参数条件无区别比较;它们在跨数据集上的优势也提示标定信息仍有价值。
- 一个值得跟进的实验是固定几何骨干和训练预算,比较不同语义先验与纹理注入位置,并单独报告纯源重建成本和目标相机定位成本。
评分¶
- 新颖性: 4/5。结构化外观建模与无泄漏相机对齐组合明确,但主要建立在现成几何和视觉基础模型上。
- 实验充分度: 4/5。包含跨数据集、多视图、消融与分辨率扩展,但训练细节和统计不确定性报告仍不完整。
- 写作质量: 4/5。图 3 的诊断与图 5 的泄漏说明直观,部分相机约定、ATE 单位和运行时间口径需补充。
- 价值: 4/5。对无标定前馈重建和评测路径设计均有实用启发,但不应忽略大模型成本及目标相机估计依赖。