The Python implementation of low-resolution face recognition project. The backbones of the face recognition system are Alexnet and SphereFace. To let the system fit the low resolution condtion, we guide the training of low-resolution model by considering the difference between LR image's features and HR image's features.
- Alexnet is a famous CNN model for image classification. We used the pretrained Pythorch model and fine-turned it with Casia-Webface. The details of Alexnet is shown in this paper
- SphereFace is the start-of-the-art face recognition algorithm. They proposed the A-Softmax Loss to improve the performance of face recogniton. The details of SphereFace is shown in this paper. The implementation of SphereFace in Pytorch is Credit to @aaronzguan.
This is part of my final-year project at The Hong Kong Polytechinic University.
- Deep-learning framework: Pytorch
- OS: Linux
- Cuda toolkit: v9.0
- GPU: NVIDIA GeForce GTX 1080ti
- Training set: Casia-Webface
- Testing set: LFW Benchmark (View 2)
- Downsampling method: Bicubic Interpolation
The ROC curve tested with different low-resoltuion probe images are shown below. The first line is the backbone result, and the second line is the low-resolution models result.
The report and poster of this project is comming soon.