麻省理工最新!NeRF-SLAM: 具有神经辐射场的实时密集单目SLAM

作者 | 汽车人  编辑 | 汽车人

原文链接:https://zhuanlan.zhihu.com/p/583419503

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【SLAM】技术交流群

后台回复【SLAM综述】获取视觉SLAM、激光SLAM、RGBD-SLAM等多篇综述!

03cabfe613f58f6ae06f7830ec7369d5.png

1论文思路:

本文提出了一种新颖的几何和光度3D映射pipeline,用于从单目图像中准确,实时地重建场景。为此,本文利用了密集的单目SLAM和实时分层体积神经辐射场的最新进展。本文的见解是,密集的单目SLAM通过提供准确的姿势估计和具有相关不确定性的深度图,提供了正确的信息来实时适应场景的神经辐射场。通过本文提出的基于不确定性的深度损耗,本文不仅实现了良好的光度精度,而且实现了出色的几何精度。实际上,本文提出的pipeline实现了比竞争方法更好的几何和光度精度 (高达179% 更好的PSNR和86% 更好的L1深度),同时实时工作并仅使用单目图像。

2主要贡献:

本文提出了第一个场景重建pipeline,该pipeline结合了密集的单目SLAM和分层体积神经辐射场的优势。本文的方法从图像流中构建准确的辐射场,而不需要姿势或深度作为输入,并且可以实时运行。本文在单目方法的Replica数据集上实现了最先进的性能。

3网络设计:

本文方法的主要思想是使用密集的单目SLAM的输出来监督神经辐射场。密集单目SLAM可以估计密集深度图和相机姿势,同时还提供深度和姿势的不确定性估计。有了这些信息,本文可以训练一个辐射场,其密集深度损失由深度的边际协方差加权。通过使用密集SLAM和radiance field训练的实时实现,并并行运行它们,本文可以实现实时性能。图2显示了本文pipeline中的信息流。

a106e26ecb3b36e0a709ebf59b8b3d25.png

图2。本文pipeline的输入由顺序的单目图像 (这里表示为Img 1和Img 2) 组成。从右上角开始,本文的架构使用Instant-NGP [17] 适合NeRF,本文使用RGB图像I,深度D进行监督,其中深度由其边际协方差 Σ D加权。受Rosinol等人的启发。[23],本文从密集的单目SLAM中计算这些协方差。在本文的例子中,本文使用Droid-SLAM [31]。本文在Sec3.1 中提供了更多关于信息流的细节。在蓝色中,本文显示Droid-SLAM的 [31] 贡献和信息流,同样,在粉红色是Rosinol的贡献 [23],在红色中,本文的贡献。

cfc8efae4a89fb243e0f143b943267c9.png

图1。从左到右,输入RGB图像,估计的深度不确定性,反向投影的深度图到点云中,在通过其不确定性 (σ d ≤ 1.0) 对深度进行阈值化以进行可视化之后,以及从与输入图像相同的视点呈现的所得神经辐射场。本文的pipeline能够在仅给定RGB图像流的情况下实时重建神经辐射场。

本文的pipeline由一个跟踪和一个映射线程组成,既实时运行又并行运行。跟踪线程连续最小化关键帧活动窗口的BA重新投影误差。映射线程总是优化从跟踪线程接收的所有关键帧,并且没有活动帧的滑动窗口。

这些线程之间的唯一通信发生在跟踪pipeline生成新的关键帧时。在每个新的关键帧上,跟踪线程都会将当前关键帧的姿势及其各自的图像和估计的深度图以及深度图的边际协方差发送到映射线程。仅将跟踪线程的滑动优化窗口中当前可用的信息发送到映射线程。跟踪线程的活动滑动窗口最多由8个关键帧组成。一旦前一个关键帧和当前帧之间的平均光流高于阈值 (在本文的情况下为2.5像素),跟踪线程就会生成一个新的关键帧。最后,映射线程还负责渲染以实现重建的交互式可视化。

4实验结果:

b0ae79ae167328031467699457baba64.png

表1。Geometric (L1) and Photometric (PSNR) results for the Replica dataset. IMAP和NICE-SLAM首先使用来自Replica的Ground-Truth深度作为监督进行评估(前两行)。本文还评估NICE-SLAM时,不使用 ground-truth 深度作为监督进行比较。TSDF-Fusion, σ-Fusion,和本文的方法是用来自密集单目SLAM的姿态和深度来评估的,如SEC中所解释的。3.1. 最好的结果在粗体。

ad8228e2dc199cb345298647c4499e43.png

图3。使用不同的映射方法对Replica Office-0数据集进行定性分析。从上到下,原始点云从本文的跟踪模块,TSDF重建使用σ-Fusion,NICE-SLAM的结果,和本文的。

e7358731bd20680b69acb4abf332896b.png

图4。使用有无ground-truth深度的深度监督,以及初始化有ground-truth的姿态或噪声姿态时对性能的影响;与本文估计密集深度和姿态的方法相比。结果60s后收敛。

往期回顾

2022最新!视觉SLAM综述(多传感器/姿态估计/动态环境/视觉里程计)

af5bcb95335ce06e40304d41e4b3c24a.png

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;

c05b5396560c59525fa82f82715fc107.jpeg

添加汽车人助理微信邀请入群

备注:学校/公司+方向+昵称

自动驾驶之心【知识星球】

想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!

fef9c956edf3a67e6344129c04c2cb63.jpeg

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
nerf-simple是基于PyTorch框架实现的NERF神经辐射)模型的简单版本。NERF是一种用于生成高质量逼真图像的深度学习模型,它通过对景中各个点的辐射值进行建模,从而实现精确的三维重建和渲染。 在NERF模型中,神经辐射是核心概念之一。它是一个由多个隐藏层组成的神经网络,用于估计景中每个点的辐射值。这里的辐射值通常表示像素的RGB颜色值或光强度。 nerf-simple通过使用PyTorch框架的张量操作和自动微分功能来实现NERF模型。首先,我们需要定义一个神经网络模型,包括隐藏层的数量和大小。这个模型可以基于现有的PyTorch模块,如nn.Linear和nn.ReLU,以便构建非线性变换和特征提取。 然后,我们需要定义训练过程,实现数据加载、优化器设置和损失函数计算等步骤。训练数据通常包括一系列景中的图像及其对应的相机和深度信息。 在模型训练完成后,我们可以使用训练好的神经网络来生成逼真的图像。通过对景中每个像素点的辐射值进行预测,我们可以还原出景的三维形状和纹理信息,并最终渲染出高质量的图像。 总结来说,nerf-simple是一个使用PyTorch实现的简单版本NERF模型,它通过神经辐射来估计景中每个像素点的辐射值,从而实现精确的三维重建和渲染。通过定义神经网络模型、训练过程和图像生成过程,我们可以利用这个模型生成逼真的图像。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值