photonvision icon indicating copy to clipboard operation
photonvision copied to clipboard

Replace Aruco with Aruco Nano

Open Gold856 opened this issue 8 months ago • 1 comments

Description

Replaces the old Aruco detector with Aruco Nano v6. The header has been vendored in a mostly unmodified form, with a small modification to how dictionary codes are created to prevent recreating them everytime the detect function is called. The JNI files have been rewritten from https://github.com/PhotonVision/aruconano-jni due to JNI limitations (JNI_OnLoad being defined already in photon-targeting is one of them). Aruco Nano has no config options (other than the fiducal type), so the Aruco tab has been removed. Aruco Nano's accuracy is currently unknown, but it is known to be much faster than the UMich AprilTag detector, and if Aruco Nano has accuracy on par with the UMich AprilTag detector, it could replace the UMich AprilTag detector, providing a significant boost to FPS in vision pipelines.

Meta

Merge checklist:

  • [x] Pull Request title is short, imperative summary of proposed changes
  • [x] The description documents the what and why
  • [ ] If this PR changes behavior or adds a feature, user documentation is updated
  • [ ] If this PR touches photon-serde, all messages have been regenerated and hashes have not changed unexpectedly
  • [ ] If this PR touches configuration, this is backwards compatible with settings back to v2024.3.1
  • [ ] If this PR touches pipeline settings or anything related to data exchange, the frontend typing is updated
  • [ ] If this PR addresses a bug, a regression test for it is added

Gold856 avatar May 10 '25 04:05 Gold856

Should probably convert this to draft until we can better characterized noise

mcm001 avatar Jul 13 '25 21:07 mcm001