Skip to main content

Face Recognition

Project description

Face Recognition

Simple library to recognize faces from given images

Face Recognition pipeline

Below the pipeline for face recognition:

  • Face Detection: the MTCNN algorithm is used to do face detection
  • Face Alignement Align face by eyes line
  • Face Encoding Extract encoding from face using FaceNet
  • Face Classification Classify face via eculidean distrances between face encodings

How to install

pip install git+https://github.com/paoloripamonti/face-recognition

How to train custom model

Initialize model

from face_recognition import FaceRecognition

fr = FaceRecognition()

Train model with pandas DataFrame:

fr = FaceRecognition()

fr.fit_from_dataframe(df)

where 'df' is pandas DataFrame with column person (person name) and column path (image path)

Train model with folder:

fr = FaceRecognition()

fr.fit('/path/root/')

the root folder must have the following structure:

root\
    Person_1\
        image.jpg
        ...
        image.jpg
    Person_2\
        image.jpg
        ...
        image.jpg
    ...
        

Save and load model

you can save and load model as pickle file.

fr.save('model.pkl')
fr = FaceRecognition()

fr.load('model.pkl')

Predict image

fr.predict('/path/image.jpg')

Recognize faces from given image. The output is a JSON with folling structure:

{
  "frame": "image data", # base64 image with bounding boxes
  "elapsed_time": time, # elapsed time in seconds
  "predictions": [
      {
        "person": "Person", # person name
        "confidence": float, # prediction confidence
        "box": (x1, y1, x2, y2) # face bounding box
      }
  ]
}

Example

For more details you can see: https://www.kaggle.com/paoloripamonti/face-recogniton

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for facenet-face-recognition, version 0.1
Filename, size File type Python version Upload date Hashes
Filename, size facenet-face-recognition-0.1.tar.gz (5.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page