Skip to content

Latest commit

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

UNPG

Unified Negative Pair Generation toward Well-discriminative Feature Space for Face Recognition

Data prepration

MS1M-ArcFace (85K ids/5.8M images) download link

#Preprocess 'train.rec' and 'train.idx' to 'jpg'# examplecd detection
python rec2image.py --include '{path}/face_emore' --output '{path}/MS1MV2'

K-FACE download link

""" ################################################################### K-Face : Korean Facial Image AI Dataset url : http://www.aihub.or.kr/aidata/73 Directory structure : High-ID-Accessories-Lux-Emotion ID example : '19062421' ... '19101513' len 400 Accessories example : 'S001', 'S002' .. 'S006' len 6 Lux example : 'L1', 'L2' .. 'L30' len 30 Emotion example : 'E01', 'E02', 'E03' len 3 ###################################################################"""# examplecd detection
python align_kfaces.py --ori_data_path '/data/FACE/KFACE/High' --detected_data_path 'kface_retina_align_112x112'

IJBB & IJBC

download link

Please apply for permissions from NIST before your usage.

Evaluation

Performance on public benchmark datasets with ResNet-100

MethodIJB-B
(1e-5)
IJB-B
(1e-4)
IJB-C
(1e-5)
IJB-C
(1e-4)
MegaFace
(Rank-1 acc)
LFWPath
Circle-loss*---93.9598.5099.73-
ArcFace*-94.20-95.6098.3599.82-
MagFace*90.3694.5194.0895.97-99.83-
CosFace89.3894.3994.4296.3599.0899.83-
CosFace+UNPG90.6194.9994.4896.3999.2799.81link
ArcFace89.9994.8993.9396.2598.5699.83-
ArcFace+UNPG90.5795.0494.4796.3398.8299.83link
MagFace89.0393.9993.3095.5498.5199.81-
MagFace+UNPG90.9395.2194.7096.3898.0399.81link

“*” indicates results from the original paper.

Example script

cd recognition
# example
python evaluation.py --weights 'face.r100.cos.unpg.wisk1.5.pt' --data 'ijbc.yaml'# --data (e.g., 'ijbb.yaml', 'bins.yaml')

Performance on K-FACE test datasets (Q1-Q4) with ResNet-34

MethodQ4
(1e-5)
Q4
(1e-4)
Q3
(1e-5)
Q3
(1e-4)
Q2
(1e-5)
Q2
(1e-4)
Q1
(1e-3)
Q1
(1e-2)
Path
ArcFace0.050.292.064.4026.5641.2994.00100-
SN-pair3.507.2117.6721.1621.9333.2691.8097.60-
MS-loss5.688.7015.1518.7438.3346.6494.6099.20-
MixFace7.1110.929.1922.5539.0944.4897.00100-
Circle-loss18.0825.0533.5641.5471.3877.93100100-
Arc+UNPG29.8950.4351.5960.8891.2893.26100100link
cd recognition
# example
python evaluation.py --weights 'kface.r34.arc.unpg.wisk1.0.pt' --data 'kface.yaml'

Training

Example script (FACE)

cd recognition
# example 
python train.py --model 'iresnet-100' --head 'arcface' --aux 'unpg' --data 'data/face.yaml' --hyp 'data/hyp.yaml' --name 'example' --device 0,1

Example script (KFACE)

cd recognition
# example 
python train.py --model 'iresnet-34' --head 'arcface' --aux 'unpg' --data 'data/kface.yaml' --hyp 'data/hyp.yaml' --name 'example' --device 0,1

About

Unified Negative Pair Generation toward Well-discriminative Feature Space for Face Recognition

Topics

Resources

Stars

34 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages