引言
想象一下,你试着在拥挤的房间里飞奔,躲避家具和行人,但眼睛只能通过一个狭窄的纸巾筒向外看。这实际上就是当今许多最先进的足式机器人的工作方式。虽然我们看过机器狗后空翻或徒步旅行的精彩视频,但这种敏捷性很大程度上依赖于“本体感觉” (proprioception) ——即机器人对自身关节位置和平衡的内部感知。它们本质上是在盲动,依靠的是从绊倒中恢复的能力,而不是在一开始就避开障碍物。
为了让机器人能在非结构化环境 (如搜救现场或繁忙的办公室) 中实现真正的自主,它们需要像人类一样在 3D 空间中观察并做出反应。这意味着要能避开悬挂的电线、玻璃墙和移动的人群。
在香港科技大学 (广州) 研究人员最近发表的一篇题为 “Omini-Percption: Omnidirectional Collision Avoidance for Legged Locomotion in Dynamic Environments” 的论文中,他们提出了一个突破性的解决方案。他们介绍了 Omni-Perception (全方位感知) ,这是一个允许机器人通过在强化学习 (RL) 策略中直接处理原始激光雷达 (LiDAR) 数据来导航复杂 3D 空间的框架。

如上图 1 所示,该系统使机器人能够应对从不平坦的地形到像杆子这样的“细长”障碍物,甚至是通常会让标准深度相机感到困惑的透明玻璃。在这篇文章中,我们将拆解这篇论文的架构,解释他们是如何教会机器人利用原始点云来“看”世界的,以及他们是如何构建自定义模拟器来实现这一目标的。
问题所在: 为什么“看见”这么难?
在深入探讨解决方案之前,我们需要了解为什么这个问题至今尚未解决。足式机器人通常使用以下两种方法之一来感知世界:
- 深度相机: 它们就像我们的眼睛,但通常视野 (FOV) 有限。如果障碍物在机器人的侧面或后面,相机就会漏掉它。此外,深度相机难以应对光照变化 (如强烈的阳光或黑暗) 和透明表面。
- 高程图 (Elevation Maps) : 机器人通常获取传感器数据并构建地面的 2.5D 高度图。虽然这对踩在岩石上很有用,但这些地图很难表示悬空障碍物 (比如你可能会撞到头的桌子) 或快速移动的动态物体。
研究人员认为 激光雷达 (LiDAR) 是完成这项任务的更优传感器。LiDAR 可以提供环境的 360 度视图,并且不受光照条件的影响。然而,LiDAR 会产生海量数据,即“点云”——成千上万个独立的 3D 点。
实时处理这些点云以做出瞬间的运动控制决策,计算量非常大。这就是为什么以前的大多数方法将“看” (建图/规划) 与“动” (运动控制) 分离开来。结果呢?运动缓慢且保守。
Omni-Perception 改变了这一点,它将原始 LiDAR 数据端到端地直接输入机器人的大脑 (神经网络) 。
Omni-Perception 框架
为了实现敏捷、安全的移动,机器人需要知道两件事: “我的身体在哪里?” (本体感觉) 和“我周围有什么?” (外感受) 。
研究人员在下图中强调了传感器覆盖范围的差异。请注意,LiDAR (底部) 覆盖的范围比深度相机 (顶部) 宽得多,消除了盲点。

架构核心: PD-RiskNet
这篇论文的核心创新是一个名为 PD-RiskNet (近端-远端风险感知分层网络) 的神经网络模块。
处理 LiDAR 扫描中的每一个点太慢了。网络需要聪明地选择关注点。研究人员意识到,机器人需要根据物体距离的远近来获取不同类型的信息。因此,他们将 LiDAR 数据分为两路:
- 近端 (近场) : 这部分数据对即时的落足点选择和碰撞避免至关重要。它需要高精度。
- 远端 (远场) : 这部分数据帮助机器人规划朝向目标的总体路径。它可以粗糙一些。
1. 近端处理 (“当下”)
对于靠近机器人的点 (图 2b 中密集的蓝点) ,系统使用 最远点采样 (Farthest Point Sampling, FPS) 。 这种技术选择了一个具有代表性的点子集,最好地保留了附近障碍物的形状。这些点被输入到一个 GRU (门控循环单元) 中,这是一种擅长记忆序列的神经网络,用于提取有关直接地形的特征。
2. 远端处理 (“前瞻”)
对于远处的点 (图 2b 中稀疏的红点) ,系统使用 平均降采样 (Average Downsampling) 。 因为机器人不需要知道 5 米外墙壁的精确毫米级形状,所以对点进行平均可以减少噪声和计算负载。这个数据流也进入其独立的 GRU。
这两个数据流与机器人的本体感觉 (关节历史) 和用户的速度指令相结合 (拼接) 。最终输出是针对机器人腿部的具体电机指令。
教导机器人: 奖励系统
你如何教机器人不要撞车?在强化学习中,你会设计一个“奖励函数”——一个评分系统,机器人因良好的行为得分,因不良行为扣分。
目标是在避开障碍物的同时跟踪指令 (例如,“以 1 米/秒的速度前进”) 。研究人员设计了一种巧妙的 基于扇区的避障机制 。
想象一下,机器人被一个分为多个扇区的 360 度雷达包围。如果障碍物出现在特定扇区,系统会计算出一个将机器人推向相反方向的“排斥”力。

