计算机视觉/视频分析

NVIDIA Jetson 月度最佳项目:这款自主足球机器人可以瞄准、射门和得分

 

足球被认为是全球最受欢迎的运动之一,全世界有充分的理由:动作往往很激烈,比赛结合了球员的身体素质和技术,令人激动。因此,毫不奇怪,有人正在努力教机器人比赛的细节,包括如何接球、射门、传球和进球。

事实上,整个比赛都致力于这个想法。这个RoboCup Small Size League (SSL) Vision Blackout Technical Challenge鼓励团队“探索本地传感和处理,而不是典型的非车载计算机和全球摄像机感知环境的方法。”学生 João Guilherme,他的导师Edna Barros、和其他SSL teammates来自Federal University of Pernambuco在累西腓,巴西建造了omnidirectional robot,由NVIDIA Jetson Nano Developer Kit自主执行足球任务。

该团队用单眼相机建造了全向机器人,可以自主执行以下任务:

  • 本地化
  • 足球检测和抓球
  • 坐标计算
  • 将球传给其他团队机器人
  • 空门得分

该团队用人工智能软件管道建造了机器人,平均处理速度为 30 FPS,硬件仅消耗 10.8 W 左右的功率。

该机器人的前部有一个踢球装置,是一个四轮全向机器人。图 1 显示了机器人的几何结构。

Chart showing the movement capability of the SSL omnidirectional robot.
图 1。由NVIDIA Jetson 纳米开发套件自主执行足球任务

“我们根据三项足球任务来评估我们的系统:接球、进球和传球,成功率分别为 80%、80% 和 46.7%,”该团队在朝向自主 RoboCup 小型联赛机器人中提到。

在比赛期间,各队将使用场外计算机执行大部分计算,接收球的位置,收集场地几何信息和裁判命令。比赛由 6 个(B 区)和 11 个(A 区)机器人组成,机器人通过最小带宽的射频通信接收导航命令。机器人的直径和高度限制在 180 毫米(B 区)和 150 毫米(A 区),因此得名小型联盟。

这个 SSL RoboCup 竞赛包括四个阶段

  1. 在球场上的某个地方抓一个固定的球
  2. 空门持球得分
  3. 将机器人移动到特定坐标
  4. 间接进球(需要两个机器人)

此外,这一挑战要求机器人检测现场物体,估计其位置,计算导航路径,并记录过去的轨迹。

“SSL 比赛是高度动态的环境,机器人资源极其有限,需要解决方案考虑尺寸、功耗、准确性和处理速度的权衡。这项工作提出了一种架构,使这些机器人能够自主执行基本的足球任务,即无需接收任何外部信息。” Guilherme 和他的队友在 Towards an Autonomous RoboCup Small Size League Robot 中阐述道。

项目硬件

该团队在项目中使用了以下硬件:

  • 一个 Jetson Nano 开发者套件,用于执行嵌入式愿景和决策
  • 全向机器人
  • 罗技 C922 相机,提供单目视觉
  • 惯性传感器,用于实现里程计估计
  • STM32F767ZI 微控制器单元(MCU),用于从 Nano 接收目标相对位置和导航标志,并使用惯性里程计执行低级别控制和轨迹估计
Flow chart for soccer robot AI detection pipeline and movement planning.
图 2:足球机器人的 AI 检测流水线与运动规划

想了解更多关于所用硬件的信息,请参阅 RobôCIn 2020 Team Description Paper

技术挑战

Vision Blackout Challenge 比赛期间,获胜的机器人必须能够完成各种基于足球的技能,包括抓住固定球、空门得分、移动到特定坐标以及间接进球(传给另一个机器人)。

机器人必须能够仅使用嵌入式传感和处理来执行这些技能。这项挑战没有高度限制,因此团队在他们典型的机器人上添加了一个车载摄像头 Jetson Nano 和一个电源板。

Two versions of the soccer-playing robot are shown. The one on the left is modified for the Vision Blackout Challenge, with an onboard camera and power supply board. The original robot appears on the right.
图 3。该队为视力障碍挑战赛改装的足球机器人(左)和他们原来的机器人(右)

此外,这一挑战要求机器人检测现场物体,估计其位置,计算导航路径,并记录过去的轨迹。SSL 足球赛使用外部摄像头和场外计算机来感知环境并向机器人发送命令。

