跳到主要内容

追踪AprilTags

AprilTags使用标准的"tx"、"ty"和"ta"值进行追踪。从颜色/反光追踪机器人升级到apriltags不需要更改代码。 "botpose"和"campose"也可用于场地空间和目标空间的3D追踪。

对于更高级的多标签使用,可以使用JSON结果输出。

FRC AprilTags快速入门

  • 输入选项卡 - 将"Pipeline Type"更改为"Fiducial Markers"

  • 输入选项卡 - 对于3D追踪使用最高可用分辨率,或对于纯2D追踪使用640x480

  • 标准选项卡 - 确保"family"设置为"AprilTag Classic 36h11"

  • 输入选项卡 - 将"Black Level"设置为零

  • 输入选项卡 - 将"Gain"设置为15

  • 输入选项卡 - 降低曝光以减少运动时由于运动模糊导致的追踪丢失。一旦追踪可靠性降低就停止减少。在光线较暗的比赛中可能需要增加曝光。

  • 标准选项卡 - 如果想提高帧率,增加"Detector Downscale"

  • 如果想同时使用3D追踪和2D tx/ty追踪,通过网络表设置优先Tag ID来配置2D追踪的首选标签。

  • 点击"齿轮"图标,确保设置了您的队号并配置了静态IP。

  • 如果更改了相应设置,请点击"Change Team Number"和"Change IP Settings"。重启您的机器人。

  • 完成!从网络表使用"tx"和"ty"。复制"入门"页面上的代码示例。

提示

为获得理想的追踪效果,请考虑以下几点:

  • 您的标签应尽可能平整。
  • 您的Limelight应安装在标签高度的上方或下方,并向上/向下倾斜,使目标居中。从摄像头的角度看,您的目标应尽可能呈梯形。如果想避免标签翻转,您不希望摄像头与标签完全"正面"对齐。

AprilTag追踪涉及以下变量之间的相互作用:

  • 增加捕获分辨率将始终提高3D精度并增加3D稳定性。这也将从大多数角度减少模糊翻转的发生率。通常会增加范围。这将降低管道帧率。
  • 增加检测器下采样将始终提高管道帧率。它会减少有效范围,但在某些情况下这可能微不足道。它不会影响3D精度、3D稳定性或解码精度。
  • 减少曝光将始终改善运动模糊抗性。这实际上很容易观察到。这可能会减少范围。
  • 降低图像的亮度和对比度通常会提高管道帧率并减少范围。
  • 增加传感器增益允许您在不增加曝光的情况下增加亮度。它可能会降低3D稳定性,并可能降低追踪稳定性。

输入选项卡

输入选项卡包含更改原始摄像头图像的控件,然后将其传递到处理管道。有关更多详细信息,请参阅"构建反光/颜色管道"页面。

要追踪AprilTags:

  • 将"Pipeline Type"更改为"Fiducial Markers"
  • 将"Black Level"设置为零

此时,需要平衡传感器增益和曝光时间。您希望能够以尽可能小的曝光看到标签,以最小化运动模糊。 这通常需要高传感器增益设置。对于简单的2D追踪, 通常建议将传感器增益调到最大,然后从零开始增加曝光,直到目标被充分追踪。如果追踪不起作用,请确保在"标准"选项卡中选择了正确的系列。

标准选项卡

Family

选择基准/AprilTag系列类型。对于FRC,您应选择"AprilTag Classic 36h11"

Marker Size

设置机器人将遇到的标签的预期大小(以毫米为单位)。对于FRC,这应设置为165.1(2023年标签为152.4)

Detector Downscale

增加此数值将显著提升性能。这有时会导致范围减小,但成本通常很小。

ID Filters

ID过滤器允许您指定您关心的确切标签。对于大多数FRC团队,每个管道应配置为仅追踪一个标签ID。 这是一个逗号分隔的数字列表(例如"0,1")。此功能对于消除绝大多数误报很重要。

Cropping

裁剪从图像中移除内容以获得巨大的性能提升。使用NT "crop"键在比赛期间动态裁剪

Multi-Target Sorting and Grouping

这允许与标准反光管道中看到的完全相同的分组功能。在大多数游戏中,唯一需要修改的功能是"Area"过滤器,它将允许您过滤掉小标签。