All Projects → StanislasBertrand → Retinaface Tf2

StanislasBertrand / Retinaface Tf2

Licence: mit
RetinaFace (RetinaFace: Single-stage Dense Face Localisation in the Wild, published in 2019) reimplemented in Tensorflow 2.0, with pretrained weights available !

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Retinaface Tf2

Gender Detection Keras
Gender detection (from scratch) using deep learning with keras and cvlib.
Stars: ✭ 147 (-16.48%)
Mutual labels:  face-detection
Facemoji Kit
Face tracker with blend shapes coefficients, 3D head pose and dense mesh in real-time on iOS, Android, Mac, PC and Linux.
Stars: ✭ 158 (-10.23%)
Mutual labels:  face-detection
Ownphotos Frontend
Stars: ✭ 171 (-2.84%)
Mutual labels:  face-detection
Maskedface Net
MaskedFace-Net is a dataset of human faces with a correctly and incorrectly worn mask based on the dataset Flickr-Faces-HQ (FFHQ).
Stars: ✭ 152 (-13.64%)
Mutual labels:  face-detection
Proctoring Ai
Creating a software for automatic monitoring in online proctoring
Stars: ✭ 155 (-11.93%)
Mutual labels:  face-detection
Facenet Pytorch
Pretrained Pytorch face detection (MTCNN) and facial recognition (InceptionResnet) models
Stars: ✭ 2,564 (+1356.82%)
Mutual labels:  face-detection
Jeelizfacefilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 2,042 (+1060.23%)
Mutual labels:  face-detection
Dockerface
Face detection using deep learning.
Stars: ✭ 173 (-1.7%)
Mutual labels:  face-detection
Facenet
Face recognition using Tensorflow
Stars: ✭ 12,189 (+6825.57%)
Mutual labels:  face-detection
Facepause
Look Away to Pause Youtube - Experimental Chrome Extension
Stars: ✭ 171 (-2.84%)
Mutual labels:  face-detection
Dsfd.pytorch
DSFD implement with pytorch
Stars: ✭ 153 (-13.07%)
Mutual labels:  face-detection
Face Detection With Mobilenet Ssd
Face detection with mobilenet-ssd written by tf.keras.
Stars: ✭ 154 (-12.5%)
Mutual labels:  face-detection
Wechat Miniprogram Webar
A WeChat MiniProgram Image AR using computer vision. No OpenCV, No Deep Learning. Only JavaScript Implementation.
Stars: ✭ 163 (-7.39%)
Mutual labels:  face-detection
Compactcnncascade
A binary library for very fast face detection using compact CNNs.
Stars: ✭ 152 (-13.64%)
Mutual labels:  face-detection
Human
Human: 3D Face Detection, Body Pose, Hand & Finger Tracking, Iris Tracking and Age & Gender Prediction
Stars: ✭ 172 (-2.27%)
Mutual labels:  face-detection
Deep Face Recognition
One-shot Learning and deep face recognition notebooks and workshop materials
Stars: ✭ 147 (-16.48%)
Mutual labels:  face-detection
Lookatme
VideoView that plays video only when 👀 are open and 👦 is detected with various other features
Stars: ✭ 161 (-8.52%)
Mutual labels:  face-detection
Attendance Using Face
Face-recognition using Siamese network
Stars: ✭ 174 (-1.14%)
Mutual labels:  face-detection
Faceboxes Tensorflow
A fast face detector
Stars: ✭ 173 (-1.7%)
Mutual labels:  face-detection
Face Api.js
JavaScript API for face detection and face recognition in the browser and nodejs with tensorflow.js
Stars: ✭ 13,258 (+7432.95%)
Mutual labels:  face-detection

RetinaFace-tf2

RetinaFace (RetinaFace: Single-stage Dense Face Localisation in the Wild, published in 2019) reimplemented in Tensorflow 2.0, with pretrained weights available. Resnet50 backbone.

Original paper -> arXiv
Original Mxnet implementation -> Insightface

Table of contents

  1. Installation
  2. Usage
  3. Benchmark
  4. Evaluation
  5. Acknowledgements

example output : testing on a random internet selfie


INSTALLATION

To install dependencies, if you have a GPU, run :

pip install -r requirements-gpu.txt

If not, run :

pip install -r requirements.txt

Then build the rcnn module by running :

make

USAGE

Download pretrained weights on Dropbox and save them in the data folder
Run :

python detect.py --weights_path="./data/retinafaceweights.npy" --sample_img="./sample-images/WC_FR.jpeg"

Python usage :

from retinaface import RetinaFace
import cv2

detector = RetinaFace("./data/retinafaceweights.npy", False, 0.4)
img = cv2.imread("./sample-images/WC_FR.jpeg")
faces, landmarks = detector.detect(img, 0.9)

BENCHMARK

mAP result values on the WIDERFACE validation dataset:

Model Easy Medium Hard
Original Mxnet implementation 96.5 95.6 90.4
Ours 95.6 94.6 88.5

EVALUATE ON WIDERFACE

In order to verify the models accuracy on the WiderFace dataset:

  • Run the model on the dataset and generate text files as results
python eval_widerface --weights_path="data/retinafaceweights.npy" --widerface_data_dir = "/data/WIDER_test/images" --save_folder="./WiderFace-Evaluation/results/"
  • Evaluate the results
cd ./WiderFace-Evaluation
python setup.py build_ext --inplace
python evaluation.py -p ./results_val/ -g ./ground_truth/

ACKNOWLEDGEMENTS

This work is largely based on the original implementation by the amazing insightface team
Evaluation on widerface done with the Widerface-Evaluation repo
If you use this repo, please reference the original work :

@inproceedings{Deng2020CVPR,
title = {RetinaFace: Single-Shot Multi-Level Face Localisation in the Wild},
author = {Deng, Jiankang and Guo, Jia and Ververas, Evangelos and Kotsia, Irene and Zafeiriou, Stefanos},
booktitle = {CVPR},
year = {2020}
}
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].