Skip to content

Add FuelVision subsystem for ML game piece detection - #4

Open
jovapo wants to merge 1 commit into
devfrom
fuel-vision
Open

Add FuelVision subsystem for ML game piece detection#4
jovapo wants to merge 1 commit into
devfrom
fuel-vision

Conversation

@jovapo

@jovapo jovapo commented Mar 16, 2026

Copy link
Copy Markdown

Summary

  • Adds FuelVision subsystem with floor-projection from camera bearing rays (real robot) and heading-based FOV filtering against Maple Sim ground truth (simulation)
  • Adds FuelVisionConstants with Arducam OV9782 camera placement, FOV values from spec sheet, and all tunable detection parameters
  • Wires up FuelVision in RobotContainer; seeds sim field with resetFieldForAuto() in autonomousInit()
  • Adds docs/FuelVisionSetup.md covering PhotonVision model options, OrangePi deployment, and offline/competition setup

Test plan

  • ./gradlew build passes clean
  • ./gradlew simulateJava — enable Auto to seed field, switch to Teleop, drive near fuel and confirm logFuelMap / logFuelMap3d populate in AdvantageScope; drive away and confirm entries age out after ~8s
  • Confirm detections stop when robot faces away from fuel (FOV filter working)
  • ./gradlew test — existing tests still pass

- FuelVision.java: floor-projection from camera bearing rays on real robot;
  heading-based FOV filter against Maple Sim ground truth in simulation;
  merge/age map with 8s timeout; getNearestFuel, removeFuelNear, clearFuelMap
- FuelVisionConstants.java: Arducam OV9782 70deg HFOV camera placement
  (front of robot, 0.5m high, 30deg down), all tunable constants
- RobotContainer: instantiate FuelVision, seed sim field with resetFieldForAuto
  in autonomousInit
- docs/FuelVisionSetup.md: PhotonVision model options, OrangePi deployment,
  offline/competition setup guide
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant