Skip to content

SharpAI is open source stack for machine learning engineering with private deployment and AutoML for edge computing. DeepCamera is application of SharpAI designed for connecting computer vision model to surveillance camera. Developers can run same code on Raspberry Pi/Android/PC/AWS to boost your AI production development.

License

Notifications You must be signed in to change notification settings

FengWuCB/DeepCamera

 
 

Repository files navigation

What's SharpAI DeepCamera Build Status

SharpAI is open source stack for machine learning engineering with private deployment and AutoML for edge computing. DeepCamera is application of SharpAI designed for connect computer vision model to surveillance camera. Developers can run same code on Raspberry Pi/Android/PC/AWS to boost your AI production development. image

DeepCamera Architecture

architecture

Feature List

  • High accurate Face Recognition
  • Face Detection
  • Inference on ARM Mali GPU
  • Support Android TF Lite(GPU/CPU/NPU)
  • Support open source embedded linux
  • Control from mobile application
  • Management System for devices
  • Push Notification to Mobile Device
  • Object Detection
  • Distributed System based on celery
  • Plugin to process video by Shinobi CCTV
  • Application on Android to decode video with hw acc
  • Motion Detection with Android GPU
  • Lable and train from Mobile to Edge Device
  • Native raspberry pi camera support
  • Labelling server and application is down, need BYOD document API server repo
  • Image upload to AWS or on premise AWS compatiable server(MINIO)

Commercial Support

Slack

Click to join sharpai slack channel

Demo

demo

Get Started

On X86 Linux

  1. Install Docker
sudo curl -sSL https://get.docker.com | sh
  1. Install Docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
  1. Get source code
git clone https://github.com/SharpAI/DeepCamera
  1. Start container
cd DeepCamera/
./run-on-linux.sh start

On OSX

  1. Install Docker Install Docker Desktop on Mac(Offical)
  2. Get source code
git clone https://github.com/SharpAI/DeepCamera
  1. Start container
cd DeepCamera/
./run-on-mac.sh start

Connect Streaming

Through Open Source NVR

Shinobi login page(device_ip:8080):
username: [email protected]
password: SharpAI2018

Change IP configuration and camera url on the page. Detail information
If you are using other camera support streaming, please check The Shinobi NVR's document Supported Devices

Connect DeepCamera to API Server

Get device serial number

cat docker/workaipython/ro_serialno 
82f28703d001

82f28703d001 is device ID

Create User on API Server

REST API:

curl -X POST -H "Content-type: application/json" http://localhost:3000/api/v1/sign-up -d '{"username": "test11", "email": "[email protected]", "password": "xxxxxx"}'

Response:

{
  "success": true
}

Get Token of created user

REST API:

curl -X POST http://localhost:3000/api/v1/login/ -d "username=testuser&password=123456"

Response:

{
  "status": "success",
  "data": {
    "authToken": "t6QsPaU3VdbfUQMkNIf6I3MDtox29WLrPJRAKkOCfpc",
    "userId": "tiK8RYG87sGJAErdB"
  }
}

Create Group on API Server

Rest API:

Fill in X-Auth-Token and X-User-Id in previous response.

curl -X POST -H "X-Auth-Token: t6QsPaU3VdbfUQMkNIf6I3MDtox29WLrPJRAKkOCfpc" -H "X-User-Id: tiK8RYG87sGJAErdB" http://localhost:3000/api/v1/groups -d "name=group01"

Response:

{
  "groupId": "e309ff8c7a3a8ceb4011e86e"
}

Add device to Group on API Server

REST API: Replace X-Auth-Token and X-User-Id. Replace group id in requesting URL: http://localhost:3000/api/v1/groups/`e309ff8c7a3a8ceb4011e86e`/devices

curl -X POST -H "X-Auth-Token: t6QsPaU3VdbfUQMkNIf6I3MDtox29WLrPJRAKkOCfpc" -H "X-User-Id: tiK8RYG87sGJAErdB" -H "Content-type: application/json" http://localhost:3000/api/v1/groups/e309ff8c7a3a8ceb4011e86e/devices -d '{"uuid": "82f28703d001", "deviceName": "testDevice", "name":"testdevice","type": "inout"}'

Response:

{
  "success": true
}

Then restart DeepCamera service.

Rebuild Mobile App to connect to your own API Server(Doc WIP)

Setup your own travis service for CI (to build your own APK on travis)

Setup your own sign keystore, setup your own Environment

Trigger build

API Server document can be found here: SharpAI/ApiServer

About

SharpAI is open source stack for machine learning engineering with private deployment and AutoML for edge computing. DeepCamera is application of SharpAI designed for connecting computer vision model to surveillance camera. Developers can run same code on Raspberry Pi/Android/PC/AWS to boost your AI production development.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 43.6%
  • JavaScript 27.3%
  • C++ 25.4%
  • Shell 1.7%
  • CMake 1.5%
  • Dockerfile 0.3%
  • Other 0.2%