/face-id-backend

This is demo of face recoginition system backend, based on openface, django-rest, dlib and opencv, img encoded in base64

Primary LanguagePython

face-id-backend

This is demo of face recoginition system backend. We heavily depend on some open source code, test on some implementations on benchmark dataset and finally we integrate them into our backend system.

Frontend is developed by Gao Zhongye.

Requirements

  • Anaconda 5.0 Python 3.6.0
  • Pytorch 0.2.0
  • tensorflow 1.2.0
  • keras 2.1.2
  • openface
  • dlib 19.7.0
  • django 1.11.7
  • djangorestframework 3.7.3

Code Structure

The project is mainly based on Django project structure.

  • face_algorithm: core face recognition algoritm
  • face_id_backend: django configuration
  • face_recognition: django app
  • media: face img and feature vector file
  • test_json: json files, used in testing communication
  • manage.py
  • README.md

face algorithm

  • center loss: untrained
  • facenet tensorflow version: on testing
  • joint bayes: train on openface and VGGface feature vector
  • light cnn: on testing
  • MTCNN keras version: conflict with TensorFlow
  • MTCNN pytorch version: implement with sphereface
  • saim 2-channel CNN: untrained
  • sphereface pytorch version: test on LFW successfully
  • VGG face keras version: implement on django system, current best
  • openface: implement on django system
  • dlib align: implement on django system

Dataset

LFW usage

Usage

Start Django service

cd face_id_backend
python manage.py runserver 0.0.0.0:8888

test on LFW

cd face_id_backend/face_algoritm
python lfw.py

you need to modify code and specify model you want to test, we will add argparser in the future.

Reference

Papers

Open source Code

Concat

zhangxu0307@163.com