All Projects → Bkmz21 → Compactcnncascade

Bkmz21 / Compactcnncascade

Licence: other
A binary library for very fast face detection using compact CNNs.

Projects that are alternatives of or similar to Compactcnncascade

Sod
An Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)
Stars: ✭ 1,460 (+860.53%)
Mutual labels:  object-detection, convolutional-neural-networks, face-detection
Pine
🌲 Aimbot powered by real-time object detection with neural networks, GPU accelerated with Nvidia. Optimized for use with CS:GO.
Stars: ✭ 202 (+32.89%)
Mutual labels:  object-detection, opencl, cuda
Trafficvision
MIVisionX toolkit is a comprehensive computer vision and machine intelligence libraries, utilities and applications bundled into a single toolkit.
Stars: ✭ 52 (-65.79%)
Mutual labels:  object-detection, convolutional-neural-networks, opencl
Mobilenet Yolo
MobileNetV2-YoloV3-Nano: 0.5BFlops 3MB HUAWEI P40: 6ms/img, YoloFace-500k:0.1Bflops 420KB🔥🔥🔥
Stars: ✭ 1,566 (+930.26%)
Mutual labels:  object-detection, face-detection
Hashcat
World's fastest and most advanced password recovery utility
Stars: ✭ 11,014 (+7146.05%)
Mutual labels:  opencl, cuda
Futhark
💥💻💥 A data-parallel functional programming language
Stars: ✭ 1,641 (+979.61%)
Mutual labels:  opencl, cuda
Amplifier.net
Amplifier allows .NET developers to easily run complex applications with intensive mathematical computation on Intel CPU/GPU, NVIDIA, AMD without writing any additional C kernel code. Write your function in .NET and Amplifier will take care of running it on your favorite hardware.
Stars: ✭ 92 (-39.47%)
Mutual labels:  simd, opencl
Cltune
CLTune: An automatic OpenCL & CUDA kernel tuner
Stars: ✭ 114 (-25%)
Mutual labels:  opencl, cuda
Tensorflow Object Detection Tutorial
The purpose of this tutorial is to learn how to install and prepare TensorFlow framework to train your own convolutional neural network object detection classifier for multiple objects, starting from scratch
Stars: ✭ 113 (-25.66%)
Mutual labels:  object-detection, cuda
Spoc
Stream Processing with OCaml
Stars: ✭ 115 (-24.34%)
Mutual labels:  opencl, cuda
Motionblur Detection By Cnn
Stars: ✭ 126 (-17.11%)
Mutual labels:  object-detection, convolutional-neural-networks
Babelstream
STREAM, for lots of devices written in many programming models
Stars: ✭ 121 (-20.39%)
Mutual labels:  opencl, cuda
Mixbench
A GPU benchmark tool for evaluating GPUs on mixed operational intensity kernels (CUDA, OpenCL, HIP, SYCL)
Stars: ✭ 130 (-14.47%)
Mutual labels:  opencl, cuda
Tiny Faces Pytorch
Finding Tiny Faces in PyTorch
Stars: ✭ 105 (-30.92%)
Mutual labels:  convolutional-neural-networks, face-detection
Self Driving Golf Cart
Be Driven 🚘
Stars: ✭ 147 (-3.29%)
Mutual labels:  object-detection, convolutional-neural-networks
Awslambdaface
Perform deep neural network based face detection and recognition in the cloud (via AWS lambda) with zero model configuration or tuning.
Stars: ✭ 98 (-35.53%)
Mutual labels:  convolutional-neural-networks, face-detection
Deepgaze
Computer Vision library for human-computer interaction. It implements Head Pose and Gaze Direction Estimation Using Convolutional Neural Networks, Skin Detection through Backprojection, Motion Detection and Tracking, Saliency Map.
Stars: ✭ 1,552 (+921.05%)
Mutual labels:  convolutional-neural-networks, face-detection
Nsimd
Agenium Scale vectorization library for CPUs and GPUs
Stars: ✭ 138 (-9.21%)
Mutual labels:  simd, cuda
Parenchyma
An extensible HPC framework for CUDA, OpenCL and native CPU.
Stars: ✭ 71 (-53.29%)
Mutual labels:  opencl, cuda
Cnn Paper2
🎨 🎨 深度学习 卷积神经网络教程 :图像识别,目标检测,语义分割,实例分割,人脸识别,神经风格转换,GAN等🎨🎨 https://dataxujing.github.io/CNN-paper2/
Stars: ✭ 77 (-49.34%)
Mutual labels:  object-detection, face-detection

Compact Convolutional Neural Network Cascade

This is a binary library for very fast detection of simple objects in images using CPU or GPU.
Implemented of the algorithm described in the following paper:

I.A. Kalinovskiy, V.G. Spitsyn,
Compact Convolutional Neural Network Cascade for Face Detection,
http://arxiv.org/abs/1508.01292

If you use the provided binaries for your work, please cite this paper.

examples/main.cpp shows how to use the library.
You need a processor with AVX or AVX2 (1.6x speed up due to used INT16) instruction set support.
Supported Nvidia GPUs with compute capability 3.0 and higher (library builded with CUDA 8.0).

Examples This image has a resolution of 4800x2400 was processed for 400 ms on GT640M GPU at searches minimum face of size 20x20 pixels. This detector capable of processing 4K video stream in real time.

Speed comparison

Method FPS
OpenCV 3.2 2.7
Simd library 12.1
CompactCNN-AVX (CPU) 32.2
CompactCNN-AVX2 (CPU) 53.5
CompactCNN-AVX (GPU) 81.3
  • 1280x720 video size (HD), scale factor = 1.15, minimal face size = 40
  • Intel Core i5-4690 CPU @ 3.5GHz, single-threading computation
  • Nvidia GeForce GT640M GPU, 384 CUDA cores
  • OpenCV classifier model: haarcascade_frontalface_default.xml

Evaluation

FDDB: http://vis-www.cs.umass.edu/fddb/index.html

Evaluation on FDDB

  • scale factor = 1.05, minimal face size = 15
  • equalize = false, reflection = false

Speed of different implementations

Speed of different implementations

  • 1920x1080 video size (Full HD), scale factor = 1.15, minimal face size = [40, 240]
  • Intel Core i5-4690 CPU @ 3.5GHz, single-threading computation
  • Nvidia GeForce GTX1080Ti GPU, 3584 CUDA cores

Also you can quick get (0.1 ms per face) a facial attributes estimate (gender, glasses and smile).

You can trainig own cascade using Microsoft Cognitive Toolkit (recommended version 1.7.2).
You should not change model prototype (see cntk folder). Other CNN architectures are currently not supported.

Contact

For any additional information contact me at [email protected].

Copyright (c) 2018, Ilya Kalinovskiy.
All rights reserved.

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