Supported Hardware
PhotonVision is developed and tested on a number of Commercial, Off-the-Shelf (COTS) vision processing hardware solutions.
Supported Cameras
PhotonVision works with Pi Cameras and most USB Cameras, the recommendations below are known to be working and have been tested. Other cameras such as webcams, virtual cameras, etc. are not officially supported and may not work. It is important to note that fisheye cameras should only be used as a driver camera and not for detecting targets.
PhotonVision relies on CSCore to detect and process cameras, so camera support is determined based off compatibility with CScore along with native support for the camera within your OS (ex. V4L compatibility if using a Linux machine like a Raspberry Pi).
Pi cameras are always recommended over USB cameras as they have lower latency and better performance compared to your average USB Camera.
Pi Camera Module V1 (General Target Tracking)
The V1 is strongly preferred over the V2 due to the V2 having undesirable FOV choices
Innomaker OV9281 Global Shutter Camera (AprilTag Tracking)
Note
Note that there are many CSI based OV9281 cameras but this is the only one that has been tested by the development team.
Arducam USB OV9281 Global Shutter Camera (AprilTag Tracking)
720p ELP Camera (Retroreflective Target Tracking)
Microsoft LifeCam HD-3000 (Driver Camera)
720p Fisheye ELP Camera (Driver Camera)
Note
If you test a camera and find that it works with PhotonVision, we encourage you to submit that camera to the performance matrix below.
Warning
The following cameras / setups are known to not work: * Using two of the same USB cameras does not currently work because it is hard to identify the two different cameras.
Most Logitech cameras (specifically the Logitech C270 HD Webcam (PN: 960-000694)) will not work with PhotonVision.
The PS3Eye needs a workaround to be usable, for more information see our Known Issues page
Most laptop integrated webcams
Supported Coprocessors
Raspberry Pi 3 / 4, with the newest variants of each being preferred (3B+ and B, respectively).
Raspberry Pi 4 is preferred for all forms of target tracking.
Orange Pi 4 / 5 will have better performance but will require more work to get working.
Mini PCs (such as Beelink N5095) have been testing and show significantly better performance than a Raspberry Pi, but require extra effort to wire to the robot / get set up. More information can be found in the set up guide here.
Other coprocessors can be used but may require some extra work / command line usage in order to get it working properly.
Performance Matrix
Please submit performance data to be added to the matrix here:
Support Levels
Support Level |
Support Qualities |
Hardware |
---|---|---|
Fully Supported |
|
|
Compatible |
|
|
Unsupported |
|
|