视觉导航是机器人技术领域的圣杯之一。我们希望机器人能够进入一个新的环境,观察四周,然后像人类一样导航到目标位置。然而,目前主导的范式——使用原始图像来估计控制信号——存在一个重大缺陷: 它过分依赖机器人的特定视角。

如果你训练一个机器人在走廊里导航,摄像头安装在视线高度,然后你把摄像头降低到膝盖高度 (模拟一个较小的机器人) ,导航系统通常会完全崩溃。尽管走廊的几何结构没有改变,但图像看起来却截然不同。

在这篇深度解读中,我们将探讨一篇名为 “ObjectReact: Learning Object-Relative Control for Visual Navigation” (ObjectReact: 学习用于视觉导航的物体相对控制) 的引人入胜的论文。研究人员提出了一种从 图像相对 (image-relative) 导航向 物体相对 (object-relative) 导航的转变。机器人不再死记硬背像素,而是学习对环境中的物体做出反应。

读完这篇文章,你将理解将世界表示为 “WayObject Costmap” (路径物体代价图) 是如何让机器人在不迷路的情况下抄近路、反向寻路以及切换物理形态的。

图像相对导航的问题

要理解这里的创新,我们需要先看看现状。大多数现代视觉拓扑导航系统都是基于“示教-重放” (teach-and-repeat) 机制工作的。

  1. 建图 (Mapping) : 驱动机器人穿过一个环境,保存一系列图像。
  2. 导航 (Navigation) : 为了从 A 点到 B 点,机器人观察当前的摄像头视图,并将其与记忆中的下一个“子目标”图像进行对比。
  3. 控制 (Control) : 一个神经网络预测所需的速度,使当前视图看起来像子目标图像。

这被称为 图像相对控制 。 这种方法对于简单的原路返回很有效。然而,它是脆弱的。因为图像严格绑定于机器人的位姿 (它在哪里以及它在看哪里) 和具身性 (它有多高) ,如果出现以下情况,系统就会陷入困境:

  • 机器人比建图时的机器人更矮或更高。
  • 机器人需要走一条原始路径中没有的捷径。
  • 机器人需要反向导航路径 (当你转过 180 度时,图像看起来完全不同) 。

解决方案: 物体相对导航

ObjectReact 的核心洞见简单而深刻: 物体是地图的属性,而不是机器人的属性。

一把椅子就是一把椅子,无论你是从 1.5 米高还是 0.5 米高的地方看它。一扇门就是一扇门,无论你是从左边还是右边接近它。通过将导航锚定在 物体 而非整个 图像 上,我们可以创建一个对机器人的具体物理配置或精确轨迹具有不变性的系统。

研究人员提出了一个流程,将“这是什么?” (感知) 与“我该怎么移动?” (控制) 解耦。

四项挑战性任务

为了证明这种转变的必要性,作者定义了四项会让传统基于图像的方法崩溃的导航任务。

图 1: 任务: 每一列显示了一个俯视图,其中先前的经验 (地图) 轨迹显示为从紫色圆圈 (起点) 到绿色点 (终点) 的紫色路径。这些任务被称为: 模仿 (Imitate) ,类似于示教-重放;替代目标 (Alt-Goal) ,即目标物体以前见过但未访问过;捷径 (Shortcut) ,即先前的轨迹较长,代理在推理阶段会抄近路;以及反向 (Reverse) ,即代理沿相反方向行进。

如上图 1 所示:

  1. 模仿 (Imitate) : 标准的“示教-重放”。图像相对方法在这方面表现良好。
  2. 替代目标 (Alt-Goal) : 机器人必须到达以前见过但从未直接访问过的物体。
  3. 捷径 (Shortcut) : 机器人意识到终点很近,跳过了训练时走的那个大圈。
  4. 反向 (Reverse) : 机器人必须逆向导航已建图的路径。

图像相对方法在后三项任务中彻底失败,因为执行期间的视觉输入与存储的图像序列不匹配。ObjectReact 旨在解决所有这些问题。

ObjectReact 方法论

