amquake
5b2be119e7
[photon-lib] Cleanup simulation Rotation3d usage ( #982 )
2023-10-25 18:19:48 -07:00
Sriman Achanta
63147786b9
Fix MacOS OpenCV library loading and use wpi buildTools versions ( #978 )
...
* Bump to beta 2
* Reduce copy paste spam going forwards
* Bump gradle
* oops
* fix gradlew
* update gradle wrapper props
* remove unused imports
* Update node task
* Fix shadowjar
* fix more deps
* ?
* core works
* revert changes to index
* Formatting fixes
* Update config.gradle
* Fix PhotonLib gradle
* fix tests and sim loading native libraries
* re-enable macos build
* fix?
* Update build.gradle
---------
Co-authored-by: Matt <matthew.morley.ca@gmail.com >
2023-10-25 20:27:56 -04:00
Matt
47bd077bbb
Run multitag on coprocessor ( #816 )
2023-10-17 10:20:00 -04:00
amquake
f1cadc1e1e
[WIP] Simulation Overhaul ( #742 )
...
### What does this do?
- Deprecates previous sim classes
- Has a `CameraProperties` class for describing a camera's basic/calibration info, and performance values for simulation. Calibration values can be loaded from the `config.json` in the settings exported by photonvision.
- `OpenCVHelp` provides convenience functions for using opencv methods with wpilib/photonvision classes, mainly to project 3d points to a camera's 2d image and perform solvePnP with the above camera calibration info.
- `TargetModel`s describe the 3d shape of a target, both for projecting into the camera's 2d image and use in solvePnP.
- `PhotonCameraSim` uses camera properties to simulate how 3d targets would appear in its view, and has simulated noise, latency, and FPS. For apriltags, the best/alternate camera-to-target transform is also estimated with solvePnP.
- `VideoSimUtil` has helper functions for drawing apriltags to a simulated raw and processed MJPEG stream for each camera using the projected tag corners.
- `VisionSystemSim` stores `VisionTargetSim`s and `PhotonCameraSim`s, and is periodically updated with the robot's simulated pose. When updating, camera sims are automatically processed and published with their visible targets from their respective poses with proper latency.
### What's still not working?
- Mac Arm builds are broken
- More examples
- Update website/docs
2023-06-18 18:54:12 -04:00
Matt
5b86360b9b
Multi-tag pnp in robot code ( #787 )
...
---------
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com >
Co-authored-by: Joseph Farkas <16584585+MrRedness@users.noreply.github.com >
2023-02-13 17:57:01 -05:00
Matt
6886663688
Robustify setting pipeline index ( #790 )
2023-02-08 21:07:12 -05:00
Matt
f6e3c9b3ee
Fix desync between web UI and NT ( #778 )
...
Actually calls VisionModule::setPipeline when changing pipelines (needed to change video modes)
2023-01-29 23:30:34 -05:00
Matt
967be84b4b
Expose detected tag corners ( #702 )
...
Removes GetCorners, replaces with getMinAreaRectCorners and getDetectedCorners
2023-01-06 22:20:27 -05:00
Matt
087429dab9
[Workaround] Publish rawBytes as periodic ( #707 )
...
Closes #704 -- addressed by upstream PR https://github.com/wpilibsuite/allwpilib/pull/4903 (not released yet)
2023-01-06 17:53:19 -05:00
shueja-personal
bb63af601d
Update to wpilib 2023 beta 7 ( #607 )
...
We now need platform specific jars -- reworks actions to support that. Currently only generates 32 bit pi images.
2022-12-16 20:05:23 -05:00
Drew Williams
643db9c435
Add check for packet of incorrect length ( #629 )
...
Co-authored-by: Matt <matthew.morley.ca@gmail.com >
2022-12-08 19:22:31 -05:00
shueja-personal
916431b4ff
JSONify the bundled 3D geometry ( #578 )
...
Co-authored-by: Matt M <matthew.morley.ca@gmail.com >
2022-11-09 14:00:46 -05:00
Noah
7dd1719fbd
Expose NT entry change time in PhotonLib ( #562 )
...
Adds target change timestamp to PhotonPipelineResult
Co-authored-by: Matt <matthew.morley.ca@gmail.com >
2022-11-07 13:09:55 -05:00
Matt
2d7a88e231
Expose both pose solutions ( #521 )
...
* Half-add second pose
* add c++
* run wpiformat
* Fix c++
2022-10-22 06:42:45 -05:00
Matt
2c6b0ddac3
Expose pose ambiguity ( #483 )
...
* Expose pose ambiguity
* Run spotless
* Add tooltips and expose number of iterations
2022-10-08 09:27:00 -04:00
shueja-personal
a764ace7f2
Initial AprilTag support ( #458 )
...
(Very) beta AprilTag support in PhotonVision. Disables Picam GPU acceleration until we can debug auto exposure in the MMAL driver.
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com >
Co-authored-by: Matt <matthew.morley.ca@gmail.com >
Co-authored-by: Chris Gerth <gerth2@users.noreply.github.com >
Co-authored-by: Chris <chrisgerth010592@gmail.com >
Co-authored-by: mdurrani808 <mdurrani808@gmail.com >
2022-09-28 21:21:41 -04:00
Tyler Veness
9893cf1f7e
Update photonlib and photonlib example license headers to MIT ( #395 )
2022-01-20 22:35:28 -05:00
Matt
3ad476bc28
Send corners of min area rectangles ( #382 )
...
Adds a new corners entry to targets. Breaks byte-packed backwards compatibility.
Co-authored-by: Tyler Veness <calcmogul@gmail.com >
2022-01-10 20:31:36 -08:00
Tyler Veness
46fa17dfd8
Upgrade spotless and shadow ( #385 )
...
Fixes Log4J vulnerability
2022-01-10 11:56:45 -08:00
Tyler Veness
5ca39e7f84
Upgrade to Gradle 7.2 and WPILib 2022 ( #316 )
2021-11-21 20:22:56 -05:00
Tyler Veness
798b8e398a
Remove hasTargets member variable and fix docs warnings ( #283 )
...
hasTargets is redundant because the same information can be obtained by
checking the size of the targets array.
2021-09-03 22:19:38 -04:00
Banks T
1e715ce4bb
Sim target sorting and "easy" NT entries ( #262 )
...
* Typo fixes, add target sorting
* Add easy NT entries
* spotttttttttttttttttlessssssssssssss
* Run wpiformat
* Fix return on no targets
* formatting hell 2 electric boogaloo
Co-authored-by: Matt <matthew.morley.ca@gmail.com >
2021-03-23 12:47:26 -04:00
Matt
2e1b3d0f83
Add Photonlib ( #231 )
...
Merges Photonlib into Photonvision, along with the Photonlib code examples. Also creates a new PhotonTargeting library teams can depend on.
2021-01-16 20:41:47 -08:00