Ori agranat f92bf670de Source manager (#99)
* Add some config stuff, run format

* Create JacksonUtils.java

* Fix deserialization, run wpiformat

* initial work on source manager

* work on USB camera class

* wip USB Camera

* rename root folder

* added USB Camera Source

* Fix some errors, run spotless

* finished VIsion source manager

* bugfix unversioned git files and added default cam config constructor

* Apply spotless, add simpler CameraConfiguration ctor

* [WIP] unit tests

* Fixed camera mocking

* added equal test for class

* finalized test

* added another cam to test & rebase

* test bugfix

* Better handle nonexistant files

* removed camera validation and mockito

* Update WPI maven repo to dev, change to version with VideoCapture fix

* added Quirky camera class

* remove name check for cam quirk , apply spotless

* added quirk test

Co-authored-by: Matt <matthew.morley.ca@gmail.com>
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
2020-06-17 14:12:19 -04:00
2020-05-25 22:50:34 +03:00
2020-03-30 14:13:42 -04:00
2020-05-25 22:46:44 +03:00
2020-06-17 14:12:19 -04:00
2020-06-07 22:25:18 +03:00
2020-03-21 01:00:34 +02:00
2020-06-17 13:15:13 -04:00

Chameleon-Vision

CircleCI CircleCI

Chameleon Vision is free open-source software for FRC teams to use for vision proccesing on their robots.

There instructions are for compiling (contributing) and running the source-code of the project. This is NOT intended for the co-processor setup or your testing PC. To run the program normally (from a build .jar file), take a look at our ReadTheDocs documentation for installation here

These instruction are for the Chameleon Vision's backend/server in Java

To run the UI's sourcecode (optional) see the UI's readme

Hardware

Currently any 64-Bit devices (Windows, Linux and Mac OS) are supported.
32 Bit devices are not supported.

At least one USB camera (supported one is recommended)

Development setup

Prerequisites

  • Java Development Kit 11: Follow the correct instructions for your platform from AdoptOpenJDK -When running the installer, follow the given instructions and ensure that you select Add to PATH, Associate .jar, and Set JAVA_HOME variable.
  • Chameleon-Vision source code Clone via a git client or download as zip and extract the source code into a empty folder. git clone -b 3.0 https://github.com/Chameleon-Vision/chameleon-vision.git

For the co-processor(Linux system)

  • Avahi Daemon: sudo apt-get install avahi-daemon avahi-discover avahi-utils libnss-mdns mdns-scan

For the Driver Station

  • Bonjour Download and install Bonjour from here
  • VC++ Redistributable (Windows only) Download and install this

Importing to IDEA

We recommend the use of IntelliJ IDEA for running the source-code

  1. Import Project

  2. Choose the path to chameleon-server inside the copy of chameleon-vision that you cloned or downloaded

  1. Click Ok, go to File -> Project Structure -> Project -> Project SDK, and then choose JDK 11.

  2. Gradle will automatically download the necessary dependencies

Note: At this time, the program is not in a runnable state.

Authors

  • Sagi Frimer - initial work - websocket, settings manager, UI

  • Ori Agranat - main coder - project manager, vision loop, UI, websocket, networktables

  • Omer Zipory - developer - vision loop, websocket, networking, documentation, UI

  • Banks Troutman - developer - vision loop, websocket, networking, project structue

  • Matt Morley - developer - vision loop, project structue, documentation, solvePNP

Acknowledgments

License

Usage of Chameleon Vision must fall under all terms of GNU General Public License

Description
PhotonVision - FRC Vision Processing
Readme GPL-3.0 639 MiB
Languages
Java 56.5%
C++ 14.9%
Vue 9.2%
Python 7.9%
TypeScript 7.9%
Other 3.4%