NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读

这篇具有很好参考价值的文章主要介绍了NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

论文信息

标题:NICE-SLAM: Neural Implicit Scalable Encoding for SLAM
作者:Zihan Zhu, Songyou Peng,Viktor Larsson — Zhejiang University
来源:CVPR
代码:https://pengsongyou.github.io/nice-slam
时间:2022

Abstract

神经隐式(Neural implicit representations)表示最近在同步定位和地图绘制(SLAM)方面有一定的进展,但现有方法会产生过度平滑的场景重建,并且难以扩展到大型场景。这些限制主要是由于其简单的全连接网络架构,未在观测中纳入本地信息。

我们提出了 NICE-SLAM,这是一种密集 SLAM 系统,通过引入分层场景表示来合并多级局部信息。使用预先训练的几何先验优化这种表示,可以实现大型室内场景的详细重建。与最近的神经隐式 SLAM 系统相比,我们的方法更具可扩展性、高效性和鲁棒性。

Introduction

现有方法的缺陷
传统的密集视觉SLAM系统[29,41,58,59]满足实时要求并且可以在大规模场景中使用,但它们无法对未观察到的区域进行合理的几何估计。

基于学习的 SLAM 方法 [3,12,47,67] 获得了一定水平的预测能力,因为它们通常在特定于任务的数据集上进行训练。此外,基于学习的方法往往可以更好地处理噪声和异常值。然而,这些方法通常仅适用于具有多个对象的小场景。

iMAP [46] 的关键限制因素源于它使用单个多层感知器 (MLP) 来表示整个场景,而该场景只能通过每个新的、可能部分的 RGB-D 观察进行全局更新。相比之下,最近的工作[37, 48]表明,建立多级基于网格的特征有助于保留几何细节并能够重建复杂场景,但这些都是离线方法,没有实时能力。

主要贡献
• 我们推出NICE-SLAM,这是一种密集的RGB-D SLAM 系统,具有实时能力、可扩展性、预测性,并且对各种具有挑战性的场景具有鲁棒性。

• NICE-SLAM 的核心是分层的、基于网格的神经隐式编码。与全局神经场景编码相比,这种表示允许局部更新,这是大规模方法的先决条件。

• 我们对各种数据集进行了广泛的评估,这些数据集在绘图和跟踪方面表现出了竞争性的性能。

Related Work

Dense Visual SLAM

地图表示可分为两类:以地图为中心(view-centric)和以世界为中心(world-centric)

view-centric:
将 3D 几何体锚定到特定关键帧,通常在密集环境中表示为深度图。
这一类别的早期例子之一是 DTAM 。由于其简单性,DTAM 已广泛应用于许多最新的基于学习的 SLAM 系统中。例如,[54, 68] 回归深度和姿势更新。 DeepV2D 类似地在回归深度和姿态估计之间交替,但使用测试时优化。 BA-Net 和 DeepFactors 通过使用一组基础深度图简化了优化问题。还有一些方法,例如 CodeSLAM 、SceneCode 和 NodeSLAM ,它们优化了解码为关键帧或对象深度图的潜在表示。 DROID-SLAM 使用回归光流来定义几何残差以进行细化。 TANDEM 将多视图立体与 DSO 结合起来,形成实时密集 SLAM 系统。

word-centric:
将 3D 几何图形锚定在统一的世界坐标中,并且可以进一步分为面元 和体素网格,通常存储占用或 TSDF 值 。体素网格已广泛用于 RGB-D SLAM,例如 KinectFusion 。

Neral Implict Representations(神经隐式表示)

神经隐式表示在对象几何表示、场景完成、新颖视图合成 以及生成建模中有应用。最近的一些论文尝试使用 RGB-(D) 输入来预测场景级几何,但它们都假设给定的相机姿势。另一些工作解决了相机位姿优化问题,但它们需要相当长的优化过程,不适合实时应用

给定 RGB-D 序列,IMAP引入了实时密集 SLAM 系统,该系统使用单个多层感知器 (MLP) 来紧凑地表示整个场景。然而,由于单个 MLP 的模型容量有限,iMAP 无法生成详细的场景几何形状和准确的相机跟踪,特别是对于较大的场景

Method

NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读
图 2. 系统概览。我们的方法采用 RGB-D 图像流作为输入,并以分层特征网格的形式输出相机姿势以及学习到的场景表示。从右到左,我们的管道可以解释为生成模型,它根据给定的场景表示和相机姿势渲染深度和彩色图像。在测试时,我们通过可微渲染器(从左到右)反向传播图像和深度重建损失来解决逆问题,从而估计场景表示和相机姿势。两个实体在交替优化中进行估计: Mapping:反向传播仅更新分层场景表示;Tracking:反向传播仅更新相机姿态。为了更好的可读性,我们将用于几何编码的精细网格与同等大小的颜色网格结合在一起,并将它们显示为具有两个属性(红色和橙色)的一个网格。

Hierarchical Scene Representation(层次化场景表示)

几何形状被编码为三个特征网络 ϕ θ l \phi _\theta ^l ϕθl及其对应的MLP解码器 f l f^l fl,其中 l ∈ { 0 , 1 , 2 } l \in \{0,1,2\} l{0,1,2}分别指coarse、mid、fine-level

场景外观使用单特征网络 ψ ω \psi _\omega ψω和解码器 g ω g_\omega gω进行建模

θ \theta θ ω \omega ω表示几何和颜色的可优化参数,即网格中的特征和颜色解码器中的权重。

Mid-&Fine-level Geometric Representation

在重建过程中,我们以从粗到细的方法使用这两个网格,首先通过优化中级特征网格来重建几何形状,然后使用精细级进行细化。

在实现中,我们使用边长分别为 32cm 和 16cm 的voxel grid(体素网格),除了 TUM RGBD [45],我们使用 16cm 和 8cm。对于mid-level,使用相关的 MLP f 1 f^1 f1 将特征直接解码为占用值。对于任何点 p ∈ R 3 \textbf{p} \in \mathbb{R}^3 pR3,我们得到的占用率为
o p 1 = f 1 ( p , ϕ θ 1 ( p ) ) o_{\textbf{p}}^1=f^1(\textbf{p},\phi ^1_{\theta}(\textbf{p})) op1=f1(p,ϕθ1(p))
其中 o p 1 o_{\textbf{p}}^1 op1表示特征网格在 p 点进行三线性插值。

为了捕获场景几何中较小的高频细节,我们以残差方式添加精细级别的特征。特别地,精细级特征解码器将相应的中级特征和精细级特征两者作为输入,并输出相对于中级占用率的偏移,即:
Δ o p 1 = f 2 ( p , ϕ θ 1 ( p ) , ϕ θ 2 ( p ) ) \Delta o_{\textbf{p}}^1=f^2(\textbf{p},\phi ^1_{\theta}(\textbf{p}),\phi ^2_{\theta}(\textbf{p})) Δop1=f2(p,ϕθ1(p),ϕθ2(p))
最终一个点的占用率为: o p = o p 1 + Δ o p 1 o_{\textbf{p}}=o_{\textbf{p}}^1+\Delta o_{\textbf{p}}^1 op=op1+Δop1

我们固定了预训练解码器 f 1 f^1 f1 f 2 f^2 f2 ,并且在整个优化过程中仅优化特征网格 ϕ θ 1 \phi ^1_{\theta} ϕθ1 ϕ θ 2 \phi ^2_{\theta} ϕθ2 ,这有助于稳定优化并学习一致的几何形状。

Coarse-level Geometric Representation

粗级特征网格旨在捕获场景的高级几何形状(例如墙壁、地板等),并独立于中级和精细级进行优化。

