GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - PhotonVision/photonvision: PhotonVision is the free, fast, and easy-to-use computer vision solution for the FIRST Robotics Competition.

BranchesTags
Open more actions menu

Latest commit

 

History

2,368 Commits
2,368 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
.vscode
.vscode
 
 
ExternalLicenses
ExternalLicenses
 
 
devTools
devTools
 
 
docs
docs
 
 
gradle/wrapper
gradle/wrapper
 
 
photon-client
photon-client
 
 
photon-core
photon-core
 
 
photon-docs
photon-docs
 
 
photon-lib
photon-lib
 
 
photon-serde-tests
photon-serde-tests
 
 
photon-serde
photon-serde
 
 
photon-server
photon-server
 
 
photon-targeting
photon-targeting
 
 
photonlib-cpp-examples
photonlib-cpp-examples
 
 
photonlib-java-examples
photonlib-java-examples
 
 
photonlib-python-examples
photonlib-python-examples
 
 
scripts
scripts
 
 
shared
shared
 
 
test-resources
test-resources
 
 
website
website
 
 
.clang-format
.clang-format
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.nvmrc
.nvmrc
 
 
.python-version
.python-version
 
 
.readthedocs.yaml
.readthedocs.yaml
 
 
.wpiformat
.wpiformat
 
 
.wpiformat-license
.wpiformat-license
 
 
AGENTS.md
AGENTS.md
 
 
CLAUDE.md
CLAUDE.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
build.gradle
build.gradle
 
 
codecov.yml
codecov.yml
 
 
gradle.properties
gradle.properties
 
 
gradlew
gradlew
 
 
gradlew.bat
gradlew.bat
 
 
settings.gradle
settings.gradle
 
 

Repository files navigation

PhotonVision

Discord

PhotonVision is the free, fast, and easy-to-use computer vision solution for the FIRST Robotics Competition. You can read an overview of our features on our website. You can find our comprehensive documentation here.

The latest release of platform-specific jars and images is found here.

If you are interested in contributing code or documentation to the project, please read our getting started page for contributors and join the Discord to introduce yourself! We hope to provide a welcoming community to anyone who is interested in helping.

Documentation

  • Our main documentation page: docs.photonvision.org
  • Photon UI demo: demo.photonvision.org
  • Javadocs: javadocs.photonvision.org
  • C++ Doxygen: cppdocs.photonvision.org

Authors

Building

Gradle is used for all C++ and Java code, and pnpm is used for the web UI. Instructions to compile PhotonVision yourself can be found in our docs.

You can run one of the many built in examples straight from the command line, too! They contain a fully featured robot project, and some include simulation support. The projects can be found inside the photonlib-java-examples and photonlib-cpp-examples subdirectories, respectively. Instructions for running these examples directly from the repo are found in the docs.

Gradle Arguments

Note that these are case sensitive!

  • -PArchOverride=foobar: builds for a target system other than your current architecture. Valid overrides are:
    • winx86-64
    • winarm64
    • macx86-64
    • macarm64
    • linuxx86-64
    • linuxarm64
    • linuxathena
  • -PtgtIP: Specifies where ./gradlew deploy should try to copy the fat JAR to
  • -PtgtUser: Specifies custom username for ./gradlew deploy to SSH into
  • -PtgtPw: Specifies custom password for ./gradlew deploy to SSH into
  • -Pprofile: enables JVM profiling
  • -PwithSanitizers: On Linux, enables -fsanitize=address,undefined,leak

If you're cross-compiling, you'll need the WPILib toolchain installed. This must be done via Gradle: for example ./gradlew installArm64Toolchain or ./gradlew installSystemCoreToolchain

Out-of-Source Dependencies

PhotonVision uses the following additional out-of-source repositories for building code.

  • Base system images for supported coprocessors: https://github.com/PhotonVision/photon-image-modifier
  • C++ driver for Raspberry Pi CSI cameras: https://github.com/PhotonVision/photon-libcamera-gl-driver
  • JNI code for mrcal: https://github.com/PhotonVision/mrcal-java
  • JNI code for RKNN: https://github.com/PhotonVision/rknn_jni
  • JNI code for Rubik Pi NPU: https://github.com/PhotonVision/rubik_jni

Acknowledgments

PhotonVision was forked from Chameleon Vision. Thank you to everyone who worked on the original project.

  • WPILib - Specifically allwpilib and their build of OpenCV.
  • Apache Commons - Specifically Commons IO
  • picocli
  • diozero
  • EJML
  • Javalin
  • JSON
  • Avaje - Specifically jsonb
  • MessagePack for Java
  • OSHI
  • QuickBuffers
  • SQLite JDBC
  • ZT ZIP

License

PhotonVision is licensed under the GNU General Public License.

Meeting Notes

Our meeting notes can be found in the wiki section of this repository.

About

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

photonvision.org

Topics

computer-visionfrcjavaopencvvisionvision-processingwpilib

Resources

Readme
GPL-3.0 license
Activity
Custom properties

Stars

440 stars

Watchers

20 watching

Forks

327 forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.