Skip to content

Deep head pose model with ShuffleNetV2, EfficientNet backbonds and Landmark estimation.

Notifications You must be signed in to change notification settings

vietanhdev/deep-head-pose-2

Repository files navigation

Deep Head Pose 2 - Keras Tensorflow 2

Deep Head Pose 2

I. Introduction

I. Environment:

  • We use Tensorflow 2.0.0.
  • Install environment from environment.yml file using Anaconda and Miniconda and activate that environment.

II. Dataset preparation

    1. Download 300W_LP, BIWI and AFLW2000 datasets and put into data/300W_LP, data/BIWI, data/AFLW2000 respectively.
    1. Use following scripts to generate data from those datasets: make_data_300W_LP.py, make_data_BIWI.py, make_data_AFLW2000.py. You can download final AFLW2000 from here.
    1. Run sh split_data_set.sh to split dataset. This script will take 2000 images from 300W_LP and 2000 images from BIWI dataset to build validation set at data/val_set and remaining parts of these dataset to build training set at data/train_set. We use AFLW2000 as testing set.

III. Training and testing

Training

  • Modify config files at config_shufflenetv2.json and config_efficientnet.json to use for training and testing.

  • Example of commands for training:

python train.py -c config_shufflenetv2.json

Or

python train.py -c config_efficientnet.json

Testing

python test.py -c config_shufflenetv2.json

Or

python test.py -c config_efficientnet.json

About

Deep head pose model with ShuffleNetV2, EfficientNet backbonds and Landmark estimation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published