An open API service indexing awesome lists of open source software.

https://github.com/richbl/go-distributed-motion-s3

Distributed Motion Surveillance Security System (DMS3): a Go-based distributed video security system
https://github.com/richbl/go-distributed-motion-s3

camera client email go golang iot motion motion-detection motion-detector raspberry-pi raspberrypi sbc security server surveillance surveillance-event tcp video video-security-surveillance video-surveillance

Last synced: 3 months ago
JSON representation

Distributed Motion Surveillance Security System (DMS3): a Go-based distributed video security system

Awesome Lists containing this project

README

        

# Distributed Motion Surveillance Security System (DMS3)

![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/richbl/go-distributed-motion-s3?include_prereleases) [![Go Report Card](https://goreportcard.com/badge/github.com/richbl/go-distributed-motion-s3)](https://goreportcard.com/report/github.com/richbl/go-distributed-motion-s3) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/d81b7869ac134229b78105544e783667)](https://app.codacy.com/gh/richbl/go-distributed-motion-s3/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=richbl_go-distributed-motion-s3&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=richbl_go-distributed-motion-s3)

## What Is **DMS3**?


DMS3Mail Event

**Distributed Motion Surveillance Security System (DMS3)** is a [Go-based](https://golang.org/ "Go") application that integrates third-party open-source motion detection applications (*e.g.*, the [Motion](https://motion-project.github.io/ "Motion") motion detection software package, or [OpenCV](http://opencv.org/ "OpenCV"), the Open Source Computer Vision Library) into an automated distributed motion surveillance system that:

- Using a local network, wirelessly senses when someone is "at home" and when someone is "not at home" and automatically enables or disables the surveillance system
- Through the **DMS3Server**, the system coordinates video stream processing, reporting, and user notification to participating device clients (*e.g.*, a Raspberry Pi or similar) running the **DMS3Client** component which:
- Greatly minimizes network congestion, particularly during high-bandwidth surveillance events of interest
- Better utilizes device client CPU/GPU processing power: keeping stream processing on-board and distributed around the network
- Optionally, **DMS3Clients** can generate email reports for events of interest containing images or video using the available **DMS3Mail** component
- Optionally, the **DMS3Server** can display the current state of all reporting **DMS3Clients** visually through the use of the **DMS3Dashboard** component
- Works cooperatively with "less smart" device clients such as IP cameras (wired or WiFi), webcams, and other USB camera devices

## Want to Know More?

For more information about **DMS3**, check out the [DMS3 project wiki](https://github.com/richbl/go-distributed-motion-s3/wiki). The wiki includes the following sections:

- Project overview
- Use cases
- Features
- Components
- Architecture
- How **DMS3** works
- Requirements
- **DMS3** Release Notes
- Application installation
- Downloading, building, and installing the application
- Running the application
- Project roadmap
- Project license