Coder Social home page Coder Social logo

alex-idk / photonvision Goto Github PK

View Code? Open in Web Editor NEW

This project forked from photonvision/photonvision

0.0 0.0 0.0 126.65 MB

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

Home Page: https://photonvision.org

License: GNU General Public License v3.0

Shell 0.44% C++ 13.40% C 0.03% Java 65.55% TypeScript 10.10% HTML 0.01% Vue 7.96% SCSS 0.02% Python 2.48% Batchfile 0.01%

photonvision's Introduction

Photon Vision

CI codecov 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.

A copy of the latest Raspberry Pi image is available here. A copy of the latest standalone JAR is available here. If you are a Gloworm user you can find the latest Gloworm image 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.

Authors

Gradle Arguments

Note that these are case sensitive!

  • -PArchOverride=foobar: builds for a target system other than your current architecture. Valid overrides are:
    • linuxathena
    • linuxarm32
    • linuxarm64
    • arm32
    • arm64
    • x86-64
    • x86
  • -PtgtIp: Specifies where ./gradlew deploy should try to copy the fat JAR to
  • -Pprofile: enables JVM profiling

Building

Gradle is used for all C++ and Java code, and NPM 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. The projects currently available include:

  • photonlib-java-examples:
    • aimandrange:simulateJava
    • aimattarget:simulateJava
    • getinrange:simulateJava
    • simaimandrange:simulateJava
    • simposeest:simulateJava
  • photonlib-cpp-examples:
    • aimandrange:simulateNative
    • getinrange:simulateNative

To run them, use the commands listed below. Photonlib must first be published to your local maven repository, then the copyPhotonlib task will copy the generated vendordep json file into each example. After that, the simulateJava/simulateNative task can be used like a normal robot project. Robot simulation with attached debugger is technically possible by using simulateExternalJava and modifying the launch script it exports, though unsupported.

~/photonvision$ ./gradlew publishToMavenLocal

~/photonvision$ cd photonlib-java-examples
~/photonvision/photonlib-java-examples$ ./gradlew copyPhotonlib
~/photonvision/photonlib-java-examples$ ./gradlew <example-name>:simulateJava

~/photonvision$ cd photonlib-cpp-examples
~/photonvision/photonlib-cpp-examples$ ./gradlew copyPhotonlib
~/photonvision/photonlib-cpp-examples$ ./gradlew <example-name>:simulateNative

Out-of-Source Dependencies

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

Acknowledgments

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

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.

Additional packages

For now, using mrcal requires installing these additional packages on Linux systems:

sudo apt install libcholmod3 liblapack3 libsuitesparseconfig5

Documentation

photonvision's People

Contributors

oriagranat9 avatar mcm001 avatar bankst avatar omerz7 avatar gerth2 avatar srimanachanta avatar sagifrimer avatar pietroglyph avatar amquake avatar mdurrani808 avatar prateekma avatar calcmogul avatar crschardt avatar bytingbulldogs3539 avatar alex-idk avatar neel-j-dev avatar realsaddy avatar shueja avatar agasser avatar rzblue avatar 1revenger1 avatar r4stered avatar cttdev avatar auscompgeek avatar hadley31 avatar thetriplev avatar prensing avatar lavirz avatar sarah-e-c avatar person4268 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.