watchbot

command module
v0.0.0-...-4b72d78 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 15, 2020 License: GPL-3.0 Imports: 23 Imported by: 0

README

WatchBot Logo

Watchbot: artificial intelligence on video streams

  • Uses Movidius Neural Compute Stick plugged into a Raspberry Pi
  • If matching a label (e.g. person, dog, car), post the alert image to a Telegram channel

Other features:

  • Schedule on/off times
  • Telegram bot provides a control and configuration interface
  • Flexible control using Google PubSub messages to turn on & off
  • Video scene region of interest masking and cropping
  • Healthchecks, heartbeats, alerts when system is down
  • Auto recovery when camera connection is lost
  • Send system errors to Telegram from the main systemd journal
  • Automated restart if frame rate drops
  • Telegram rate limiting to prevent flooding

Dependencies

  • Intel Movidius NCS (original version)
  • OpenCV
  • GoCV
  • gstreamer

Developing

Watchbot needs the Movidius SDK, so it's necessary to develop on Linux. For this I have an Ubuntu VM, 16.04, with a clone of this repo, and go + deps installed there.

Basic setup steps:

  • Install Go
  • Install the Movidius SDK. Requires SDK version 1, as the Go bindings are not updated yet in 2.
  • make install on SSD mobilenet from the appzoo
  • make install on GoCV

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
app

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL