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

【泡泡图灵智库】神经隐式重建的稠密RGB SLAM

泡泡机器人SLAM  · 公众号  · 机器人  · 2023-04-26 07:45

正文

泡泡图灵智库,带你精读机器人顶级会议文章

标题:DENSE RGB SLAM WITH NEURAL IMPLICIT MAPS

作者:Heng Li, Xiaodong Gu,Weihao Yuan, Luwei Yang, Zilong Dong, Ping Tan

机构:HKUST,alibaba,SFU

来源:ICLR 2023

编译:zhuhu

审核:zh

这是泡泡图灵智库推送的第829篇文章,欢迎个人转发朋友圈;其他机构或自媒体如需转载,请后台留言申请授权

摘要

大家好,今天为大家带来的文章是 DENSE RGB SLAM WITH NEURAL IMPLICIT MAPS,在同步定位与映射(SLAM)中,使用神经隐函数来表示地图是一种新的趋势。一些开创性的工作在RGB-D SLAM上取得了令人鼓舞的结果。本文提出了一种神经隐式重建表示的稠密RGB SLAM方法。为了在没有深度输入的情况下达到这一具有挑战性的目标,我们引入了分层特征体来促进隐式重建解码。该设计有效地融合了不同尺度上的形状线索,便于地图重建。该方法通过匹配渲染的视频帧和输入的视频帧,同时解决摄像机运动和神经隐式映射问题。为了便于优化,我们在多视点立体的精神下进一步提出了光度学翘曲损失,以更好地约束摄像机的姿态和场景几何。我们在常用基准上对我们的方法进行了评估,并将其与先进的RGB和RGB-D SLAM系统进行了比较。我们的方法取得了比以前的方法更好的结果,甚至超过了最近的一些RGB-D SLAM方法。我们的源代码:https://github.com/HKUST-3DV/DIM-SLAM

主要工作与贡献

    1)我们设计了第一个神经隐式重建表示的密集RGB SLAM,

    2)为了更好地评估占有率,我们引入了分层特征体积,并引入了多尺度基于面片的翘曲损失来提高仅使用RGB输入的系统性能,

    3)我们在基准数据集上取得了很好的结果,甚至超过了最近的一些RGB-D方法。

系统介绍

我们的框架的总体流程如图1所示。给定一段RGB视频作为输入,我们的方法旨在同时恢复3D场景地图和摄像机运动。我们用一个具有可学习的多分辨率特征体积的神经隐函数来表示场景地图。通过沿着视线对体网格中的特征进行采样,并使用MLP解码器对采样的特征进行查询,我们可以在给定估计的摄像机参数的情况下渲染每个像素的深度和颜色。由于这种绘制过程是可微的,我们可以通过最小化定义在光度学渲染损失和翘曲损失上的目标函数来同时优化神经隐式映射和相机姿势。

1. 隐式重建表达

多分辨率体素编码:直接使用MLP表示场景地图(将3D点映射到其占有率和颜色)面临着遗忘问题,因为MLP针对任何帧进行了全局更新。为了解决这一问题,我们为MLP配备了多分辨率体积{Vl},这些体素在每个帧的可见区域上局部更新。这种分层结构比单一尺度的体积效果更好,因为在高分辨率体积上基于梯度的相机优化如果没有良好的初始化,容易产生次优解。相反,在从粗到精的结构中,低分辨率的体积可以在早期配准时增强3D空间的光滑性,而高分辨率的体积可以编码形状细节。


颜色和深度预测:MLP解码器Φ由具有32个特征通道的三个隐藏层,包含输出颜色和密度的两个heads组成,

然而,从计算的密度中提取场景几何体需要仔细调整密度阈值,并且由于密度场中存在的模糊性而导致伪影。为了解决这个问题,Oechsle等人在OP的输出上添加Sigmoid函数以将其正则化为[0,1],在这种情况下,可以使用固定水平集0.5来提取网格。此外,点pi的射线终止概率现在被计算为,

在体渲染过程中,采用了类似于Neus的分层采样策略。我们首先对一条视线上的32个点进行均匀采样,然后基于先前估计的权重对另外16个点进行4次重要性采样。总共采样了N=96个点。对于每个点,我们计算其深度̃和颜色̃为,

请注意,由于渲染方程是可微的,因此相机姿态、多分辨率体积编码和MLP解码器的参数可以从梯度反向传播中一起优化。

2. 联合优化

隐式场景表示和相机姿势在具有对应姿势的一组帧W中被联合优化。位姿如下,其中R和t分别表示旋转和平移。


光度渲染误差:为了优化场景贴图和相机姿势,我们为一组随机采样的像素计算渲染颜色和观察颜色之间的L1损失

这里,|M|表示采样的像素数。仅此渲染损失不足以确定场景几何体,并可能导致不明确的解决方案,其中渲染的图像与观测结果很好地匹配,但深度估计完全错误。为了克服这个问题,我们引入了光度学翘曲损失来进一步约束优化问题。


Photometric Warping Loss:这里在MVS中,其针对单一像素进行重投影有:

其中homo表示齐次坐标,则Warping Loss为

但是,最小化单个像素上的扭曲损失不会对依赖于视图的强度变化(例如镜面反射)进行建模,并且可能会在场景贴图中创建瑕疵。因此,我们定义了图像块而不是单个像素的翘曲损失来解决这个问题。而对于每个图像块,则认为其深度值一致。之后与单一像素处理方式类似,有Warping Loss为:


正则化损失函数:为了处理无纹理区域,我们强制使用边缘保持正则化项来平滑渲染的深度:

则整体的loss为:

实验结果


如果你对本文感兴趣,想要下载完整文章进行阅读,可以关注【泡泡机器人SLAM】公众号

点击阅读原文, 即可获取本文下载链接。

欢迎来到泡泡论坛,这里有大牛为你解答关于SLAM的任何疑惑。

有想问的问题,或者想刷帖回答问题,泡泡论坛欢迎你!

泡泡网站:www.paopaorobot.org

泡泡论坛:http://paopaorobot.org/bbs/


泡泡机器人SLAM的原创内容均由泡泡机器人的成员花费大量心血制作而成,希望大家珍惜我们的劳动成果,转载请务必注明出自【泡泡机器人SLAM】微信公众号,否则侵权必究!同时,我们也欢迎各位转载到自己的朋友圈,让更多的人能进入到SLAM这个领域中,让我们共同为推进中国的SLAM事业而努力!

商业合作及转载请联系[email protected]