Skip to content

Face recognition pipeline based on Facenet and MTCNN including image preprocessing (denoise, dehazing,...) with image augmentation techniques

License

Notifications You must be signed in to change notification settings

transybao1393/face-recognition-pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Face Recognition Pipeline

Series: One step to SOTA

From 1 image to edge face recognition.

Why this pipeline shine?

Imagine you have limited resources, you want a realtime solution to serve face recognition model for specific person. This pipeline will have you to achieve that goal with speed and accuracy. With just only 1 image for input, you will have a model with realtime running and ready to be served in edge devices (cameras, mobile phone,...)

Face recognition pipeline

Installation steps

  1. git clone https://github.com/transybao1393/face-recognition-pipeline .
  2. Follow Before doing anything part
  3. Running steps

Before doing anything

  1. Download and create models to mtcnn/models folder from URL https://drive.google.com/file/d/1TTdqNEqYjWTTMYGxm8IT6t41mRef-5Yu/view?usp=sharing
  2. Create folder mtcnn/training_data/processed and mtcnn/training_data/raw
  3. Create folder /preview
  4. Create folder /video

Running steps

Please follow instruction in Makefile

Next steps

  • Multi processing and even better multithreading implementation for better memory and CPU usage.
  • Python generator pipeline to optimize memory managment.
  • Cython / Rust migration
  • Improve speed and accuracy when multiple model recognition
  • Image Ingestion layer to improve caching and data serving

Support me

"Buy Me A Coffee"

License

This project is licensed under the BSD-3-Clause License - see the LICENSE.md file for details