GithubHelp home page GithubHelp logo

anwar-hegazy / machinery Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kerberos-io/machinery

0.0 2.0 0.0 235 KB

The machinery, is an image processing framework, which uses your USB camera, IP camera or Raspberry Pi cameraboard to recognize events (e.g. motion).

Home Page: https://www.kerberos.io

CMake 2.36% C++ 94.14% C 3.50%

machinery's Introduction

#KERBEROS.IO

Build Status Stories in Ready ![Join the chat at https://gitter.im/kerberos-io/hades](https://img.shields.io/badge/GITTER-join chat-green.svg)

Introduction

Kerberos is a low-budget surveillance solution created for the Rapsberry Pi, but it also works on OSX and Linux. It uses a motion detection algorithm to detect changes and stores images when motion is detected. Kerberos is open source, so you and others, can customize the source code to your needs and share it. It has a low-energy footprint when deploying on the Raspberry Pi and it's easy to install, you only need to transfer the image to the SD card and you're done.

Use your mobile phone, tablet or PC to keep an eye on your property. View the images taken by Kerberos with our responsive and user-friendly web interface. Look at the dashboard to get a graphical overview of the past days. Multiple Kerberos instances can be installed and can be viewed with only 1 web interface.

Machinery

The machinery, is a motion detection framework, that takes images from your USB-camera or PI cameraboard and makes some calculations to recognize changes/motion. When motion is detected several IO operations can be executed (save an image to disk, store information to a DB, trigger an GPIO pin, etc). This project is built for the Open Source community, thus maintenance and expansion was/is very important. Therefore the machinery is divided in four logical parts; more information can be found on the documentation website.

Developers can easily add new:

  • Algorithms to detect motion, by using the OpenCV library.
  • Create new controllers/heuristics to validate if detection was real.
  • Integrate support for other output devices (a NOSQL database, E-mail, GPIO, TCP server and other notification services)

##Installation

The machinery is mainly built for the Raspberry PI, but it also works on OSX and Linux. It should also work on Windows with little modifications to the source code and cmake files.

To built the source, you will need to have a C++ compiler and cmake installed and that's it..

git clone https://github.com/kerberos-io/machinery kerberos-io
cd kerberos-io
mkdir build && cd build && cmake .. && make && make check

This will download all the dependencies and link the executables. Notice that this can take some time, on travis-ci it takes about 5 min.

##Contribute

Want to contribute? You're a Ph.D. in Computer Vision, or an ambitious programmer who wants to take kerberos.io to the next level? Then we like to welcome you to the community. Contributions are taken very seriously, besides your code, testing and documentation is very very ... very important! We only will accept pull-request with tests and documentation of a decent level and of course if everything works as expected.

machinery's People

Contributors

cedricve avatar

Watchers

James Cloos avatar Anwar Hegazy 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.