All Projects → foamliu → InsightFace

foamliu / InsightFace

Licence: Apache-2.0 license
复现 ArcFace 论文

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to InsightFace

Face-Recognition-Raspberry-Pi-64-bits
Recognize 2000+ faces on your Raspberry Pi 4 with database auto-fill and anti-spoofing
Stars: ✭ 48 (+118.18%)
Mutual labels:  face-recognition, arcface
FaceRecognitionCpp
Large input size REAL-TIME Face Detector on Cpp. It can also support face verification using MobileFaceNet+Arcface with real-time inference. 480P Over 30FPS on CPU
Stars: ✭ 40 (+81.82%)
Mutual labels:  face-recognition, arcface
InsightFace-REST
InsightFace REST API for easy deployment of face recognition services with TensorRT in Docker.
Stars: ✭ 308 (+1300%)
Mutual labels:  face-recognition, arcface
awesome-face-recognition
this repo include paper review, code in face recognition
Stars: ✭ 16 (-27.27%)
Mutual labels:  face-recognition, arcface
Face-Recognition-Jetson-Nano
Recognize 2000+ faces on your Jetson Nano with database auto-fill and anti-spoofing
Stars: ✭ 63 (+186.36%)
Mutual labels:  face-recognition, arcface
Insightface
State-of-the-art 2D and 3D Face Analysis Project
Stars: ✭ 10,886 (+49381.82%)
Mutual labels:  face-recognition, arcface
ArcfaceDemo Python 2.2
ArcSoft Face SDK Demo
Stars: ✭ 20 (-9.09%)
Mutual labels:  face-recognition, arcface
Deepstream Project
This is a highly separated deployment project based on Deepstream , including the full range of Yolo and continuously expanding deployment projects such as Ocr.
Stars: ✭ 120 (+445.45%)
Mutual labels:  face-recognition, arcface
PLSC
Paddle Large Scale Classification Tools,supports ArcFace, CosFace, PartialFC, Data Parallel + Model Parallel. Model includes ResNet, ViT, DeiT, FaceViT.
Stars: ✭ 113 (+413.64%)
Mutual labels:  face-recognition, arcface
face-search
A demonstration of face database search implemented in python
Stars: ✭ 36 (+63.64%)
Mutual labels:  face-recognition
LBCNN
Local Binary Convolutional Neural Network for Facial Expression Recognition of Basic Emotions in Python using the TensorFlow framework
Stars: ✭ 21 (-4.55%)
Mutual labels:  face-recognition
deep utils
An open-source toolkit which is full of handy functions, including the most used models and utilities for deep-learning practitioners!
Stars: ✭ 73 (+231.82%)
Mutual labels:  face-recognition
facematch
Facematch is a tool to verifies if two photos contain the same person.
Stars: ✭ 62 (+181.82%)
Mutual labels:  face-recognition
FaceRecognition PyTorch
Implement Face Recognition Code in PyTorch. Such as SphereFace with A-Softmax.
Stars: ✭ 29 (+31.82%)
Mutual labels:  face-recognition
FaceNet-IOT
IOT implementation for FaceNet project by David Sandberg https://github.com/davidsandberg/facenet
Stars: ✭ 18 (-18.18%)
Mutual labels:  face-recognition
Face-Recognition-Attendance-System
A simple python script that recognises faces and mark attendance for the recognised faces in an excel sheet.
Stars: ✭ 57 (+159.09%)
Mutual labels:  face-recognition
SmooFaceEngine
A high-performance demo for face recognition based on DL. (基于深度学习的高性能人脸识别引擎demo)
Stars: ✭ 101 (+359.09%)
Mutual labels:  face-recognition
FaceIDLight
A lightweight face-recognition toolbox and pipeline based on tensorflow-lite
Stars: ✭ 17 (-22.73%)
Mutual labels:  face-recognition
ViewFaceCore
C# 超简单的离线人脸识别库。( 基于 SeetaFace6 )
Stars: ✭ 345 (+1468.18%)
Mutual labels:  face-recognition
Face-Liveness-Detection-SDK-iOS
Robust, Realtime, On-Device Face Liveness Detection (Face Anti Spoofing) For iOS
Stars: ✭ 48 (+118.18%)
Mutual labels:  face-recognition

InsightFace

Implementation of Additive Angular Margin Loss for Deep Face Detection. paper.

@article{deng2018arcface,
title={ArcFace: Additive Angular Margin Loss for Deep Face Recognition},
author={Deng, Jiankang and Guo, Jia and Niannan, Xue and Zafeiriou, Stefanos},
journal={arXiv:1801.07698},
year={2018}
}

DataSet

CASIA WebFace DataSet, 494,414 faces over 10,575 identities.

Dependencies

  • PyTorch 1.0.0

Usage

Data wrangling

Extract images, scan them, to get bounding boxes and landmarks:

$ python pre_process.py

Image alignment:

  1. Face detection(MTCNN).
  2. Face alignment(similar transformation).
  3. Central face selection.
  4. Resize -> 112x112.
Original Aligned Original Aligned
image image image image
image image image image
image image image image
image image image image
image image image image

Train

$ python train.py

To visualize the training process:

$ tensorboard --logdir=runs

Performance evaluation

DataSet

Use Labeled Faces in the Wild (LFW) dataset for performance evaluation:

  • 13233 faces
  • 5749 identities
  • 1680 identities with >=2 photo

Download LFW database put it under data folder:

$ wget http://vis-www.cs.umass.edu/lfw/lfw-funneled.tgz
$ wget http://vis-www.cs.umass.edu/lfw/pairs.txt
$ wget http://vis-www.cs.umass.edu/lfw/people.txt

Get it started

$ python lfw_eval.py

Results

Backbones LFW(%)
SE-LResNet152E-IR 99.43%
SE-LResNet152E-IR 99.38%
SE-LResNet101E-IR 99.27%
LResNet101E-IR 99.23%

theta j Distribution

image

Error analysis

False Positive

6 false positives:

1 2 1 2
image image image image
image image image image
image image image image
False Negative

28 false negative, these 10 are randomly chosen:

1 2 1 2
image image image image
image image image image
image image image image
image image image image
image image image image
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].