Awesome
Photo-Realistic Monocular Gaze Redirection Using Generative Adversarial Networks
Authors: Zhe He, Adrian Spurr, Xucong Zhang, Otmar Hilliges
Contact: zhehe@student.ethz.ch
<p align="center"> <img src="/imgs/framework.jpg"> </p>The following gifs are made of images generated by our method. For each GIF, the input is a still image.
<p align="center"> <img src="/imgs/circle.gif" width="100" height="100" />   <img src="/imgs/zed.gif" width="100" height="100" />   <img src="/imgs/horizontal.gif" width="100" height="100" />   <img src="/imgs/vertical.gif" width="100" height="100" /> </p>Our method is also capable of handling different head poses.
<p align="center"> <img src="/imgs/headpose.jpg"> </p>Note
The code here is the development version. It can be used for training, but there might be some redundant code and compatiblity issues. The final version will be released soon.
Dependencies
tensorflow == 1.7
numpy == 1.13.1
scipy == 0.19.1
Dataset
The dataset contains eye patch images parsed from Columbia Gaze Dataset. It can be downloaded via this link.
tar -xvf dataset.tar
The dataset contains six subfolders, N30P/, N15P/, 0P/, P15P/, P30P/ and all/. Prefix 'N' means negative head pose, and 'P' means positive head pose. Folder all/ contains all eye patch images with different head poses.
VGG-16 pretrained weights
wget http://download.tensorflow.org/models/vgg_16_2016_08_28.tar.gz .
tar -xvf vgg_16_2016_08_28.tar.gz
Train
python main.py --mode train --data_path ./dataset/all/ --log_dir ./log/ --batch_size 32 --vgg_path ./vgg_16.ckpt
Test
To test the model on frontal faces, run the following command.
python main.py --mode eval --data_path ./dataset/0P/ --log_dir ./log/ --batch_size 21
Then, a folder named eval will be generated in folder ./log/. Generated images, input images and target images will be stored in eval/.