本文经自动驾驶之心公众号授权转载,转载请联系出处。
0. 论文信息
标题:SplatLoc: 3D Gaussian Splatting-based Visual Localization for Augmented Reality
作者:Hongjia Zhai, Xiyu Zhang, Boming Zhao, Hai Li, Yijia He, Zhaopeng Cui, Hujun Bao, Guofeng Zhang
机构:State Key Lab of CAD & CG, Zhejiang University、RayNeo
原文链接:https://arxiv.org/abs/2409.14067
代码链接:https://github.com/zhaihongjia/SplatLoc
1. 摘要
视觉定位在增强现实(AR)的应用中起着重要的作用,它使AR设备能够在预先构建的地图中获得它们的6自由度姿态,以便在真实场景中渲染虚拟内容。然而,大多数现有方法不能执行新颖的视图渲染,并且需要大的地图存储容量。为了克服这些限制,我们提出了一种有效的视觉定位方法,能够以较少的参数进行高质量的渲染。具体来说,我们的方法利用3D高斯图元作为场景表示。为了确保用于姿态估计的精确的2D-3D对应,我们开发了用于高斯图元的无偏的3D场景特定描述符解码器,其从构造的特征体中提取。此外,我们介绍了一种显著的3D标志选择算法,该算法基于显著性分数选择合适的图元子集用于定位。我们进一步正则化关键高斯图元以防止各向异性效应,这也提高了定位性能。在两个广泛使用的数据集上的大量实验表明,我们的方法获得了优于或相当于基于隐式的视觉定位方法的渲染和定位性能。
2. 引言
视觉定位是一项关键技术,它使移动设备或头戴式显示器能够估算相机相对于预建3D地图的6自由度(6-DoF)姿态。它在各种增强现实(AR)应用中发挥着至关重要的作用。例如,视觉定位方法可以提供AR设备的全局6-DoF姿态信息,这些信息可用于在真实环境中渲染虚拟内容,并促进用户与物理空间的交互。
一般而言,经典的视觉定位方法可分为两类:基于回归的方法和基于特征的方法。
基于回归的方法通常使用卷积神经网络(CNN)提取图像的高级上下文特征,并编码重建环境的几何信息(如绝对姿态和场景坐标)。PoseNet和SCRNet是直接从单个图像的提取特征中回归姿态或像素3D坐标的代表性工作。然而,由于缺乏几何约束,这些方法在准确性方面往往落后于基于特征的方法。
基于特征的方法通常预先构建基于结构的场景地图(例如3D点云模型),并将每个地图元素与一个或多个3D描述符相关联。这些3D一致描述符通常是通过对手工特征或基于学习的关键点描述符[9, 46](从2D图像中检测得到)执行多视图融合获得的。查询图像中检测到的2D点可以与3D描述符进行匹配,以获得用于稳健姿态估计的2D-3D对应关系。基于特征的方法的定位性能还取决于所提取描述符的可重复性和区分能力。然而,受限于场景表示方式,这些经典的定位方法无法进行逼真的渲染,而这是AR应用的重要组成部分。
近年来,神经辐射场(NeRF)和3D高斯溅射(3DGS)已成为神经隐式场景表示的新范式。这些范式使用隐式表示(例如多层感知器、参数化编码)或显式基本元素(例如点、2D/3D高斯)来表示场景属性,并在高质量渲染和几何重建方面实现了令人满意的性能。得益于可微分的NeRF风格体积渲染[16]和基于点的alpha混合,基于神经的方法可以在没有3D监督的情况下以端到端的方式进行参数优化。一些工作使用神经隐式表示来重建场景并进行姿态估计。iNeRF是第一个通过最小化查询图像与预训练NeRF模型渲染结果之间的光度误差来精炼6-DoF姿态的工作。NeRF-SCR和LENS是将基于回归的视觉定位与神经辐射场相结合的代表性工作。它们训练一个特定场景的NeRF模型来合成覆盖整个场景空间的高质量新视图,从而为它们的场景坐标回归网络优化提供额外的训练数据。同样,由于缺乏几何约束,这些NeRF辅助的回归方法的定位性能也不具备竞争力。为了施加几何约束,基于特征的方法PNeRFLoc使用显式结构表示场景,并将地图中的每个点与基于学习的描述符相关联。PNeRFLoc能够实现更好的定位性能和泛化能力。然而,与传统基于特征的方法一样,PNeRFLoc需要显式存储逐点特征,这会导致大量内存使用,对于存储有限的移动设备而言不切实际。
为了克服上述限制,我们提出了一种高效且新颖的视觉定位方法,该方法以更少的模型参数实现了更好的性能,适用于定位和高质量新视图渲染。具体而言,为了减少模型参数,我们不显式存储逐点描述符。相反,我们从多视图2D特征图中构建特征体,并将其提炼为特定场景的3D特征解码器,从而可以避免由alpha混合引入的高斯基本元素的描述符偏差。然后,我们提出了一种高效的显著3D地标选择算法,以减少由大量高斯基本元素引起的2D-3D匹配的计算开销。最后,我们对关键高斯基本元素进行位置和缩放正则化,以减少3D中心偏移。
3. 效果展示
我们提出了SplatLoc,一种为增强现实设计的高效新颖的视觉定位方法。如图所示,我们的系统利用单目RGB-D帧,使用3D高斯图元来重建场景。此外,利用我们学习的无偏3D描述符场,我们通过精确的2D-3D特征匹配实现了6-DoF相机姿态估计。我们展示了我们的系统的潜在AR应用,例如虚拟内容插入和物理碰撞模拟。我们用红框突出显示虚拟对象。
4. 主要贡献
我们提出的方法的具体贡献总结如下:
• 我们提出了一种高效且新颖的视觉定位方法,该方法基于3D高斯基本元素,能够以更少的参数实现精确的定位性能和高质量、快速的渲染。
• 我们引入了一种无偏的3D描述符学习策略,用于精确匹配2D关键点和3D高斯基本元素,使用一个特定场景的3D特征解码器从多视图特征图中回归特征体。
• 我们开发了一种有效的显著3D地标选择算法,以减少用于定位的基本元素数量。此外,为了减轻由光度渲染损失引起的高斯基本元素中心偏移,我们对关键高斯基本元素的位置和尺度应用了正则化。
• 我们进行了大量实验,证明了所提出方法在视觉定位和高质量新视图渲染方面的先进性和可比性能。
5. 方法
重建过程。我们逐步初始化高斯基元,每个基元都与位置μ、旋转q、尺度s、不透明度σ、颜色c以及3D地标分数a相关联。对于关键高斯基元,我们执行软等轴性和尺度正则化,以减轻结果的非等轴性。利用颜色损失Lc、深度损失Ld、3D地标损失Lm和正则化损失Lreg,通过可微光栅化优化每个基元的属性。
有偏和无偏3D描述符场学习的说明。(a) 以往工作[44, 48]中的有偏3D特征优化,它们使用alpha混合来获得2D混合特征。(b) 我们的无偏3D特征学习方案,直接从由多视图特征图构建的特征体中学习3D特征解码器。
我们无偏3D基元描述符学习的流程。我们首先基于2D卷积神经网络(CNN)模型[9]对图像进行编码,以获得多视图特征图,并根据深度和姿态信息构建3D场景特征体。为了增强3D特征解码器的表征能力,我们使用多分辨率参数编码来辅助3D场景特定描述符的学习。此外,我们仅对场景表面进行描述符采样,以实现有效的知识蒸馏。
6. 实验结果
7. 总结 & 未来工作
在本文中,我们提出了SplatLoc,这是一种基于3D高斯基元的高效且新颖的视觉定位方法,相比传统定位方法更适合增强现实(AR)/虚拟现实(VR)。具体而言,为了压缩用于定位的场景模型,我们为重建的高斯基元学习了一个无偏3D描述符场,这比以往的alpha混合方法更准确。然后,我们提出了一种显著的3D地标选择算法,根据高斯基元的显著性分数选择更具信息量的基元进行视觉定位,这可以减少移动设备的内存和运行时间需求。此外,我们为关键高斯基元提出了一个有效的正则化项,以避免非等轴形状并减少几何误差,从而可以提高定位性能的稳定性。在两个常用数据集上的大量实验证明了我们所提系统的有效性和实用性。
目前,我们提出的方法存在两个局限性。第一个是我们需要深度信息或稀疏点云来重建场景。我们的方法基于3DGS,该方法需要点云来初始化每个高斯基元的位置。第二个是我们的方法不能用于大型室外场景,因为这会增加参数数量。在未来,我们将尝试使用视觉基础模型(例如DepthAnything)来估计RGB图像的深度,这可以视为替代深度传感器的先验,并指导场景重建过程。此外,我们考虑使用分层表示方法来扩展我们的定位方法,以适用于大型室外场景。