sealhuang / FaceInsight

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FaceInsight: Extracing interesting and valuable information from Faces

Contents


Introduction

This repo provides some face-related applications and a comprehensive face recognition library (the code in this repo is mainly inherited from face.evoLVe).

  • Currently, I train a DL model to learn the relation between one's face and her/his personality. Thus the model could infer one's personality based on a face image (A demo of facenality). Some researchers have shown its feasibility, e.g., article 1, article 2, and article 3.

  • The face recognition library for face related analytics & applications, including face alignment (detection, landmark localization, affine transformation, etc.), data processing (e.g., augmentation, data balancing, normalization, etc.), various backbones (e.g., ResNet, IR, IR-SE, ResNeXt, SE-ResNeXt, DenseNet, LightCNN, MobileNet, ShuffleNet, DPN, etc.), various losses (e.g., Softmax, Focal, Center, SphereFace, CosFace, AmSoftmax, ArcFace, Triplet, etc.) and bags of tricks for improving performance (e.g., training refinements, model tweaks, knowledge distillation, etc.). For more information and updates, please see face.evoLVe.


Pre-Requisites

  • Linux or macOS
  • Python 3.7
  • PyTorch > 1.0 (for traininig & validation, install w/ pip install torch torchvision)
  • TensorFlow > 1.12 (optinal, for visualization, install w/ pip install tensorflow-gpu)
  • OpenCV 3.4.5 (install w/ pip install opencv-python)
  • bcolz 1.2.0 (install w/ pip install bcolz)

While not required, for optimal performance it is highly recommended to run the code using a CUDA enabled GPU.


Repo-Structure

  • The source code of facenality is in faceinsight/deploy/facex

  • Folder faceinsight/detection holds the code of face detection and alignment based on the work of MTCNN.

  • Folder faceinsight/proj/facetraits holds the code for tarining the personality inference model.

About


Languages

Language:Python 52.9%Language:Jupyter Notebook 41.0%Language:CSS 2.9%Language:HTML 1.8%Language:C++ 1.0%Language:Cython 0.3%Language:MATLAB 0.1%