WindowsでPytorchのCycleGANを使ってみる

はじめに

github.com

  • 今回はWindowsでhorse2zebraのデモのみ行った。
  • Linux or macOSが前提と書かれているがWindowsでも動く(ただしデータのダウンロードに少し骨が折れる)
  • あらかじめこのGitHubページからZIPファイルをダウンロードして解凍しておく。

環境

Windows10 Pro 64bit
NVIDIA GeForce GTX1080
CUDA9.2
cudnn7.2.1
Python3.6.6(venv使用)

バージョン確認(pip freeze)

  • 「torch」「torchvision」のインストールはこちらを参照
  • 「dominate」「scipy」「visdom」をpipで追加インストールした
  • データのダウンロードにMXNetを使用したので「mxnet-cu92」がインストールされている
  • venvを使用しているので「pylint」がインストールされている
astroid==2.0.4
certifi==2018.10.15
chardet==3.0.4
colorama==0.4.0
dominate==2.3.4
graphviz==0.8.4
idna==2.6
isort==4.3.4
lazy-object-proxy==1.3.1
mccabe==0.6.1
mxnet-cu92==1.3.1b20180927
numpy==1.14.6
Pillow==5.3.0
pylint==2.1.1
pyzmq==17.1.2
requests==2.18.4
scipy==1.1.0
six==1.11.0
torch==0.4.1
torchfile==0.1.0
torchvision==0.2.1
tornado==5.1.1
typed-ast==1.1.0
urllib3==1.22
visdom==0.1.8.5
websocket-client==0.53.0
wrapt==1.10.11

データのダウンロード

  • 自分はMXNetを使用したがなんでも良い
from mxnet.gluon import utils

dataset = 'horse2zebra'

url = 'http://efrosgans.eecs.berkeley.edu/cyclegan/pretrained_models/%s.pth' % (dataset)
utils.download(url)

URL='https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/%s.zip' % (dataset)
utils.download(URL)
  • ダウンロードされた「horse2zebra.pth」は「latest_net_G.pth」に名前を変更して「./checkpoints/horse2zebra_pretrained/latest_net_G.pth」に保存(存在しないフォルダは手動で作る)
  • ダウンロードされた「horse2zebra.zip」を手動で解凍する

実行

python test.py --dataroot horse2zebra/testA --name horse2zebra_pretrained --model test

CPUのみの場合には「--gpu_ids -1」をつける