photonvision

PhotonVision is the free, fast, and easy-to-use computer vision solution for the FIRST Robotics Competition.

GPL-3.0 License

Stars
264
Committers
76

Bot releases are visible (Hide)

photonvision - v2024.3.1 Latest Release

Published by github-actions[bot] 7 months ago

First major release in way too long! Includes critical bug fixes for Orange Pi object detection crashing/showing no stream/heartbeat freezing, and a new base Orange Pi image. The new base image boots faster without networking and includes other improvements.

[!IMPORTANT]
Teams with Orange Pis will need to reflash using the v2024.3.1 image. Make sure to export your settings (and keep a backup somewhere safe) prior to doing this. If you've got a spare SD card, try to flash it instead so you've got a known-good hot-spare.

[!IMPORTANT]
The Orange Pi NetworkManager interface name changed to "netplan-zz-all-eth" -- make sure to have this selected in the dropdown
image

[!NOTE]
Teams not using Orange Pi's probably don't need to update, and base images have not changed so a reflash is not required.

Major changes

Other changes

New Contributors

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.9...v2024.3.1

photonvision - v2024.3.0

Published by mcm001 7 months ago

First major release in way too long! Includes critical bug fixes for Orange Pi object detection crashing/showing no stream/heartbeat freezing, and a new base Orange Pi image. The new base image boots faster without networking and includes other improvements.

[!IMPORTANT]
Teams with Orange Pis will need to reflash using the v2024.3.0 image. Make sure to export your settings (and keep a backup somewhere safe) prior to doing this. If you've got a spare SD card, try to flash it instead so you've got a known-good hot-spare.

[!IMPORTANT]
The Orange Pi NetworkManager interface name changed to "netplan-zz-all-eth" -- make sure to have this selected in the dropdown
image

[!NOTE]
Teams not using Orange Pi's probably don't need to update, and base images have not changed so a reflash is not required.

Known issues

  • RKNN pipeline doesn't release the letterboxed frame
  • On first boot, camera will not switch pipelines without toggling drivermode on and then off

Major changes

Other changes

New Contributors

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.9...v2024.3.0

photonvision - v2024.2.9

Published by github-actions[bot] 8 months ago

Fixes mrcal calibration bug with non-square calibration targets, and implements a incrementally expanding optimization approach to match the behavior of mrcal-calibrate-cameras.

What's Changed

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.8...v2024.2.9

photonvision - v2024.2.8

Published by github-actions[bot] 8 months ago

Addresses a bug in 2024.2.7 that prevented configs for CSI cameras being saved.

What's Changed

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.7...v2024.2.8

photonvision - v2024.2.7

Published by github-actions[bot] 8 months ago

[!CAUTION]
These is a known bug with this release that causes CSI cameras (this includes limelight and raspberry pi cameras) to not be matched to saved configs. A patch is currently in the works.

v2024.2.7

This release contains camera matching updates and other misc changes. The major addition is of the Strictly match ONLY known cameras switch in the device control card, which will ONLY match cameras by the USB port they're plugged into + (basename or USB VID/PID), and never only by the device product string. This also disables automatic detection of new cameras.

image

Major Changes

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.6...v2024.2.7

photonvision - v2024.2.6

Published by github-actions[bot] 8 months ago

v2024.2.6

Contains a pretty fundamental rewrite of camera matching logic to improve robustness. As such treat this release with a decent dose of paranoia and reach out with current run/journalctl logs if things are being weird.

We now match cameras in this priority order, with all cameras being matched by each strategy before trying the next:

  • By physical usb port path and base name and USB VID/PID
  • by physical usb port path and USB VID/PID
  • By base name only (with a toggle switch in the networking card to disable this, and create a new VisionModule instead)

We also now glive cscore the /dev/video/by-path camera path on Linux systems, pinning Photon USBCameras to a particular usb port once created instead of the video index (/dev/videoN).

What's Changed

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.5...v2024.2.6

photonvision - v2024.2.5

Published by github-actions[bot] 8 months ago

photonvision - v2024.2.4

Published by github-actions[bot] 9 months ago

What's Changed

Includes a fix for Spinel OV9281s that report duplicate video modes/calibration happening at the wrong resolution. Please create issues/drop by Discord if you still have issues!

New Contributors

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.3...v2024.2.4

photonvision - v2024.2.3

Published by github-actions[bot] 9 months ago

More small bugfixes, including reduced bandwidth on initial connection and during calibration to address instability in bandwidth limited setups.

What's Changed

New Contributors

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.2.2...v2024.2.3

photonvision - v2024.2.2

Published by github-actions[bot] 9 months ago

photonvision - v2024.2.1

Published by github-actions[bot] 9 months ago

photonvision - v2024.2.0

Published by github-actions[bot] 9 months ago

What's Changed

First big feature update of 2024! Brings (still incubating!) object detection using RKNN with a hard-coded YOLOv5 model trained on notes, and an (also new) LimeLight 3 image. Now that features work we'll be changing gears to focus on documenting new things. As always please reach out on Discord with journalctl logs if you encounter any issues!

