Code Monkey home page Code Monkey logo

cj-vision's Introduction

CJ-Vision

Layered computer vision platform with C++ UDP networking for data transfer and embedded tools for easy deployment to UNIX-based processors.

Build Status

Build Status

Features:

  • Platform for Computer Vision (CV) applications in C++

  • Common OpenCV wrapper functions

  • Local debugging with webcam

  • Your choice in coprocessor, RPI, Jetson, Tinker Board, etc...

  • Uses layering system for programmable design

  • Debian UNIX-based deployment (uses Embedded tools for building/deploying to Debian UNIX-based systems)

  • Socket networking (sends CV data through custom socket programming https://github.com/wml-frc/UDP_TransferNT)

  • Stream MJPEG Video to browser or MJPEG Viewer

Local Setup

Installing

All platforms

  1. Clone or download the project.

Windows

  1. Download Java (JDK 11 for best support https://www.oracle.com/java/technologies/javase-jdk11-downloads.html)

  2. "Desktop development with C++" from VS required for local debugging https://visualstudio.microsoft.com/downloads/

  3. Once complete, download or clone the project either into existing code (using the lib as a submodule) or download as is. Then inside the root dir of the lib run gradlew generateFramework build If all downloaded correctly, it should read BUILD SUCCESSFUL

Linux

  1. Linux requires the build-essentials (GCC, CMake, etc... along with OpenCV)

  2. If you are running a Debian-based machine, then an easier option is to use the included bootstrap for local machines. Use sudo wget -qO - https://github.com/wml-frc/CJ-Vision/blob/master/bootstrap/bootstrapLocal.sh?raw=1 | bash

  3. Alternatively you can install it manually

# Update & Install required packages
sudo apt-get update
sudo apt-get install -y avahi-daemon libnss-mdns v4l-utils imagemagick
sudo apt-get install -y build-essential cmake cmake-curses-gui pkg-config
sudo apt-get install -y libjpeg-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libeigen3-dev libxvidcore-dev libx264-dev libgtk2.0-dev
sudo apt-get install -y libv4l-dev v4l-utils
sudo modprobe bcm2835-v4l2
sudo apt-get install -y libatlas-base-dev gfortran
  1. OpenCV will also need to be installed on your local machine to run this program. (Bootstrap script installs it for you. Skip this step if used).

Mac

  1. Download Xcode from the app store https://apps.apple.com/au/app/xcode/id497799835?mt=12

  2. You can utilize the bootstrap script using /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/wml-frc/CJ-Vision/cj-vision-2.0/bootstrap/bootstrapLocal_mac.sh)"

  3. Or you can install OpenCV manually https://medium.com/@jaskaranvirdi/setting-up-opencv-and-c-development-environment-in-xcode-b6027728003

Coprocessor

Get started with the coprocessors.

Get started with the library.

readme written by @CJBuchel, 14/10/21

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.