Advertisement

读论文 ETPNav: Evolving Topological Planning for Vision-Language Navigation in Continuous Environments

阅读量:

这是一篇选自tpami2024的一篇新文章

ETPNav: Evolutionary Topology-Based Planning Aimed at Vision-Language Navigation within Continuous Environments (TPAMI 2024)

研究背景:本研究专注于开发一种适用于连续视觉语言导航(VLN-CE)的实际应用价值解决方案。为了构建一个强大的VLN-CE代理系统的基础框架, 本研究提出了一种新型导航架构ETPNav.该架构主要关注实现两个核心能力:一是能够在动态环境中进行抽象建模并生成远程导航计划的能力;其二是实现避障控制能力在连续环境中.通过实时构建动态拓扑图, 该架构能够执行环境的在线路径规划.同时, 通过引入基于Transformer的跨模式规划器, 系统能够根据当前拓扑图生成高效的导航指令序列.随后, 通过集成基于试错启发式的避障控制器, 实现了对生成指令序列的有效执行与优化.实验研究表明, 所提出的系统显著提升了性能指标.具体而言, 在两个数据集上的性能提升分别达到了10%到20%以上

源码:https://github.com/MarSaKi/ETPNav

1. 环境观测与数据处理

在每个导航决策循环(stept)启动时,ETPNav系统会收集当前的RGB-D观测数据。颜色和纹理信息由RGB图像提供,而深度图像(D)则传递物体的距离信息。系统通过预训练的视觉编码器对这些数据进行处理以生成环境特征向量

2. Waypoint预测

该系统采用基于Transformer架构的Waypoint预测器来处理数据。该预测器主要从深度图像和方向特征中提取关键信息,并通过两层Transformer架构进行处理以提高定位精度。在生成一个概率热图后,我们通过非极大值抑制(NMS)方法选择K个Waypoints以确保目标检测结果的有效性。我思考点为何仅依赖于深度图像?因为 Waypoints 主要反映空间可达性,在此场景下 RGB 图像中的语义信息可能显得多余甚至影响准确性。

3. 拓扑图的更新

在每次决策周期内,在每次决策循环中

4. Waypoint与Ghost Nodes的处理

该系统对Visited节点、当前节点以及幽灵节点进行了明确区分。其中幽灵节点指的是那些已经被观测到但尚未被探索的节点。当更新拓扑图时,系统会将这些新增Waypoints与现有的幽灵节点进行对比分析,并整合多步骤的数据信息以确保图示能够准确反映环境结构特征。而那些尚未被定位的Waypoints则被视为新的幽灵节点加入到拓扑图中

指令生成

1. 文本编码(Text Encoding)

系统首先接收并处理用户的自然语言指令。该编码器将每个输入词转化为低维空间中的向量表示,并附加了位置编码信息以及类型的标识信息(例如文本内容的分类标记)。基于这些编码后的向量构建出反映语义关系的特征表达

2. 节点编码(Node Encoding)

通过拓扑地图中的节点数据(如位置坐标、间距等),每个节点的视觉特征将被优化为一个融合了位置编码(pose encoding)和导航步骤编码(navigation step encoding)的综合向量。其中,位置编码用于描述节点相对于机器人当前位置的方向与欧几里得距离;而导航步骤编码则记录了该节点在其路径上的历史信息。

3. 跨模态图编码器(Cross-Modal Graph Encoder)

当前阶段,在这一阶段中,在当前阶段中,
这些编码信息会经过多层Transformer。
这种架构专注于跨模态信息处理。
该模型能在节点与文本间建立互动关系,
能够提取融合了视觉与文本特征的节点表示信息。
在这里采用了一种名为Graph-Aware Self-Attention(GASA)的图感知自注意力机制,
这种机制不仅关注节点间的视觉相似性,
还能充分考虑图拓扑结构来优化环境整体布局的理解。

4. 长远目标预测(Long-term Goal Prediction)

在跨模态交互完成后,在每个节点上会为其分配一个导航目标得分(goal score),这个分数代表了该节点作为导航目标的概率性。系统利用前馈网络(FFN)来评估每个节点的表现,并将具有最高得分的那个节点作为导航路径的下一个目标点。当最高得分为‘停止’节点时,则意味着导航过程结束

5. 路径规划与执行(Path Planning and Execution)

当系统一旦设定了一个长期目标(通常设置为Ghost Node类型)时,在图中采用Dijkstra算法计算从当前位置到该目标节点的最短路径。这条路径将由多个中间子目标节点构成,并将这些子目标逐一转换为一系列基础操作(例如移动、转向),从而逐步引导机器人准确到达指定终点。

我关注的点是我学习需要的 具体的需要具体看论文奥

附原文翻译重点内容

全部评论 (0)

还没有任何评论哟~