作者 | 3DCV
点击下方卡片,关注“3D视觉之心”公众号
>>点击进入→3D视觉之心技术交流群
0. 论文信息
标题:Optimizing NeRF-based SLAM with Trajectory Smoothness Constraints
作者:Yicheng He, Guangcheng Chen, Hong Zhang
机构:Southern University of Science and Technology
原文链接:https://arxiv.org/abs/2410.08780
1. 导读
神经辐射场和相机轨迹的联合优化因其优越的密集映射质量和一致性而被广泛应用于SLAM任务。基于NeRF的SLAM使用隐式地图表示的约束来学习相机姿态。由这种形式的约束导致的广泛观察到的现象是不稳定的和物理上不真实的估计相机运动,这反过来影响地图质量。为了解决当前基于NeRF的SLAM算法的这一不足,本文提出了TS-SLAM算法。它通过用具有连续加速度的均匀三次B样条来表示相机轨迹,从而在相机轨迹上引入了平滑约束,保证了相机的平滑运动。受益于B样条的可微性和局部控制特性,TS-SLAM可以使用滑动窗口范式端到端地增量学习控制点。此外,我们通过在进一步平滑轨迹之前利用动力学来调整相机轨迹。实验结果表明,与基于NeRF的SLAM相比,TS-SLAM实现了更好的轨迹精度并提高了映射质量,而基于NeRF的SLAM没有采用上述平滑约束。
2. 引言
同时定位与地图构建(SLAM)在机器人系统实现定位和场景重建方面得到了广泛研究。经过数十年不懈的研究,涌现出了众多复杂的SLAM系统。然而,传统SLAM系统生成的稀疏地图往往无法满足场景理解和路径规划等任务的需求。神经辐射场(NeRF)是一种利用多层感知器(MLP)对场景进行连续表示的技术,它解决了这一局限性,其工作原理是最小化捕获图像与渲染图像之间的颜色差异。
最近,NeRF已被整合到SLAM系统中,以重建高质量、连续的地图,本文将这种类型的SLAM称为基于NeRF的SLAM,简称NeRF-SLAM。根据相机跟踪策略,NeRF-SLAM可以分为解耦和耦合两种类型。前者利用外部跟踪器计算的相机位姿和图像作为NeRF的输入进行密集映射。后者则将相机位姿与其隐式地图表示一同视为可学习参数。在耦合NeRF-SLAM中,相机位姿和地图被统一在一个可微计算图中,并通过最小化光度误差和几何误差来学习,以实现定位和地图构建。这种简单而高效的模式近年来得到了广泛研究,因为它将SLAM表征为一个完整的优化问题,消除了任何外部预计算信息(即关键点或预训练网络)。在本研究中,我们关注耦合NeRF-SLAM,因其优雅的公式和与解耦方案相当的性能。
与传统使用显式多视图几何约束的SLAM不同,耦合NeRF-SLAM学习受隐式地图表示约束的相机位姿,而无需对相机位姿之间潜在的空间关系进行显式监督。这些间接约束导致相机轨迹在全局上是合理的,但在局部却是不连贯和不现实的。这样的轨迹显然不准确,会对需要精确定位的下游任务(如导航和路线教学-重复操作)产生不利影响。此外,不准确的轨迹还会损害重建地图的质量。
3. 效果展示
(a)传统SLAM,(b)耦合NeRF-SLAM,以及(c)我们的方法的相机姿态约束方案。由于间接约束优化,当前耦合的NeRF-SLAM的估计轨迹(红线)不稳定。我们的方法通过引入从相机轨迹的B样条表示导出的平滑约束来提高轨迹精度和增强重建质量。
4. 主要贡献
本文提出了轨迹平滑SLAM(TS-SLAM),旨在提高NeRF-SLAM的相机跟踪性能。TS-SLAM采用均匀三次B样条来表示相机轨迹,从而间接约束轨迹的平滑性,并能够直接学习B样条的控制点。TS-SLAM不是单独处理每个相机位姿,而是使用控制点来约束时间上相邻的相机位姿。这种表示可以视为具有支持物理解释的低通滤波器,能够防止突然跳跃并避免估计轨迹出现物理上不合理的运动。此外,为了稳定学习过程,提出了局部捆集调整(bundle adjustment),在滑动窗口内从粗到细联合优化地图和控制点。此外,我们还使用动力学正则化来惩罚不符合物体加速度动力学先验的预测位姿。由于我们提出的系统无需修改隐式场景表示和重建损失,因此其组件可以无缝集成到任何耦合NeRF-SLAM系统中。推荐课程:彻底剖析激光-视觉-IMU-GPS融合SLAM算法:理论推导、代码讲解和实战。
5. 方法
在本节中,我们将详细介绍TS-SLAM,图2概述了系统的工作原理。我们采用了Co-SLAM中的场景表示,并在其优化框架中添加了平滑性约束。
TS-SLAM以端到端的方式联合优化地图和控制点。每个控制点影响轨迹上时间上接近的帧,如图3所示。此外,使用三次B样条插值的位姿自然具有C2连续性。基于这些特性,B样条在时间上接近的相机位姿之间引入了几何平滑约束。
对于每个时间间隔Δt,TSSLAM(时间同步空间局部调整映射)运行一个由局部BA(Bundle Adjustment,光束平差法)和全局BA组成的映射线程。局部BA在滑动窗口中优化场景表示和控制点,以实现平滑的相机轨迹。B样条的局部控制特性使得可以使用滑动窗口来实现局部BA,如图4所示。具体而言,滑动窗口包含最新的M个控制点,且步长为一个控制点。
6. 实验结果
我们在ScanNet的六个房间规模序列和TUM RGBD的三个真实场景上评估了相机跟踪。使用ATE(绝对轨迹误差)评估全局准确性,使用RPE(相对位姿误差)评估局部误差,以此来评估轨迹准确性。结果如表I和表II所示。我们的方法在定位准确性方面,尤其是局部准确性方面(由RPE反映),显示出显著提高。与Co-SLAM相比,TSSLAM在TUM和ScanNet上的RPE分别降低了78.5%和40.5%。TS-SLAM的平滑约束显著避免了轨迹不连续,如图6中的对齐轨迹所示,并提高了全局准确性,如图5所示。TS-SLAM连接时间上接近的相机位姿,这可以理解为将每个轨迹段视为一个整体,并通过控制点对其进行优化,从而可以减少轨迹漂移,实验结果证明了这一点。
我们在Neural-RGBD的七个合成场景上评估了重建质量。与其他合成数据集不同,它模拟了深度传感器数据中的噪声。TS-SLAM直接采用了Co-SLAM的地图表示,没有进行任何修改。我们的方法可以显著提高重建质量,如表III所示。轨迹平滑约束导致相机跟踪更准确,因此重建结果也更准确,如图5右列所示。
7. 总结 & 局限性
在本文中,我们提出了TS-SLAM,这是一种密集视觉SLAM方法,通过引入平滑约束(利用B样条表示的相机轨迹)来提高相机跟踪准确性,并间接提升地图质量。通过利用B样条的可微性,TS-SLAM以端到端的方式学习控制点。此外,我们设计了一个动力学正则化项来惩罚相机运动的过度加速,从而获得更物理真实的轨迹。为了稳定学习过程,我们利用B样条的局部支持特性,并设计了一种从粗到细优化控制点的局部光束平差法。大量实验表明,轨迹平滑约束可以有效改进现有的NeRF-SLAM方法。
局限性。我们的方法使用均匀三次B样条来表示轨迹,这需要预先确定固定的时间间隔和样条阶数。未来的工作将探索如何自适应地调整这些超参数。
对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~
本文仅做学术分享,如有侵权,请联系删文。
扫码添加小助理进群
3D视觉之心知识星球主打3D感知全技术栈学习,星球内部形成了视觉/激光/多传感器融合SLAM、传感器标定、点云处理与重建、视觉三维重建、NeRF与Gaussian Splatting、结构光、工业视觉、高精地图等近15个全栈学习路线,每天分享干货、代码与论文,星球内嘉宾日常答疑解惑,交流工作与职场问题。