转载自:https://ptorch.com/news/116.html
PyTorch
实现StarGAN:用于多域图像到图像转换的统一生成对抗网络。StarGAN
可以灵活地使用一个单一的发生器和鉴别器将输入图像转换为任何想要的目标域。你可以在这里查看StarGAN的演示视频。本项目源码PyTorch实现"StarGAN:使用单一模型执行多个域的图像转换"。
Yunjey Choi, Minje Choi, Munyoung Kim, Jung-Woo Ha, Sung Kim, 和韩国大学的Jaegul Choo, Clova AI Research (NAVER), 香港科技大学新泽西学院的Clova AI Research(NAVER)
CelebA的面部属性转移
这些图像由在CelebA
数据集上训练的StarGAN
生成。
RaFD上的表情合成
图像由在RaFD
数据集上训练的StarGAN
生成。
CelebA上的表情合成
这些图像由在CelebA
和RaFD
数据集上训练的StarGAN
生成。
在单个数据集中进行训练
StarGAN
的概况,包括两个模块,一个鉴别器d和发电机G ^。
使用多个数据集进行训练
StarGAN
在与CelebA
和RaFD
进行训练时的概述。
1.克隆存储库
$ git clone https://github.com/yunjey/StarGAN.git
$ cd StarGAN/
2.下载数据集
(i)CelebA数据集
$ bash download.sh
(ii)RaFD数据集
由于RaFD
不是公共数据集,因此您必须首先请求访问Radboud Faces数据库网站的数据集。然后,您需要创建文件夹结构,如此处所述。
3.训练StarGAN
(i)与CelebA一起训练
$ python main.py --mode='train' --dataset='CelebA' --c_dim=5 --image_size=128 \
--sample_path='stargan_celebA/samples' --log_path='stargan_celebA/logs' \
--model_save_path='stargan_celebA/models' --result_path='stargan_celebA/results'
(ii)RaFD训练
$ python main.py --mode='train' --dataset='RaFD' --c_dim=8 --image_size=128 \
--num_epochs=200 --num_epochs_decay=100 --sample_step=200 --model_save_step=200 \
--sample_path='stargan_rafd/samples' --log_path='stargan_rafd/logs' \
--model_save_path='stargan_rafd/models' --result_path='stargan_rafd/results'
(iii)使用CelebA + RaFD进行训练
$ python main.py --mode='train' --dataset='Both' --image_size=256 --num_iters=200000 --num_iters_decay=100000 \
--sample_path='stargan_both/samples' --log_path='stargan_both/logs' \
--model_save_path='stargan_both/models' --result_path='stargan_both/results'
4.测试StarGAN
(i)CelebA面部属性转移
$ python main.py --mode='test' --dataset='CelebA' --c_dim=5 --image_size=128 --test_model='20_1000' \
--sample_path='stargan_celebA/samples' --log_path='stargan_celebA/logs' \
--model_save_path='stargan_celebA/models' --result_path='stargan_celebA/results'
(ii)RaFD上的面部表情综合
$ python main.py --mode='test' --dataset='RaFD' --c_dim=8 --image_size=128 \
--test_model='200_200' --rafd_image_path='data/RaFD/test' \
--sample_path='stargan_rafd/samples' --log_path='stargan_rafd/logs' \
--model_save_path='stargan_rafd/models' --result_path='stargan_rafd/results'
(iii)CelebA的脸部表情综合
$ python main.py --mode='test' --dataset='Both' --image_size=256 --test_model='200000' \
--sample_path='stargan_both/samples' --log_path='stargan_both/logs' \
--model_save_path='stargan_both/models' --result_path='stargan_both/results'
如果这项工作对您的研究有用,请引用我们的arXiv论文。
@article{choi2017stargan,
title = {StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation},
author = {Choi, Yunjey and Choi, Minje and Kim, Munyoung and Ha, Jung-Woo and Kim, Sunghun and Choo, Jaegul},
journal= {arXiv preprint arXiv:1711.09020},
Year = {2017}
}
原创文章,转载请注明 :PyTorch实现"StarGAN:使用单一模型执行多个域的图像转换"。 - pytorch中文网
原文出处: https://ptorch.com/news/116.html
问题交流群 :168117787