This is unofficial pytorch implementation of the paper, "Image Style Transfer Using Convolutional Neural Networks" [Gatys+, CVPR2016].
- Python 3.5+ (tested with 3.5.4)
- PyTorch 0.2.0+ (tested with 0.3.0.post4)
- TorchVision 0.2.0+ (tested with 0.2.0)
- Numpy 1.11.1+ (tested with 1.13.3)
- Pillow 5.0.0+ (tested with 5.0.0)
--content, -c
: The path to the content image.--style, -s
: The path to the style image.--epoch, -e
: The number of epoch. (Default: 300)-content_weight, -c_w
: The weight of the content loss. (Default: 1)-style_weight, -s_w
: The weight of the style loss. (Default: 1000)--initialize_noise, -i_n
: If you use this option, the transferred image is initialized with white noise. If not, it is initialized with the grayscale content image.--cuda
: If you have an available GPU, you should use this option.
With CPU:
python style_transfer.py -c contents/golden_gate.jpg -s styles/kandinsky.jpg
With GPU:
python style_transfer.py -c contents/golden_gate.jpg -s styles/kandinsky.jpg --cuda
git clone https://github.com/enomotokenji/pytorch-Neural-Style-Transfer.git
cd pytorch-Neural-Style-Transfer
docker build -t style_transfer .
docker run -it style_transfer
nvidia-docker build -t style_transfer_gpu .
nvidia-docker run style_transfer_gpu
Install PyTorch and dependencies from http://pytorch.org.
We have prepared requirement.txt, but it is preferable to use Anaconda as recommended on http://pytorch.org.
- Leon A. Gatys, Alexander S. Ecker and Matthias Bethge. "Image Style Transfer Using Convolutional Neural Networks", in CVPR 2016. [Paper]
- Code is inspired by Neural Transfer with PyTorch.