MSGO开创简单高效的3DGS-SLAM新框架!同时拥有高质量建图与大内存利用!

导读:

实时SLAM与密集3D建图在资源有限的设备上计算量极大,最近3DGS+SLAM的发展为实时密集3D重建提供了极富前景的解决方案。但现有基于3DGS的SLAM系统在硬件简易性、速度和地图质量之间难以取得平衡。

大多数系统在上述某几个方面表现突出,但很少能够全面兼顾,高质量的表达似乎总以牺牲内存为代价,两者之间的互斥关系似乎逐渐成为共识。

但本文提出了不一样的声音——Monocular
GSO(MGSO):一种将光度SLAM与3DGS相结合的新型实时SLAM系统。该系统通过简单高效的场景表达方式,采用新颖的框架耦合SLAM与3DGS,能够仅使用以往10%左右的资源,提升20~30%左右的建图质量。©️【深蓝AI】编译

1. 引入

SLAM是自主机器人导航中的一项关键任务,指的是机器人在构建环境地图的同时,能够实时追踪自身位置。准确的自我定位是移动机器人执行更复杂任务的基础,而传统的SLAM系统通常生成的地图信息较少,足以支持导航和定位,但缺乏复杂任务所需的细节信息。比如,稀疏点云虽然能帮助机器人确定位置,但缺乏表面细节,这对一些精细的操作(如机器人抓取物体)来说并不够用。因此,生成密集、高精度的3D地图正变得越来越重要。

为了应对这一需求,SLAM技术不断发展,开始在进行定位的同时生成密集的3D地图。现有的密集SLAM方法分为两类:解耦和耦合。解耦方法是将定位和重建分开,通过传统的SLAM系统获取数据,随后进行密集的3D重建。而耦合方法则将定位和重建同时进行,虽然这种方法能提高地图的质量,但由于需要处理大量数据,速度往往成为瓶颈,因为精确定位依赖于高质量的地图,而地图构建本身需要时间。

解耦SLAM系统的一个主要问题在于,定位与重建模块之间缺乏协同作用。传统SLAM算法通常无法为密集重建提供足够的数据,这会影响系统的整体性能。为此,作者设计了专门适配3D Gaussian Splatting(3DGS)的SLAM系统。3DGS是一种能够生成高质量3D重建的方法,它通常需要一个初始点云来启动重建过程。越密集、结构越清晰的点云有助于加快重建速度并提高质量。然而,传统SLAM方法生成的稀疏点云无法很好地满足3DGS的需求,而使用单目相机则能实现更广泛的应用场景。

作者提出了Monocular-GSO(MGSO),一个基于单目相机的密集视觉SLAM系统。MGSO通过光度SLAM系统生成初始点云,随后启动3DGS模块进行实时的密集场景重建。与传统的SLAM方法不同,MGSO能生成更密集、更结构化的点云,这大大提高了重建速度和精度。MGSO的创新之处在于,它只需要一个单目相机便能完成高质量的3D重建,具备出色的速度、地图质量和内存效率,远超现有的同类系统。

2. 具体方法与实现

MGSO的方法框架非常清晰,集成了两个同时运行的核心模块:一个负责精确姿态估计的SLAM模块,另一个是用于构建地图的3D密集重建模块,笔者分别对这两个模块进行介绍。

2.1 SLAM模块

该系统的跟踪核心基于Direct Sparse Odometry(DSO)开发。DSO的主要创新在于选择性像素采样进行光度跟踪,这相比使用全部像素提高了定位精度。作者选择基于DSO,是因为他们观察到3DGS的最终位置、颜色和高斯分布与DSO生成的点云非常相似,因此推测用光度SLAM初始化3DGS能够优化其性能,减少所需的优化步骤。

DSO通过在连续帧之间跟踪一组像素来优化相机姿态,其光度损失函数如下:

E = ∥ ( I j [ p p p j ] − b j ) − s j ⋅ a j ⋅ a i s i ⋅ ( I i [ p p p i ] − b i ) ∥ E=\left\|(I_j[\mathbf{ppp}_j] - b_j) - s_j \cdot a_j \cdot \frac{a_i}{s_i} \cdot (I_i[\mathbf{ppp}_i] - b_i)\right\| E= (Ij[pppj]bj)sjajsiai(Ii[pppi]bi)

其中, I I I查询像素强度, a a a b b b是用于处理光照变化的变量, s s s表示相机曝光值。该方程用于找出帧与帧之间像素强度变化最匹配的姿态变化,适用于跟踪和建图。

在每一帧,系统计算当前相对于最新关键帧的姿态变化,假设地图固定。地图仅在插入新关键帧时更新,关键帧是记录场景新视图的参考帧。完成建图时,所有关键帧的姿态和由跟踪像素点组成的地图都会进行调整,随后系统将跟踪像素点转换为点云并添加至密集重建模块。

MGSO采用了DSO的窗口关键帧管理策略,当检测到视野、旋转或光照变化时生成新关键帧,过多的旧关键帧会被移除,以保持关键帧的合理分布。DSO生成的点云具有结构良好的密集点分布,得益于其像素选择策略。DSO将图像划分为多个区域,并在每个区域中选择梯度超过阈值的像素。这种方法确保复杂和简单区域都有像素选择,区别于传统方法仅跟踪易识别特征点的做法。该方法与3DGS的最终高斯分布密度较为相似,特别是在复杂区域,可由图1直观的看出,对比图1中的左右两张图片,能够发现右图在复杂区域,比如墙壁拐角处,电视机和墙壁的交界处等出现多个物体,具有多种不同的几何形状的位置有更多更丰富的点云表达。

图1|三维点云对比©️【深蓝AI】编译
图2|三维点云对比©️【深蓝AI】编译

