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.
- 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.
-
The source code of
facenality
is infaceinsight/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.