All Projects → clancylian → Retinaface

clancylian / Retinaface

Licence: mit
Reimplement RetinaFace use C++ and TensorRT

Labels

Projects that are alternatives of or similar to Retinaface

Php Opencv
php wrapper for opencv
Stars: ✭ 194 (-19.5%)
Mutual labels:  caffe
Dsrg
Weakly-Supervised Semantic Segmentation Network with Deep Seeded Region Growing (CVPR 2018).
Stars: ✭ 206 (-14.52%)
Mutual labels:  caffe
Ide Baseline Market 1501
ID-discriminative Embedding (IDE) for Person Re-identification
Stars: ✭ 220 (-8.71%)
Mutual labels:  caffe
Liteflownet2
A Lightweight Optical Flow CNN - Revisiting Data Fidelity and Regularization, TPAMI 2020
Stars: ✭ 195 (-19.09%)
Mutual labels:  caffe
Raspberrypi Facedetection Mtcnn Caffe With Motion
MTCNN with Motion Detection, on Raspberry Pi with Love
Stars: ✭ 204 (-15.35%)
Mutual labels:  caffe
Orn
Oriented Response Networks, in CVPR 2017
Stars: ✭ 207 (-14.11%)
Mutual labels:  caffe
Ck Caffe
Collective Knowledge workflow for Caffe to automate installation across diverse platforms and to collaboratively evaluate and optimize Caffe-based workloads across diverse hardware, software and data sets (compilers, libraries, tools, models, inputs):
Stars: ✭ 192 (-20.33%)
Mutual labels:  caffe
Skimcaffe
Caffe for Sparse Convolutional Neural Network
Stars: ✭ 230 (-4.56%)
Mutual labels:  caffe
Netron
Visualizer for neural network, deep learning, and machine learning models
Stars: ✭ 17,193 (+7034.02%)
Mutual labels:  caffe
Caffe Yolov3 Windows
A windows caffe implementation of YOLO detection network
Stars: ✭ 210 (-12.86%)
Mutual labels:  caffe
Up Down Captioner
Automatic image captioning model based on Caffe, using features from bottom-up attention.
Stars: ✭ 195 (-19.09%)
Mutual labels:  caffe
Mtcnn Accelerate Onet
MTCNN Face Detection & Alignment
Stars: ✭ 203 (-15.77%)
Mutual labels:  caffe
Interactive Deep Colorization
Deep learning software for colorizing black and white images with a few clicks.
Stars: ✭ 2,465 (+922.82%)
Mutual labels:  caffe
Pixelnet
The repository contains source code and models to use PixelNet architecture used for various pixel-level tasks. More details can be accessed at <http://www.cs.cmu.edu/~aayushb/pixelNet/>.
Stars: ✭ 194 (-19.5%)
Mutual labels:  caffe
Caffe2 Ios
Caffe2 on iOS Real-time Demo. Test with Your Own Model and Photos.
Stars: ✭ 221 (-8.3%)
Mutual labels:  caffe
Deepdetect
Deep Learning API and Server in C++14 support for Caffe, Caffe2, PyTorch,TensorRT, Dlib, NCNN, Tensorflow, XGBoost and TSNE
Stars: ✭ 2,306 (+856.85%)
Mutual labels:  caffe
Caffe Deepbinarycode
Supervised Semantics-preserving Deep Hashing (TPAMI18)
Stars: ✭ 206 (-14.52%)
Mutual labels:  caffe
Colorization
Automatic colorization using deep neural networks. "Colorful Image Colorization." In ECCV, 2016.
Stars: ✭ 2,791 (+1058.09%)
Mutual labels:  caffe
Dgd person reid
Domain Guided Dropout for Person Re-identification
Stars: ✭ 229 (-4.98%)
Mutual labels:  caffe
Dl inference
通用深度学习推理服务,可在生产环境中快速上线由TensorFlow、PyTorch、Caffe框架训练出的深度学习模型。
Stars: ✭ 209 (-13.28%)
Mutual labels:  caffe

RetinaFace C++ Reimplement

source

Reference resources RetinaFace in insightface with python code.

model transformation tool

MXNet2Caffe

you need to add some layers yourself, and in caffe there is not upsample,you can replace with deconvolution,and maybe slight accuracy loss.

the origin model reference from mobilenet25,and I have retrain it.

Demo

$ mkdir build
$ cd build/
$ cmake ../
$ make

you need to modify dependency path in CmakeList file.

Speed

test hardware:1080Ti

test1:

model speed input size preprocess time inference postprocess time
mxnet 44.8ms 1280x896 19.0ms 8.0ms 16.0ms
caffe 46.9ms 1280x896 5.8ms 24.1ms 16.0ms
tensorrt 29.3ms 1280x896 6.9ms 5.4ms 15.0ms

test2:

model speed inputsize preprocess time inference postprocess time
mxnet 6.4ms 320x416 1.3ms 0.1ms 4.2ms
caffe 30.8ms 320x416 1.2ms 27ms 2.3ms
tensorrt 4.7ms 320x416 0.7ms 1.9ms 1.8ms

tensorrt batch test:

batchsize inputsize maxbatchsize preprocess time inference postprocess time all GPU
1 448x448 8 1.0ms 2.3ms 2.6ms 6.7ms 35%
2 448x448 8 2.5ms 3.3ms 5.2ms 11.8ms 33%
4 448x448 8 4.1ms 4.6ms 10.0ms 21.8ms 28%
8 448x448 8 8.7ms 7.0ms 20.3ms 40.7ms 23%
16 448x448 32 28.1 14.7 38.7ms 92.0ms -
32 448x448 32 36.2ms 26.3 75.7ms 163.5ms -

note: batch size have some advantage in inference but can't speed up preprocess and postprocess.

optimize post process:

batchsize inputsize maxbatchsize preprocess time inference postprocess time all GPU
1 448x448 8 1.0ms 2.3ms 0.09ms 3.5ms 70%
2 448x448 8 2.2ms 2.8ms 0.2ms 5.3ms 60%
4 448x448 8 3.7ms 5.0ms 0.3ms 8.4ms 55%
8 448x448 8 7.5ms 6.5ms 0.67ms 14.9ms 50%
16 448x448 32 26ms 13ms 1.3ms 41ms 40%
32 448x448 32 32ms 22ms 2.7ms 56.6ms 50%

use nvidia npp library to speed up preprocess:

batchsize inputsize maxbatchsize preprocess time inference postprocess time all GPU
1 448x448 8 0.2ms 2.3ms 0.1ms 2.6ms 91%
2 448x448 8 0.3ms 3.0ms 0.2ms 3.5ms 85%
4 448x448 8 0.5ms 4.1ms 0.32ms 5.0ms 82%
8 448x448 8 1.2ms 6.3ms 0.77ms 8.3ms 79%
16 448x448 32 2.2ms 14ms 1.3ms 16.7ms 80%
32 448x448 32 5.0ms 22ms 2.8ms 29.3ms 77%

INT8 inference

INT8 calibration table can generate by INT8-Calibration-Tool.

Accuracy

https://raw.githubusercontent.com/clancylian/retinaface/master/data/retinaface-widerface%E6%B5%8B%E8%AF%95.png

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].