尽管DSO的像素选择密度对跟踪最为优化,但增加像素密度有助于提升3DGS的性能,尤其在低梯度区域。为了进一步提升输出点云的密度,作者修改了DSO,增加了一些不用于姿态估计的像素进行跟踪。对于无梯度的平坦区域,他们采用了基于Delaunay三角剖分的插值方法,估算这些区域的点位。相比于其他系统,MGSO方法专注于平坦区域的插值,性能表现更为优异,这一点可以从图1中进一步观察体现,由图2所示,MGSO能够以更稀疏的点云表达出更精确的几何场景,这种轻量化但高效的点云表达为后续的3DGS建图提供了很好的先验。

2.2 基于高斯的阴影投影

MGSO系统采用3DGS作为其密集重建方法。按照原始3DGS的方法,系统使用一组各向异性高斯来对场景进行建模。每个高斯模型都包含不透明度、旋转、位置、尺度和颜色等参数。为了提高速度,MGSO使用了Mono-GS中的技术,将颜色表示从球谐函数替换为RGB,这样做在不明显影响重建质量的情况下可以大幅提升渲染效率。这一步的原理是因为SH函数在计算时需要计算多次系数,然后转换为RGB,这样子能够为场景提供更好的颜色表达,但是会导致较长较大的计算时间,直接使用RGB可以大大降低建图时的色彩解算过程,并且RGB图像对于人类观测来说已经完全足够。在渲染时,系统使用了3DGS中引入的基于瓦片的可微光栅化技术来生成场景的RGB图像。

在建模过程中,每个高斯的参数通过梯度下降法进行优化,以最小化光度损失。这个过程可以通过下面的损失函数表示:

L = ∣ I r − I g t ∣ ( 1 − λ ) + S S I M ( I r , I g t ) λ L=|I_r - I_{gt}|(1 - \lambda) + SSIM(I_r, I_{gt})\lambda L=IrIgt(1λ)+SSIM(Ir,Igt)λ

这里的 I r I_r Ir表示渲染图像, I g t I_{gt} Igt表示拍摄到的真实图像, λ \lambda λ表示SSIM的选择权重。

图3|追踪点云对比©️【深蓝AI】编译

图3体现了本文方法与传统VIO方法在点云追踪点上的对比,可以看到本文方法追踪的点的数量远远高于传统的VIO方法,因此才能够实现稠密的建图。

为了进一步优化重建效果,系统会定期对视角空间位置梯度较大的高斯进行密度调整,具体方式是通过分裂或克隆来增加这些高斯的数量。高方差的高斯会被分裂,而那些处于重建不足区域的小高斯则会被克隆。此外,系统还会定期移除那些不透明度较低的“浮动”高斯,以减少不必要的冗余数据。MGSO在分裂和克隆高斯时,采用了与原始3DGS相同的参数设置。通过这些优化策略,MGSO能够生成高质量、密集的3D场景重建,同时保持较高的计算效率。

3. 实验

本文实验主要从数值,可视化和对比实验三个方面出发,综合评估了本文方法,首先一起看看可视化实验的结果,图4能够看到可视化的结果,本文方法对于整体环境的渲染和重建的效果都显著由于目前的SOTA方法,并且值的关注的是本文的轻量级表达使得最终的内存占用仅是SOTA方法的10%。

图4|可视化实验对比©️【深蓝AI】编译

图5和6表示了本文方法在定位和建图上的数值实验结果,从图5来看,本文方法在公开数据集上的表现是十分出色的,多个sequence上都取得了比较领先的效果,此外对于建图质量,可以明显看到本文方法渲染得到的PSNR会显著高于SOTA方法。

图5|SLAM轨迹误差对比实验结果©️【深蓝AI】编译

图6|建图质量数值实验©️【深蓝AI】编译

图7进一步体现了本文方法在轻量化上的突出表现,比起当前的SOTA方法,本文方法能够在仅使用10%内存的情况下取得30%左右的建图质量提升,简单高效这两个词在这里能够得到很好的诠释。

图7|渲染速度实验结果©️【深蓝AI】编译
图8|多数据集建图可视化©️【深蓝AI】编译
图9|渲染速度实验结果©️【深蓝AI】编译

最后的图8和图9则展示了本文方法在多数据集上的表现,在不同的数据集上进行评估能够进一步看出方法在不同场景中的泛用性,图9则是建图质量和内存的关系,往往这两个指标都是冲突的,如果需要更好的建图质量,那么一定会牺牲内存,通过存储更多的细节,提供更多的表达来提升建图质量,如果想要降低内存,那么一定会让建图质量做出让步,除非和本文一样找到简单高效的表达方法,从根本上重塑这个框架,相信这个思路对于一些仍在寻找内存和质量之间的trade-off的读者能够有一些启发。

4. 总结

MGSO集成了实时光度SLAM与3DGS,仅使用单目相机即可实现密集、高质量且内存高效的3D重建。该方法解决了多个挑战,成功利用了这两种技术的天然兼容性。其无需深度传感器即可在各种环境中展现出卓越的适应性,使其在机器人、增强/虚拟现实(AR/VR)以及数字孪生应用中具有极大优势。未来的研究可以探索引入回环闭合技术以实现全局一致性,以及通过实时重新渲染进行自适应场景重建,从而提高MGSO在复杂、大规模环境中的精度和效率。
©️【深蓝AI】

Ref:
MGSO: Monocular Real-time Photometric SLAM with Efficient 3D Gaussian Splatting
编译|阿豹
审核|Los

本文首发于微信公众号【深蓝AI】,移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态👇
深蓝AI·赋能自动驾驶+机器人+AI

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值