This is a MXNet/Gluon Implementation of End-to-end 3D Face Reconstruction with Deep Neural Networks.
- Download VGG-Face and convert it to the mxnet-weights by running the caffe_converter:
python $MXNET/tools/caffe_converter/convert_model.py prototxt weights params_name
Put the weights into the folder ckpt/VGG-Face
-
Prepare the dataset
-
For train your dataset, you may need to change the
dataset
in the main code to fit your dataset -
Run the code:
# fine-tune the branch and fully connected layers python E2FAR.py --pretrained --freeze --epoch 10 # fine-tune whole network python E2FAR.py --start_epoch 10
If you use this code, pls mention this repo and cite the paper:
@InProceedings{Dou_2017_CVPR,
author = {Dou, Pengfei and Shah, Shishir K. and Kakadiaris, Ioannis A.},
title = {End-To-End 3D Face Reconstruction With Deep Neural Networks},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {July},
year = {2017}
}
dataloader is very slow and cannot make fully usage of GPU training. You can use record io to pack the image and do more augmentation.