Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/naoto0804/pytorch-AdaIN
Unofficial pytorch implementation of 'Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization' [Huang+, ICCV2017]
https://github.com/naoto0804/pytorch-AdaIN
cnn instance-normalization pytorch style-transfer
Last synced: about 1 month ago
JSON representation
Unofficial pytorch implementation of 'Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization' [Huang+, ICCV2017]
- Host: GitHub
- URL: https://github.com/naoto0804/pytorch-AdaIN
- Owner: naoto0804
- License: mit
- Archived: true
- Created: 2017-11-28T13:21:19.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-01-23T00:48:00.000Z (11 months ago)
- Last Synced: 2024-09-27T03:21:04.193Z (3 months ago)
- Topics: cnn, instance-normalization, pytorch, style-transfer
- Language: Python
- Homepage:
- Size: 7.61 MB
- Stars: 1,059
- Watchers: 8
- Forks: 208
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-normalization-techniques - [Python Reference
README
# pytorch-AdaIN
This is an unofficial pytorch implementation of a paper, Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization [Huang+, ICCV2017].
I'm really grateful to the [original implementation](https://github.com/xunhuang1995/AdaIN-style) in Torch by the authors, which is very useful.![Results](results.png)
## Requirements
Please install requirements by `pip install -r requirements.txt`- Python 3.5+
- PyTorch 0.4+
- TorchVision
- Pillow(optional, for training)
- tqdm
- TensorboardX## Usage
### Download models
Download decoder.pth / vgg_normalized.pth from [release](https://github.com/naoto0804/pytorch-AdaIN/releases/tag/v0.0.0) and put them under `models/`.### Test
Use `--content` and `--style` to provide the respective path to the content and style image.
```
CUDA_VISIBLE_DEVICES= python test.py --content input/content/cornell.jpg --style input/style/woman_with_hat_matisse.jpg
```You can also run the code on directories of content and style images using `--content_dir` and `--style_dir`. It will save every possible combination of content and styles to the output directory.
```
CUDA_VISIBLE_DEVICES= python test.py --content_dir input/content --style_dir input/style
```This is an example of mixing four styles by specifying `--style` and `--style_interpolation_weights` option.
```
CUDA_VISIBLE_DEVICES= python test.py --content input/content/avril.jpg --style input/style/picasso_self_portrait.jpg,input/style/impronte_d_artista.jpg,input/style/trial.jpg,input/style/antimonocromatismo.jpg --style_interpolation_weights 1,1,1,1 --content_size 512 --style_size 512 --crop
```Some other options:
* `--content_size`: New (minimum) size for the content image. Keeping the original size if set to 0.
* `--style_size`: New (minimum) size for the content image. Keeping the original size if set to 0.
* `--alpha`: Adjust the degree of stylization. It should be a value between 0.0 and 1.0 (default).
* `--preserve_color`: Preserve the color of the content image.### Train
Use `--content_dir` and `--style_dir` to provide the respective directory to the content and style images.
```
CUDA_VISIBLE_DEVICES= python train.py --content_dir --style_dir
```For more details and parameters, please refer to --help option.
I share the model trained by this code as `iter_1000000.pth
` at [release](https://github.com/naoto0804/pytorch-AdaIN/releases/tag/v0.0.0).## References
- [1]: X. Huang and S. Belongie. "Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization.", in ICCV, 2017.
- [2]: [Original implementation in Torch](https://github.com/xunhuang1995/AdaIN-style)