ObjectReact 流程主要包含三个阶段: 建图、执行 (规划) 和训练 (控制) 。让我们以此拆解其架构。

图 2: 物体相对导航流程。a) 建图: 我们将拓扑度量地图构建为相对 3D 场景图,其中图像分割块被用作物体节点,它们在帧内使用 3D 欧几里得距离连接,在帧间使用物体关联连接。b) 执行: 给定地图,我们定位每个查询物体并计算其到目标节点的路径;我们将这些路径长度分配给物体的分割掩膜,形成用于控制预测的“WayObject Costmap” (路径物体代价图) 。c) 训练: 我们训练一个模型来学习“ObjectReact”控制器,该控制器从 WayObject Costmap 预测轨迹展开。

1. 建图: 相对 3D 场景图

作者没有构建稠密的度量地图 (如沉重的激光雷达点云) 或纯拓扑地图 (只是一串图像) ,而是构建了一个 相对 3D 场景图 (Relative 3D Scene Graph, 3DSG)

  • 节点 (Nodes) : 这些是在视频流中检测到的物体。系统使用 SAM (Segment Anything Model) 或 FastSAM 等基础模型来提取分割掩膜 (物体的形状) 。
  • 帧内边 (Intra-image Edges,帧内部) : 系统估计 同一 图像中物体之间的相对 3D 距离。例如,“椅子距离桌子 1.5 米”。这建立了一种局部的几何理解。
  • 帧间边 (Inter-image Edges,帧之间) : 当机器人移动时,它使用特征匹配 (SuperPoint/LightGlue) 跨帧跟踪物体。如果第 1 帧中的“红椅子”与第 2 帧中的“红椅子”是同一个,则以零成本连接它们。

这种图结构使机器人能够理解物体在空间上的连接方式,而无需精确的全局 GPS。

2. 执行: 使用 “WayObjects” 进行规划

当机器人需要移动时,它不仅仅是寻找目标图像。

  1. 定位 (Localize) : 它识别当前视图中的物体。
  2. 匹配 (Match) : 它将这些当前物体与地图中的节点进行匹配。
  3. 规划 (Plan) : 它在图上运行标准的寻路算法 (迪杰斯特拉算法) 。

转折点在于: 规划器会计算当前可见的 每一个物体 到目标的距离

如果机器人看到一扇门、一株植物和一张桌子,规划器可能会说:

  • 门: 距离目标 2 米。
  • 植物: 距离目标 15 米。
  • 桌子: 距离目标 50 米。

机器人现在知道这扇 是最具吸引力的 “WayObject” (路径物体) 。

3. 核心创新: WayObject Costmap (路径物体代价图)

这是论文中最关键的部分。如何将“到目标的距离”输入到神经网络控制器中?你可以给它一个数字列表,但这会丢失空间信息。

作者创建了一个 WayObject Costmap 。 他们获取当前视图的分割掩膜 (所有可见物体的轮廓) ,并用计算出的路径长度 (代价) 填充每个物体的形状。

  • 低代价 (深色/不同颜色) : 最短路径上的物体。
  • 高代价: 远离目标或指向错误方向的物体。
  • 离群点 (Outliers) : 地图中不存在的物体 (障碍物或动态物体) 会被赋予最大代价。

他们没有使用简单的标量值,而是使用类似于 Transformer 中位置编码的高维正弦-余弦嵌入来编码这些代价。

定义 WayObject Costmap 和路径长度的正弦编码的公式。

在这个公式中:

  • \(\mathcal{W}\) 是代价图。
  • \(\mathbf{M}\) 代表物体的二进制掩膜。
  • \(\mathbf{E}\) 是路径长度 \(l\) 的位置编码。

这将物体的 2D 图像转变为包含了可通行性和导航意愿的丰富语义“热力图”。

4. 控制器: 学习反应

最后, ObjectReact 控制器是一个神经网络,经过训练可以观察这个 WayObject Costmap 并预测速度 (线速度和角速度) 。

至关重要的是,该控制器不接受 RGB 图像作为输入。 它只看 Costmap。

