Awesome
<center>DeepPrivacy2 - A Toolbox for Realistic Image Anonymization
[Paper] [Appendix] [Video Demo] [Documentation]
</center>DeepPrivacy2 is a toolbox for realistic anonymization of humans, including a face and a full-body anonymizer.
<p align="center"> <img width="50%" src="https://www.hukkelas.no/images/anonymization_demo.gif" /> </p>DeepPrivacy first detects, then recursively anonymization all individuals in an image with a Generative Adversarial Network (GAN) that synthesizes one individual at a time.
Published Papers
This repository provide source code for the following papers
- [PDF] [Appendix] [Conference Presentation] DeepPrivacy2: Towards Realistic Full-Body Anonymization. Published at WACV 2023.
- [PDF] [Appendix] Does Image Anonymization Impact Computer Vision Training? Published at CVPR Workshop on Autonomous Driving 2023.
- [PDF] [Appendix] Synthesizing Anyone, Anywhere, in Any Pose.
DeepPrivacy2 vs DeepPrivacy1
This repository improves over the original DeepPrivacy repository with the following new features:
- Full-body anonymization: Anonymize the entire human body with a single generator
- Improved Face Anonymization: Improved quality and higher resolution (256x256 vs. 128x128) face anonymization without relying on facial landmark detection.
- Attribute Guided Anonymiation: Anonymize faces guided on text prompts using StyleMC - [Video Demo].
- Code cleanup and general improvements: Extensive refactoring, bugfixes, and improvements yielding improved results and faster training.
Useful Links
Quick Start
Installation
We recommend to setup and install pytorch with anaconda following the pytorch installation instructions.
- Clone repository:
git clone https://github.com/hukkelas/deep_privacy2/
. - Install using
setup.py
:
pip install -e .
or:
pip install git+https://github.com/hukkelas/deep_privacy2/
See the documentation for more installation instructions.
Anonymization
anonymize.py is the main script for anonymization.
Full-Body Anonymization
python3 anonymize.py configs/anonymizers/FB_cse.py -i media/regjeringen.jpg --output_path output.png --visualize
Face Anonymization
python3 anonymize.py configs/anonymizers/face.py -i media/regjeringen.jpg --output_path output.png --visualize
Webcam anonymization
python3 anonymize.py configs/anonymizers/FB_cse.py --webcam
See the documentation for more detailed instructions for anonymization.
Gradio Demos
The repository includes gradio demos to show of the capabilities of DeepPrivacy2.
Face anonymization. Test it on Hugging Face.
python3 -m gradio_demos.face
Full-body anonymization. Test it on Hugging Face.
python3 -m gradio_demos.body_cse
License
This repsitory is released under Apache 2.0 License, except for the following:.
- Code under
sg3_torch_utils/
. This code is modified from github.com/NVlabs/stylegan2-ada-pytorch. Separate license is attached in the directory. - Detection network: See Detectron2 License.
- All checkpoints follow the license of the datasets. See the respective datasets for more information.
- Code under
dp2/detection/models/vit_pose
. This code is modified from https://github.com/gpastal24/ViTPose-Pytorch, where code is adapted from OpenMMLab. Original license is Apache 2-0.
Citation
If you find this repository useful, please cite:
@inproceedings{hukkelas23DP2,
author={Hukkelås, Håkon and Lindseth, Frank},
booktitle={2023 IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)},
title={DeepPrivacy2: Towards Realistic Full-Body Anonymization},
year={2023},
volume={},
number={},
pages={1329-1338},
doi={10.1109/WACV56688.2023.00138}}