Skip to content

Latest commit

 

History

History
44 lines (23 loc) · 1.66 KB

README.md

File metadata and controls

44 lines (23 loc) · 1.66 KB

Face recognition using triplet loss

Keras/Tensorflow implementation of face recognition model using triplet loss Quickstart in Colab

1. Dataset

1.1 Summary

The dataset including 84 identities collected automatically from bing image search, check download_data.py for more details.

data_distribution

1.2 Data preparation

1.2.1 Face extraction

Since the images downloaded from bing search is not suitable for training, to train the face recognition, we have to drop the face of each image in the dataset, to accomplish this, face_recognition module is used to detect face bounding boxes, then we can drop the face to train the face recognizer. However, the module can't detect the face in some images or detect wrong face (we search for Brad Pitt but sometimes we got his wife's face).

1.2.2 Train test split

16 of 84 identities are randomly selected to evaluate the model performance (unseen data) and the remains are training data. So the training and testing examples are disjoint

Model

1. Using pre-trained FaceNet (WIP)

2. Train the model from scratch

  • Pre-trained VGG16 is used to extract feature representation. The feature then is normalized using l2 normalization.

face_model

Result

  • The model archive accuracy of 62.75% on test data (16 identities)
  • T-SNE visualization of learned face embedding on test data

face_representation

Prediction with bounding boxes

chipu