# Test InsightFace model with CelebA dataset ## Method * Download CelebA dataset from http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html. This dataset contains 10177 people with 202599 images. * Go through all the pictures in the dataset, export the aligned faces and calculate their pose (pitch, yaw, roll) * Base on the pose of faces, for each person, select 1 best picture and add its feature to the database * The rest images are used to check if the model can recognize right person or not. ## Models to compare * The official Mxnet InsightFace with Resnet 100 backbone * The official Mxnet InsightFace with Resnet 50 backbone * The 3rd party Tensorflow InsightFace model with Resnet 50 backbone: [AIInAi](https://github.com/AIInAi/tf-insightface) * The current training Mxnet model with Asian Celebs dataset. This model is still training and not optimal yet. Its backbone is Resnet 50 * The 3rd party Tensorflow InsightFace model with Resnet 50 backbone: [Auroua](https://github.com/auroua/InsightFace_TF) * The 3rd party Tensorflow InsightFace model with Resnet 50 backbone: [Luckycallor](https://github.com/luckycallor/InsightFace-tensorflow) ## Result ![](https://i.imgur.com/sXlg8eQ.png) Zoom the first 10000 images ![](https://i.imgur.com/0IJGtO8.png) Zoom the first 2500 images ![](https://i.imgur.com/eUCVT4U.png) ## Some notes * The result is bad at the first 10000 images. The CelebA dataset's images are not good at this first part. The image is small and blur. * Both official Mxnet models are trained with MS1M-ArcFace (85K ids/5.8M images) * For the 3rd party AIInAi model, we don't have information about the dataset that it used to train. * The model training with Asian Celebs is not finished yet and because the training set contains only Asian faces, but we tested on CelebA with mostly faces outside Asia, so the result maybe not good. ## Next step: * Check other different face models