专栏名称: 点云PCL
公众号将会推送基于PCL库的点云处理,SLAM,三维视觉,高精地图相关的文章。公众号致力于理解三维世界相关内容的干货分享。不仅组织技术交流群,而且组建github组群,有兴趣的小伙伴们可以自由的分享。欢迎关注参与交流或分享。
目录
相关文章推荐
爱否科技  ·  折叠屏 iPhone ... ·  5 天前  
爱否科技  ·  小米旗舰平板或搭载 14 英寸 OLED ... ·  4 天前  
爱否科技  ·  小米 16 Pro 迎超前爆料,预计 10 ... ·  5 天前  
51好读  ›  专栏  ›  点云PCL

3D地图中的视觉定位:点云、网格和NeRF表示的比较

点云PCL  · 公众号  ·  · 2024-09-04 08:30

正文

文章:Visual Localization in 3D Maps: Comparing Point Cloud, Mesh, and NeRF Representations

作者:Lintong Zhang , Yifu Tao , Jiarong Lin , Fu Zhang , Maurice Fallon

编辑:点云PCL


欢迎各位加入知识星球,获取PDF论文,欢迎转发朋友圈。 文章仅做学术分享,如有侵权联系删文。

公众号致力于点云处理,SLAM,三维视觉,高精地图等领域相关内容的干货分享,欢迎各位加入,有兴趣的可联系[email protected] 文章未申请原创 侵权或转载 联系微信cloudpoint9527。

摘要


本文介绍并评估了一种跨模态全局视觉定位系统,该系统可以在通过视觉和激光雷达传感构建的彩色3D地图表示中定位相机图像。我们提出了三种创建彩色3D地图的不同先进方法,即点云、网格和神经辐射场(NeRF)。我们的系统从这些表示中构建合成的RGB和深度图像对的数据库,该数据库作为全局定位的基础。我们提出了一种自动化方法,通过合成场景的新图像并利用不同表示中编码的3D结构来构建这个数据库。接着,我们提出了一种依赖于合成图像数据库的全局定位系统,该系统能够准确估计单目查询图像的6自由度(DoF)相机位姿。我们的定位方法依赖于不同的基于学习的全局描述符和特征检测器,尽管(真实)查询相机图像与合成数据库图像之间存在域差距,这些描述符和检测器仍能实现稳健的图像检索和匹配。我们通过大量的实际实验来评估系统在室内和室外环境中的表现,以评估每种地图表示的有效性、基于学习的特征和描述符的优势,以及与传统的基于运动结构(SfM)的定位方法相比的优点。我们的结果表明,所有三种地图表示在各种环境中都能实现55%以上的一致定位成功率。NeRF合成的图像表现优异,查询图像的平均成功率达到了72%。此外,我们证明了我们的合成数据库即使在地图创建数据和定位序列在相反方向上采集时,也能实现全局定位。我们的系统在配备GPU的移动笔记本电脑上实时运行,处理速率为1 Hz。

主要贡献


该方法为研究的三种候选地图表示创建了统一的地图数据库,视觉数据库由已知姿态的RGB和深度图像组成,并自动从彩色点云、网格或NeRF地图中合成。这些地图是使用从工业级地面激光扫描仪(TLS)或手持式测绘设备获取的视觉和激光雷达数据构建的。通过这种统一的表示,我们实现了具有可扩展性的全局定位,即使在场景变化和光照变化的情况下,也能利用最先进的视觉定位组件实现鲁棒性,系统操作的概述如图1所示。

图 1:将单个查询图像定位到由布伦海姆宫的点云、网格或 NeRF 表示合成的图像数据库中。在数据库中找到匹配的图像后,使用 SuperPoint 提取特征,并与 SuperGlue 进行匹配。

主要贡献包括:

  • 一种通用且统一的方法,通过由点云、网格或NeRF 3D彩色地图生成的合成RGB和深度图像数据库,对单个相机进行全局视觉定位。

  • 一种自动确定彩色3D地图中应该生成合成图像的姿态的策略。

  • 对提出的方法在室内和室外环境中的有效性和鲁棒性进行了广泛评估。

  • 对上述多模态定位系统与两种(纯)视觉定位系统之间的性能比较。简化系统在移动笔记本电脑上以1Hz的速度运行,因此适合实时操作。

内容概述


本文提出了一种将基于学习的方法与经典的视觉几何学相结合的方式,以实现在彩色激光雷达3D地图中的图像定位。系统设计如图2所示,图中显示了系统使用彩色3D地图(基于点云、网格或NeRF)生成合成的RGB和深度图像(步骤1)。使用这些图像构建一个全局描述符的数据库。在实时操作中(步骤2),系统接收一个查询图像并生成一个描述符。然后它在数据库中检索最接近的匹配项。从图像中提取学习到的局部特征并进行匹配,在检索到相应的深度图像后,可以基于匹配的图像特征及其在世界坐标系中的位置估计相机位姿。