根据研究人员的说法,SSL Vision 体系结构“存在诸如摄像机的视野、颜色分割、软件延迟和通信中断等限制,迫使球队制定应对复杂条件的解决方案。例如,比赛中的一个常见问题是球遮挡,当机器人在摄像机图像上的投影与球重叠时会发生这种情况。另一个问题是球和机器人的位置不一致 cks,偶尔没有检测到或错误地检测到它们。”

在 SSL 比赛中,机器人和球的速度分别高达 3.7 米/秒和 6.5 米/秒,这导致了一场需要高吞吐量解决方案的快速比赛。此外,使用电池作为电源的尺寸限制要求解决方案具有低功耗。此外,在‌匹配,需要精确的位置估计。

该团队还强调了精确的电机控制的重要性,这样机器人就可以在足球场上移动,并保持其测量位置的准确性。该团队需要一种方法来降低机器人对其位置的内部理解与实际物理位置偏离的速度。想了解更多详细信息,请参阅 Towards an Autonomous RoboCup Small Size League Robot.

Flow chart showing how the robot detects the soccer ball on the field.
图 4。足球机器人的摄像头有助于物体检测和视野,用于决策和路径规划

项目软件和人工智能

该团队使用 OpenCV2 以及校准和姿态计算技术来提取单眼相机(固定在机器人上)的“内在和外在参数”。他们使用 SSD MobileNet v2 来检测相机帧上对象的 2D 边界框。他们还使用了一个程序,将线性回归应用于 SSD MobileNet 创建的边界框坐标,该程序用于估计预先校准的相机参数。这将在场上分配与对象的底部中心相对应的点(该中心具有对象与相机的相对位置),因此也分配给机器人。

后果

团队对 他们的机器人如何表现 在今年的挑战中进行了解释。亮点包括:

  • 抓取静止的球:在 15 次尝试中,机器人能够在 12 次中成功地在球碰到运球者时停下来,成功率为 80%。
  • 进球:在 15 分钟内,有 12 分钟进了一球。
  • 通过:机器人在 15 次尝试中有 7 次成功传球,成功率为 46.7%。

请访问 RoboCup 2023 Results 查看完整的结果列表。该队伍自 2019 年以来一直参加机器人杯小型联赛,并在 2022 年赢得了他们的第一个世界冠军(乙级)。他们目前是三届拉丁美洲冠军。在 RobôCIn Small Size League Extended Team Description Paper for RoboCup 2023 中介绍了球队对小型联赛(SSL)乙级联赛冠军项目所做的改进。在 2023 年 RoboCup 的 7 月下旬,他们在法国波尔多赢得了第一名。

图 5。这个机器人抓取静止的球 (左)和进球(右)

未来计划

Guilherme 分享了他们的团队在比赛中遇到的挑战,以及为未来赛事改进的机会。他指出,大多数失败都是由于场外物体的假阳性检测。他说:“我们正在研究一种检测场边界并应用遮罩丢弃这些物体的解决方案。”。

该团队需要更快的物体检测解决方案。“尽管到目前为止我们已经能够执行基本技能,但对于 SSL 环境来说,30 FPS 的处理速度仍然很低。在主要比赛中,相机通常以 70 FPS 的速度运行,”他说。

机器人的技能仅依赖于检测到的物体的相对位置来实现,也就是说,它并不知道自己在现场的具体位置。Guilherme 指出:“我们相信这些信息可能有助于优化我们在足球任务中的表现,同时也能帮助我们避免点球。”例如,机器人不应该进入守门员的区域。“我们正在研究一种基于蒙特卡洛定位 (MCL)的方法,并将在未来几个月内分享。”

该团队计划在未来为机器人的系统添加更多功能(如场线检测、定位算法和路径规划),他们将努力优化系统的每个部分以满足这些需求。

此外,该团队继续研究检测场边界和线的解决方案,并估计机器人的自我定位。他们还计划用 Jetson Orin Nano 取代 Jetson Nano,这样他们就可以用机器人实现更快的处理速度。升级应该有助于球队在联赛中更有效地竞争。

要了解有关团队原始项目的更多信息,请访问 开发者论坛GitHub。您也可以探索 Jetson 社区项目,从您的机器人开发伙伴那里获得更多的想法和灵感。

 

Tags