[控场AI]
· 4 分钟阅读· 2,331 字

SwitchSplat:从随手拍视频中学习物体离散状态,3DGS终于能"开关"了

SwitchSplat:从随手拍视频中学习物体离散状态,3DGS终于能"开关"了

SwitchSplat用基座+槽位分解让3DGS建模物体离散状态,支持未见组合的渲染。

文章介绍了SwitchSplat,一种面向交互式随手拍摄场景的3D Gaussian Splatting扩展表示。现有3DGS与4DGS等方法假设场景静态或随时间连续演化,无法处理开门、拨动开关这类离散状态变化。SwitchSplat采用基座+槽位分解:共享静态基座捕获不变场景,每个槽位独立持有某可交互物体的开/关两种二元状态,高斯点的归属通过完全可微优化从视频中自动学出,无需人工标注状态掩码。推理时用户可自由组合各槽位状态并从任意视角渲染,即使某组合从未被拍摄也能合成合理结果。在新随手拍摄数据集上,其新视角合成质量优于静态与动态基线,并独特地支持组合泛化。局限在于目前仅支持二元状态,且遮挡与运动模糊可能影响几何学习。

当3DGS遇上"会动的开关":静态假设的终结

3D Gaussian Splatting(3DGS)让高保真三维重建变得快速且易用,但现有表示都假设世界是静态的。这个假设在随手拍摄的场景中会彻底失效——用户自然地与环境互动:开门、拨动开关、移动物体,这些操作引入了离散的状态变化,而当前没有任何框架能建模这种变化。

时间条件动态方法(如4DGS)将"状态被观测到的时刻"与"场景处于什么状态"混为一谈,导致它们只能回放已见过的序列,无法自由组合任意的物体配置。SwitchSplat的提出正是为了填补这一空白。

SwitchSplat示例

3D Gaussian Splatting(3DGS) 是2023年提出的一种显式三维场景表示方法:它用数十万到数百万个各向异性的三维高斯椭球来刻画场景,每个高斯携带位置、协方差(决定尺度与朝向)、不透明度以及球谐系数(表达视角相关的颜色)。渲染时,这些高斯被投影到图像平面并按深度进行可微的alpha混合合成,从而在保持照片级真实感的同时实现实时帧率。与NeRF依赖隐式MLP查询不同,3DGS的显式结构与基于栅格化的光栅化流程使其训练和渲染都快得多,也更容易与可微优化、分割等下游模块结合。正因如此,3DGS成为静态场景重建的主流方案之一,但其优化目标默认场景几何与外观在训练过程中固定不变——一旦场景中物体的状态发生变化,单一静态高斯集合就无法同时容纳两种互斥的几何配置,这正是本文讨论的"静态假设"的由来。

基座+槽位:将离散状态解耦

SwitchSplat的核心是一个基座+槽位(base+slot)分解架构。一个共享的静态基座捕获场景中不变的部分,而每个槽位独立持有一个可交互物体的两种二元状态(开/关)。关键在于,高斯点分配到槽位的过程是完全可微的,这意味着模型能从视频中直接发现每种状态的几何形状,无需任何手动标注。

这种分解的优雅之处在于它匹配了问题的本质:场景中大部分是静态的,只有少数物体具有离散状态。通过将静态与动态、连续与离散分离,模型可以专注于学习真正变化的部分。

完全可微的分配机制

高斯点如何知道该属于基座还是某个槽位?SwitchSplat通过可微优化让模型自己学出来。训练时,模型从视频中观察到物体的不同状态,通过梯度信号将对应的高斯点推向正确的槽位。这避免了人工标注状态掩码的繁琐工作,也让方法更容易扩展到新场景。

4DGS(时间条件动态高斯) 类方法通常把时间作为额外输入:或者为每个高斯引入随时间变化的位置、旋转与不透明度参数,并用形变场或多分辨率时间特征来预测这些变化;或者将时间分桶,为不同时刻学习独立的高斯集合再做插值。这类做法的共同前提是场景演化是时间的连续函数,因而训练时只对观测到的时间点施加监督。问题在于,真实交互场景的变化是离散跳变的——开关只有开与关两种构型,中间不存在"半开"的物理状态。把这类变化硬塞进连续时间轴,模型只能记住观测序列的轨迹,一旦要求在训练分布之外的时间点上组合不同物体的状态,就会产生不合理的中间几何或直接失效。SwitchSplat引入独立的"状态"维度而非单纯延长时间轴,正是为了绕开这一连续形变假设。

可微分配(differentiable assignment) 指将离散的"点归属于哪个组件"决策松弛为可端到端优化的连续形式。常见做法是让每个高斯对基座和各槽位输出一组权重(如经softmax归一化的归属概率),渲染时按权重合成各组件贡献的辐射,从而使损失函数的梯度能够回传到归属参数本身。这与需要对离散标签采样、依赖REINFORCE或不可微聚类的方法不同:归属概率可以被直接优化,并在训练中逐渐锐化到接近0/1的硬分配。对SwitchSplat而言,这意味着无需预先提供"哪些像素属于门、哪些属于开关"的掩码,仅凭多状态视频的重建损失,模型就能自行把几何上互斥的两组高斯分别推向对应槽位,显著降低了标注成本,也让方法更容易迁移到新场景。

推理时自由组合:超越"回放"

在推理阶段,用户可以自由组合槽位状态,并从任意视角渲染出结果场景。这意味着即使某个状态组合在拍摄中从未出现过,模型也能合成出合理的渲染。比如,拍摄时只见过"门开+灯关"和"门关+灯开",模型仍能渲染"门开+灯开"的组合。

这正是传统动态方法做不到的。4DGS本质上是在时间轴上插值或记忆已观测帧,而SwitchSplat将状态作为离散变量建模,支持组合泛化。

实证验证:新数据集上的表现

研究团队在一个新的随手拍摄数据集上验证了SwitchSplat。结果表明,在新视角合成质量上,它优于静态和动态基线方法,并且独特地支持渲染拍摄中从未见过的状态组合。这一能力对于机器人操作、场景编辑和交互式内容创作等应用挺重要的。

与动态基线的关键差异

与4DGS等时间条件方法相比,SwitchSplat不是简单地增加时间维度,而是引入了状态维度。时间只是观测的索引,状态才是场景的本质变量。这种建模上的根本差异带来了组合泛化能力。

局限与展望

当前方法聚焦于二元状态(开/关),对于多状态或连续状态变化的物体,可能需要扩展槽位设计。此外,随手拍摄视频中的遮挡和运动模糊仍可能影响几何学习质量。但作为首个将3DGS扩展到离散状态组合的工作,SwitchSplat为交互式三维场景重建开辟了新方向。

项目页面:https://switchsplat.github.io

#SwitchSplat#3D Gaussian Splatting#离散状态建模#3DGS#新视角合成#动态场景重建
分享:

相关推荐