2019.07.14
Saat ini, saya telah lulus dari kampus dan melakukan pekerjaan lain. Jadi proyek ini mungkin tidak diperbarui lagi.
Implementasi algoritma pengenalan wajah populer dalam kerangka kerja Pytorch, termasuk arcface, cosface dan sphereface dan sebagainya.
Semua kode dievaluasi pada pytorch 0.4.0 dengan Python 3.6, Ubuntu 16.04.10, CUDA 9.1 dan Cudnn 7.1. Sebagian dievaluasi pada Pytorch 1.0.
Untuk pelatihan CNN, saya menggunakan Casia-Webface dan membersihkan MS-Celeb-1m, disejajarkan oleh MTCNN dengan ukuran 112x112. Untuk pengujian kinerja, saya melaporkan hasil pada LFW, AGEDB-30, CFP-FP, identifikasi dan verifikasi Megaface Rank1.
Untuk AGEDB-30 dan CFP-FP, gambar yang disejajarkan dan pasangan evaluasi dipulihkan dari file biner MXNET yang disediakan oleh InsightFace, alat tersedia di repositori ini. Anda harus menginstal mxnet-cpu terlebih dahulu untuk parsing gambar, lakukan saja ' Pip Instal MXNet ' tidak apa-apa.
Lfw @ baidunetdisk, agedb-30 @ baidunetdisk, cfp_fp @ baidunetdisk
MobileFacenet: Struture yang dijelaskan dalam MobileFacenet
Resnet50: Struktur Resnet Asli
Resnet50-IR: CNN dijelaskan dalam kertas arcface
Seresnet50-IR: CNN dijelaskan dalam kertas arcface
Protokol Kecil: Dilatih dengan Casi-Webface Ukuran Data: 453580/10575
Protokol Besar: Dilatih dengan Deepglint MS-Celeb-1m Ukuran Data: 3923399/86876
| Tipe model | Kehilangan | Lfw | Agedb-30 | CFP-FP | Ukuran model | protokol |
|---|---|---|---|---|---|---|
| MobileFacenet | Arcface | 99.23 | 93.26 | 94.34 | 4MB | kecil |
| Resnet50-ir | Arcface | 99.42 | 94.45 | 95.34 | 170MB | kecil |
| Seresnet50-IR | Arcface | 99.43 | 94.50 | 95.43 | 171MB | kecil |
| MobileFacenet | Arcface | 99.58 | 96.57 | 92.90 | 4MB | besar |
| Resnet50-ir | Arcface | 99.82 | 98.07 | 95.34 | 170MB | besar |
| Seresnet50-IR | Arcface | 99.80 | 98.13 | 95.60 | 171MB | besar |
| ResNet100-IR | Arcface | 99.83 | 98.28 | 96.41 | 256MB | besar |
Ada fakta yang aneh bahwa ketika pelatihan di bawah protokol kecil, kinerja CFP-FP lebih baik daripada AgEDB-30, sedangkan saat pelatihan dengan dataset skala besar, kinerja CFP-FP lebih buruk daripada AgEDB-30.
| Tipe model | Kehilangan | MF ACC. | Mf ver. | MF ACC.@R. | Mf ver.@R | UKURAN | protokol |
|---|---|---|---|---|---|---|---|
| MobileFacenet | Arcface | 69.10 | 84.23 | 81.15 | 85.86 | 4MB | kecil |
| Resnet50-ir | Arcface | 74.31 | 88.23 | 87.44 | 89.56 | 170MB | kecil |
| Seresnet50-IR | Arcface | 74.37 | 88.32 | 88.30 | 89.65 | 171MB | kecil |
| MobileFacenet | Arcface | 74.95 | 88.77 | 89.47 | 91.03 | 4MB | besar |
| Resnet50-ir | Arcface | 79.61 | 96.02 | 96.58 | 96.78 | 170MB | besar |
| Seresnet50-IR | Arcface | 79.91 | 96.10 | 97.01 | 97.60 | 171MB | besar |
| ResNet100-IR | Arcface | 80.40 | 96.94 | 97.60 | 98.05 | 256MB | besar |
Dukungan visdom untuk kehilangan dan akurasi selama proses pelatihan. 
Kehilangan Softmax vs Softmax_Center Loss. Kiri: Set Pelatihan Softmax. Kanan: Softmax + Center Loss Training Set.


Mugglewang/cosface_pytorch
Xiaoccer/MobileFacenet_PyTorch
TREB1EN/INTIGHTFACE_PYTORCH
DeepInsight/Insightface
Kaiyangzhou/Pytorch-Center-Loss
Tengshaofeng/residualAttentionnetwork-pytorch