GANILLA
我们提供了以下论文的PyTorch实现:
GANILLA: 用于图像到插图转换的生成对抗网络。
更新
- (2023年10月) 我们发布了最新工作的代码:WAIT: 使用GANs进行动画到插图视频转换的特征扭曲。
- (2021年2月) 我们发布了最新工作的代码:用于素描着色的对抗性分割损失。
数据集统计:
样例图像:
GANILLA:
GANILLA在插图数据集上的结果:
与其他方法的比较:
使用宫崎骏动画图像的风格迁移:
消融实验:
前提条件
- Linux、macOS或Windows
- Python 2或3
- CPU或NVIDIA GPU + CUDA CuDNN
开始使用
下载数据集
详情请参考datasets.md。
安装
- 克隆此仓库:
git clone https://github.com/giddyyupp/ganilla.git
cd ganilla
- 从http://pytorch.org安装PyTorch 0.4+和torchvision以及其他依赖项(如visdom和dominate)。你可以通过以下命令安装所有依赖项:
pip install -r requirements.txt
- 对于Conda用户,我们提供了一个脚本
./scripts/conda_deps.sh
来安装PyTorch和其他库。
GANILLA 训练/测试
- 下载GANILLA/CycleGAN数据集(例如maps):
bash ./datasets/download_cyclegan_dataset.sh maps
- 训练模型:
#!./scripts/train_ganilla.sh
python train.py --dataroot ./datasets/maps --name maps_cyclegan --model cycle_gan --netG resnet_fpn
- 要查看训练结果和损失曲线,运行
python -m visdom.server
并点击URL http://localhost:8097。要查看更多中间结果,请查看`./checkpoints/maps_cyclegan/web/index.html` - 测试模型:
#!./scripts/test_cyclegan.sh
python test.py --dataroot ./datasets/maps --name maps_cyclegan --model cycle_gan --netG resnet_fpn
测试结果将保存在以下html文件中:./results/maps_cyclegan/latest_test/index.html
。
您可以在scripts
目录中找到更多脚本。
应用预训练模型(GANILLA)
- 您可以使用以下链接下载预训练模型
将预训练模型放在./checkpoints/{name}_pretrained/100_net_G.pth
下。
- 要测试模型,您还需要下载monet2photo数据集,并使用trainB图像作为源:
bash ./datasets/download_cyclegan_dataset.sh monet2photo
- 然后使用以下命令生成结果
python test.py --dataroot datasets/monet2photo/testB --name {name}_pretrained --model test
选项--model test
用于仅生成GANILLA的单向结果。python test.py --model cycle_gan
将需要加载并生成两个方向的结果,这有时是不必要的。结果将保存在./results/
中。使用--results_dir {directory_path_to_save_result}
指定结果目录。
- 如果您想将预训练模型应用于输入图像集合(而不是图像对),请使用
--dataset_mode single
和--model test
选项。这里是将模型应用于Facade标签图(存储在facades/testB
目录中)的脚本。
#!./scripts/test_single.sh
python test.py --dataroot ./datasets/monet2photo/testB/ --name {your_trained_model_name} --model test
您可能需要指定--netG
以匹配训练模型的生成器架构。
风格与内容CNN
我们在这个仓库中分享了风格与内容CNN。它包含了两个CNN的训练/测试过程以及预训练权重。
训练/测试技巧
训练和测试模型的最佳实践。
常见问题
在提出新问题之前,请先查看上述问答和现有的GitHub问题。
引用
如果您将此代码用于研究,请引用我们的论文。
@article{hicsonmez2020ganilla,
title={GANILLA: Generative adversarial networks for image to illustration translation},
author={Hicsonmez, Samet and Samet, Nermin and Akbas, Emre and Duygulu, Pinar},
journal={Image and Vision Computing},
pages={103886},
year={2020},
publisher={Elsevier}
}
@inproceedings{Hicsonmez:2017:DDN:3078971.3078982,
作者 = {Hicsonmez, Samet 和 Samet, Nermin 和 Sener, Fadime 和 Duygulu, Pinar},
标题 = {DRAW:用于识别儿童书籍插画家风格的深度网络},
会议论文集 = {2017年ACM国际多媒体检索会议论文集},
年份 = {2017}
}
致谢
我们的代码深受CycleGAN的启发。
本研究中报告的数值计算完全在土耳其科学技术研究委员会ULAKBIM高性能和网格计算中心(TRUBA资源)进行。