The nitty gritty

RKNN is the neural network accelerator hardware built into rockchip CPUs using on SBCs like the Orange Pi 5. We're able to use this hardware to massively accelerate certain math operations like those needed for running ML-based object detection. The code for that lives here, and publishes to Maven. Our pre-trained note model lives here, and NeuralNetworkModelManager deals with extracting that to disk. If a file named "note-640-640-yolov5s.rknn" and labels.txt does not exist at photonvision_config/models/, it'll be extracted from the JAR -- otherwise, the one already on disk will be used. This technically allows power users to replace the model and label files with new ones without rebuilding photon, though this feature is still largely untested, too.

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.1.5...v2024.2.0

photonvision - v2024.1.5

Published by github-actions[bot] 9 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/PhotonVision/photonvision/compare/v2024.1.4...v2024.1.5

photonvision - v2024.1.4

Published by gerth2 9 months ago

CD thread

IMPORTANT
Releases 2024.1.1 through 2024.1.3 have been removed. There was a bug which caused the photonlib .jar file to be 10x its normal size.

The PhotonVision team is excited to announce the first full release for the 2024 FRC competition season! This beta cycle has been insane, with over 150 commits, 600+ files edited, and over 40,000 LOC modified in the main PhotonVision repo itself. Some of the major changes since 2023 include:

Reworked simulation support for Java and C++ featuring live camera view rendering and updated example projects
SQL-based settings database
Additional networking configurability, including arbitrary NT server location
Multi-tag pose estimation on-coprocessor
Improved camera calibration diagnostics
mrcal-enabled camera-calibration backend
Re-Enabled 36h11 tag support
Multi-camera support for identical USB cameras and CSI cameras
Raspberry Pi 5 supportPre-configured Orange Pi 5 image
Automatic Javadoc, Doxygen, and UI demo publishing
Usage reporting
Protobuf support for targeting results
Status LED support for Pi devices
Basic Python Support

Thank you!

We would like to thank all those who contributed to making this release possible and the continued development of this project. Open source projects like PhotonVision are only made possible through the effort and support from the community which we appreciate.

A big shout out to the following people for helping make this yearโ€™s release possible:

  • crschardt (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • rzblue (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • person4268 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • megalinee (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • StephenDay1 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • fovea1959 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • superpenguin612 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • mvog2501 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • calcmogul
  • srimanachanta
  • mcm001
  • bankst
  • amquake
  • gerth2
  • BytingBulldogs3539
  • r4stered
  • Technologyman00
  • MrRedness
  • mdurrani808
  • prensing
  • chiraqLa
  • auscompgeek
  • ThadHouse
photonvision - v2024.1.3

Published by github-actions[bot] 9 months ago

photonvision - v2024.1.2

Published by github-actions[bot] 10 months ago

CD thread

The PhotonVision team is excited to announce the first full release for the 2024 FRC competition season! This beta cycle has been insane, with over 150 commits, 600+ files edited, and over 40,000 LOC modified in the main PhotonVision repo itself. Some of the major changes since 2023 include:

Reworked simulation support for Java and C++ featuring live camera view rendering and updated example projects
SQL-based settings database
Additional networking configurability, including arbitrary NT server location
Multi-tag pose estimation on-coprocessor
Improved camera calibration diagnostics
mrcal-enabled camera-calibration backend
Re-Enabled 36h11 tag support
Multi-camera support for identical USB cameras and CSI cameras
Raspberry Pi 5 supportPre-configured Orange Pi 5 image
Automatic Javadoc, Doxygen, and UI demo publishing
Usage reporting
Protobuf support for targeting results
Status LED support for Pi devices
Basic Python Support

Thank you!

We would like to thank all those who contributed to making this release possible and the continued development of this project. Open source projects like PhotonVision are only made possible through the effort and support from the community which we appreciate.

A big shout out to the following people for helping make this yearโ€™s release possible:

  • crschardt (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • rzblue (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • person4268 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • megalinee (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • StephenDay1 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • fovea1959 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • superpenguin612 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • mvog2501 (๐ŸŽ‰first time contributor ๐ŸŽ‰)
  • calcmogul
  • srimanachanta
  • mcm001
  • bankst
  • amquake
  • gerth2
  • BytingBulldogs3539
  • r4stered
  • Technologyman00
  • MrRedness
  • mdurrani808
  • prensing
  • chiraqLa
  • auscompgeek
photonvision - v2024.1.1

Published by github-actions[bot] 10 months ago

PhotonVision v2024.1.1

Issue after setting static IP noted -- release yanked in favor of one with https://github.com/PhotonVision/photonvision/issues/1137

photonvision - v2024.1.1-beta-4.2

Published by github-actions[bot] 10 months ago

Dummy release for testing CI :)

photonvision - v2024.1.1-beta-4.1

Published by github-actions[bot] 10 months ago

Dummy release for testing CI :)

photonvision - v2024.1.1-beta-4

Published by github-actions[bot] 10 months ago

Dummy release for testing CI :)