粗网格的目标是能够预测观察到的几何形状(在中/精细级别中编码)之外的近似占用值,即使每个粗体素仅被部分观察到。为此,我们在实现中使用了非常低的分辨率,边长为 2m。与中级网格类似,我们通过对特征进行插值并通过 MLP f 0 f^0 f0 直接解码为占用值,即:
o p 0 = f 0 ( p , ϕ θ 0 ( p ) ) o_{\textbf{p}}^0=f^0(\textbf{p},\phi ^0_{\theta}(\textbf{p})) op0=f0(p,ϕθ0(p))

Pre-training Feature Decoders

在我们的框架中,我们使用三种不同的固定 MLP 将网格特征解码为占用值。粗级和中级解码器作为 ConvONet [37] 的一部分进行预训练,该网络由 CNN 编码器和 MLP 解码器组成。我们使用预测值和真实值之间的二进制交叉熵损失来训练编码器/解码器。

训练后,我们仅使用解码器 MLP ,因为我们将直接优化特征以适应重建管道中的观察结果。

使用相同的策略来预训练精细级解码器,只是我们在输入到解码器之前简单地将中级特征 ϕ θ 1 ( p ) \phi ^1_{\theta}(\textbf{p}) ϕθ1(p)与精细级特征 ϕ θ 2 ( p ) \phi ^2_{\theta}(\textbf{p}) ϕθ2(p)连接起来。

Color Representation

为了对场景中的颜色进行编码,我们应用另一个特征网格 ψ ω \psi _\omega ψω 和解码器 g ω g _\omega gω c p = g ω ( p , ψ ω ( p ) ) c_p=g _\omega(\textbf{p},\psi_\omega(\textbf{p})) cp=gω(p,ψω(p)), 其中 ω 表示优化期间的可学习参数。

Network Design

对于所有 MLP 解码器,我们使用 32 个隐藏特征维度和 5 个全连接块。除了粗级几何表示之外,我们在作为 MLP 解码器的输入之前对 p 应用可学习的高斯位置编码 。

Depth and Color Rendering

给定相机内在参数和当前相机位姿,我们可以计算像素坐标的观察方向 r \textbf{r} r。我们首先沿着这条射线采样 N s t r a t N_{strat} Nstrat点进行分层采样,同时也在深度附近均匀采样 N i m p N_{imp} Nimp点。总共,我们对每条射线采样 N = N s t r a t + N i m p N = N_{strat} + N_{imp} N=Nstrat+Nimp 个点。

p i = o + d i r , i ∈ { 1 , . . . , N } \textbf{p}_i=\textbf{o}+d_i\textbf{r},i \in \{1,...,N\} pi=o+dir,i{1,...,N}表示给定相机原点 o \textbf{o} o 的射线 r \textbf{r} r 上的采样点, d i d_i di 对应于 p i \textbf{p}_i pi 沿该射线的深度值。

计算出每个点的粗级占用概率 o p i 0 o_{p_i}^0 opi0、精细级占用概率 o p i o_{p_i} opi和颜色值 c p i c_{p_i} cpi

将点 p i \textbf{p}_i pi 处的射线终止概率建模为粗略级别的 ω i c = o p i 0 ∏ j = 1 i − 1 ( 1 − o p j 0 ) \omega_i^c=o_{p_i}^0\prod_{j=1}^{i-1}(1-o_{p_j}^0) ωic=opi0j=1i1(1opj0) ,并且 ω i f = o p i ∏ j = 1 i − 1 ( 1 − o p j ) \omega_i^f=o_{p_i}\prod_{j=1}^{i-1}(1-o_{p_j}) ωif=opij=1i1(1opj)为精细水平。

最后,对于每条光线,粗略和精细级别的深度以及颜色可以渲染为:

NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

Mapping and Tracking

Mapping
为了优化 场景表示,我们从当前帧和选定的关键帧中均匀采样总共 M 个像素。接下来,我们以分阶段的方式进行优化,以最大限度地减少几何和光度损失。

几何损失只是粗略或精细级别的观测值和预测深度之间的 L1 损失:
NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

