Coder Social home page Coder Social logo

ankurhcu / face-recognition-system Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nature1995/face-recognition-system

0.0 1.0 0.0 79.81 MB

Intelligent Facial Recognition with Django Restful IoT on Raspberry Pi

Home Page: https://sites.google.com/view/ziran

License: MIT License

Python 94.69% PowerShell 0.06% Batchfile 0.06% Roff 0.06% Makefile 0.08% Shell 0.08% CSS 4.98%

face-recognition-system's Introduction

Intelligent Facial Recognition System

GitHub release Language python Language python Build Status License

This is a project of the facial recognition with Movidius on RaspberryPi 3B+ platform. It also uses Django and Django REST framework which providing the web platform. The project would like to build a safety and intelligent face recognition system in AI era.

If you appreciate the content 📖, support projects visibility, give 👍| ⭐| 👏

Compatibility

The code is tested using Tensorflow r1.7 and Movidius NCSDK2 under Debin 2018-06-27(Kernel version:4.14) with django 2.1.5 and Python 3.5 & 3.6.

File architecture

django_venv/  # django virtual env for RPI
face_recognition_model/  # Movidius NCS code     
iot_control/  # iot control code
ran-django-template/  # django platform using my own model
requirements.txt  # requirements for run the code

How to run it

  1. Install requirements
pip install -r requirements.txt
  1. Install Neural Compute Application Zoo

    Method attached below.

  2. Install rpi-mjpg-streamer

    Method attached below.

  3. Run ran-django-template

cd ran-django-template
python manage.py runserver 0.0.0.0:8000
  1. Run face_recognition_model
cd face_recognition_model
make run
  1. Run iot_control
cd iot_control
python iot_controller.py

Admin Account

python manage.py createsuperuser

username: ranxiaolang
email: YOUR EMAIL  
password: ranxiaolang  

Access the web page though this link: http://127.0.0.1:8000/admin .

Real Product Images

image image

Requirements

  • Logitech HD Webcam C270
  • Micro SD Card 32G
  • Raspberry Pi 3 B+
  • Intel Movidius Neural Compute Stick

The code requires Python 3.5 or Python 3.6, Tensorflow 1.7 or later, as well as the following python libraries:

  • Pillow
  • django
  • django-allauth 0.37.1
  • django-widget-tweaks 1.4.3
  • pip 18.0
  • qrcode 6.0
  • setuptools 40.4.3
  • djangorestframework
  • markdown
  • django-filter

Those modules can be installed using: pip3 install xxx or pip install xxx .

Follow How to run it

Neural Compute Application Zoo

This repository is a place for any interested developers to share their projects (code and Neural Network content) that make use of the Intel® Movidius™ Neural Compute Stick (Intel® Movidius™ NCS) and associated Intel® Movidius™ Neural Compute Software Development Kit.

You can use the following url(NC App Zoo) or git command to use the ncsdk2 branch of the NC App Zoo repo:

git clone -b ncsdk2 https://github.com/movidius/ncappzoo.git

Install Django and Django REST framework

pip3 -V

sudo pip3 install -U setuptools

sudo pip3 install -U django

sudo pip3 install -U djangorestframework

sudo pip3 install -U django-filter

sudo pip3 install -U markdown

sudo pip3 install -U requests

Install Adafruit_Python_DHT library

git clone https://github.com/adafruit/Adafruit_Python_DHT.git

cd Adafruit_Python_DHT

sudo python3 setup.py install

cd

Install Adafruit_Python_BMP library

git clone https://github.com/adafruit/Adafruit_Python_BMP.git

cd Adafruit_Python_BMP

sudo python3 setup.py install

cd

Install psutil (process and system utilities)

sudo pip3 install psutil

Install rpi-mjpg-streamer

Instructions and helper scripts for running mjpg-streamer on Raspberry Pi.

A. Setup mjpg-streamer

Enable Raspberry Pi Camera module from raspi-config

$ sudo raspi-config

Install necessary packages for mjpg-streamer

$ sudo apt-get update
$ sudo apt-get install build-essential libjpeg8-dev imagemagick libv4l-dev git cmake uvcdynctrl

Build mjpg-streamer

$ sudo ln -s /usr/include/linux/videodev2.h /usr/include/linux/videodev.h
$ git clone https://github.com/jacksonliam/mjpg-streamer
$ cd mjpg-streamer/mjpg-streamer-experimental
$ cmake -DCMAKE_INSTALL_PREFIX:PATH=.. .
$ make install

B. Run mjpg-streamer

1. Clone this repository

$ git clone https://github.com/meinside/rpi-mjpg-streamer.git

2-a. Run mjpg-streamer from the shell directly

# copy & edit run-mjpg-streamer.sh to your environment or needs
$ cp rpi-mjpg-streamer/run-mjpg-streamer.sh.sample somewhere/run-mjpg-streamer.sh
$ vi somewhere/run-mjpg-streamer.sh

# then run
$ somewhere/run-mjpg-streamer.sh

2-b. Or run mjpg-streamer as a service

systemd

# copy & edit systemd/mjpg-streamer.service file,
$ sudo cp rpi-mjpg-streamer/systemd/mjpg-streamer.service.sample /lib/systemd/system/mjpg-streamer.service
$ sudo vi /lib/systemd/system/mjpg-streamer.service

# then register as a service
$ sudo systemctl enable mjpg-streamer.service

# or remove it
$ sudo systemctl disable mjpg-streamer.service

# and start/stop it
$ sudo systemctl start mjpg-streamer.service
$ sudo systemctl stop mjpg-streamer.service

C. Connect

Connect through the web browser:

image

Most modern browsers(including mobile browsers like Safari and Chrome) will show the live stream immediately.

Notice

Virtualenv

Method 1

pip3 install virtualenv   

Copy django_venv and activate

source venv/bin/activate    

Method 2

pip install -r requirements.txt

sqlite3 数据库文件db.sqlite3 权限 666

chmod 666 db.sqlite3

django 所在文件夹 权限 775

chmod 777 xxx

Citation

Just can be used for non-business projects. If you use ran-django-template, please give me a star. Thanks!

face-recognition-system's People

Contributors

nature1995 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.