Unofficial Pytorch(1.0+) implementation of ICCV 2019 paper "Multimodal Style Transfer via Graph Cuts".
Original tensorflow implementations from the authon will be found here.
This repository provides a pre-trained model for you to generate your own image given content image and style image. Also, you can download the training dataset or prepare your own dataset to train the model from scratch.
If you have any question, please feel free to contact me. (Language in English/Japanese/Chinese will be ok!)
I propose a structure-emphasized multimodal style transfer(SEMST), feel free to use it here.
- Python 3.7+
- PyTorch 1.0+
- TorchVision
- Pillow
- PyMaxflow
Anaconda environment recommended here!
(optional)
- GPU environment
-
Clone this repository
git clone https://github.com/irasin/Pytorch_MST cd Pytorch_MST
-
Prepare your content image and style image. I provide some in the
content
andstyle
and you can try to use them easily. -
Download the pretrained model here
-
Generate the output image. A transferred output image w/&w/o style image and a NST_demo_like image will be generated.
python test.py -c content_image_path -s style_image_path
usage: test.py [-h] [--content CONTENT] [--style STYLE] [--output_name OUTPUT_NAME] [--n_cluster N_CLUSTER] [--alpha ALPHA] [--lam LAM] [--max_cycles MAX_CYCLES] [--gpu GPU] [--model_state_path MODEL_STATE_PATH]
If output_name is not given, it will use the combination of content image name and style image name.
-
Download COCO (as content dataset)and Wikiart (as style dataset) and unzip them, rename them as
content
andstyle
respectively (recommended). -
Modify the argument in the
train.py
such as the path of directory, epoch, learning_rate or you can add your own training code. -
Train the model using gpu.
-
python train.py
usage: train.py [-h] [--batch_size BATCH_SIZE] [--epoch EPOCH] [--gpu GPU] [--learning_rate LEARNING_RATE] [--snapshot_interval SNAPSHOT_INTERVAL] [--n_cluster N_CLUSTER] [--alpha ALPHA] [--lam LAM] [--max_cycles MAX_CYCLES] [--gamma GAMMA] [--train_content_dir TRAIN_CONTENT_DIR] [--train_style_dir TRAIN_STYLE_DIR] [--test_content_dir TEST_CONTENT_DIR] [--test_style_dir TEST_STYLE_DIR] [--save_dir SAVE_DIR] [--reuse REUSE]
Some results of content image will be shown here.