光度损失也是 M 个采样像素的渲染颜色值和观察到的颜色值之间的 L1 损失:
NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

  1. 第一阶段,我们使用等式(8)中的几何损失 L g f L^f_g Lgf仅优化中层特征网格 ϕ θ 1 \phi^1_θ ϕθ1
  2. 接下来,我们使用相同的精细级深度损失 L g f L^f_g Lgf 联合优化中级和精细级 ψ θ 1 ψ^1_θ ψθ1 ψ θ 2 ψ^2_θ ψθ2 特征。
  3. 最后,我们进行局部捆绑调整(BA)来联合优化各级特征网格、颜色解码器以及K个选定关键帧的相机外在参数{ R i , t i R_i,t_i Riti},其中 λ p λ_p λp是损失权重因子。
    NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

这种多阶段优化方案可以实现更好的收敛,因为更高分辨率的外观和精细级特征可以依赖于来自中级特征网格的已经细化的几何形状。

Camera Tracking
我们还运行并行相机跟踪来优化当前帧的相机姿势,即旋转和平移{R,t}。为此,我们对当前帧中的 M t M_t Mt 像素进行采样,并使用与等式(9)相同的光度损失,以及修改后的几何损失:
NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

相机跟踪最终被表述为以下最小化问题:

NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读
Robustness to Dynamic Objects
为了使优化在跟踪过程中对动态对象更加鲁棒,我们过滤了具有大深度/颜色重新渲染损失的像素。特别是,我们从优化中删除损失 Eq (12) 大于当前帧中所有像素的中值损失值 10 倍的任何像素。

图 6 显示了一个示例,其中动态对象被忽略,因为它不存在于渲染的 RGB 和深度图像中。
NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读,论文,Navigation,论文阅读

请注意,对于此任务,我们仅在映射过程中优化场景表示。在动态环境下联合优化相机参数和场景表示并非易事,我们认为这是一个有趣的未来方向。

Keyframe Selection

我们本着 iMAP [46] 的精神维护一个全局关键帧列表,我们根据信息增益逐步添加新的关键帧。然而,与 iMAP [46] 相比,我们在优化场景几何时仅包含与当前帧有视觉重叠的关键帧。

Experiments

我们考虑 5 个通用数据集:Replica [44]、ScanNet [13]、TUM RGB-D 数据集 [45]、Co-Fusion 数据集 [39],以及自捕获的具有多个房间的大型公寓。我们遵循与[53]中相同的 TUM RGB-D 预处理步骤。

** 这部分暂时先不关注

Conclusion

我们提出了 NICE-SLAM,这是一种密集视觉 SLAM 方法,它将神经隐式表示的优点与基于分层网格的场景表示的可扩展性结合起来。与具有单个大 MLP 的场景表示相比,我们的实验表明,我们的表示(微小的 MLP + 多分辨率特征网格)不仅保证了精细的映射和高跟踪精度,而且由于本地场景更新的好处。此外,我们的网络能够填充小孔并将场景几何形状外推到未观察到的区域,从而稳定相机跟踪。

Limitations
我们方法的预测能力仅限于粗略表示的规模。此外,我们的方法不执行闭环检测,这是一个有趣的未来方向。最后,尽管传统方法缺乏一些功能,但与基于学习的方法仍然存在需要弥补的性能差距文章来源地址https://www.toymoban.com/news/detail-615396.html

