0. 论文信息
标题:MPVO: Motion-Prior based Visual Odometry for PointGoal Navigation
作者:Sayan Paul, Ruddra dev Roychoudhury, Brojeshwar Bhowmick
机构:Visual Computing and Embodied AI Lab, TCS Research
原文链接:https://arxiv.org/abs/2411.04796
1. 导读
视觉里程计(VO)对于在GPS和指南针传感器不可靠和不准确的室内环境中实现具体化智能体的精确点目标导航是必不可少的。然而,传统的VO方法在宽基线场景中面临挑战,在这种场景中,推理过程中的快速机器人运动和低每秒帧数(FPS)阻碍了它们的性能,导致点目标导航中的漂移和灾难性故障。最近的深度学习VO方法表现出稳健的性能,但是在训练期间遭受样本低效;因此,它们需要庞大的数据集和计算资源。因此,我们提出了一个健壮的和样本有效的VO流水线,它基于代理在环境中导航时可用的运动先验。它包括一个无需训练的基于动作先验的几何VO模块,该模块估计一个粗略的相对姿态,该姿态被深度学习的VO模型进一步作为运动先验使用,最终产生一个精确的相对姿态供导航策略使用。与最先进的VO方法相比,这种策略帮助我们的管道在训练期间实现高达2倍的采样效率,并在点目标导航任务中表现出卓越的准确性和鲁棒性。在AI-Habitat模拟器中使用Gibson数据集的真实室内环境,以使用导航度量(如成功/SPL)和姿态度量(如RPE/ATE)来评估所提出的方法。我们希望这种方法进一步开辟了一个工作方向,其中可以利用来自各种源的运动先验来改进VO估计并在具体化导航任务中实现更好的结果。
2. 引言
在新型室内环境中进行自主视觉导航是机器人执行进一步智能下游任务(如寻找和取回物体、重新排列各种物品等)的一项基本技能。这长期以来一直是计算机视觉和机器人学研究者的关注焦点。为了汇聚研究界的力量并标准化评估框架和指标,Anderson等人[1]提出了PointGoal导航任务。在PointNav中,智能体或机器人被初始化在先前未见过的环境中,并被赋予任务以到达相对于其初始位置指定的目标位置,即前往(△x, △y)。智能体的动作空间是离散的,主要包括四种动作类型:前进、向右转、向左转和停止(以结束一个情节)。如果一个智能体在目标位置预定距离内(例如0.36米)并在一个情节允许的最大时间步数内(例如500个时间步)停止,则该PointNav情节被视为成功。除了成功之外,智能体还通过诸如SPL和SoftSPL等导航指标进行评估。
这种点目标导航任务可以通过基于地图的方法(智能体同时绘制未探索区域的地图,在其中定位,然后规划一条通往目标的路径)或最近的无地图端到端强化学习方法来解决。在假设理想场景的情况下,即使用无噪声的GPS+罗盘进行完美定位,使用无噪声的自我中心RGB-D传感器且不存在驱动噪声;这种PointNav任务(v1)通过基于地图和无地图的方法均可完全解决。但现实世界并非理想状态,因此出现了PointNav v2,其中智能体需要自我定位(没有GPS+罗盘传感器),具有噪声的RGB-D观测和噪声驱动。在这种噪声设置下,基于地图和无地图的方法都需要首先关注智能体的精确定位,然后再进行导航。最近的无地图学习方法试图通过将任务分解为两部分来解决这个问题——分别学习视觉里程计(VO)(用于定位)和学习导航策略(用于动作)。在推理过程中,此VO模型可以作为GPS+罗盘传感器的替代品,其中导航策略是使用模拟中的真实姿态进行训练的。
现在,视觉里程计已在计算机/机器人视觉文献中研究了很长时间,并且存在许多成熟的解决方案,但这种PointNav任务定义使得该问题更难解决。由于智能体的离散动作空间和大动作量(默认:前进0.25米和30度转弯),VO需要在宽基线相机设置中进行估计,即两个视图相距甚远且重叠区域较少。大多数VO方法,无论是传统方法还是学习变体,都假设帧对之间存在较大重叠,换言之,是在窄基线设置下。但对于实际的机器人导航而言,宽基线VO是必要的,因为可能会出现机器人运动快速和/或观测处理或传输帧率(FPS)较低的情况。最近,在无地图方法中,与基于RL的导航策略一起使用的已学习VO方法已尝试解决这个问题,并取得了稳健的性能,但存在样本效率低下、具体化身特异性和数据集特异性的问题。训练此类模型需要大量的数据集和计算资源,并且不能零样本迁移到其他化身或数据集。
3. 任务描述
导航任务:智能体必须从其初始位置(蓝色方块)导航到一个目标位置(红色方块),该目标位置被指定为相对于其初始位置的目标坐标,仅使用其有噪声的RGB-D观测和有噪声的驱动。代理和oracle的路径在自上而下的地图上分别显示为蓝线和绿线。
4. 主要贡献
我们提出了一种基于智能体在环境中导航时可用的运动先验的鲁棒且样本效率高的新型VO管道。我们从实验中发现,简单的运动先验(如来自智能体控制器或规划器的动作先验,或来自另一个几何姿态估计器的粗略姿态先验等)可以帮助VO模型使用比最先进的(SoA)学习方法所需的更少样本更快地学习。这一发现不仅减少了训练一个模型所需的计算资源,而且在目标域数据稀缺且成本高昂以进行收集和整理的场景中也很有帮助。我们没有解决模型泛化问题,而是对这些模型进行了调整以提高样本效率。我们还为具身智能体提出了一种无需训练的基于动作先验的几何姿态估计器或VO模块,在独立评估中,其性能优于使用最先进的几何模块创建的帧到帧VO基线。利用这种新颖的几何VO模块,我们证明了运动先验可以有效地用于改进稀疏特征匹配方法的相对姿态估计。我们使用此模块来估计粗略姿态,该姿态作为比动作先验更好的运动先验来训练我们的神经VO模型。ECCV'24 | 无惧快速运动!MPVO:目标导航视觉里程计SOTA!
5. 方法
我们的整体管道[图2]由两个模块组成:视觉里程计(VO)和导航策略。这与在无地图环境中设计点目标导航智能体的常见做法类似。VO方法估计先前观测和当前观测之间的相对姿态,然后使用其更新当前目标坐标。导航策略使用此更新的目标坐标和当前观测来确定在每个时间步要采取哪些动作以到达目标。
我们的VO方法由两个关键构建块组成:一个几何粗略姿态估计器模块(GCPE)[图3]和另一个神经精细姿态回归模型(NFPR)[图4]。该管道将两个噪声RGB-D帧(智能体观察到的前一个时间步的Ot-1或Oa和当前时间步的Ot或Ob)以及智能体的规划器或策略提供的动作先验Tap(例如0.2米前进、30度右转等)作为输入,并输出两个RGB-D帧之间的相对SE(2)姿态Tpred(△x,△y,△θ)。
NFPR模块[图4]是一个深度神经网络模型,它接受RGB-D帧对、动作先验Tap和来自GCPE模块的粗略姿态估计Tcp作为输入,并回归出精细相对姿态Tpred作为输出。它由一个基于ResNet-18的视觉特征编码器组成,后跟一个压缩块和一个3层MLP姿态解码器。
6. 实验结果
我们评估并比较了我们的管道(GCPE + NFPR)与最新(SoA)视觉里程计(VO)模型的结果。我们还比较了GCPE模块与使用SoA子模块创建的不同几何姿态估计器基线的性能。在所有实验中,我们都使用了相同基于强化学习(RL)的导航策略,以研究各种视觉里程计方法对点目标导航的影响。
GCPE结果与基线比较:几何粗姿态估计器与导航策略相结合,并在Gibson PointNav v2任务的验证集上进行了评估。GCPE模块的超参数是使用Gibson验证集中14个场景之一的数据通过经验确定的。姿态采样器函数使用的标准差xσ、yσ和θσ分别设置为0.06m、0.06m和4.0度。
我们创建了四种不同的基线方法(表1)来与GCPE进行比较。所有基线都由三个子模块组成,即关键点特征提取器、对应匹配器和姿态估计器。从观察结果Ot-1和Ot的2D RGB视图中检测、描述和匹配关键点。然后,使用来自相同观察的深度图将这些2D-2D对应点反投影到3D。接着,使用姿态估计器子模块从这些3D-3D对应点中估计相对姿态。
我们为所有基线和我们的GCPE模块选择了Superpoint作为关键点提取器,因为它是具有高度准确性的学习关键点特征描述符之一,并且提供了开源的预训练模型权重。Superpoint在其原始工作中显示,其性能优于传统的手工制作的关键点特征描述符,如SIFT、ORB等。对于特征匹配器,我们选择了一个经典方法——最近邻相似度比率(NNSR)和另一种学习的SoA方法——LightGlue。这两种方法都将对应点之间的权重分配在0和1之间,权重越高,对应点为内点的概率越大。从表2中我们可以观察到,对于相同的关键点提取器和姿态估计器组合,LightGlue的性能优于NNSR,这是由于其出色的外点对应过滤能力。对于姿态估计器,我们选择了经典加权普鲁斯特方法的改进变体——随机加权普鲁斯特(RWP)和另一种SoA鲁棒姿态估计方法——Teaser++。我们观察到,对于相同的关键点提取器和匹配器组合,RWP的性能优于Teaser++。我们推测,这可能是因为Teaser++的算法不使用对应权重,而是基于硬阈值来修剪外点。而RWP有效地使用了来自NNSR或LightGlue的权重进行内点/外点的软分配,并给出了总体更好的姿态估计。
从表2中我们可以观察到,GCPE在大约35%的集上取得成功,其性能优于使用现成的SoA子模块创建的基线,并在绝对轨迹误差(ATE)方面显示出显著改善。这可以归因于其他基线没有使用代理的动作先验来偏置其姿态估计。因此,在基线的情况下,这种无偏的姿态估计在代理遇到包含无特征墙壁、高深度噪声等的困难帧对时,会导致较大的姿态误差,从而影响对应匹配步骤,从而增加外点的数量。这些帧对中的一些误差会随着时间的推移而累积,并导致巨大的轨迹漂移,如ATE所示。另一方面,GCPE通过使用动作先验作为初始估计并对对应点进行迭代重新加权(或换句话说,进行外点对应过滤)来保护代理的姿态估计,并收敛到粗姿态估计。
我们的方法(GCPE+NFPR)的结果与比较:从表3中可以明显看出,我们的方法(包括GCPE模块和我们表现最佳的NFPR模型APOM-APCP)对于相同的数据集大小,其性能始终优于SoA方法,并且使用大约一半的数据量实现了几乎相同的导航成功率,即比SoA方法高出2倍的样本效率。我们在400k上训练的最佳模型(APOM-APCP)报告的ATE远低于SoA,这表明沿轨迹的外点姿态估计(与其余帧对相比具有较大姿态误差的帧对)更少。这种优越性可以归因于对基础模型进行的各种简单而有效的修改,特别是加入了来自GCPE模块的运动先验和基于动作先验的RGBD观测重叠掩码。
7. 总结 & 未来工作
在这项工作中,我们提出了MPVO,这是一种稳健且样本高效的VO管道,用于实体代理的点目标导航。它基于在代理导航期间可用的运动先验的有效利用。我们已经使用来自代理规划器的动作先验对其进行了演示,但也可以利用其他运动先验(如轮式里程计、惯性测量单元(IMU)等)来进一步提高其效率。我们进行了广泛的实验,结果表明MPVO的性能更优,并且比SoA方法高出2倍的样本效率。我们的无训练几何粗姿态估计器(GCPE)在独立评估中的性能也优于SoA基线。尽管我们已经展示了我们的VO管道在点目标导航上下文中的使用,但它也可以用于其他实体导航任务,如ObjectNav、重新排列等。我们希望这项工作能够激励进一步研究如何利用运动先验来改善导航任务的VO估计。
对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~
本文仅做学术分享,如有侵权,请联系删文。
3D视觉交流群,成立啦!
目前我们已经建立了3D视觉方向多个社群,包括
2D计算机视觉
、
最前沿
、
工业3D视觉
、
SLAM
、
自动驾驶
、
三维重建
、
无人机
等方向,细分群包括:
工业3D视觉
:相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。
SLAM
:视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。
自动驾驶:深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、Occupancy、目标跟踪等。
三维重建
:3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等
无人机
:四旋翼建模、无人机飞控等
2D计算机视觉
:图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等
最前沿
:具身智能、大模型、Mamba、扩散模型等
除了这些,还有
求职
、
硬件选型
、
视觉产品落地、产品、行业新闻
等交流群
添加小助理: cv3d001,备注:
研究方向+学校/公司+昵称
(如
3D点云+清华+小草莓
), 拉你入群。
▲长按扫码添加助理:cv3d001
3D视觉知识星球