AdaAttN
Officially unofficial PyTorch re-implementation of paper: AdaAttN: Revisit Attention Mechanism in Arbitrary Neural Style Transfer, ICCV 2021.
Install / Use
/learn @Huage001/AdaAttNREADME
AdaAttN: Revisit Attention Mechanism in Arbitrary Neural Style Transfer
<a href="https://replicate.ai/huage001/adaattn"><img src="https://img.shields.io/static/v1?label=Replicate&message=Demo and Docker Image&color=blue"></a>
Overview
This repository contains the officially unofficial PyTorch **re-**implementation of paper:
AdaAttN: Revisit Attention Mechanism in Arbitrary Neural Style Transfer,
Songhua Liu, Tianwei Lin, Dongliang He, Fu Li, Meiling Wang, Xin Li, Zhengxing Sun, Qian Li, Errui Ding
ICCV 2021

Updates
- [2022-12-07] Upload script of user control. Please see user_specify_demo.py
- [2022-12-07] Upload inference code of video style transfer. Please see inference_frame.py. Please download checkpoints from here and extract the package to the main directory of this repo before running.
Prerequisites
-
Linux or macOS
-
Python 3
-
PyTorch 1.7+ and other dependencies (torchvision, visdom, dominate, and other common python libs)
-
Getting Started
-
Clone this repository:
git clone https://github.com/Huage001/AdaAttN cd AdaAttN -
Inference:
-
Make a directory for checkpoints if there is not:
mkdir checkpoints -
Download pretrained model from Google Drive, move it to checkpoints directory, and unzip:
mv [Download Directory]/AdaAttN_model.zip checkpoints/ unzip checkpoints/AdaAttN_model.zip rm checkpoints/AdaAttN_model.zip -
Configure content_path and style_path in test_adaattn.sh firstly, indicating paths to folders of testing content images and testing style images respectively.
-
Then, simply run:
bash test_adaattn.sh -
Check the results under results/AdaAttN folder.
-
-
Train:
-
Download 'vgg_normalised.pth' from here.
-
Download COCO dataset and WikiArt dataset and then extract them.
-
Configure content_path, style_path, and image_encoder_path in train_adaattn.sh, indicating paths to folders of training content images, training style images, and 'vgg_normalised.pth' respectively.
-
Before training, start visdom server:
python -m visdom.server -
Then, simply run:
bash train_adaattn.sh -
You can monitor training status at http://localhost:8097/ and models would be saved at checkpoints/AdaAttN folder.
-
You may feel free to try other training options written in train_adaattn.sh.
-
Citation
-
If you find ideas or codes useful for your research, please cite:
@inproceedings{liu2021adaattn, title={AdaAttN: Revisit Attention Mechanism in Arbitrary Neural Style Transfer}, author={Liu, Songhua and Lin, Tianwei and He, Dongliang and Li, Fu and Wang, Meiling and Li, Xin and Sun, Zhengxing and Li, Qian and Ding, Errui}, booktitle={Proceedings of the IEEE International Conference on Computer Vision}, year={2021} }
Acknowledgments
- This implementation is developed based on the code framework of pytorch-CycleGAN-and-pix2pix by Junyan Zhu et al.
-
Related Skills
node-connect
345.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
104.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
345.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
345.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
