ONNX Model Zoo

opencv/face_recognition_sface

By opencv · ↓ 0 · ♥ 1 · Updated 2025-06-20

What's in this repo

This page lists the files in opencv/face_recognition_sface, including face_recognition_sface_2021dec.onnx, face_recognition_sface_2021dec_int8.onnx, face_recognition_sface_2021dec_int8bq.onnx.

  • 3 ONNX models (.onnx files)
  • 13 files, including 3 .py, 3 .onnx, 1 .txt, 1 .md, 1 .cpp, 1 .jpg
  • Last updated 2025-06-20

ONNX files

File Size Download
face_recognition_sface_2021dec.onnx — Download
face_recognition_sface_2021dec_int8.onnx — Download
face_recognition_sface_2021dec_int8bq.onnx — Download

How to use

These ONNX files can be loaded with ONNX Runtime. To inspect a model graph, upload the file to the Netron viewer. Download links point to the original files on Hugging Face.

README

SFace

SFace: Sigmoid-Constrained Hypersphere Loss for Robust Face Recognition

Note:

  • SFace is contributed by Yaoyao Zhong.
  • Model files encode MobileFaceNet instances trained on the SFace loss function, see the SFace paper for reference.
  • ONNX file conversions from original code base thanks to Chengrui Wang.
  • (As of Sep 2021) Supporting 5-landmark warping for now, see below for details.
  • face_recognition_sface_2021dec_int8bq.onnx represents the block-quantized version in int8 precision and is generated using block_quantize.py with block_size=64.

Results of accuracy evaluation with tools/eval.

Models Accuracy
SFace 0.9940
SFace block 0.9942
SFace quant 0.9932

*: 'quant' stands for 'quantized'. **: 'block' stands for 'blockwise quantized'.

Demo

NOTE: This demo uses ../face_detection_yunet as face detector, which supports 5-landmark detection for now (2021sep).

Run the following command to try the demo:

Python

# recognize on images
python demo.py --target /path/to/image1 --query /path/to/image2

# get help regarding various parameters
python demo.py --help

C++

Install latest OpenCV and CMake >= 3.24.0 to get started with:

# A typical and default installation path of OpenCV is /usr/local
cmake -B build -D OPENCV_INSTALLATION_PATH=/path/to/opencv/installation .
cmake --build build

# detect on camera input
./build/demo -t=/path/to/target_face
# detect on an image
./build/demo -t=/path/to/target_face -q=/path/to/query_face -v
# get help messages
./build/demo -h

Example outputs

sface demo

Note: Left part of the image is the target identity, the right part is the query. Green boxes are the same identity, red boxes are different identities compared to the left.

License

All files in this directory are licensed under Apache 2.0 License.

Reference

  • https://ieeexplore.ieee.org/document/9318547
  • https://github.com/zhongyy/SFace

Model info

onnx arxiv:2205.12010 region:us
↓ 0 ♥ 1

Created: 2025-06-09

Updated: 2025-06-20

View on Hugging Face

Files (13)

.gitattributes
.gitignore
CMakeLists.txt
LICENSE
README.md
demo.cpp
demo.py
example_outputs/demo.jpg
face_recognition_sface_2021dec.onnx ONNX
face_recognition_sface_2021dec_int8.onnx ONNX
face_recognition_sface_2021dec_int8bq.onnx ONNX
sface.py
yunet.py

Related models