All Projects → SharpAI → Deepcamera

SharpAI / Deepcamera

Licence: mit
Open source face recognition on Raspberry Pi. 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.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Deepcamera

Arcface Multiplex Recognition
适用于复杂场景的人脸识别身份认证系统
Stars: ✭ 200 (-73.58%)
Mutual labels:  face-detection, face-recognition, mxnet
Dockerface
Face detection using deep learning.
Stars: ✭ 173 (-77.15%)
Mutual labels:  object-detection, face-detection, face-recognition
Frigate
NVR with realtime local object detection for IP cameras
Stars: ✭ 1,329 (+75.56%)
Mutual labels:  object-detection, ai, rtsp
Insightface
State-of-the-art 2D and 3D Face Analysis Project
Stars: ✭ 10,886 (+1338.04%)
Mutual labels:  face-detection, face-recognition, mxnet
Autogluon
AutoGluon: AutoML for Text, Image, and Tabular Data
Stars: ✭ 3,920 (+417.83%)
Mutual labels:  object-detection, mxnet, automl
Facerecognition
This is an implematation project of face detection and recognition. The face detection using MTCNN algorithm, and recognition using LightenenCNN algorithm.
Stars: ✭ 137 (-81.9%)
Mutual labels:  face-detection, face-recognition, mxnet
Ownphotos Frontend
Stars: ✭ 171 (-77.41%)
Mutual labels:  object-detection, face-detection, face-recognition
Insightface Just Works
Insightface face detection and recognition model that just works out of the box.
Stars: ✭ 127 (-83.22%)
Mutual labels:  face-detection, face-recognition, mxnet
iqiyi-vid-challenge
Code for IQIYI-VID(IQIYI Video Person Identification) Challenge Implemented in Python and MXNet
Stars: ✭ 45 (-94.06%)
Mutual labels:  mxnet, face-recognition, face-detection
Ownphotos
Self hosted alternative to Google Photos
Stars: ✭ 2,587 (+241.74%)
Mutual labels:  object-detection, face-detection, face-recognition
Deepstack
The World's Leading Cross Platform AI Engine for Edge Devices
Stars: ✭ 120 (-84.15%)
Mutual labels:  object-detection, face-detection, face-recognition
Getting Things Done With Pytorch
Jupyter Notebook tutorials on solving real-world problems with Machine Learning & Deep Learning using PyTorch. Topics: Face detection with Detectron 2, Time Series anomaly detection with LSTM Autoencoders, Object Detection with YOLO v5, Build your first Neural Network, Time Series forecasting for Coronavirus daily cases, Sentiment Analysis with BERT.
Stars: ✭ 738 (-2.51%)
Mutual labels:  object-detection, face-detection, face-recognition
Marvel
Marvel - Face Recognition With Android & OpenCV
Stars: ✭ 199 (-73.71%)
Mutual labels:  object-detection, face-detection, face-recognition
Face recognition
🍎 My own face recognition with deep neural networks.
Stars: ✭ 328 (-56.67%)
Mutual labels:  object-detection, face-detection, face-recognition
Libfaceid
libfaceid is a research framework for prototyping of face recognition solutions. It seamlessly integrates multiple detection, recognition and liveness models w/ speech synthesis and speech recognition.
Stars: ✭ 354 (-53.24%)
Mutual labels:  raspberry-pi, face-detection, face-recognition
Aidlearning Framework
🔥🔥AidLearning is a powerful mobile development platform, AidLearning builds a linux env supporting GUI, deep learning and visual IDE on Android...Now Aid supports OpenCL (GPU+NPU) for high performance acceleration...Linux on Android or HarmonyOS
Stars: ✭ 4,537 (+499.34%)
Mutual labels:  object-detection, face-recognition
Deepface
Deep Learning Models for Face Detection/Recognition/Alignments, implemented in Tensorflow
Stars: ✭ 409 (-45.97%)
Mutual labels:  face-detection, face-recognition
Fastocloud
Self-hosted IPTV/NVR/CCTV/Video service (Community version)
Stars: ✭ 464 (-38.71%)
Mutual labels:  ai, rtsp
Facecropper
✂️ Crop faces, inside of your image, with iOS 11 Vision api.
Stars: ✭ 479 (-36.72%)
Mutual labels:  face-detection, face-recognition
Automl
Google Brain AutoML
Stars: ✭ 4,795 (+533.42%)
Mutual labels:  object-detection, automl

Privacy is the most important issue for the AI face recognition camera. Open source and BYOD is the only way to solve privacy issue. SharpAI DeepCamera provides private deployment architecture to save all your information on your own devices.

What's SharpAI DeepCamera

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.

DeepCamera Architecture

architecture

Demo On Youtube

Demo On Youtube

Get Started on Raspberry Pi 3/4

Prepare System

Please install 32bit system (official raspbian)

Prepare Camera

Now you need to enable camera support using the raspi-config program you will have used when you first set up your Raspberry Pi. Use the cursor keys to select and open Interfacing Options, and then select Camera and follow the prompt to enable the camera. https://www.raspberrypi.org/documentation/configuration/camera.md

Prepare Docker

Reference: Installing Docker and Docker Compose on the Raspberry Pi in 5 Simple Steps

Get source code

git clone https://github.com/SharpAI/DeepCamera

Configure

edit configuration on Pi, change following environment variables to PC/Server/Cloud ip address:

docker/aws.env

AWS_END_POINT='<Server_IP>'
AWS_BUCKET=faces
AWS_READABLE_PREFIX='http://<Server_IP>:9000/faces/'

docker/servers.env

MQTT_BROKER_ADDRESS=<Server_IP>
API_SERVER_ADDRESS=<Server_IP>

Start DeepCamera

cd DeepCamera  
./run-on-rpi.sh start

on PC/Server/Cloud to setup storage and API_Server

git clone https://github.com/SharpAI/DeepCamera
cd DeepCamera
./start-cloud.sh start

You need ip address of private cloud server on next step (replace ip address to <Server_IP> on next step).
If you don't want to setup your own server for now, a test server can be used for evaluation, the ip address of test server is 165.232.62.29

Use Mobile APP to receive recognition result on Raspberry Pi

Get device serial number

cat docker/workaipython/ro_serialno 
82f28703d001

82f28703d001 is device ID.
Generate QRCode of device ID

Download and install SharpAI Mobile APP

Configure on Mobile APP

Connect to Surveillance Camera 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

Develop your own Application GUI with DeepCamera

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 -H "Content-type: application/json" http://localhost:3000/api/v1/login/ -d '{"username": "test11", "email": "[email protected]", "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.

API Server document can be found here: SharpAI/ApiServer

You can also develop/debug code on your PC How to run DeepCamera On PC

Commercial Support

Slack

Click to join sharpai slack channel

Feature List

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

Contributions

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].