Home

Awesome

Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment with Limited Resources (Face Alignment demo)

This code implements a demo of the Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment with Limited Resources paper by Adrian Bulat and Georgios Tzimiropoulos.

For the human pose estimation demo please see https://github.com/1adrianb/binary-human-pose-estimation

[2021 Update]: PyTorch repo with training code for BNN available here: https://github.com/1adrianb/binary-networks-pytorch

Requirements

Packages

for pkg in cutorch nn cudnn xlua image gnuplot lua-cURL paths; do luarocks install ${pkg}; done

Setup

Clone the github repository

git clone https://github.com/1adrianb/binary-face-alignment --recursive
cd binary-face-alignment

Build and install the BinaryConvolution package

cd bnn.torch/; luarocks make; cd ..;

Install the modified optnet package

cd optimize-net/; luarocks make rocks/optnet-scm-1.rockspec; cd ..;

Run the following command to prepare the files required by the demo. This will download the AFLW2000-3D dataset alongside the converted dataset structure.

th download-content.lua

Usage

In order to run the demo simply type:

mkdir models && wget https://www.adrianbulat.com/downloads/BinaryHumanPose/facealignment_binary_aflw.t7 -O models/facealignment_binary_aflw.t7
th main.lua

Pretrained models

Layer typeModel SizeAFLW2000-3D NME error
AFLW2000-3D1.4MB3.28

Note: More pretrained models will be added soon.

Notes

For more details/questions please visit the project page or send an email at adrian.bulat@nottingham.ac.uk