By Debayan Deb, Jianbang Zhang, and Anil K. Jain
A tensorflow implementation of AdvFaces, a fully automatic adversarial face generatorthat learns to generate minimal perturbations in the salient facial regions via Generative Adversarial Networks. Once AdvFaces is trained, it can automatically generate imperceptible perturbations that can fool state-of-the-art face matchers with attack success rates as high as 97.22% and 24.30% for obfuscation and impersonation attacks, respectively.
Currently this repo is compatible with Tensorflow r1.14.0.
@article{deb2019advfaces,
title={Advfaces: Adversarial face synthesis},
author={Deb, Debayan and Zhang, Jianbang and Jain, Anil K},
journal={arXiv preprint arXiv:1908.05008},
year={2019}}
- The configuration files for training are saved under
config/
folder, where you can define the dataset prefix, training list, model file, attack setting (obfuscation or impersonation) and other hyper-parameters. Use the following command to run the default training configuration:The command will create an folder underpython train.py config/default.py
log/default/
which saves all the checkpoints, test samples and summaries. The model directory is named as the time you start training.
- Run the test code in the following format:
python test_adversaries.py
- For example, if you want to use the pre-trained model, download the model and unzip it into
pretrained
folder. Then, runpython test_adversaries.py