图 2:系统概述,展示了相机在3D先验地图中的定位。蓝色框表示数据,白色框表示算法。

渲染视觉数据库时的位姿选择

一个关键步骤是如何在3D先验地图中决定从哪些位姿生成人工图像,目标是在保持地图数据库小的同时,渲染合理数量的图像以覆盖点云或网格。这一步骤非常重要,因为它可以直接影响数据库的大小和可用的相机视图,从而影响整体定位性能。如果虚拟相机被放置在不合适的位置——地图不完整或相机在定位时不可见,最佳的地点识别可能会受到影响。我们的方法包括自动识别地图内的自由空间,并沿着“自由路径走廊”战略性地选择渲染位姿。

为了解决这个问题,我们提出了一种简单但有效的方法,利用几何和图像处理技术来选择渲染位姿。对于多层建筑扫描,我们使用来自TLS扫描或SLAM点云地图的数据来计算法线。然后通过基于法线方向的过滤提取平面。通过统计法线朝上的点数并根据点的高度构建直方图,可以将每个楼层的平面隔离出来。随后,我们将每个楼层平面点云转换为俯视图,并对该图像应用一系列图像处理技术,以确定合理的步行区域,如图3所示。通过扩张和侵蚀操作来关闭小孔,接着应用归一化距离变换来识别所有自由空间的中心。使用阈值处理和高斯模糊生成主“自由路径走廊”的平滑版本。最后,应用细化步骤来生成代表所有可行走空间路径的骨架,然后对其进行采样以获取一组渲染位置。我们为沿路径的每个位置生成四对RGB/深度相机图像——分别为前、后、两个侧向视图。该方法适用于所有3D先验地图表示:点云、网格和NeRF表示。

图 3:在 3D 地图中建立一组合理渲染位置的步骤,我们称之为“自由路径走廊”。地图被分成多个楼层,并渲染包含所有朝上的点(使用其法线选择)的自上而下的图像。橙色点表示最终选定的位置。

生成合成图像

点云 — 使用地面激光雷达扫描(Terrestrial Lidar Scanning)

点云是3D坐标系统中的点样本,用于表示物体或场景的外部表面。这些点云通常由激光雷达扫描技术生成。在本研究中,我们使用地面激光雷达(TLS)生成的点云,因为它们具有毫米级的测量精度,适用于生成准确的地面真实地图。通过使用Open3D的渲染功能,我们能够从点云生成RGB和深度图像。为了优化渲染效果,我们在场景周围放置了多个光源,以增强光泽和反射效果。相机根据预定义的渲染位姿在点云中进行放置,并将3D点投影到相机视野中。为了避免在靠近墙壁时出现的透视效果,我们采用了反向深度策略,调整了渲染点的像素大小。

图 4:左侧和右侧的图像展示了使用基于与虚拟相机的距离可调整的点大小时点云渲染图像的前后情况

纹理网格 — 使用ImMesh

网格是一种常用的3D场景和物体表示方法,通过点顶点和连接这些点的边组成多边形面。ImMesh是一个先进的网格重建框架,可以将激光雷达扫描数据重建为三角网格。该框架首先估计激光雷达的位姿,并将每次扫描注册到全局地图上,然后通过增量体素网格算法进行网格重建。ImMesh构建的网格初始不包含颜色信息,因此我们使用视觉相机捕获的彩色图像对三角面进行纹理处理。为确保纹理的平滑和自然,我们将来自多个相机的图像融合,生成最终的纹理网格图像。

神经辐射场 — 使用SiLVR

神经辐射场(NeRF)是一种新兴的3D表示技术,通过使用多层感知机(MLP)建模辐射场,能够生成逼真的新视角图像。NeRF的训练基于调整渲染图像与输入图像的匹配,利用体积积分计算每条射线的预期颜色。尽管早期的NeRF模型训练计算量大,但通过显式表示如体素和3D高斯,训练和渲染速度有所提高。我们使用SiLVR,这是一种结合了视觉和激光雷达的NeRF映射方法,加入了深度和表面法线的正则化来提高重建精度。SiLVR通过将大场景划分为重叠的子地图,解决了大规模场景训练模型尺寸小和计算硬件限制的问题,实现了更高效的训练和渲染。

图 5:合并不同点尺寸的点云渲染图像以获得最终的 RGB 和深度图像的图示。

检索与匹配

在完成合成图像生成和相应深度图像创建后,图像数据库会输入到NetVLAD网络中。NetVLAD网络由卷积神经网络和一个特殊的VLAD层构成,其中VLAD层的核心灵感来自图像表示技术——局部聚合描述符向量(VLAD)。该网络能够生成描述符,精确识别查询图像的位置,即使在较大的干扰(例如,行人、车辆)、视角变化和明显的光照差异(包括昼夜条件)下也能表现良好。所有渲染的RGB图像的描述符会被存储在KDTree数据结构中,以便将来进行索引。当接收到实时相机图像时,我们的系统首先进行畸变校正处理,然后将校正后的图像输入到NetVLAD网络中。这一步产生了实时相机图像的描述符。接着KDTree会根据描述符值检索出与之最匹配的虚拟图像。对于上述步骤中匹配的相机和虚拟图像,使用SuperPoint算法提取局部特征。由于合成图像与真实图像之间存在较大的领域差距,我们观察到传统的、非学习型的特征检测器(如SIFT)难以检测到共同特征。SuperPoint算法首先在合成数据集上进行预训练,以提升领域适应性能。随后SuperPoint通过多尺度、多变换的数据增强进行进一步训练,实现自监督的兴趣点检测。这样,SuperPoint能够在不同视角下重复检测特征。这些局部特征随后通过SuperGlue算法进行匹配。SuperGlue网络是一个图神经网络,配备了一个优化匹配层,专门用于对两组稀疏图像特征进行匹配。最后,利用匹配到的局部特征和深度图像,Perspective-n-Point(PnP)算法被用来估计实时相机图像与渲染参考图像之间的相对位姿。根据参考图像的已知位姿,我们可以在彩色3D地图中三角测量实时查询图像。匹配过程的详细伪算法描述见算法1;注意,我们使用SuperGlue网络的置信度评分来过滤掉不良匹配。

实验与结果


数据集

  • ORI(室内):在牛津机器人研究所收集,包括办公室、楼梯和厨房等环境。特点是相机旋转速度快,图像内容变化迅速。

  • Math(室外,中等规模):在牛津数学研究所外部收集,光照变化显著,有直接阳光和阴影,包含灌木、树木和草坪。

  • Blenheim(室外,大规模):在牛津郡布伦海姆宫收集,捕捉宫殿庭院和主大厅的行走序列,图像含有大量地面和天空,几何对称性复杂。

  • 测试轨迹:ORI总长度125米,Math 451米,Blenheim 386米。

硬件 - Frontier

  • 使用Frontier设备进行数据收集,包括3台1440×1080像素的正交摄像头和一个Hesai QT激光雷达(64束激光,104.2°垂直视场)。

  • 激光雷达与相机的校准精确到亚毫米和平面度,以确保数据叠加准确。

真实地图和轨迹

  • 使用Leica RTC360(专业级)和Leica BLK360(入门级)地面激光扫描仪生成点云地图。

  • TLS扫描在室内为3米,室外为15至20米;点云在ORI处理为5毫米分辨率,Math和Blenheim为1厘米分辨率。

实验结果

渲染图像比较

  • 使用TLS点云、NeRF和网格重建管道生成的渲染图像都相当逼真,但各有局限。

  • 室内数据集ORI:TLS扫描出现点云稀疏和遮挡,网格重建对小物体和复杂细节表现不佳。NeRF在细节重建上优于网格,但在捕捉复杂地面图案上表现不佳。

  • 室外数据集:NeRF优于网格重建,能够更好地捕捉细节,但网格重建和点云技术在处理地面图案上表现更好。

全系统评估

  • 三种渲染管道的定位性能与两种视觉定位系统(HLoc和COLMAP)进行了比较。

  • 性能指标:检索率(正确检索图像占比)和定位率(正确定位图像占比)。

  • 结果:NeRF方法的定位率(72%)优于点云(56%)和网格(58%)。NeRF在复杂环境中的表现更好,但需要更多训练时间。

  • HLoc和COLMAP:HLoc在室内数据中表现较好,但在大型户外环境(Math和Blenheim)中挑战较大。HLoc对NeRF图像生成密度敏感,因此表现不如点云和网格地图。

额外比较

  • 定位性能:NeRF在Math和Blenheim数据集中展现了优越的定位能力,但实时性较差。

  • 实时性能:点云和网格方法提供了更好的实时性能,适合快速定位的实际应用。

总结


本研究介绍了一个跨模态定位系统,专为在彩色3D地图中定位单张相机图像而设计,展示了一个使用三种不同表示(点云、网格和NeRF)构建3D先验地图的流程,每种表示都可以用来合成RGB和深度图像,利用彩色3D地图作为输入,视觉定位方案通过检索和匹配过程来估计查询图像的相机姿态,利用基于学习的描述符和特征检测器。对这些表示的定位性能进行了全面分析,并讨论了它们各自的优点。此外还提供了与两种纯视觉定位系统的基准比较,将结果置于视觉定位领域的更广泛背景中。值得注意的是,点云和网格表示的查询图像定位准确率为55%,而NeRF表示的定位率为72%,超过了前两者。

资源







请到「今天看啥」查看全文