到了这里,关于NICE-SLAM: Neural Implicit Scalable Encoding for SLAM论文阅读的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • NeRF-SLAM: Real-Time Dense Monocular SLAM with Neural Radiance Fields 论文阅读

    题目 :NeRF-SLAM: Real-Time Dense Monocular SLAM with Neural Radiance Fields 作者 :Antoni Rosinol, John J. Leonard, Luca Carlone 代码 :https://github.com/ToniRV/NeRF-SLAM 来源 :arxiv 时间 :2022 我们提出了一种新颖的几何和光度 3D 映射流程,用于从单目图像进行准确、实时的场景重建。 为了实现这一目标

    2024年02月14日
    浏览(53)
  • 概述:隐式神经表示(Implicit Neural Representations,INRs)

    传统用于形状表示的隐式表示有:代数表示、函数表示、水平集表示等。 1.1.1 代数表示 如下图利用对基础图形的交并补,可以得到复杂的图形。一般logo的设计或者三维零部件建模都是利用对基础图形的布尔运算来得到目标形状。 1.1.2 函数表示 除了代数以外,还可以用一些

    2024年02月09日
    浏览(42)
  • 【论文笔记】NeuRAD: Neural Rendering for Autonomous Driving

    原文链接:https://arxiv.org/abs/2311.15260 神经辐射场(NeRF)应用在自动驾驶中,可以创建可编辑的场景数字克隆(可自由编辑视角和场景物体),以进行仿真。但目前的方法或者需要大量的训练时间,或者对传感器的建模过于简单(导致仿真和真实数据的间隙),或者性能较低。

    2024年02月02日
    浏览(41)
  • 【论文阅读】Scaling Laws for Neural Language Models

    本文简要介绍 Scaling law 的主要结论 原文地址:Scaling Laws for Neural Language Models 个人认为不需要特别关注公式内各种符号的具体数值,而更应该关注不同因素之间的关系,比例等 Performance depends strongly on scale, weakly on model shape scale: 参数量 N N N , 数据量 D D D , 计算量 C C C shape: 模

    2024年02月16日
    浏览(45)
  • 机器学习笔记:node2vec(论文笔记:node2vec: Scalable Feature Learning for Networks)

    2016 KDD 利用graph上的节点相似性,对这些节点进行embedding 同质性:节点和其周围节点的embedding比较相似 蓝色节点和其周围的节点 结构等价性 结构相近的点embedding相近 比如蓝色节点,都处于多个簇的连接处 随机游走是一种自监督学习的embedding方法,不需要利用节点标签也不

    2024年02月09日
    浏览(43)
  • 论文阅读《Nougat:Neural Optical Understanding for Academic Documents》

    科学知识主要存储在书籍和科学期刊中,通常以PDF的形式。然而PDF格式会导致语义信息的损失,特别是对于数学表达式。我们提出了Nougat,这是一种视觉transformer模型,它执行OCR任务,用于将科学文档处理成标记语言,并证明了我们的模型在新的科学文档数据集上的有效性。

    2024年02月09日
    浏览(48)
  • 论文笔记: NSG: Neural Scene Graphs for Dynamic Scenes

    对动态场景进行渲染,完成动态前景与背景分离、背景inpainting、动态前景编辑和新视角生成。 之前的方法如nerf只能够渲染静态场景(利用的是静态场景在多视角下的一致性),如将整张图像场景中的所有物体编码进单个神经网络中,缺乏表征动态物体和将这些物体分解为单

    2024年01月16日
    浏览(40)
  • 论文笔记:Adjusting for Autocorrelated Errors in Neural Networks for Time Series

    2021 NIPS 原来的时间序列预测任务是根据 预测 论文提出用一阶自回归误差 预测 一阶差分,类似于ResNet的残差思路? 记 为pred,最终的预测结果  

    2024年02月14日
    浏览(40)
  • 论文阅读《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》

    就上一篇博客如何写论文、读(分享汇报)论文,在《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》进行实践。 《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》是一篇由Mingxing Tan和Quoc V. Le等人于2019年提出的论文,主要关注卷积神经网络(CNN)的模型缩

    2024年02月03日
    浏览(44)
  • One-4-All: Neural Potential Fields for Embodied Navigation 论文阅读

    题目 :One-4-All: Neural Potential Fields for Embodied Navigation 作者 :Sacha Morin, Miguel Saavedra-Ruiz 来源 :arXiv 时间 :2023 现实世界的导航可能需要使用高维 RGB 图像进行长视野规划,这对基于端到端学习的方法提出了巨大的挑战。 目前的半参数方法通过将学习的模块与环境的拓扑记忆相

    2024年02月14日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包