Skip to content

Support WPILib fmap JSON format #27

@dkt01

Description

@dkt01

WPILib tools like WPICal use a json AprilTag map similar to LL .fmap files, but the two formats are not interchangeable. Some differences include:

  • LL .fmaps use 4x4 transform matrices for fiducial position and orientation, WPILib maps use translations and quaternions
  • LL .fmaps include additional "family", "size", and "unique" fields for each fiducial
  • LL .fmaps include additional "field_length", "field_width", and "type" fields for the overall map object
  • LL uses a list named "fiducials", WPILib uses a list named "tags"
  • LL uses capital ID for each fiducal, WPILib uses lowercase id

The main incompatibility is the tag pose representation since WPI tools should ignore unused fields LL uses (except for slightly different names as described in the last two bullets).
Ideally, a team should be able to use the WPICal tool to generate a calibrated field map json and when that json is uploaded to the LimeLight the file would be converted to whatever format LL needs internally.

Example 2025 Reefscape WPILib field map json
Example 2025 Reefscape LimeLight field map
LimeLight .fmap spec (slightly outdated; see LimelightVision/LimelightDocs#43)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions