RAL'23 | H2-Mapping:首个边缘设备上实现NeRF实时高质量建图

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

戳我-> 领取自动驾驶近15个方向学习路线

欢迎添加小助理微信AIDriver004,加入我们的技术交流群

>>点击进入→自动驾驶之心BEV感知技术交流群

论文作者 | Chenxing Jiang

编辑 | 3D视觉之心

不降低算力,再酷炫也没用

现有稠密建图主要分为显示隐式前者得益于物理意义,易于优化而快速处理速度快,但需要大量内存处理高分辨率的建图,且没办法做新视角生成;后者使用更少的内存生成高保真度的重建,并通过不断查询场景属性从新颖视角生成高质量的图像,但高维特征和神经网络缺乏物理意义,导致训练时间长。

一个建图系统必须满足四个关键要求:

  1. 适应增长的场景,允许机器人在没有先验知识的情况下动态扩展地图

  2. 高水平的细节

  3. 实时能力和高内存效率

  4. 新颖的视角合成能力,允许从稀疏输入视角之外的视角渲染高质量图像。

111801246a282905c94303fd2542eb90.png

H2-Mapping第一个在边缘设备上实时运行的NeRF-based建图方法。主要的创新点是

  • 初始化技术的分层混合表示:使用显式的八叉树SDF先验来描述粗糙的场景几何;使用隐式多分辨率哈希编码来以内存高效的方式编码高分辨率场景属性,来表示几何细节和纹理。将体素顶点投影到深度图像上,并计算相关的SDF值,来快速初始化八叉树SDF先验。

  • 覆盖最大化关键帧选择策略:为了避免跨所有关键帧的冗余样本计算,确保边缘区域的质量,从而无需增加训练样本的数量,解决在线建图任务中的关键遗忘问题。

(大拇指往上滑,点击最上方的卡片关注我,整个操作只会花你 1.328 秒,然后带走未来、所有、免费的干货,万一有内容对您有帮助呢~)

H2-Mapping 细节

11678c1b61e59c7de73a84e5a6238243.png
系统流程图

分层混合表示

1)扩展八叉树SDF先验

八叉树SDF先验:当接收到新帧时,根据给定的姿态和深度图像分配新的体素,并增量地维护一个稀疏体素八叉树,覆盖所有可见区域。只将包含超过十个点的体素添加到稀疏体素八叉树中,以减少测量噪声的影响。点的数量是通过实验确定的。对于每个体素,我们在每个顶点存储可优化的SDF,以表示场景的粗略几何。叶节点中任何采样点的粗略SDF  是通过其周围八个顶点的三线性插值函数  获得的:

b4482e3fc04257dc76c19d2b05edc9a5.png 3406fa16d9dfca35c9cf522ded894fdc.png

为了加速收敛速度,在分配新体素时为每个  提供一个初始的 SDF。如图3所示,将每个体素的每个顶点投影到RGB-D相机帧中的相应像素上,以获得该位置的近似 SDF:

5e7d437c960225038839087f22e24b12.png

为了避免由于遮挡导致的不合理 SDF 先验,只向满足  的顶点提供先验。图3右图展示了仅使用 SDF 先验而未进行任何优化的重建结果。这些粗略的几何先验通过在早期阶段提供准确的几何形状,加速了几何优化并增强了场景的外观。

扩展体素分配:如果表面接近体素的边界,靠近表面的顶点位置的准确SDF将接近0。所以存储在该顶点的SDF先验可能会被优化为错误的符号,从而导致表面的丢失。

519d79b7f609ebe9ec13e413b0d15c45.png

为了确保表面能够被创建,如果从深度图像反投影到体素中的所有点都位于边缘,将扩展一个新体素。

2d79034c6bc371916bf153aa1f2e33c3.png

如图4,上部顶点的准确SDF先验应该是正值,但接近0。优化中的任何微小扰动都可能导致这些值变为负值,导致没有表面被重建(图4b)。然而,如果在其顶部分配一个额外的体素,无论靠近表面的顶点被优化为何种符号,都会创建一个表面(图4cd)。

2)多分辨率哈希编码

采用多分辨率哈希编码方法,只利用多分辨率哈希编码来处理比场景完整SDF更容易学习的残差SDF。多分辨率哈希编码的工作原理是将特定采样点周围的体素排列在  个分辨率级别。在每个级别,通过查找哈希表将  维特征分配给体素的角点。为了获得采样点的特征,执行三线性插值,并将每个级别的特征连接起来。使用两个多分辨率哈希编码和浅层MLP单独表示场景的颜色和残差SDF,以紧凑的方式表示场景:

