Skip to content

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

License

Notifications You must be signed in to change notification settings

richbl/go-distributed-motion-s3

Repository files navigation

Distributed Motion Surveillance Security System (DMS3)

GitHub release (latest SemVer including pre-releases) Go Report Card Codacy Badge Quality Gate Status

What Is DMS3?

DMS3Mail Event

Distributed Motion Surveillance Security System (DMS3) is a Go-based application that integrates third-party open-source motion detection applications (e.g., the Motion motion detection software package, or 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. 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