如图 3 所示,如果检测到障碍物 (O1, O2, O3) ,系统会计算一个 避障速度 (\(V_{avoid}\))。这不仅是一个物理力,更是对机器人认为它应该拥有的目标速度的数学调整。
每个扇区中避障速度的大小是根据距离使用指数函数计算的。障碍物越近 (\(d_{j,t}\)) ,排斥力越强:

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

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

仿真工具包: 跨越现实鸿沟
在现实世界中训练机器人既缓慢又危险。在仿真中训练虽然快,但往往不准确 (“虚实迁移鸿沟”) 。对于 LiDAR 来说尤其如此,因为它具有复杂的噪声模式和反射物理特性。
像 Isaac Sim 或 Gazebo 这样的标准模拟器通常难以高效地模拟成千上万个并行环境 (这是 RL 所需的) 中的 LiDAR。为了解决这个问题,作者使用 NVIDIA Warp 和 Taichi 构建了一个 自定义 LiDAR 渲染框架 。
效率与保真度
这个自定义工具允许大规模并行。它模拟了 非重复扫描模式 (常见于像 Livox Mid-360 这样的现代固态 LiDAR) 和自遮挡 (机器人看到自己的身体) 。
下方的视觉对比展示了其模拟器的高保真度。图 (c) 是他们的模拟,看起来与图 (b) 中的真实世界扫描非常相似,甚至包括机器人自身身体投下的“阴影”。

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

实验与结果
团队通过广泛的仿真和在 Unitree 机器人上的实地部署验证了 Omni-Perception。
现实世界的敏捷性
机器人在对感知系统来说极其困难的场景中进行了测试:
- 悬空障碍物: 悬挂在头部高度的物体。
- 透明障碍物: 玻璃墙 (LiDAR 通常比深度相机能更好地检测到框架或部分反射) 。
- 动态人类: 走进机器人路径的人。
- 复杂地形: 楼梯、斜坡和杂物的组合。

在上图中,你可以看到机器人在岩石地形中穿行并成功避开移动的人类。在对比测试中,原生 Unitree 系统 (使用深度相机) 在面对悬空障碍物和移动人类时 100% 失败,而 Omni-Perception 分别取得了 70% 和 90% 的成功率。
消融研究
PD-RiskNet 架构真的很重要吗?研究人员将他们的方法与更简单的方法进行了比较,例如将原始点输入标准 MLP (多层感知机) 或仅使用没有近端/远端拆分的 GRU。

表 3 中的结果很有说服力。直接使用 MLP 的方法导致内存不足 (OOM) 。更简单的采样方法成功率要低得多 (33%) 。Omni-Perception 方法 (“Ours”) 取得了最高的成功率,证明了近点和远点的分层处理是必不可少的。
局限性与失败案例
没有系统是完美的。作者坦率地讨论了 Omni-Perception 表现挣扎的地方。
1. “浓密草丛”问题: 在非结构化环境中,高草对 LiDAR 传感器来说可能像一堵实心的墙。机器人可能会将一片草地视为危险障碍物并拒绝通过,或者因为看到四周都有障碍物而“被困住”。

2. 稀疏物体: 由于“远端” (远场) 数据流使用平均降采样,远处非常细或小的物体可能会被平均化而消失。机器人可能直到靠得足够近,让“近端”数据流捕捉到它时才意识到细杆的存在,但这对于平滑避障来说可能为时已晚。
结论
Omni-Perception 论文代表了机器人自主性的重要一步。通过摆脱缓慢的、基于地图的规划和受限的深度相机,转而拥抱 基于原始 LiDAR 的端到端学习 , 研究人员创造了一种真正感知其 3D 周围环境的足式机器人。
这项工作凸显了机器人技术的两个重要趋势:
- 传感器优先设计: 针对任务 (3D 几何) 使用正确的传感器 (LiDAR) 比试图强迫相机做所有事情更有效。
- 仿真是关键: 如果没有高保真、高性能的仿真工具来准确模拟传感器噪声和物理特性,就无法训练出鲁棒的策略。
随着这项技术的改进——也许通过整合语义理解来区分“草”和“混凝土墙”——我们可以期待看到机器狗走出实验室,可靠地在我们生活的混乱、无序的世界中穿行。
](https://deep-paper.org/en/paper/66_omni_perception_omnidirecti-2411/images/cover.png)