f2cd478a59d8d7ca7ac7e59686d8faa6.png

最大覆盖关键帧选择

对于新的输入RGB-D帧,如果 (∩)/ (∪) 的比率小于一个阈值,将其插入为一个新的关键帧,其中  是当前观测到的体素数量, 是在上一个插入的关键帧中观测到的体素数量。关键帧插入策略确保关键帧集合中的帧具有相对较少的重叠。

387287f0b048cc616ffda209c7eeeda2.png

最大覆盖关键帧选择策略在初始时间步 ,所有体素都被标记为未观测。

  • 首先从整个关键帧集合中选择覆盖体素最多的  个关键帧。

  • 将这些覆盖的体素标记为已观测,然后联合优化这些选定的关键帧和当前帧。

  • 在下一个时间步 ,使用相同的最大覆盖策略,但仅针对仍标记为未观测的体素。如果所有体素都被标记为已观测,将之前标记为已观测的体素重置为未观测

  • 并重复上述过程。通过迭代使用这种策略,可以覆盖所有场景区域。如图5(a)所示,大多数体素在  时被覆盖。在图5(b)和(c)中,策略继续覆盖场景的其他剩余部分,确保边缘区域的重建质量。

基于SDF的体积渲染

只对与任意体素相交的射线进行采样,然后按如下方式获取每条射线的渲染颜色  和深度 :

0bb1825f25e180ffe67731c49807665d.png

优化过程

损失函数

我们对一批射线  使用 loss 有RGB、深度、free space、SDF

0c158938e5d937a0e69d87574cd25ceb.png

最终的 loss function

ca8541ae96511256c76635d9b7c687ae.png
自适应提前结束

在训练过程中,当前帧和选定的关键帧将被多次用于优化。如图10所示,不同场景中达到颜色优化收敛的平均迭代时间各不相同。因此,为了自适应地选择合适的迭代时间,以在各种场景中平衡时间消耗和映射精度,如果总损失超过当前训练轮次平均总损失的两倍,将采用提前停止策略。这表明进一步的优化只会带来微小的改进。

效果欣赏

重建和渲染性能的定量比较

28ffb1ce538c5e474b0c30400ae9bf08.png f625a7285b303e8a83cfaab81e79b00d.png
几何细节更好,特别是对于椅子腿和花瓶等较小的物体
98a52515c02f50656f8a7ee0b2868aed.png
从训练视图和新颖视图生成更真实的细节渲染。

纹理网格定性分析

919154dc07b029ee4ac3562b1236708b.png
更清晰的对象轮廓、更少的伪影、更高保真度的纹理,如地毯上的图案

运行时间表现

ff88baf9d0373cddc787345703cf7255.png

消融实验

e67c06dbe81345287c7d0ad1a7f98c32.png
八叉树 SDF 先验
904b883dc32f4b6d1e8377f06a2a5764.png cfd1e0a845e36f197d7106d1006f0cb9.png
扩展体素分配
04d077e64f099eec0604b4881410dd1d.png
覆盖范围最大化关键帧选择

总而言之

H2-Mapping是一种基于NeRF的稠密建图系统,利用分层混合表示,可以部署在边缘计算机上,实现实时且高质量的建图效果。主要特点为:

  • 快速初始化和收敛:通过粗略的几何结构使用八叉树SDF先验以显式方式表示

  • 高分辨率的几何细节和纹理:用多分辨率哈希编码的方式隐式编码,使内存利用更高效

  • 提高边缘区域的重建质量:提出一种覆盖率最大化的关键帧选择策略

缺陷:无法处理动态物体和长期姿态漂移

参考

[1] H2-Mapping: Real-time Dense Mapping Using Hierarchical Hybrid Representation-

投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!

① 全网独家视频课程

BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署大模型与自动驾驶Nerf语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

4937241ed8d2c9dc396df7743c186d1d.png 网页端官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

国内最大最专业,近3000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

b5e46531ec3480a8bc11dab9e26a5654.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

894256eccfd41876f9940c5f22703400.jpeg

④【自动驾驶之心】全平台矩阵

92737e2a2ff39cc499cb67165eb278e1.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值