All Projects → alexattia → Extendedtinyfaces

alexattia / Extendedtinyfaces

Detecting and counting small objects - Analysis, review and application to counting

Projects that are alternatives of or similar to Extendedtinyfaces

Statistical Learning Method Camp
统计学习方法训练营课程作业及答案,视频笔记在线阅读地址:https://relph1119.github.io/statistical-learning-method-camp
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Trajectron Plus Plus
Code accompanying the ECCV 2020 paper "Trajectron++: Dynamically-Feasible Trajectory Forecasting With Heterogeneous Data" by Tim Salzmann*, Boris Ivanovic*, Punarjay Chakravarty, and Marco Pavone (* denotes equal contribution).
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Hashnet
Code release for "HashNet: Deep Learning to Hash by Continuation" (ICCV 2017)
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Teachopencadd
TeachOpenCADD: a teaching platform for computer-aided drug design (CADD) using open source packages and data
Stars: ✭ 190 (-1.55%)
Mutual labels:  jupyter-notebook
Activitynet 2016 Cvprw
Tools to participate in the ActivityNet Challenge 2016 (NIPSW 2016)
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Ml Tutorial
Introduction to ML packages for the 6.86x course
Stars: ✭ 189 (-2.07%)
Mutual labels:  jupyter-notebook
Deep Learning Notes
My personal notes, presentations, and notebooks on everything Deep Learning.
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Crawler Analysis
爬虫+数据分析实战项目
Stars: ✭ 193 (+0%)
Mutual labels:  jupyter-notebook
Cl Jupyter
An enhanced interactive Shell for Common Lisp (based on the Jupyter protocol)
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Research2vec
Representing research papers as vectors / latent representations.
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Magic
MAGIC (Markov Affinity-based Graph Imputation of Cells), is a method for imputing missing values restoring structure of large biological datasets.
Stars: ✭ 189 (-2.07%)
Mutual labels:  jupyter-notebook
Vanillacnn
Implementation of the Vanilla CNN described in the paper: Yue Wu and Tal Hassner, "Facial Landmark Detection with Tweaked Convolutional Neural Networks", arXiv preprint arXiv:1511.04031, 12 Nov. 2015. See project page for more information about this project. http://www.openu.ac.il/home/hassner/projects/tcnn_landmarks/ Written by Ishay Tubi : ishay2b [at] gmail [dot] com https://www.l
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Facenet
FaceNet for face recognition using pytorch
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Feature Engineering
Stars: ✭ 191 (-1.04%)
Mutual labels:  jupyter-notebook
Py R Fcn Multigpu
Code for training py-faster-rcnn and py-R-FCN on multiple GPUs in caffe
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Self driving car specialization
Assignments and notes for the Self Driving Cars course offered by University of Toronto on Coursera
Stars: ✭ 190 (-1.55%)
Mutual labels:  jupyter-notebook
Simpleselfattention
A simpler version of the self-attention layer from SAGAN, and some image classification results.
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Learned Correspondence Release
Code release for "learning to find good correspondences" CVPR 2018
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook
Ibmquantumchallenge2020
Quantum Challenge problem sets
Stars: ✭ 193 (+0%)
Mutual labels:  jupyter-notebook
Deep Learning Random Explore
Stars: ✭ 192 (-0.52%)
Mutual labels:  jupyter-notebook

ExtendedTinyFaces

Analysis, review and application of Finding Tiny Faces (P. Hu) [1] with a focus on counting the many faces in a demonstration/crowd.
RecVis (MVA) course - Alexandre Attia, Sharone Dayan
You can find our pre-print report on ArXiv.

Introduction

The paper - released at CVPR 2017 - deals with finding small objects (particularly faces in our case) in an image, based on scale-specific detectors by using features defined over single (deep) feature hierarchy : Scale Invariance, Image resolution, Contextual reasoning. The algorithm is based on foveal descriptors, i.e blurring the peripheral image to encode and give just enough information about the context, mimicking the human vision.
The subject is still an open challenge and we would like to enlarge it to new horizons and experiment this approach to different applications. The goal would be to deeply understand the choices of the paper, together with their applications on subjects related to security and identification. We are mainly focus on the inference part using a TensorFlow implementation, adapted from this repo.

Face detection benchmark

First, we aim at comparing the Tiny Faces algorithm with other face detection models.
We use two particular sub-folders of the WIDERFACE dataset (Parade and Dresses) to compare our model with Faster R-CNN for face detection (using MXNet, MTCNN[6] (using MXNET), Haar Cascade[2] and HOG[3].
This benchmark can be found in this notebook Benchmark

Image resolution influence

The performance of the Tiny Faces algorithm is linked with the image resolution. Indeed, this parameter really affects the face detection as explained in the original paper. We used the inference part and plotted the variations of detected faces while downscaling the image resolution.

Face Recognition

Face recognition can be another application of the paper. Thus, we aim at building a Python pipeline for face recognition. We would like to use face alignment[4] and face embedding[5] to achieve face classification.
The first application we would like to explore includes : counting the many different faces (numerous people displayed with different size in the picture) in a video of a crowded public demonstration.
This application can be found in this notebook.
In order to achieve it, we have to match people from one frame to another one to make sure the counting of a person is not redundant. The matching is achievied with face recognition and we count people with face detection. We used a linear SVM for the face classificaton. alt-text-1

Repository organisation

notebooks Notebooks folder with the different application and experiments
detect.py File for the people matching in order to count people (cf the Counting people notebook)
evaluate.py Inference function : detecting faces in one (or mulitple) picture
tiny_faces_model.py Tiny Faces model
util.py Misc for overlay bounding boxes

References

[1] Peiyun Hu and Deva Ramanan. Finding Tiny Faces. 2017.
[2] P. Viola and M. Jones. Rapid object detection using a boosted cascade of simple features. 2001.
[3] Navneet Dalal and Bill Triggs. Histograms of Oriented Gradients for Human Detection. 2005.
[4] Vahid Kazemi and Josephine Sullivan. One Millisecond Face Alignment with an Ensemble of Regression Trees
[5] Florian Schroff, Dmitry Kalenichenko and James Philbin. FaceNet: A Unified Embedding for Face Recognition and Clustering. 2015
[6]Kaipeng Zhang, Zhanpeng Zhang, Zhifeng Li, Yu Qiao. Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks

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