Skip to content

HalmstadUniversityBiometrics/SqueezeFacePoseNet-Lightweight-Face-Recognition

Repository files navigation

SqueezeFacePoseNet: Lightweight Face Verification Across Different Poses for Mobile Platforms

This repository is the original implementation of the paper SqueezeFacePoseNet: Lightweight Face Verification Across Different Poses for Mobile Platforms, published at ICPR 2020 (International Conference on Pattern Recognition) - WMWB workshop (IAPR TC4 Workshop on Mobile and Wearable Biometrics.

Please consider citing the paper if you use in your research the models shared here: Alonso-Fernandez, F., Barrachina, J., Hernandez-Diaz, K., Bigun, J. (2021). SqueezeFacePoseNet: Lightweight Face Verification Across Different Poses for Mobile Platforms. In: , et al. Pattern Recognition. ICPR International Workshops and Challenges. ICPR 2021. Lecture Notes in Computer Science(), vol 12668. Springer, Cham. https://doi.org/10.1007/978-3-030-68793-9_10

The model is an implementation of the SqueezeNet CNN (a very lightweight architecture of just 4.41MB) to carry out pose-invariant face recognition. It is trained on the MS-Celeb-1M and VGGFace2 databases (6.47M images in total). The training is done following the double fine-tuning implementation suggested in the paper VGGFace2: A dataset for recognising faces across pose and age.

To achieve an even smaller model (2.5MB), we have also replaced standard convolution with depth-wise separable convolution (DWC) in all 3×3 filters, at the cost of a slight worse accuracy.


squeezefaceposenet_networks_evaluated


squeezefaceposenet_evaluation_protocols


squeezefaceposenet_verification_results_vgg


Requirements

  • Matlab software (tested in r2019b and r2020b)

Usage

  • See usage.m file

Pre-processing

  • Input images must be of 113 x 113. We follow the tight crop of VGGFace2, with an extra 30% increase of the face bounding box, so some contextual information is added aound the face. See attached examples and the figures above to see how the input images should look like.
  • The network is trained with images with some random displacement in horizontal and vertical dimensions, so it should be somehow tolerant to non-centered faces, althought it has not been tested (during testing, we only employ the center crop of the bounding box given by the MTCNN detector) See the paper for more details.

About

SqueezeFacePoseNet: Lightweight Face Verification Across Different Poses for Mobile Platforms

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages