Skip to content

An OpenCV based Local Binary Pattern Histogram (LBPH) face Recognition authorisation system with arduino support for door locks.

License

Notifications You must be signed in to change notification settings

rvcgeeks/Face-Recognition-Auth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rvc Face Recognition authorisation

An OpenCV based Local Binary Pattern Histogram (LBPH) face Recognition authorisation system with arduino support for door locks.

Features

  1. Supports on Raspberry Pi as well as webcam on PC
  2. Can connect arduino for servo control for door lock or barrier boom
  3. Fast and live Recognition of trained Face
  4. Multiple faces via Ids supported

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

This application was tested on Kali Linux 2019.3

  1. opencv_contrib_python (for camera interface and face Recognition)
  2. if arduino support, pyfirmata library and arduino board with atleast 2 LEDs

Deployment

The following steps will guide you setting up the libraries and launching the Id generator.

  1. Face Registration

to register a face into the system, we have two steps. I.e. dataset creation and second training and creating a model In dataset preparation, face is captured by opencv using a pretrained default haar cascade these images are then trained using LPBH and the model is saved to model.yml aside.

1.1) Dataset preparation

To create a dataset for face id '1' run,

python face_recognition.py g 1

note that face id can only be an integer. After this the webcam starts capturing images of your face and its frames are stored in datasets/(face id)/(sample no).jpg At this time, one registers multiple faces with ids 2,3,4,...

1.2) Training

To train the model run,

python face_recognition.py t

after this model.yml is created. Donot rename this file. If done modify code accordingly.

  1. Face Recognition

If arduino board is connected with the computer, it will perform the actions according to the code written if face is recognized in a separate thread to prevent delay of video capture. If not connected it wont cause any error other than a warning message of absence of arduino. To start video run

python face_recognition r

If the confidence if detection > 50% then that face is considered to be 'recognized' and the gate connected to arduino opens.

Author

  • Rajas Chavadekar

License

This project is licensed under the MIT License - see the LICENSE file for details

About

An OpenCV based Local Binary Pattern Histogram (LBPH) face Recognition authorisation system with arduino support for door locks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages