追踪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"过滤器,它将允许您过滤掉小标签。