Coder Social home page Coder Social logo

chameleon-docs's Introduction

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 12: Follow the correct instructions for your platform from BellSoft
  • Chameleon-vision source code Clone via a git client or download as zip and extract the source code into a empty folder

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. Import the project as a Maven project

  1. Under JDK for importer choose the JDK 12 you downloaded earlier
  2. Maven will automatically download the necessary dependencies
  3. Run Main under src/main/java/com/chameleonvision/

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 Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International

chameleon-docs's People

Contributors

bankst avatar itayziv avatar mcm001 avatar mdurrani808 avatar modelmat avatar neel-j-dev avatar omerz7 avatar oriagranat9 avatar prateekma avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

chameleon-docs's Issues

Documentation doesn't make certain aspects of setup process clear

It could be helpful to mention that there must be code running on the robot before the Chameleon server is started in order for the network tables to function properly. I ran into this problem (documented on Chief Delphi) while trying to use Chameleon with LabView, and was unable to find any mention of this in the Chameleon documentation. If it is there and I just missed it, maybe making it more conspicuous would prevent others from also running into this?

I think it would also be helpful to mention whether it is necessary to set up the netmask and gateway in the building a 2d pipeline section and if so, give examples as to what to use.

Thanks for your work on this project, and if you need a LabView code example for the documentation I can provide one!

Merging Installation and Hardware

image

These are both rather empty sections and I believe "Supported Hardware" could be merged into the "Installation" section.

Thoughts?

How to Run Chameleon Vision on Boot with Systemd

Run on Startup

  • Create a Service
$ sudo nano /etc/systemd/system/chameleon.service
	[Unit]
	Description=Chameleon Vision
	Wants=network-online.target
	After=network-online.target

	[Service]
	Type=simple
	ExecStart=
	ExecStart=java -jar /home/pi/chameleon.jar

	[Install]
	WantedBy=multi-user.target
  • Enable the Daemon and its Dependencies
$ sudo systemctl daemon-reload
$ sudo systemctl enable systemd-networkd-wait-online.service
$ sudo systemctl start chameleon.service
$ sudo systemctl enable chameleon.service

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.