HassanAbbas92 / Facial-Recognition-using-Facenet

Implementation of facial recognition using facenets.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Facial Recognition

This code helps in facial recognition using facenets (https://arxiv.org/pdf/1503.03832.pdf). The concept of facenets was originally presented in a research paper. The main concepts talked about triplet loss function to compare images of different person. This concept uses inception network which has been taken from source and fr_utils.py is taken from deeplearning.ai for reference. I have added several functionalities of my own for providing stability and better detection.

Sourcerer

Code Requirements

You can install Conda for python which resolves all the dependencies for machine learning.

pip install requirements.txt

Description

A facial recognition system is a technology capable of identifying or verifying a person from a digital image or a video frame from a video source. There are multiples methods in which facial recognition systems work, but in general, they work by comparing selected facial features from given image with faces within a database.

Functionalities added

  1. Detecting face only when your eyes are opened. (Security measure)
  2. Using face align functionality from dlib to predict effectively while live streaming.

Python Implementation

  1. Network Used- Inception Network
  2. Original Paper - Facenet by Google

If you face any problem, kindly raise an issue

Procedure

  1. If you want to train the network , run Train-inception.py, however you don't need to do that since I have already trained the model and saved it as face-rec_Google.h5 file which gets loaded at runtime.
  2. Now you need to have images in your database. The code check /images folder for that. You can either paste your pictures there or you can click it using web cam. For doing that, run create-face.py the images get stored in /incept folder. You have to manually paste them in /images folder
  3. Run rec-feat.py for running the application.

References:

About

Implementation of facial recognition using facenets.

License:MIT License


Languages

Language:Python 100.0%