Face Encoded
A complete system for face detection and recognition with real-world photos
2016
Role: Engineer
Keywords: computer vision, face recognition, variational autoencoder, viola-jones detector, neural network
Introduction
We present a complete system for face detection, recognition and alignment in real-world photos.
For detection, we use the venerable Viola-Jones detector [2], while for alignment, we use a heuristic algorithm [2,3] which relies on facial keypoint locations extracted by applying a Viola-Jones detector to a suitably preprocessed image. For recognition, we represent the face in low dimention. Finally, we get the ranked results by comparing it against the database.![](../../../face/flowchart.png)
![](../../../face/differences.png)
For detection, we use the venerable Viola-Jones detector [2], while for alignment, we use a heuristic algorithm [2,3] which relies on facial keypoint locations extracted by applying a Viola-Jones detector to a suitably preprocessed image. For recognition, we represent the face in low dimention. Finally, we get the ranked results by comparing it against the database.
![](../../../face/flowchart.png)
system flowchart
We implement three different strategies: Turk & Pentland’s Eigenfaces [1], a simple method using the latent representation of a Variational Autoencoder (VAE) [4, 5], and a novel VAE-like strategy which we call the IDVAE.![](../../../face/differences.png)
Comparison between Eigenfaces, VAE and IDVAE
GithubReferences:
[1] M. A. Turk and A. P. Pentland, “Face recognition using Eigenfaces,” in CVPR, 1991.
[2] P. Viola and M. Jones, “Rapid object detection using a boosted cascade of simple features,” in CVPR, 2001.
[3] G. Huang, M. Mattar, H. Lee, and E. G. Learned-Miller, “Learning to align from scratch,” in NIPS, 2012.
[4] D. P. Kingma and M. Welling, “Auto-encoding variational Bayes,” arXiv:1312.6114, 2013.
[5] D. J. Rezende, S. Mohamed, and D. Wierstra, “Stochastic backpropagation and approximate inference in deep generative models,” arXiv:1401.4082, 2014.