引言

想象一下,你试着在拥挤的房间里飞奔,躲避家具和行人,但眼睛只能通过一个狭窄的纸巾筒向外看。这实际上就是当今许多最先进的足式机器人的工作方式。虽然我们看过机器狗后空翻或徒步旅行的精彩视频,但这种敏捷性很大程度上依赖于“本体感觉” (proprioception) ——即机器人对自身关节位置和平衡的内部感知。它们本质上是在盲动,依靠的是从绊倒中恢复的能力,而不是在一开始就避开障碍物。

为了让机器人能在非结构化环境 (如搜救现场或繁忙的办公室) 中实现真正的自主,它们需要像人类一样在 3D 空间中观察并做出反应。这意味着要能避开悬挂的电线、玻璃墙和移动的人群。

在香港科技大学 (广州) 研究人员最近发表的一篇题为 “Omini-Percption: Omnidirectional Collision Avoidance for Legged Locomotion in Dynamic Environments” 的论文中,他们提出了一个突破性的解决方案。他们介绍了 Omni-Perception (全方位感知) ,这是一个允许机器人通过在强化学习 (RL) 策略中直接处理原始激光雷达 (LiDAR) 数据来导航复杂 3D 空间的框架。

图 1: Omni-Perception 框架的验证场景。左侧展示了有效的全方位碰撞避免能力,机器人能对来自不同接近矢量的障碍物做出反应。右侧展示了对多样化环境特征的鲁棒性,包括成功通过悬空、透明、细长和地面障碍物。这些结果凸显了 Omni-Perception 直接利用原始激光雷达输入在具有挑战性的 3D 环境中实现无碰撞运动的能力。

如上图 1 所示,该系统使机器人能够应对从不平坦的地形到像杆子这样的“细长”障碍物,甚至是通常会让标准深度相机感到困惑的透明玻璃。在这篇文章中,我们将拆解这篇论文的架构,解释他们是如何教会机器人利用原始点云来“看”世界的,以及他们是如何构建自定义模拟器来实现这一目标的。

问题所在: 为什么“看见”这么难?

在深入探讨解决方案之前,我们需要了解为什么这个问题至今尚未解决。足式机器人通常使用以下两种方法之一来感知世界:

  1. 深度相机: 它们就像我们的眼睛,但通常视野 (FOV) 有限。如果障碍物在机器人的侧面或后面,相机就会漏掉它。此外,深度相机难以应对光照变化 (如强烈的阳光或黑暗) 和透明表面。
  2. 高程图 (Elevation Maps) : 机器人通常获取传感器数据并构建地面的 2.5D 高度图。虽然这对踩在岩石上很有用,但这些地图很难表示悬空障碍物 (比如你可能会撞到头的桌子) 或快速移动的动态物体。

研究人员认为 激光雷达 (LiDAR) 是完成这项任务的更优传感器。LiDAR 可以提供环境的 360 度视图,并且不受光照条件的影响。然而,LiDAR 会产生海量数据,即“点云”——成千上万个独立的 3D 点。

实时处理这些点云以做出瞬间的运动控制决策,计算量非常大。这就是为什么以前的大多数方法将“看” (建图/规划) 与“动” (运动控制) 分离开来。结果呢?运动缓慢且保守。

Omni-Perception 改变了这一点,它将原始 LiDAR 数据端到端地直接输入机器人的大脑 (神经网络) 。

Omni-Perception 框架

为了实现敏捷、安全的移动,机器人需要知道两件事: “我的身体在哪里?” (本体感觉) 和“我周围有什么?” (外感受) 。

研究人员在下图中强调了传感器覆盖范围的差异。请注意,LiDAR (底部) 覆盖的范围比深度相机 (顶部) 宽得多,消除了盲点。

图 2: 提出的系统框架。(a) 不同传感器覆盖范围的可视化: 深度相机通常狭窄的前向视野 (上) 与 LiDAR 传感器更宽、更远的覆盖范围 (下) 的对比,展示于 Unitree Go2 机器人上。(b) 感知和控制流程的详细图解。

架构核心: PD-RiskNet

这篇论文的核心创新是一个名为 PD-RiskNet (近端-远端风险感知分层网络) 的神经网络模块。

处理 LiDAR 扫描中的每一个点太慢了。网络需要聪明地选择关注点。研究人员意识到,机器人需要根据物体距离的远近来获取不同类型的信息。因此,他们将 LiDAR 数据分为两路:

  1. 近端 (近场) : 这部分数据对即时的落足点选择和碰撞避免至关重要。它需要高精度。
  2. 远端 (远场) : 这部分数据帮助机器人规划朝向目标的总体路径。它可以粗糙一些。

1. 近端处理 (“当下”)

对于靠近机器人的点 (图 2b 中密集的蓝点) ,系统使用 最远点采样 (Farthest Point Sampling, FPS) 。 这种技术选择了一个具有代表性的点子集,最好地保留了附近障碍物的形状。这些点被输入到一个 GRU (门控循环单元) 中,这是一种擅长记忆序列的神经网络,用于提取有关直接地形的特征。

2. 远端处理 (“前瞻”)

对于远处的点 (图 2b 中稀疏的红点) ,系统使用 平均降采样 (Average Downsampling) 。 因为机器人不需要知道 5 米外墙壁的精确毫米级形状,所以对点进行平均可以减少噪声和计算负载。这个数据流也进入其独立的 GRU。

这两个数据流与机器人的本体感觉 (关节历史) 和用户的速度指令相结合 (拼接) 。最终输出是针对机器人腿部的具体电机指令。

教导机器人: 奖励系统

你如何教机器人不要撞车?在强化学习中,你会设计一个“奖励函数”——一个评分系统,机器人因良好的行为得分,因不良行为扣分。

目标是在避开障碍物的同时跟踪指令 (例如,“以 1 米/秒的速度前进”) 。研究人员设计了一种巧妙的 基于扇区的避障机制

想象一下,机器人被一个分为多个扇区的 360 度雷达包围。如果障碍物出现在特定扇区,系统会计算出一个将机器人推向相反方向的“排斥”力。

图 3: 基于扇区的避障速度计算。

如图 3 所示,如果检测到障碍物 (O1, O2, O3) ,系统会计算一个 避障速度 (\(V_{avoid}\))。这不仅是一个物理力,更是对机器人认为它应该拥有的目标速度的数学调整。

每个扇区中避障速度的大小是根据距离使用指数函数计算的。障碍物越近 (\(d_{j,t}\)) ,排斥力越强:

() | V _ { t , j } ^ { a v o i d } | = \\exp ( - d _ { j , t } \\cdot \\alpha _ { a v o i d } ) ()

然后训练机器人匹配一个包含该避障向量的修正后目标速度。如果用户说“直走”,但前面有一堵墙,修正后的指令实际上变成了“直走但向左偏”。如果机器人不遵循这条安全轨迹,奖励函数就会惩罚它:

() r _ { v e l _ a v o i d } = \\exp ( - \\beta _ { v a } * | v _ { t } - ( v _ { t } ^ { c m d } + V _ { a v o i d , t } ) | ^ { 2 } ) ()

此外,一个“射线奖励”鼓励机器人寻找开阔空间,最大化 LiDAR 射线到障碍物的距离:

() r _ { r a y s } = \\sum _ { i = 1 } ^ { n } \\frac { \\hat { d } _ { t , i } } { n \\cdot d _ { \\operatorname* { m a x } } } ()

仿真工具包: 跨越现实鸿沟

在现实世界中训练机器人既缓慢又危险。在仿真中训练虽然快,但往往不准确 (“虚实迁移鸿沟”) 。对于 LiDAR 来说尤其如此,因为它具有复杂的噪声模式和反射物理特性。

像 Isaac Sim 或 Gazebo 这样的标准模拟器通常难以高效地模拟成千上万个并行环境 (这是 RL 所需的) 中的 LiDAR。为了解决这个问题,作者使用 NVIDIA Warp 和 Taichi 构建了一个 自定义 LiDAR 渲染框架

效率与保真度

这个自定义工具允许大规模并行。它模拟了 非重复扫描模式 (常见于像 Livox Mid-360 这样的现代固态 LiDAR) 和自遮挡 (机器人看到自己的身体) 。

下方的视觉对比展示了其模拟器的高保真度。图 (c) 是他们的模拟,看起来与图 (b) 中的真实世界扫描非常相似,甚至包括机器人自身身体投下的“阴影”。

图 4: Unitree G1 机器人的模拟与真实点云对比。(a) 物理 Unitree G1 机器人设置。(b) 车载 Livox Mid-360 传感器捕获的真实世界 LiDAR 扫描。(c) (我们的) 在 Isaac Gym 中使用我们的 Livox Mid-360 传感器模型生成的点云。(d) 在 Isaac Sim 中使用官方传感器生成的点云。我们的方法像真实世界 LiDAR 一样捕捉到了自遮挡效应。

速度对 RL 训练至关重要。如下方表 1 所示,自定义框架 (Ours) 渲染场景的速度明显快于 Isaac Sim,特别是当环境数量扩展到 4096 个时。

表 1: 不同配置下静态场景的渲染时间 (毫秒) 。我们的方法比 Isaac Sim 高效得多。

实验与结果

团队通过广泛的仿真和在 Unitree 机器人上的实地部署验证了 Omni-Perception。

现实世界的敏捷性

机器人在对感知系统来说极其困难的场景中进行了测试:

  1. 悬空障碍物: 悬挂在头部高度的物体。
  2. 透明障碍物: 玻璃墙 (LiDAR 通常比深度相机能更好地检测到框架或部分反射) 。
  3. 动态人类: 走进机器人路径的人。
  4. 复杂地形: 楼梯、斜坡和杂物的组合。

图 5: 机器人避障性能在多种场景中进行了评估,包括复杂地形和动态人类干扰。

在上图中,你可以看到机器人在岩石地形中穿行并成功避开移动的人类。在对比测试中,原生 Unitree 系统 (使用深度相机) 在面对悬空障碍物和移动人类时 100% 失败,而 Omni-Perception 分别取得了 70% 和 90% 的成功率。

消融研究

PD-RiskNet 架构真的很重要吗?研究人员将他们的方法与更简单的方法进行了比较,例如将原始点输入标准 MLP (多层感知机) 或仅使用没有近端/远端拆分的 GRU。

表 3: PD-RiskNet 消融结果 (30 次试验)

表 3 中的结果很有说服力。直接使用 MLP 的方法导致内存不足 (OOM) 。更简单的采样方法成功率要低得多 (33%) 。Omni-Perception 方法 (“Ours”) 取得了最高的成功率,证明了近点和远点的分层处理是必不可少的。

局限性与失败案例

没有系统是完美的。作者坦率地讨论了 Omni-Perception 表现挣扎的地方。

1. “浓密草丛”问题: 在非结构化环境中,高草对 LiDAR 传感器来说可能像一堵实心的墙。机器人可能会将一片草地视为危险障碍物并拒绝通过,或者因为看到四周都有障碍物而“被困住”。

图 7: 浓密的草丛。

2. 稀疏物体: 由于“远端” (远场) 数据流使用平均降采样,远处非常细或小的物体可能会被平均化而消失。机器人可能直到靠得足够近,让“近端”数据流捕捉到它时才意识到细杆的存在,但这对于平滑避障来说可能为时已晚。

结论

Omni-Perception 论文代表了机器人自主性的重要一步。通过摆脱缓慢的、基于地图的规划和受限的深度相机,转而拥抱 基于原始 LiDAR 的端到端学习 , 研究人员创造了一种真正感知其 3D 周围环境的足式机器人。

这项工作凸显了机器人技术的两个重要趋势:

  1. 传感器优先设计: 针对任务 (3D 几何) 使用正确的传感器 (LiDAR) 比试图强迫相机做所有事情更有效。
  2. 仿真是关键: 如果没有高保真、高性能的仿真工具来准确模拟传感器噪声和物理特性,就无法训练出鲁棒的策略。

随着这项技术的改进——也许通过整合语义理解来区分“草”和“混凝土墙”——我们可以期待看到机器狗走出实验室,可靠地在我们生活的混乱、无序的世界中穿行。