Views
No views yet
w600k_r50.onnx) from InsightFace's buffalo_l pack, trained on WebFace600K, repackaged as a PyTorch safetensors checkpoint. Available in py-feat ≥ 0.7 as the default identity_model='arcface' for both Detector and MPDetector. Empirically on multi_face.jpg, FaceNet's max off-diagonal cosine similarity between different people is 0.76 (false-merging at typical thresholds); ArcFace's is 0.35 (clean separation).[0, 1] (the wrapper rescales to [-1, 1])buffalo_l pack, ONNX source): InsightFace v0.7 release@inproceedings{deng2019arcface,
title={ArcFace: Additive Angular Margin Loss for Deep Face Recognition},
author={Deng, Jiankang and Guo, Jia and Xue, Niannan and Zafeiriou, Stefanos},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
pages={4690--4699},
year={2019}
}@misc{insightface2018,
author={Guo, Jia and Deng, Jiankang and An, Xiang and Yu, Jack},
title={InsightFace: 2D and 3D Face Analysis Project},
year={2018--},
howpublished={\url{https://github.com/deepinsight/insightface}}
}@inproceedings{zhu2021webface260m,
title={WebFace260M: A Benchmark Unveiling the Power of Million-Scale Deep Face Recognition},
author={Zhu, Zheng and Huang, Guan and Deng, Jiankang and Ye, Yun and Huang, Junjie and Chen, Xinze and Zhu, Jiagang and Yang, Tian and Lu, Jiwen and Du, Dalong and Zhou, Jie},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
pages={10492--10502},
year={2021}
}1import torch
2from huggingface_hub import hf_hub_download
3from safetensors.torch import load_file
4from feat.identity_detectors.arcface.arcface_model import ArcFace
5from feat.utils.io import get_resource_path
6
7device = 'cpu'
8identity_detector = ArcFace(backbone='r50')
9arcface_file = hf_hub_download(
10 repo_id="py-feat/arcface_r50",
11 filename="arcface_r50.safetensors",
12 cache_dir=get_resource_path(),
13)
14identity_detector.net.load_state_dict(load_file(arcface_file), strict=False)
15identity_detector.eval()
16identity_detector.to(device)
17
18# Forward through a batch of [N, 3, H, W] face crops in [0, 1] range:
19# embeddings = identity_detector(face_crops) # [N, 512] unnormalized