***** new:Stargan V2はhttps://github.com/clovaai/stargan-v2 *****で入手できます。

このリポジトリは、次の論文の公式Pytorchの実装を提供します。
Stargan:マルチドメイン画像から画像への翻訳のための統一された生成官能ネットワーク
Yunjey Choi 1,2 、Minje Choi 1,2 、Munyoung Kim 2,3 、Jungwoo Ha 2 、Sung Kim 2,4 、Jaegul Choo 1,2
1 Korea University、 2 Clova AI Research、Naver Corp.
3ニュージャージー大学、 4香港科学技術大学
https://arxiv.org/abs/1711.09020要約:最近の研究では、2つのドメインの画像間翻訳で顕著な成功が示されています。ただし、既存のアプローチは、画像ドメインのペアごとに異なるモデルを個別に構築する必要があるため、2つ以上のドメインを処理する際のスケーラビリティと堅牢性が制限されています。この制限に対処するために、単一のモデルのみを使用して複数のドメインに対して画像間翻訳を実行できる斬新でスケーラブルなアプローチであるStarganを提案します。 Starganのこのような統一されたモデルアーキテクチャにより、単一のネットワーク内で異なるドメインを持つ複数のデータセットの同時トレーニングが可能になります。これにより、既存のモデルと比較してStarganの優れた品質の翻訳された画像と、入力画像を任意のターゲットドメインに柔軟に翻訳する斬新な能力につながります。私たちは、顔の属性の伝達と表情表現の合成タスクに対するアプローチの有効性を経験的に実証します。
celebaデータセットをダウンロードするには:
git clone https://github.com/yunjey/StarGAN.git
cd StarGAN/
bash download.sh celebaRAFDデータセットをダウンロードするには、Radboud Faces Database Webサイトからデータセットへのアクセスをリクエストする必要があります。次に、ここで説明するようにフォルダー構造を作成する必要があります。
セレバでスターガンを訓練するには、以下のトレーニングスクリプトを実行します。 Celebaデータセットの選択可能な属性のリストについては、こちらをご覧ください。 selected_attrs引数を変更する場合は、それに応じてc_dim引数も変更する必要があります。
# Train StarGAN using the CelebA dataset
python main.py --mode train --dataset CelebA --image_size 128 --c_dim 5
--sample_dir stargan_celeba/samples --log_dir stargan_celeba/logs
--model_save_dir stargan_celeba/models --result_dir stargan_celeba/results
--selected_attrs Black_Hair Blond_Hair Brown_Hair Male Young
# Test StarGAN using the CelebA dataset
python main.py --mode test --dataset CelebA --image_size 128 --c_dim 5
--sample_dir stargan_celeba/samples --log_dir stargan_celeba/logs
--model_save_dir stargan_celeba/models --result_dir stargan_celeba/results
--selected_attrs Black_Hair Blond_Hair Brown_Hair Male YoungRAFDでスターガンを訓練する:
# Train StarGAN using the RaFD dataset
python main.py --mode train --dataset RaFD --image_size 128
--c_dim 8 --rafd_image_dir data/RaFD/train
--sample_dir stargan_rafd/samples --log_dir stargan_rafd/logs
--model_save_dir stargan_rafd/models --result_dir stargan_rafd/results
# Test StarGAN using the RaFD dataset
python main.py --mode test --dataset RaFD --image_size 128
--c_dim 8 --rafd_image_dir data/RaFD/test
--sample_dir stargan_rafd/samples --log_dir stargan_rafd/logs
--model_save_dir stargan_rafd/models --result_dir stargan_rafd/resultsセレバとRAFDの両方でスターガンを訓練するために:
# Train StarGAN using both CelebA and RaFD datasets
python main.py --mode=train --dataset Both --image_size 256 --c_dim 5 --c2_dim 8
--sample_dir stargan_both/samples --log_dir stargan_both/logs
--model_save_dir stargan_both/models --result_dir stargan_both/results
# Test StarGAN using both CelebA and RaFD datasets
python main.py --mode test --dataset Both --image_size 256 --c_dim 5 --c2_dim 8
--sample_dir stargan_both/samples --log_dir stargan_both/logs
--model_save_dir stargan_both/models --result_dir stargan_both/results独自のデータセットでStarganを訓練するには、RAFDと同じ形式でフォルダー構造を作成し、コマンドを実行します。
# Train StarGAN on custom datasets
python main.py --mode train --dataset RaFD --rafd_crop_size CROP_SIZE --image_size IMG_SIZE
--c_dim LABEL_DIM --rafd_image_dir TRAIN_IMG_DIR
--sample_dir stargan_custom/samples --log_dir stargan_custom/logs
--model_save_dir stargan_custom/models --result_dir stargan_custom/results
# Test StarGAN on custom datasets
python main.py --mode test --dataset RaFD --rafd_crop_size CROP_SIZE --image_size IMG_SIZE
--c_dim LABEL_DIM --rafd_image_dir TEST_IMG_DIR
--sample_dir stargan_custom/samples --log_dir stargan_custom/logs
--model_save_dir stargan_custom/models --result_dir stargan_custom/results事前に訓練されたモデルチェックポイントをダウンロードするには、以下のスクリプトを実行します。事前に訓練されたモデルチェックポイントはダウンロードされ、 ./stargan_celeba_128/models stargan_celeba_128/modelsディレクトリに保存されます。
$ bash download.sh pretrained-celeba-128x128事前に訓練されたモデルを使用して画像を翻訳するには、以下の評価スクリプトを実行します。翻訳された画像は./stargan_celeba_128/resultsディレクトリに保存されます。
$ python main.py --mode test --dataset CelebA --image_size 128 --c_dim 5
--selected_attrs Black_Hair Blond_Hair Brown_Hair Male Young
--model_save_dir= ' stargan_celeba_128/models '
--result_dir= ' stargan_celeba_128/results ' この作品があなたの研究に役立つと思うなら、私たちの論文を引用してください:
@inproceedings{choi2018stargan,
author={Yunjey Choi and Minje Choi and Munyoung Kim and Jung-Woo Ha and Sunghun Kim and Jaegul Choo},
title={StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
year={2018}
}
この作業は主に行われ、最初の著者がClova AI ResearchのNaverで研究インターンシップを行いました。 Naverのすべての研究者、特にDonghyun Kwakに洞察に富んだ議論に感謝します。