diff --git a/model_zoo/README.md b/model_zoo/README.md index 1dd1269..9140a23 100644 --- a/model_zoo/README.md +++ b/model_zoo/README.md @@ -8,16 +8,42 @@ To check the detail of insightface python package, please see [here](../python-p To install: ``pip install -U insightface`` +To use the specific model pack: -| Name | Detection Model | Recognition Model | Alignment | Attributes | -| -------------- | --------------- | ------------------- | ------------ | ---------- | -| **antelopev2** | SCRFD-10GF | ResNet100@Glint360K | 2d106 & 3d68 | Gender&Age | +``` +model_pack_name = 'buffalo_l' +app = FaceAnalysis(name=model_pack_name) +``` -Almost all ONNX models in our model_zoo can be called by python library. +Model in **bold** is the default model pack in the latest version. + + +| Name | Detection Model | Recognition Model | Alignment | Attributes | Model-Size | +| -------------- | --------------- | ------------------- | ------------ | ---------- | ---------- | +| **antelopev2** | RetinaFace-10GF | ResNet100@Glint360K | 2d106 & 3d68 | Gender&Age | 407MB | +| buffalo_l | RetinaFace-10GF | ResNet50@WebFace600K | 2d106 & 3d68 | Gender&Age | 326MB | +| buffalo_m | RetinaFace-2.5GF | ResNet50@WebFace600K | 2d106 & 3d68 | Gender&Age | 313MB | +| buffalo_s | RetinaFace-500MF | MBF@WebFace600K | 2d106 & 3d68 | Gender&Age | 159MB | +| buffalo_sc | RetinaFace-500MF | MBF@WebFace600K | - | - | 16MB | + +### Recognition accuracy of python library model packs: + +| Name | MR-ALL | African | Caucasian | South Asian | East Asian | LFW | CFP-FP | AgeDB-30 | IJB-C(E4) | +| :-------- | ------ | ------- | --------- | ----------- | ---------- | ------ | ------ | -------- | --------- | +| buffalo_l | 91.25 | 90.29 | 94.70 | 93.16 | 74.96 | 99.83 | 99.33 | 98.23 | 97.25 | +| buffalo_s | 71.87 | 69.45 | 80.45 | 73.39 | 51.03 | 99.70 | 98.00 | 96.58 | 95.02 | + +*buffalo_m has the same accuracy with buffalo_l.* + +*buffalo_sc has the same accuracy with buffalo_s.* + +(Note that almost all ONNX models in our model_zoo can be called by python library.) ## 1. Face Recognition models. -Method is margin based softmax and backbone is R50 in following tables if not specified. +### Definition: + +The default training loss is margin based softmax if not specified. ``MFN``: MobileFaceNet @@ -37,6 +63,7 @@ Method is margin based softmax and backbone is R50 in following tables if not sp ``GDrive``: GoogleDrive +### List of models by MXNet and PaddlePaddle: | Backbone | Dataset | Method | LFW | CFP-FP | AgeDB-30 | MegaFace | Link. | | -------- | ------- | ------- | ----- | ------ | -------- | -------- | ------------------------------------------------------------ | @@ -47,7 +74,7 @@ Method is margin based softmax and backbone is R50 in following tables if not sp - +### List of models by various depth IResNet and training datasets: | Backbone | Dataset | MR-ALL | African | Caucasian | South Asian | East Asian | Link(onnx) | |----------|-----------|--------|---------|-----------|-------------|------------|-----------------------------------------------------------------------| @@ -63,8 +90,7 @@ Method is margin based softmax and backbone is R50 in following tables if not sp | R100 | Glint360K | 90.659 | 89.488 | 94.285 | 93.434 | 72.528 | [GDrive](https://drive.google.com/file/d/1Gh8C-bwl2B90RDrvKJkXafvZC3q4_H_z/view?usp=sharing) | - - +### List of models by IResNet-50 and different training datasets: | Dataset | MR-ALL | African | Caucasian | South Asian | East Asian | LFW | CFP-FP | AgeDB-30 | IJB-C(E4) | Link(onnx) | | :-------- | ------ | ------- | ---- | ------ | -------- | ----- | ------ | -------- | --------- | --- | @@ -82,11 +108,21 @@ Method is margin based softmax and backbone is R50 in following tables if not sp | MS1MV3_pfc | 81.683 | 78.126 | 87.286 | 85.542 | 58.925 | 99.800| 98.443 | 98.167 | 96.430 | [GDrive](https://drive.google.com/file/d/15jrHCqhEmoSZ93kKL9orVMhbKfNWAhp-/view?usp=sharing) | | Glint360k | 86.789 | 84.749 | 91.414 | 90.088 | 66.168 | 99.817| 99.143 | 98.450 | 97.130 | [GDrive](https://drive.google.com/file/d/1gnt6P3jaiwfevV4hreWHPu0Mive5VRyP/view?usp=sharing) | | Glint360k_pfc | 87.077 | 85.272 | 91.616 | 90.541 | 66.813 | 99.817| 99.143 | 98.450 | 97.020 | [GDrive](https://drive.google.com/file/d/164o2Ct42tyJdQjckeMJH2-7KTXolu-EP/view?usp=sharing) | -| WebFace12M | 90.566 | 89.355 | 94.177 | 92.358 | 73.852 | 99.800| 99.200 | 98.100 | 97.120 | [GDrive](https://drive.google.com/file/d/1N0GL-8ehw_bz2eZQWz2b0A5XBdXdxZhg/view?usp=sharing) | -| WebFace12M_pfc | 89.951 | 89.301 | 94.016 | 92.381 | 73.007 | 99.817| 99.143 | 98.117 | 97.010 | [GDrive](https://drive.google.com/file/d/11TASXssTnwLY1ZqKlRjsJiV-1nWu9pDY/view?usp=sharing) | +| WebFace600K | 90.566 | 89.355 | 94.177 | 92.358 | 73.852 | 99.800| 99.200 | 98.100 | 97.120 | [GDrive](https://drive.google.com/file/d/1N0GL-8ehw_bz2eZQWz2b0A5XBdXdxZhg/view?usp=sharing) | +| WebFace600K_pfc | 89.951 | 89.301 | 94.016 | 92.381 | 73.007 | 99.817| 99.143 | 98.117 | 97.010 | [GDrive](https://drive.google.com/file/d/11TASXssTnwLY1ZqKlRjsJiV-1nWu9pDY/view?usp=sharing) | | Average | 69.247 | 65.908 | 77.121 | 72.819 | 52.014 | 99.706| 97.374 | 96.962 | 93.925 | | | Average_pfc | 69.519 | 65.898 | 77.497 | 73.213 | 51.853 | 99.715| 97.457 | 96.965 | 93.818 | | +### List of models by MobileFaceNet and different training datasets: + +**``FLOPS``:** 450M FLOPs + +**``Model-Size``:** 13MB + +| Dataset | MR-ALL | African | Caucasian | South Asian | East Asian | LFW | CFP-FP | AgeDB-30 | IJB-C(E4) | Link(onnx) | +| :-------- | ------ | ------- | ---- | ------ | -------- | ----- | ------ | -------- | --------- | --- | +| WebFace600K | 71.865 | 69.449 | 80.454 | 73.394 | 51.026 | 99.70 | 98.00 | 96.58 | 95.02 | - | + ## 2. Face Detection models. diff --git a/python-package/README.md b/python-package/README.md index 030ac20..1e57f69 100644 --- a/python-package/README.md +++ b/python-package/README.md @@ -45,13 +45,35 @@ Starting from insightface>=0.2, we use onnxruntime as inference backend. In the latest version of insightface library, we provide following model packs: +Name in **bold** is the default model pack. + +| Name | Detection Model | Recognition Model | Alignment | Attributes | Model-Size | +| -------------- | --------------- | ------------------- | ------------ | ---------- | ---------- | +| antelopev2 | SCRFD-10GF | ResNet100@Glint360K | 2d106 & 3d68 | Gender&Age | 407MB | +| **buffalo_l** | SCRFD-10GF | ResNet50@WebFace600K | 2d106 & 3d68 | Gender&Age | 326MB | +| buffalo_m | SCRFD-2.5GF | ResNet50@WebFace600K | 2d106 & 3d68 | Gender&Age | 313MB | +| buffalo_s | SCRFD-500MF | MBF@WebFace600K | 2d106 & 3d68 | Gender&Age | 159MB | +| buffalo_sc | SCRFD-500MF | MBF@WebFace600K | - | - | 16MB | + + + +Recognition Accuracy: + +| Name | MR-ALL | African | Caucasian | South Asian | East Asian | LFW | CFP-FP | AgeDB-30 | IJB-C(E4) | +| :-------- | ------ | ------- | --------- | ----------- | ---------- | ----- | ------ | -------- | --------- | +| buffalo_l | 91.25 | 90.29 | 94.70 | 93.16 | 74.96 | 99.83 | 99.33 | 98.23 | 97.25 | +| buffalo_s | 71.87 | 69.45 | 80.45 | 73.39 | 51.03 | 99.70 | 98.00 | 96.58 | 95.02 | + +*buffalo_m has the same accuracy with buffalo_l.* + +*buffalo_sc has the same accuracy with buffalo_s.* + -| Name | Detection Model | Recognition Model | Alignment | Attributes | -| ----------------------- | ----------------- | ----- | ----- | ----- | -| **antelopev2** | SCRFD-10GF | ResNet100@Glint360K | 2d106 & 3d68 | Gender&Age | **Note that these models are available for non-commercial research purposes only.** + + For insightface>=0.3.3, models will be downloaded automatically once we init ``app = FaceAnalysis()`` instance. For insightface==0.3.2, you must first download the model package by command: