赞
踩
点击下方卡片,关注“自动驾驶之心”公众号
戳我-> 领取自动驾驶近15个方向学习路线
论文作者 | 3D视觉之心
编辑 | 自动驾驶之心
我们首次将3D高斯泼溅应用于使用单目或RGB-D相机的增量3D重建。我们的SLAM方法以每秒3帧的速度实时运行,使用高斯作为唯一的3D表示,统一了所需的表示,以实现准确、高效的跟踪、建图和高质量渲染。
我们需要一些创新来从相机连续重建具有高保真度的3D场景。首先,为了超越最初的3DGS算法,该算法需要来自离线运动结构(SfM)系统的精确位姿,我们使用针对3D高斯的直接优化来制定3DGS的相机跟踪,并表明这能够实现快速而稳健的跟踪,并具有广泛的收敛范围。其次,通过利用高斯的显式性质,我们引入了几何验证和正则化来处理增量三维密集重建中出现的模糊性。最后,我们介绍了一个完整的SLAM系统,它不仅在新的视图合成和轨迹估计方面取得了最先进的结果,而且还重建了微小甚至透明的物体。
总结来说,我们工作的主要贡献如下:
第一个使用3DGS作为唯一底层场景表示的近实时SLAM系统;
SLAM框架内的新技术,包括用于相机姿态估计、高斯形状正则化和几何验证的解析雅可比
对单目和RGB-D设置的各种数据集进行了广泛的评估,展示了具有竞争力的性能,尤其是在真实世界的场景中。
我们的SLAM表示是3DGS,用一组各向异性高斯建模场景。每个高斯都包含光学特性:颜色和不透明度。对于连续三维表示,在世界坐标中定义的均值和协方差表示高斯的位置及其椭球形状。为了简单和快速,在我们的工作中,我们省略了表示与视图相关的辐射的球面谐波。由于3DGS使用体积渲染,因此不需要显式提取曲面。相反,通过泼溅和混合N个高斯,可以合成像素颜色:
3DGS进一步进行光栅化,在高斯上迭代,而不是沿着相机光线行进,因此,在渲染过程中忽略自由空间。在光栅化过程中,α的贡献通过高斯函数衰减,该函数基于3D高斯形成的2D高斯。世界坐标中的3D高斯通过投影变换与图像平面上的2D高斯相关:
为了实现精确的跟踪,我们通常需要每帧至少50次梯度下降迭代。这一要求强调了具有计算高效的视图合成和梯度计算的表示的必要性,使3D表示的选择成为设计SLAM系统的关键部分。
为了避免自动微分的开销,3DGS使用CUDA实现光栅化,其中所有参数的导数都是显式计算的。由于光栅化对性能至关重要,我们同样明确地推导出了相机雅可比矩阵。
据我们所知,我们提供了SE(3)相机姿态相对于EWA splatting和3DGS中使用的3D高斯的第一个解析雅可比。这开启了3DGS在SLAM之外的新应用。
我们使用李代数来导出最小雅可比矩阵,确保雅可比矩阵的维数与自由度匹配,从而消除任何冗余计算。方程的项(2)关于相机姿态是可微分的,使用链式规则:
我们取流形上的导数来导出最小参数化。
在本节中,我们将介绍完整SLAM框架的详细信息。系统概述如图2所示。有关更多参数的详细信息,请参阅补充材料。
在跟踪中,仅优化当前摄影机位姿,而不更新地图表示。在单目情况下,我们将以下光度残留降至最低:
我们进一步优化仿射亮度参数的变化曝光。当深度观测可用时,我们将几何残差定义为:
逐像素深度通过α混合进行光栅化:
由于使用视频流中的所有图像来在线联合优化高斯和相机姿势是不可行的,因此我们保留了一个由基于帧间共视性精心选择的关键帧组成的小窗口。理想的关键帧管理将选择观察同一区域的非冗余关键帧,跨越宽基线,以提供更好的多视图约束。
选择和管理:基于我们简单而有效的标准,检查每个被跟踪的帧的关键帧注册。我们通过测量当前帧i和最后一个关键帧j之间观察到的高斯的并集上的交点来测量共视性。如果共视性下降到阈值以下,或者如果相对平移相对于中间深度较大,帧i被注册为关键帧。为了提高效率,我们按照DSO的关键帧管理启发法,在当前窗口Wk中只保留少量关键帧。主要区别在于,如果与最新关键帧的重叠系数降至阈值以下,则会从当前窗口中移除关键帧。
高斯共视性:对共视性的准确估计简化了关键帧的选择和管理。3DGS尊重可见性排序,因为3D高斯是沿着相机光线排序的。由于遮挡是通过设计处理的,因此这种特性对于共视性估计是可取的。如果在光栅化中使用,并且光线的累积α尚未达到0.5,则高斯被标记为从视图可见。这使得我们估计的共视性能够在不需要额外启发式的情况下处理遮挡。
高斯插入和修剪:在每个关键帧,都会将新的高斯插入到场景中,以捕捉新可见的场景元素并细化精细细节。当深度测量可用时,通过反向投影深度来初始化高斯平均值μW。在单目的情况下,我们在当前帧处渲染深度。对于具有深度估计的像素,μW是在那些具有低方差的深度周围初始化的;对于没有深度估计的像素,我们在具有高方差的渲染图像的中值深度周围初始化μW。
建图的目的是保持连贯的3D结构,并优化新插入的高斯。在映射过程中,Wk中的关键帧用于重建当前可见的区域。此外,每次迭代都会选择两个随机的过去关键帧Wr,以避免忘记全局地图。3DGS的光栅化在观看光线方向上对高斯没有任何约束,即使是在深度观察的情况下也是如此。当提供足够的仔细选择的视点时(例如在新颖的视点合成情况下),这不是问题;然而,在连续SLAM中,这会导致许多伪影,使得跟踪具有挑战性。因此,我们引入了各向同性正则化:
实验结果和可视化如下:
我们提出了第一种使用3D高斯作为SLAM表示的SLAM方法。通过高效的体渲染,我们的系统显著提高了实时SLAM系统可以捕捉的目标材料的保真度和多样性。我们的系统在单目和RGB-D案例的基准测试中都实现了最先进的性能。未来研究的有趣方向是集成循环闭合以处理大规模场景,并提取几何体,如高斯不明确表示曲面的曲面法线。
[1] Gaussian Splatting SLAM
投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!
① 全网独家视频课程
BEV感知、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、车道线检测、轨迹预测、在线高精地图、世界模型、点云3D目标检测、目标跟踪、Occupancy、cuda与TensorRT模型部署、大模型与自动驾驶、Nerf、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习)
网页端官网:www.zdjszx.com② 国内首个自动驾驶学习社区
国内最大最专业,近2700人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知(2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频
③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦2D/3D目标检测、语义分割、车道线检测、目标跟踪、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、在线地图、点云处理、端到端自动驾驶、SLAM与高精地图、深度估计、轨迹预测、NeRF、Gaussian Splatting、规划控制、模型部署落地、cuda加速、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)
④【自动驾驶之心】平台矩阵,欢迎联系我们!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。