为什么?如果你输入 RGB 图像,网络可能会过拟合视觉纹理 (例如“朝棕色地毯开”) 。通过强制它使用 Costmap,网络学会了一条通用规则: “转向低代价区域,避开高代价区域。” 这使得它能够泛化到新的环境和形态中。

实验与结果

作者使用 Habitat-Matterport 3D (HM3D) 数据集评估了 ObjectReact,并将其与 GNM (一种最先进的图像相对方法) 进行了比较。

在挑战性任务上的表现

表 1 揭示了能力上的巨大差异。

表 1: 比较图像相对和物体相对控制器在四项导航任务中的表现。

  • 模仿 (Imitate) : 两种方法都表现良好 (~58-59% SPL) 。这是意料之中的;标准方法就是为此设计的。
  • 替代目标 (Alt Goal) : ObjectReact 占据主导地位 (21.74 vs 2.17 SPL) 。图像相对方法失败是因为它从未存储过“看着”替代目标的图像。ObjectReact 只是在图上计算了一条新路径。
  • 捷径 (Shortcut) : ObjectReact 看到了附近有一个图代价很低的物体,于是走了捷径。基于图像的方法则盲目地遵循记录的长循环。
  • 反向 (Reverse) : ObjectReact 再次获胜。物体 (如沙发) 可以从背面被识别,即使在反向行进时,图也能为机器人定位。

具身性测试 (机器人高度)

这可以说是现实世界机器人技术中最实际的胜利。作者使用 1.3米 的传感器高度 (像人类或高个机器人) 训练地图,然后用 0.4米 的传感器 (像机器狗) 测试机器人。

表 2: 在固定地图高度为 1.3m 的情况下,执行期间具身性 (高度) 变化的影响

查看表 2:

  • 图像相对 (Image Relative) : 当高度改变时,性能从 81.82 SPL 暴跌至 33.33 SPL。因为图片完全对不上了。
  • 物体相对 (Object Relative) : 性能保持稳定 (实际上略好,为 60.60 SPL vs 57.56 SPL) 。

因为无论高度如何,物体 (图中的节点) 都是相同的,所以 WayObject Costmap 保持一致。控制器只是看到“左边有低代价物体”并向左转,不管摄像头是高还是低。

现实世界部署

作者在 Unitree Go1 机器狗上部署了该系统。请注意图 4 中 Costmap (中间行) 是如何引导机器人的。

图 4: 现实世界实验。我们在 Unitree Go1 机器狗上部署了我们的方法。这里展示了以自我为中心的 RGB 图像、它们对应的 WayObject Costmaps,以及在自主导航至目标物体期间几个时间步长的预测轨迹展开。

在突出显示的序列中:

  1. t=5s: 机器人识别出左侧有一个低代价物体区域并转向。
  2. t=20s: 它遇到了一个障碍物。因为障碍物不在地图中 (或者匹配到了高代价节点) ,它显示为“高代价”区域。机器人自然地绕过它,驶向“低代价”的可见空间。

这种行为是在没有明确训练避障的情况下涌现出来的——它只是对 Costmap 做出“反应”。

启示与结论

ObjectReact 论文提出了一个令人信服的论点,即摆脱纯粹基于图像的视觉导航。通过引入 相对 3D 场景图WayObject Costmap , 作者创建了一个具备以下特点的系统:

  1. 轨迹不变性: 它不需要遵循训练运行的确切路径 (捷径) 。
  2. 具身不变性: 即使摄像头高度发生巨大变化,它也能工作。
  3. 模块化: 控制问题与视觉问题解耦。你可以升级物体检测器 (例如,升级到更好版本的 SAM) 而无需重新训练导航控制器。

这对学生意味着什么

对于进入机器人或计算机视觉领域的学生来说,这篇论文阐明了 表征 (representation) 的重要性。

  • 深度学习不仅仅是将原始像素扔进 CNN。
  • 你如何构建数据 (图 vs. 序列) 以及如何表征你的输入 (Costmaps vs. RGB) 决定了你系统智能的上限。

ObjectReact 表明,为了让机器人真正理解导航,它们不应该只看世界;它们应该理解其中的 事物