Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Face recognition system for ID photos
| Date | Stars |
|---|---|
| 2026-07-24 | 375 |
| 2026-07-25 | 375 |
| 2026-07-28 | 375 |
| 2026-07-30 | 375 |
| 2026-08-06 | 375 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# *DocFace*: Matching ID Document Photos to Selfies
By Yichun Shi and Anil K. Jain
<img src="https://raw.githubusercontent.com/seasonSH/DocFace/master/figs/docface.png" width="600px">
## Update Notes
+ 09/28/2018: Added a demo code for face alignment.
+ 09/20/2018: The content of DocFace+ is added, including DIAM-Softmax, partially shared sibling networks and support for multiple ID/selfie per class.
## Contents
0. [Introduction](#introduction)
0. [Citation](#citation)
0. [Requirements](#requirements)
0. [Usage](#usage)
0. [Models](#models)
0. [Results](#results)
## Introduction
This repository includes the TensorFlow implementation of [**DocFace**](https://arxiv.org/abs/1805.02283) and [**DocFace+**](https://arxiv.org/abs/1809.05620), which is a system proposed for matching ID photos and live face photos. DocFace is shown to significantly outperform general face matchers on the ID-Selfie matching problem. We here give the example training code and pre-trained models in the paper. For the preprocessing part, we follow the repository of [SphereFace](https://github.com/wy1iu/sphereface) to align the face images using [MTCNN](https://github.com/kpzhang93/MTCNN_face_detection_alignment). The user can also use other methods for face alignment. Because the dataset used in the paper is private, we cannot publish it here. One can test the system on their own dataset.
## Citation
@article{shi2018docface+,
title = {DocFace+: ID Document to Selfie Matching},
author = {Shi, Yichun and Jain, Anil K.},
booktitle = {arXiv:1809.05620},
year = {2018}
}
@article{shi2018docface,
title = {DocFace: Matching ID Document Photos to Selfies},
author = {Shi, Yichun and Jain, Anil K.},
booktitle = {arXiv:1805.02283},
year = {2018}
}
## Requirements
1. Requirements for `Python3`
2. Requirements for `Tensorflow r1.2` or newer versions.
3. Run `pip install -r requirements.txt` for other dependencies.
4. Requirements for `Matlab 2014b` and `Caffe` for MTCNN face alignment.
## Usage
### Part 1: Preprocessing
#### 1.1 Dataset Structure
Download the [Ms-Celeb-1M](https://www.msceleb.org/download/cropped) and [LFW](http://vis-www.cs.umass.edu/lfw/lfw.tgz) dataset for training and testing the base model. Other dataset such as CASIA-Webface can also be used for training. Because Ms-Celeb-1M is known to be a very noisy dataset, we use the [clean list](https://github.com/AlfredXiangWu/face_verification_experiment) provided by Wu et al. Arrange Ms-Celeb-1M dataset and LFW dataset as the following structure, where each subfolder represents a subject:
Aaron_Eckhart
Aaron_Eckhart_0001.jpg
Aaron_Guiel
Aaron_Guiel_0001.jpg
Aaron_Patterson
Aaron_Patterson_0001.jpg
Aaron_Peirsol
Aaron_Peirsol_0001.jpg
Aaron_Peirsol_0002.jpg
Aaron_Peirsol_0003.jpg
Aaron_Peirsol_0004.jpg
...
For the ID-Selfie dataset, make sure all the foldesr in such a structure, where ID images and selfies start with "A" and "B", respectively :
Subject1
A001.jpg
B001.jpg
B002.jpg
Subject2
A001.jpg
B001.jpg
...
#### 1.2 Face Alignment
To ensure the peroformance, we align all the face images using the original MATLAB version of MTCNN following [SphereFace](http://openaccess.thecvf.com/content_cvpr_2017/papers/Liu_SphereFace_Deep_Hypersphere_CVPR_2017_paper.pdf). Here, we provide a simpler code to align a given dataset folder. To use the code, you need to install [Caffe](http://caffe.berkeleyvision.org/installation.html) for Matlab, and clone the repo of [MTCNN](https://github.com/kpzhang93/MTCNN_face_detection_alignment) and [Pdolloar](https://github.com/pdollar/toolbox). Then fill in their paths in the following lines in `align/face_detect_align.m`:
```Matlab
imglist = importdata('/path/to/input/imagelist.txt');
output_dExcerpt of 8,852 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:0fbf07e193e8f86e, topic:face-recognition, desc:face recognition
matched fp:0fbf07e193e8f86e, topic:tensorflow