ftc-docs-firstinspires-org-thvpq0.txt (30673B)
1 • [1]FIRST Official Team Resources 2 • [2]Official Game Q&A 3 4 [3] FIRST Tech Challenge Docs Logo 5 0.3.0 6 [4][ ] 7 • [7]About the FIRST Tech Challenge 8 • [8]Gracious Professionalism® 9 10 Getting Started 11 12 • [9]New Teams 13 • [10]Returning Teams 14 • [11]Coach (Administrative) Resources 15 • [12]Technical Mentor Resources 16 17 Game and Season-Specific Resources 18 19 • [13]FIRST Tech Challenge Blog 20 • [14]FIRST Tech Challenge Tech Tips 21 • [15]AI Innovation Corner 22 • [16]Competition Manual 23 • [17]Game Q&A System 24 • [18]Playing Field Resources 25 • [19]Field Coordinate System 26 27 Software Development Kit (SDK) 28 29 • [20]Laptop Requirements 30 • [21]SDK Overview 31 • [22]Updating Components 32 33 Control System Resources 34 35 • [23]Control System Introduction 36 • [24]Hardware Component Overview 37 • [25]Hardware and Software Configuration 38 • [26]FIRST Tech Challenge Self-Inspect 39 • [27]Old Self-Inspect 40 • [28]Programming Resources 41 □ [29]Programming Tutorials 42 □ [30]Supporting Documentation 43 □ [31]AprilTag Programming 44 ☆ [32]AprilTag Introduction 45 ○ [33]Introduction 46 ○ [34]What is AprilTag? 47 ○ [35]AprilTag Pose 48 ○ [36]Navigation 49 ○ [37]Annotations 50 ○ [38]AprilTag Axes 51 ○ [39]Advanced Use 52 ○ [40]Summary 53 ☆ [41]VisionPortal Overview 54 ☆ [42]Webcams for VisionPortal 55 ☆ [43]Understanding AprilTag Values 56 ☆ [44]AprilTag Localization 57 ☆ [45]AprilTag Test Images 58 ☆ [46]AprilTag Challenges in DECODE presented by RTX 59 □ [47]Vision Programming 60 □ [48]Camera Color Processing 61 □ [49]Advanced Topics 62 □ [50]Additional FIRST Website Resources 63 64 AprilTag Resources 65 66 • [51]AprilTag Introduction 67 □ [52]Introduction 68 □ [53]What is AprilTag? 69 □ [54]AprilTag Pose 70 □ [55]Navigation 71 □ [56]Annotations 72 □ [57]AprilTag Axes 73 □ [58]Advanced Use 74 □ [59]Summary 75 • [60]VisionPortal Overview 76 • [61]Webcams for VisionPortal 77 • [62]Understanding AprilTag Values 78 • [63]AprilTag Localization 79 • [64]AprilTag Test Images 80 81 CAD Resources 82 83 • [65]Computer Aided Design (CAD) 84 85 Electrostatic Discharge 86 87 • [66]Managing ESD Effects 88 89 Manufacturing 90 91 • [67]Manufacturing Methods 92 93 Team Resources 94 95 • [68]Common Team FAQs 96 • [69]Team Complimentary Software 97 • [70]Team Discounts 98 • [71]Team Resources 99 100 FTC Docs 101 102 • [72]Booklets 103 • [73]Archive 104 • [74]Site Feedback Form 105 • [75]Contributing to FTC Docs 106 107 [76]FIRST Tech Challenge Docs 108 109 • [77] 110 • [78]Programming Resources 111 • AprilTag Introduction 112 • 113 • [79] Edit on GitHub 114 115 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 116 117 AprilTag Introduction[80] 118 119 Introduction[81] 120 121 A popular camera-based technology is AprilTag, a scanned image similar to a QR 122 Code. Its effectiveness and quick set-up on custom Signal Sleeves led to wide 123 adoption in POWERPLAY (2022-2023) by FIRST Tech Challenge teams, especially 124 those programming in Java. 125 126 [82]Dual Detection 127 128 Photo Credit: Mike Silversides[83] 129 130 Those POWERPLAY teams, including those using FTC Blocks, learned how to use 131 several resources: 132 133 • AprilTag: an open-source technology for evaluating formatted images 134 135 • EasyOpenCV: a FIRST Tech Challenge-optimized interface with OpenCV, an 136 image processing library 137 138 • myBlocks: custom Blocks created in OnBot Java (OBJ) 139 140 Now these three areas are provided, or bundled, in the FIRST Tech Challenge 141 Software Development Kit (SDK), starting with version 8.2. 142 143 Namely, key capabilities of AprilTag and EasyOpenCV are available to the Robot 144 Controller (RC) and Driver Station (DS) apps, without special downloads. And 145 AprilTag features are included in FTC Blocks, without needing custom myBlocks. 146 147 The AprilTag features work on webcams and on Android RC phone cameras. A single 148 OpMode can use AprilTag and Color Processing. 149 150 In FIRST Tech Challenge, AprilTag is ready for the spotlight! 151 152 What is AprilTag?[84] 153 154 Developed at the [85]University of Michigan, AprilTag is like a 2D barcode or a 155 simplified QR Code. It contains a numeric ID code and can be used for location 156 and orientation. 157 158 [86]AprilTag Robots 159 160 AprilTags on Robots. Photo Credit: University of Michigan[87] 161 162 AprilTag is a type of visual fiducial, or fiducial marker, containing 163 information and designed for easy recognition. 164 165 [88]Tag Families 166 167 A sample of different AprilTag families[89] 168 169 The above samples represent different formats, or families. A project typically 170 uses a single AprilTag family. 171 172 FIRST Tech Challenge uses a common family called 36h11. A PDF showing the 173 numbers 0 through 20 from the 36h11 family can be downloaded here: 174 175 • [90]AprilTag PDF 0-20 176 177 Each number is the ID code of that tag. 178 179 Here’s an AprilTag representing ID code 2. The SDK software recognizes and 180 overlays the ID code onto the image (small blue rectangle ID 02). 181 182 [91]Tag02 Preview 183 184 Stream output showing the detected tag ID 02[92] 185 186 The above image shows a camera preview image, called LiveView, from a Robot 187 Controller device (Control Hub or RC phone). 188 189 The AprilTag family 36h11 has a capacity of 587 ID codes. To see them all, 190 follow this link: 191 192 • [93]https://github.com/rgov/apriltag-pdfs/tree/main/tag36h11/us_letter/ 193 100mm 194 195 The square AprilTag pattern contains smaller black and white squares, each 196 called a pixel. A 36h11 tag contains 10 x 10 pixels, including an outer border 197 of all white pixels and an inner border of all black pixels. 198 199 Tag size is measured across the outside edge of the inner border which 200 comprises the black pixels for 36h11. 201 202 [94]Tag Size 203 204 Figure demonstrating the tag size measurement[95] 205 206 The above image shows a complete AprilTag with outer white border. From the 207 36h11 family, its ID code is 42. 208 209 AprilTag Pose[96] 210 211 Beyond ID code, the new SDK also provides pose data, namely position and 212 orientation (rotation) from the camera’s point of view. This requires a flat 213 AprilTag, which was not possible with curved POWERPLAY Signal Sleeves. 214 215 Let’s look again at the camera preview image, called LiveView, from a Robot 216 Controller device (Control Hub or RC phone). 217 218 [97]LiveView Image 219 220 LiveView Image with additional markings for explanation purposes[98] 221 222 Imagine a laser beam pointing straight outward from the center of the camera 223 lens. Its 3-dimensional path appears (to the camera) as a single point, 224 indicated by the green star. You can see that the center of the AprilTag ( 225 yellow star) is offset from that “laser beam”. 226 227 That translation offset can break down into three traditional components (X, Y 228 and Z distances), along axes at 90 degrees to each other: 229 230 • X distance (horizontal orange line) is from the center, to the right 231 232 • Y distance (not shown) is from the lens center, outwards 233 234 • Z distance (vertical orange line) is from the center, upwards 235 236 The SDK provides these distances in the real world, not just reporting how many 237 pixels on the screen. Very useful! 238 239 You can also see that the AprilTag’s flat face is not parallel to the plane of 240 the camera. That rotation offset can break down into three angles about the X, 241 Y and Z axes. This is discussed further in the section below, called AprilTag 242 Axes. 243 244 In summary, the SDK evaluates the AprilTag image and performs “pose estimation” 245 , providing an estimated X, Y and Z distance between the tag and the camera, 246 along with an estimated angle of rotation around those axes. A closer or larger 247 AprilTag can yield a more accurate estimate of pose. 248 249 To provide good pose estimates, each RC phone camera or webcam requires 250 calibration data, for a specific resolution. The SDK contains such data for a 251 limited number of webcams and resolutions. Teams can generate their own data, 252 called lens intrinsics, using a provided procedure. 253 254 Navigation[99] 255 256 OpModes use AprilTag pose to achieve navigation: evaluating inputs and driving 257 to a destination. 258 259 An OpMode can use pose data to drive towards the tag, or drive to a target 260 position and orientation relative to the tag. (The new SDK provides Java Sample 261 OpModes RobotAutoDriveToAprilTagOmni.java and RobotAutoDriveToAprilTagTank.java 262 .) Another navigation possibility is mentioned below under Advanced Use. 263 264 Navigation is best done with continuous pose estimates, if the AprilTag remains 265 within the camera’s field of view. Namely, an OpMode “while() loop” should 266 regularly read the updated pose data, to guide the robot’s driving actions. 267 268 The SDK supports multiple cameras, switchable or simultaneous. This can help if 269 the robot changes direction, or you wish to navigate using another AprilTag (or 270 Color Processing). 271 272 Other sensors can also be used for navigation, such as drive motor encoders, 273 REV Hub IMU, deadwheel encoders, color/distance sensors, ultrasonic sensors, 274 and more. 275 276 It’s also possible to evaluate non-AprilTag images from the same camera and/or 277 a second camera. For example, the SDK can estimate the horizontal angle (or 278 Bearing) of an object detected with Color Processing, another vision technology 279 employed in FIRST Tech Challenge. Advanced teams might consider active camera 280 pointing control, to keep an AprilTag or other object in view. 281 282 Annotations[100] 283 284 In the preview (RC phone screen or DS Camera Stream), an official recognized 285 AprilTag will display a colored border and its numeric ID code. These 286 annotations allow easy visual confirmation of recognition: 287 288 [101]Simple Annotations 289 290 Two AprilTags with different metadata being detected and annotations displayed 291 [102] 292 293 In the above [103]DS Camera Stream preview, the left-side AprilTag was 294 recognized from a tag Library (default or customized). A Library tag has 295 pre-loaded information (called Metadata) including its tag size, which allows 296 pose estimation. These are annotated by default with a colored border. 297 298 The right-side AprilTag was not in a tag Library. It has no Metadata, so the 299 SDK can provide only its numeric ID code, shown here as ID 03. Such tags are 300 not annotated by default with a colored border. 301 302 Note: Camera Stream displays a snapshot of the camera’s view, on the Driver 303 Station device. It’s available only during the INIT phase of an OpMode, and 304 also shows any AprilTag (or Color Processing) annotations. Instructions are 305 posted here: 306 307 • [104]Camera Stream Image Preview Documentation 308 309 Optional annotations include colored axes at the tag center, and a colored box 310 projecting from the tag image: 311 312 [105]Optional Annotations 313 314 LiveView with additional annotations enabled[106] 315 316 The above image shows a preview (called LiveView) on an Android Robot 317 Controller (RC) phone. The REV Control Hub does generate an RC preview, which 318 can be seen with an HDMI external monitor, or with scrcpy which can be found 319 here: 320 321 • [107]https://github.com/Genymobile/scrcpy 322 323 AprilTag Axes[108] 324 325 The SDK now provides the underlying pose data as follows: 326 327 • Position is based on X, Y and Z distance from the camera lens to the 328 AprilTag. 329 330 • Orientation is based on rotation about those axes, using the right-hand 331 rule. 332 333 Note: the optional red-green-blue annotated axes represent the tag’s frame of 334 reference, unrelated to SDK pose data. That annotation indicates only a 335 successful AprilTag recognition. 336 337 Here are the axis designations in the new SDK: 338 339 • Y axis points straight outward from the camera lens center 340 341 • X axis points to the right, perpendicular to the Y axis 342 343 • Z axis points upward, perpendicular to Y and X 344 345 If the camera is upright and pointing forward on the robot, these axes are 346 consistent with the Robot Coordinate System used for [109]IMU navigation. 347 348 Note: these axes are different than the official AprilTag [110]definitions, 349 even from the camera’s frame of reference. 350 351 The SDK provides AprilTag rotation data as follows: 352 353 • Pitch is the measure of rotation about the X axis 354 355 • Roll is the measure of rotation about the Y axis 356 357 • Heading, or Yaw, is the measure of rotation about the Z axis 358 359 Rotation follows the traditional right-hand rule: with the thumb pointing along 360 the positive axis, the fingers curl in the direction of positive rotation. 361 362 Further discussion is provided here: 363 364 [111]Understanding AprilTag Detection Values 365 366 Note: This article does not discuss the FIRST Tech Challenge [112]Field 367 Coordinate System. 368 369 Your OpModes might relate robot orientation to the overall field or [113] 370 ‘global coordinates’ for navigation, but that’s beyond this AprilTag 371 introduction. 372 373 Advanced Use[114] 374 375 Option 1 376 377 If a tag’s position and orientation on the game field are specified in advance, 378 the tag’s pose data could be used by an advanced OpMode to calculate the 379 robot’s position on the field. This conversion math, an exercise for the 380 reader, can allow a robot to use the tag’s pose data in real-time to navigate 381 to the desired location on the field. 382 383 Option 2 384 385 Vision processing can consume significant CPU resources and USB communications 386 bandwidth. FIRST Tech Challenge teams may balance the benefits of higher 387 resolution and speed (frames-per-second) against the risk of overloading CPU 388 and bandwidth resources. The SDK 8.2 or later provides numerous tools to manage 389 this balance: 390 391 • select the camera resolution 392 393 • disable and enable the RC preview (called LiveView) 394 395 • disable and enable the AprilTag (or Color Processing) processor 396 397 • close the camera stream 398 399 • select a compressed video streaming format 400 401 • measure frames-per-second 402 403 • set decimation (down-sampling) 404 405 • select a pose solver algorithm 406 407 Option 3 408 409 Clearer camera images can improve AprilTag (and Color Processing) vision 410 processing. The SDK offers powerful webcam controls (Exposure, Gain, Focus, and 411 more), also available in FTC Blocks! These controls can be applied under 412 various lighting conditions. 413 414 Exposure and Gain are adjusted together. The SDK offers Java Sample OpMode 415 ConceptAprilTagOptimizeExposure.java. 416 417 Option 4 418 419 The frame of reference described above in AprilTag Axes is calculated and 420 provided by default in the 8.2 SDK or later. Advanced teams may prefer to 421 perform their own pose calculations, based on raw values from the AprilTag/ 422 EasyOpenCV pipeline. 423 424 Those raw values are available to Java and Blocks programmers. The Java version 425 is shown here: 426 427 for (AprilTagDetection detection : aprilTag.getDetections()) { 428 429 Orientation rot = Orientation.getOrientation(detection.rawPose.R, AxesReference.INTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES); 430 431 // Original source data 432 double poseX = detection.rawPose.x; 433 double poseY = detection.rawPose.y; 434 double poseZ = detection.rawPose.z; 435 436 double poseAX = rot.firstAngle; 437 double poseAY = rot.secondAngle; 438 double poseAZ = rot.thirdAngle; 439 } 440 441 These raw values are converted by the SDK to the default interface, as follows: 442 443 if (detection.rawPose != null) { 444 detection.ftcPose = new AprilTagPoseFtc(); 445 446 detection.ftcPose.x = detection.rawPose.x; 447 detection.ftcPose.y = detection.rawPose.z; 448 detection.ftcPose.z = -detection.rawPose.y; 449 450 Orientation rot = Orientation.getOrientation(detection.rawPose.R, AxesReference.INTRINSIC, AxesOrder.YXZ, outputUnitsAngle); 451 detection.ftcPose.yaw = -rot.firstAngle; 452 detection.ftcPose.roll = rot.thirdAngle; 453 detection.ftcPose.pitch = rot.secondAngle; 454 455 detection.ftcPose.range = Math.hypot(detection.ftcPose.x, detection.ftcPose.y); 456 detection.ftcPose.bearing = outputUnitsAngle.fromUnit(AngleUnit.RADIANS, Math.atan2(-detection.ftcPose.x, detection.ftcPose.y)); 457 detection.ftcPose.elevation = outputUnitsAngle.fromUnit(AngleUnit.RADIANS, Math.atan2(detection.ftcPose.z, detection.ftcPose.y)); 458 } 459 460 Again, further discussion is provided here: 461 462 [115]Understanding AprilTag Detection Values 463 464 Summary[116] 465 466 AprilTag is a popular camera-based technology, using a scanned image similar to 467 a QR Code. 468 469 The SDK version 8.2 or later includes key capabilities of AprilTag and 470 EasyOpenCV, a FIRST Tech Challenge-optimized interface with OpenCV for image 471 processing. These methods are packaged for convenient use by Java and Blocks 472 programmers. 473 474 By default, the SDK can detect the ID code for any AprilTag in the 36h11 475 family. 476 477 For AprilTags in a default or custom tag Library, the interface provides 478 calculated pose estimates (position and rotation) from the camera’s frame of 479 reference. The source data is also available for advanced teams. 480 481 The AprilTag features work on Android RC phone cameras, and on webcams. Each 482 camera requires calibration data, for a specific resolution, to provide good 483 pose estimates. 484 485 Multiple cameras are supported, and a single OpMode can use AprilTag and Color 486 Processing. AprilTag detection is improved with webcam Camera Controls, 487 available also in FTC Blocks. 488 489 In FIRST Tech Challenge, AprilTag is ready to take CENTERSTAGE! 490 491 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 492 493 Much credit to: 494 495 • EasyOpenCV developer [117]@Windwoes 496 497 • FTC Blocks developer [118]@lizlooney 498 499 • FTC navigation expert [119]@gearsincorg 500 501 • and the smart people at [120]UMich/AprilTag. 502 503 Questions, comments and corrections to [121][email protected] 504 505 [122] Previous [123]Next 506 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 507 © 2025 FIRST 508 509 [124]Terms of Service 510 511 [125]Privacy Policy 512 513 [126]Report an Incident 514 515 Season Presenting Sponsor RTX 516 517 References: 518 519 [1] https://ftc-resources.firstinspires.org/ftc/game 520 [2] https://ftc-qa.firstinspires.org/ 521 [3] https://ftc-docs.firstinspires.org/en/latest/index.html 522 [7] https://ftc-docs.firstinspires.org/en/latest/overview/ftcoverview.html 523 [8] https://ftc-docs.firstinspires.org/en/latest/gracious_professionalism/gp.html 524 [9] https://ftc-docs.firstinspires.org/en/latest/persona_pages/rookie_teams/rookie_teams.html 525 [10] https://ftc-docs.firstinspires.org/en/latest/persona_pages/veteran_teams/veteran_teams.html 526 [11] https://ftc-docs.firstinspires.org/en/latest/persona_pages/coach_admin/coach_admin.html 527 [12] https://ftc-docs.firstinspires.org/en/latest/persona_pages/mentor_tech/mentor_tech.html 528 [13] https://ftc-docs.firstinspires.org/en/latest/game_specific_resources/blog/blog.html 529 [14] https://ftc-docs.firstinspires.org/en/latest/tech_tips/tech-tips.html 530 [15] https://ftc-docs.firstinspires.org/en/latest/ai/innovation_corner/innovation-corner.html 531 [16] https://ftc-docs.firstinspires.org/en/latest/manuals/game_manuals/game_manuals.html 532 [17] https://ftc-docs.firstinspires.org/en/latest/game_specific_resources/ftcqa/ftcqa.html 533 [18] https://ftc-docs.firstinspires.org/en/latest/game_specific_resources/playing_field_resources/playing_field_resources.html 534 [19] https://ftc-docs.firstinspires.org/en/latest/game_specific_resources/field_coordinate_system/field-coordinate-system.html 535 [20] https://ftc-docs.firstinspires.org/en/latest/programming_resources/laptops/laptops.html 536 [21] https://ftc-docs.firstinspires.org/en/latest/ftc_sdk/overview/index.html 537 [22] https://ftc-docs.firstinspires.org/en/latest/ftc_sdk/updating/index.html 538 [23] https://ftc-docs.firstinspires.org/en/latest/programming_resources/shared/control_system_intro/The-FTC-Control-System.html 539 [24] https://ftc-docs.firstinspires.org/en/latest/control_hard_compon/index.html 540 [25] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/index.html 541 [26] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/self_inspect/new-self-inspect.html 542 [27] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/self_inspect/self-inspect.html 543 [28] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html 544 [29] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#programming-tutorials 545 [30] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#supporting-documentation 546 [31] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#apriltag-programming 547 [32] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html# 548 [33] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#introduction 549 [34] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#what-is-apriltag 550 [35] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-pose 551 [36] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#navigation 552 [37] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#annotations 553 [38] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-axes 554 [39] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#advanced-use 555 [40] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#summary 556 [41] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/visionportal_overview/visionportal-overview.html 557 [42] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/visionportal_webcams/visionportal-webcams.html 558 [43] https://ftc-docs.firstinspires.org/en/latest/apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values.html 559 [44] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_localization/apriltag-localization.html 560 [45] https://ftc-docs.firstinspires.org/en/latest/apriltag/opmode_test_images/opmode-test-images.html 561 [46] https://ftc-docs.firstinspires.org/en/latest/apriltag/apriltag_tips/decode_apriltag/decode-apriltag.html 562 [47] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#vision-programming 563 [48] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#camera-color-processing 564 [49] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#advanced-topics 565 [50] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html#additional-first-website-resources 566 [51] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html# 567 [52] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#introduction 568 [53] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#what-is-apriltag 569 [54] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-pose 570 [55] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#navigation 571 [56] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#annotations 572 [57] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-axes 573 [58] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#advanced-use 574 [59] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#summary 575 [60] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/visionportal_overview/visionportal-overview.html 576 [61] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/visionportal_webcams/visionportal-webcams.html 577 [62] https://ftc-docs.firstinspires.org/en/latest/apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values.html 578 [63] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_localization/apriltag-localization.html 579 [64] https://ftc-docs.firstinspires.org/en/latest/apriltag/opmode_test_images/opmode-test-images.html 580 [65] https://ftc-docs.firstinspires.org/en/latest/cad_resources/index.html 581 [66] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/configuring/managing_esd/managing-esd.html 582 [67] https://ftc-docs.firstinspires.org/en/latest/manufacturing/index.html 583 [68] https://ftc-docs.firstinspires.org/en/latest/faq/faqs.html 584 [69] https://ftc-docs.firstinspires.org/en/latest/sponsors/software/software.html 585 [70] https://ftc-docs.firstinspires.org/en/latest/sponsors/discounts/discounts.html 586 [71] https://ftc-docs.firstinspires.org/en/latest/team_resources/team_resources.html 587 [72] https://ftc-docs.firstinspires.org/en/latest/booklets/index.html 588 [73] https://ftc-docs.firstinspires.org/projects/ftcdocs-archive/en/latest/index.html 589 [74] https://ftc-docs.firstinspires.org/en/latest/ftc_docs/form/form.html 590 [75] https://ftc-docs.firstinspires.org/en/latest/contrib/index.html 591 [76] https://ftc-docs.firstinspires.org/en/latest/index.html 592 [77] https://ftc-docs.firstinspires.org/en/latest/index.html 593 [78] https://ftc-docs.firstinspires.org/en/latest/programming_resources/index.html 594 [79] https://github.com/FIRST-Tech-Challenge/ftcdocs/blob/main/docs/source/apriltag/vision_portal/apriltag_intro/apriltag-intro.rst 595 [80] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-introduction 596 [81] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#introduction 597 [82] https://ftc-docs.firstinspires.org/en/latest/_images/005-AprilTag-Worlds.png 598 [83] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id1 599 [84] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#what-is-apriltag 600 [85] https://april.eecs.umich.edu/software/apriltag 601 [86] https://ftc-docs.firstinspires.org/en/latest/_images/010-apriltagrobots.png 602 [87] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id2 603 [88] https://ftc-docs.firstinspires.org/en/latest/_images/020-Sample-Tags.png 604 [89] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id3 605 [90] https://ftc-docs.firstinspires.org/en/latest/_downloads/ba0d87cc0d392ad0bad054d4b81e9077/AprilTag_0-20_family36h11.pdf 606 [91] https://ftc-docs.firstinspires.org/en/latest/_images/080-CH-LiveView-ID-code.png 607 [92] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id4 608 [93] https://github.com/rgov/apriltag-pdfs/tree/main/tag36h11/us_letter/100mm 609 [94] https://ftc-docs.firstinspires.org/en/latest/_images/100-Tag-size-42.png 610 [95] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id5 611 [96] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-pose 612 [97] https://ftc-docs.firstinspires.org/en/latest/_images/200-CH-LiveView-offsets-crop.png 613 [98] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id6 614 [99] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#navigation 615 [100] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#annotations 616 [101] https://ftc-docs.firstinspires.org/en/latest/_images/280-DS-preview.png 617 [102] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id7 618 [103] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/configuring/configuring_external_webcam/configuring-external-webcam.html#image-preview 619 [104] https://ftc-docs.firstinspires.org/en/latest/hardware_and_software_configuration/configuring/configuring_external_webcam/configuring-external-webcam.html#image-preview 620 [105] https://ftc-docs.firstinspires.org/en/latest/_images/300-RC-preview.png 621 [106] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#id8 622 [107] https://github.com/Genymobile/scrcpy 623 [108] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#apriltag-axes 624 [109] https://ftc-docs.firstinspires.org/en/latest/programming_resources/imu/imu.html#axes-definition 625 [110] https://github.com/AprilRobotics/apriltag/wiki/AprilTag-User-Guide#coordinate-system 626 [111] https://ftc-docs.firstinspires.org/en/latest/apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values.html#understanding-apriltag-detection-values 627 [112] https://ftc-docs.firstinspires.org/en/latest/game_specific_resources/field_coordinate_system/field-coordinate-system.html#scope 628 [113] https://ftc-docs.firstinspires.org/en/latest/_downloads/7b8fbccb111a19eb3efa9eb3685a25fe/FTC-Global-Coordinates.png 629 [114] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#advanced-use 630 [115] https://ftc-docs.firstinspires.org/en/latest/apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values.html#understanding-apriltag-detection-values 631 [116] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/apriltag_intro/apriltag-intro.html#summary 632 [117] https://github.com/Windwoes 633 [118] https://github.com/lizlooney 634 [119] https://github.com/gearsincorg 635 [120] https://april.eecs.umich.edu/software/apriltag 636 [121] mailto:westsiderobotics%40verizon.net 637 [122] https://ftc-docs.firstinspires.org/en/latest/programming_resources/shared/managing_smartphone_rc/Managing-a-Smartphone-Robot-Controller.html 638 [123] https://ftc-docs.firstinspires.org/en/latest/apriltag/vision_portal/visionportal_overview/visionportal-overview.html 639 [124] https://ftc-docs.firstinspires.org/en/latest/tos/tos.html 640 [125] https://www.firstinspires.org/privacy-policy 641 [126] https://www.firstinspires.org/programs/youth-protection-program