专栏名称: 泡泡机器人SLAM
SLAM的最新资讯,干货内容。
目录
相关文章推荐
电池cbu  ·  LG 新能源:为 Bear ... ·  3 天前  
新机器视觉  ·  手搓ROS应用 | 全局规划与局部避障系统 ·  5 天前  
新机器视觉  ·  手搓ROS应用 | 全局规划与局部避障系统 ·  5 天前  
51好读  ›  专栏  ›  泡泡机器人SLAM

【泡泡图灵智库】NeRF-SLAM:实时密集单眼SLAM 辐射场的实时密集单眼SLAM

泡泡机器人SLAM  · 公众号  · 机器人  · 2023-01-17 07:30

正文


标题:Real-Time Dense Monocular SLAM with Neural Radiance Fields

作者:Rosinol, Antoni and Leonard, John J and Carlone, Luca

来源:arxiv

编译:张海晗

审核:zhh

代码:https://github.com/ToniRV/NeRF-SLAM


摘要

提出了一个新的几何和光度3D映射管道,用于从像中准确和实时地重建景。实现这一目,我利用了最近在密集SLAM实时经辐方面的展。我解是,密集的SLAM提供准确的姿和具有相关不确定性的深度为实时应场景的神经辐提供了正确的信息。通提出的基于不确定性的深度失,我仅实现了良好的光度量精度,还实现了巨大的几何精度。事上,我提出的管道比手的方法实现了更好的几何和光度量精度(PSNR提高了179%L1深度提高了86%),同时实时工作并只使用像。

主要

提出了第一个合密集SLAM和分经辐场优点的景重建管道。

的方法从像流中建立精确的,不需要姿或深度作为输入,并且可以实时运行。

Replica数据集上实现眼方法的最先性能。

主要方法

管道的入包括连续像(里表示Img 1Img 2)。从右上角开始,我的架构使用Instant-NGP合一个NeRF,我使用RGBI和深度D督,其中深度由其边缘协方差ΣD。受Rosinol等人[23]的启,我从密集的SLAM方差。在我的案例中,我使用Droid-SLAM。我在第3.1提供了关于信息流的更多细节示的是Droid-SLAM献和信息流,同,粉色是Rosinol献,而色是我献。

1. 追踪

密集SLAM方差 我使用Droid-SLAM的跟踪模,它每个关键帧提供密集的深度和姿。从一串的像开始,Droid-SLAM首先算出ij的密集光流pij,使用的架构与Raft相似。Raft的核心是一个卷GRU2中的ConvGRU),定一对帧的相关性和当前光流pij的猜算一个新的流pij,以及每个光流量的Σpij

有了些流量和重作为测DroidSLAM解决了一个密集束整(BA问题,其中三几何被参数化每个关键帧的一反深度构的参数化致了解决密集BA问题的极其有效的方式,通将方程组线性化熟悉的相机/深度箭状的状稀疏Hessian HR (c+p)×(c+p) ,其中cp是相机和点的度,可以被表述一个线性最小二乘法问题

中可以看出,了解决线性最小二乘问题,我HessianSchur数来小的相机矩HT,它不依于深度,度小得多,R c×c。通过对HT=LLTCholesky因子化,其中L是下三角Cholesky因子,然后通前置和后置求解姿T,从而解决相机姿的小问题。此外,定姿T和深度DDroid-SLAM议计诱导光流,并再次将其作初始猜送入ConvGRU,如2所示,其中ΠΠ-1,是投影和背投函数。2中的色箭头显示了跟踪循,并对应Droid-SLAM。然后,受Rosinol等人的启,我们进一步算密集深度Droid-SLAM的姿边际协方差(2的紫色箭)。此,我需要利用Hessian构,我们对状分割如下

其中HHessianb是残差,C状相机矩P对应于每个像素每个关键帧的反深度的角矩。我∆ξ表示SE(3)中相机姿言代数的delta更新,而∆d是每个像素反深度的delta更新。E是相机/深度线Hessianvw对应于姿和深度的残差。从Hessian分割中,我可以有效地算密集深度Σd和姿ΣT边际协方差

最后,于跟踪模块计算出的所有信息--姿、深度、它各自的边际协方差以及入的RGB--可以化我参数,并同完善相机的姿

2.

于每个关键帧的密集深度,有可能的神积进行深度督。不幸的是,由于其密度,深度是非常嘈的,因即使是无理的区域也被予了一个深度3示,密集的SLAM生的点云是特的,并且包含大的离群3像)。根据些深度图监督我射度致有偏的重建。

Rosinol等人的研究表明,深度估的不确定性是一个很好的信号,可以为经典的TSDF融合的深度。受果的启,我使用深度不确定性估来加深度失,我用它来督我的神1示了入的RGB像,其相的深度的不确定性,所生的点云(在用σd≤1.0其不确定性阈值化以实现化),以及我使用不确定性加的深度果。于不确定性感知的失,我将我的映射失表述


们对姿T和神参数Θ行最小化,定超参数λD来平衡深度和督(我λD1.0)。特是,我的深度失是由以下公式出的。

其中,D*是渲染的深度,DΣD是由跟踪模的密集深度和不确定性。我将深度D*渲染为预期的射线终止距离。每个像素的深度都是通沿着像素的射线的三位置来算的,在i处评估密度σi,并将得到的密度alpha合成,与准的体渲染

色的渲染失如下

3. 架构

的管道由一个跟踪线程和一个映射线成,两者都是实时和并行运行的。追踪线程不断地将关键帧窗口的BA重投影差降到最低。映射线化从跟踪线程收到的所有关键帧,并且没有一个有效的滑窗口。线程之的唯一通信生在追踪管道生成新关键帧时。在每一个新的关键帧上,跟踪线程将当前关键帧的姿与它各自的像和估的深度,以及深度的边际协方差,送到映射线程。只有跟踪线程的滑动优化窗口中当前可用的信息被送到映射线程。跟踪线程的有效滑窗口最多包括8个关键帧。只要前一个关键帧和当前的平均光流高于一个阈值(在我的例子中是2.5像素),跟踪线程就会生成一个新的关键帧。最后,映射线还负责渲染,以实现重建的交互式可化。

主要