PhotonVision 2024 Beta 3 release!

PhotonVision Beta 2024

We are happy to (finally!) announce the release of the 2024 Beta version of PhotonVision! We’ve been hard at work adding new features and increasing software reliability over the last few months. Changes include:

  • Frontend styling fixes and version upgrades to buy down tech debt
  • Camera snapshot button in UI (with snapshot viewing in beta 4 or the latest dev build)
  • Multi-Tag Pose Estimation running on the vision coprocessor
  • Updated version of the original AprilTag detector and added support for an alternative AprilTag detector (ArUco), which should increase fps and decrease latency
  • High fidelity simulation support for AprilTags
  • Increased robustness of networking settings using NetworkManager
  • Fixed issue where users could randomly lose settings
  • Squashed countless other bugs

|467px;x262px;

https://www.chiefdelphi.com/uploads/default/original/3X/2/4/24fbd6d3fab248dd7a30ca7288b1f43deeef8cb5.jpeg|576px;x295px;

This release is for use with 2024 WPILib beta, NOT the 2023 version.

Get It Here

Note (please read!):

We’ve made a lot of changes since the 2023 season and expect that there are bugs. When you run into any issue, big or small, we ask that you:

The more people that we get to test out PhotonVision in the offseason means that less teams will experience issues within the season itself. The most important part is letting us know when you run into an issue, as we can’t fix issues we don’t know about!

Documentation:

This is a beta release, so the docs are currently under development. The installation instructions are the same as usual and can be found here. We hope that the documentation will be completed before the start of the season and will include:

  • Documenting the new simulation system (work in progress)
  • Renewed hardware recommendations
  • Improved documentation on 3D Geometry
  • Restructuring documentation to make things easier for beginner and advanced users using AprilTags

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. This is a volunteer-run project, and community code contributions, beta testing, and feedback have been invaluable in making PhotonVision what it is. In particular, say hello to everyone who’s contributed for the first time since 2023!

We’re always looking for the latest and greatest features to potentially add to PhotonVision, including, but not limited to:

Our time is limited to implement many of these features, but if you are interested in any of these features being a part of PhotonVision, we encourage you to contribute and turn these ideas into reality! We are more than willing to help walk you through the development process and how to get started. If interested, please join our discord (link below)!

Community:

Join us on Discord for questions, feedback, suggestions, et cetera.

PhotonVision Docs

23 Likes

Understandablely the pi 5 just came out so it may not be supported yet, but do you know if anything should work with a pi 5?

We haven’t upgraded our base Pi image yet so I’d assume that won’t work, and none of us developers have a Pi 5 to test with. But you could try installing the latest Raspberry Pi OS and following our debian installer steps? CSI cameras probably won’t work until someone recompiles our libcamera driver against the latest pi os with pi 5 drivers and someone adds a enum entry here.

5 Likes

OpenCV loading was recently broken on robot projects, which has been fixed in the latest PV dev version. This means using the new simulation functionality or certain photonlib features will crash on startup-- until the next release, you can replace all instances of “version” in your photonlib.json with "dev-v2024.1.1-beta-3-2-g524b1351" (or the latest dev version) to get around this.

1 Like

Sneak peek on docs videos for example simulation projects:

6 Likes

I can confirm that with a little bit of install work, installing java and running the install script you can have it working on the pi5 with USB cameras. I attempted working on the csi camera but it seems like there is a kernel bug that needs to be fixed first. Testing with a USB ov9281 shows at 1280*800 around 40fps with 20ms latency with the aruco method.

7 Likes

Is that just stock or with an overclock?

Stock

1 Like

Does this mean that the coprocessor is computing the global pose of the robot, and the coprocessor knows the AprilTag field layout?

1 Like

Yes to both, and it seems to work well.

2 Likes

Technically the coprocessor just calculates the global pose of the camera, but yes, this offboarding takes a significant load off the Rio.

2 Likes

Cool, so the RIO is just doing the transform based on the camera location, to get the location of the center of the robot.

1 Like

Is there anyway to get the 2023 library? We are working on implementing PhotonVision into our code, but haven’t yet updated to 2024.

If you want to use an older photonlib version, you can change the instances of "version" in the json file to the desired release-- for the last 2023 version, this is "v2023.4.2".

We tried that. Maybe we did something wrong, but this is the errors we get

Code: GitHub - Trial-N-Terror-FRC-7900/YAGSL-Max-Swerve-Example at Vision2.0

Does the same error message show up in Gradle? That’s usually a vscode only spurious thing that goes away if you clean the language server workspace

Never mind. It just cant do the simulation. Thank you. It is working now!!

I am having issues with two cameras connected. They are both identified in the GUI and sometimes they work fine - I was able to calibrate both of them, and sometimes i can’t get any video out of them. Thought it might be a power issue, upsized the supply, same issue. This is running on an orange pi 5.
I saw another post with similar issues from 2023 verision, but no solution. Any idea?

I had the same issue last night and asked on the photonvision discord, it’s a fixed issue they just haven’t cut a new release sinve they fixed it. You can either go to the releases page and get the latest development release or compile the master branch and that issue will be fixed.

Also if you’re doing multiple cameras I believe it’s reccomended to use arducams and rename each one to something different.

1 Like

yes… i saw that in the discord. Dev fixes the multiple camera issues, but i get SQL Errors trying to save the settings, revert back and the SQL errors go away, So still an issue.

I am using the arducams and have renamed them.