ActiveSplat
Li 2025 · 论文
一句话总结 ——一个自主主动建图系统(RA-L 2025),将稠密的3D高斯溅射(Gaussian Splatting)地图与工作空间的稀疏Voronoi图抽象耦合在一起,使机器人自己决定去哪里、看哪里,以最大化重建的完整性和保真度。
问题
基于渲染的重建(NeRF、3DGS)是场景特定且依赖数据的,因此”对噪声和伪影高度敏感,这些噪声和伪影往往由于视角覆盖不足而产生”——质量完全受制于采集轨迹。主动建图颠覆了这个问题:一个移动智能体边重建边评估即时地图质量,并规划路径以覆盖整个环境。这需要一种既支持快速逼真渲染(用于视角质量评估),又支持在工作空间上进行高效、安全规划的表示——单纯的稠密高斯地图无法提供这一点,而体积神经场(ANM-S)的收敛速度又太慢。
方法与架构
一个基于带位姿RGB-D输入的感知-动作循环,包含三个都复用同一个溅射(splatting)操作的模块:
- 混合地图更新:每个高斯具有颜色 、中心 、协方差 、不透明度 ,其逐像素影响为 。颜色、深度以及可见性(累积不透明度)都通过从前到后的混合渲染出来:
优化遵循SplaTAM的损失函数,,其中 ,()。当累积不透明度低于 或深度偏差超过 (中位深度误差的50倍)时,生成新的高斯。
- 工作空间抽象:对高斯地图进行俯视正交渲染(大焦距)得到占据信息;可通行地面区域减去障碍物得到工作空间,从中构建出一个Voronoi图 ——其边到障碍物的距离相等,因此沿其规划的路径天生是安全的。
- 解耦的视角选择:位置候选点仅取自Voronoi节点;每个节点的旋转通过用三个虚拟相机渲染一个 的可见性全景图,并用DBSCAN对低可见性区域聚类(簇中心给出偏航角/俯仰角)来选择。由于2D不可见像素面积会高估/低估真实未见体积,会将轮廓像素反投影,并用凸包近似缺失的3D体积;同时还维护一个高损失样本集,其中不透明度是可信的(),但渲染深度与观测不符()。节点得分为
其中 ,: 分别是2D不可见面积和3D凸包占比, 是未访问/在视野内的布尔标志。Dijkstra算法规划到所选节点的最短路径。
- 层级化规划:Voronoi图通过对欧几里得距离+行进距离进行凝聚聚类(UPGMA)动态划分为若干子区域;智能体在跳往下一个最佳全局子区域之前会先耗尽当前的局部子区域——从而避免了多房间场景中贪心评分产生的重复轨迹。
- 后处理:由于高斯保持一致的参数空间,存储的关键帧允许通过3DGS/2DGS密度控制加深度/法线正则化进行离线细化。
实验结果
在Habitat仿真器上使用Gibson和Matterport3D数据集(13个单层场景;小场景1000步,中等场景2000步),RTX 3090,结果为5次试验的平均值:
- 覆盖率(完成率% / 完成误差cm):Gibson 92.24 / 2.43,MP3D 92.48 / 2.84——超过ANM-S(92.10/2.83、89.74/4.14)、NARUTO(79.16/3.52、84.90/5.94)、ANM(80.45/7.44)、UPEN以及基于前沿的FBE(68.30/14.42、74.30/9.29)。
- 渲染效果对比ANM-S(测试视角,后处理后):例如Gibson-Eudora PSNR 27.82对24.55,深度L1误差1.63对5.34cm;Gibson-Ribera 30.86对26.51,1.85对13.90cm。
- 消融实验:随机节点遍历84.20%(Gibson)→仅位置贪心90.41→解耦视角选择91.76→带层级化规划的完整方法92.24;仅使用可见性或仅使用凸包评分都不如组合方案。用2DGS+深度损失做后处理,在Gibson-Denmark上将测试视角深度L1误差从9.01改善到7.56cm,PSNR从21.72提升到27.58;没有深度损失时几何会变差(过拟合)。
- 运行时间:无头模式约8帧/秒;建图45.14毫秒和工作空间提取43.87毫秒每步占主导,规划本身耗时不足一毫秒。
- 真实世界:部署在配备Azure Kinect的Agile-X Ranger Mini上,位姿由一个并行线程运行的基于线特征的SLAM系统提供。
对SLAM的意义
大多数3DGS-SLAM工作(SplaTAM、MonoGS、Photo-SLAM)把相机轨迹视为给定的,而ActiveSplat则闭合了建图与行动之间的环路。其核心洞见在于架构层面:同一个溅射操作同时服务于地图更新、视角评分和工作空间提取,而拓扑图则保持规划的稀疏与安全——这种分工使在线主动重建变得可行。它代表了从被动SLAM向具身、探索驱动的重建转变的趋势,适用于检测、数字孪生和仿真数据采集等场景。