マウスを使って描いたイラストが、一瞬のうちにリアルな風景写真に変換される技術「gauGAN」が面白そうだったので試してみました。
gauGANは今年の3月に開催されたNVIDIA’s GPU Technology Conference(GTC)にて発表された技術です。
gauGANで検索するとよく出てくる、マウスで描いた部分が写真に変換されるGUIみたいなのは見つからなかった(まだ公開されてない?)
ので、今回は学習済のモデルを使って画像を生成するまでをやってみたいと思います。
githubにコードが上がっています。
環境
Windows10 64bit
Anaconda
Python : 3.7
①環境の構築
上記のgithubページからhauGANのコードを取得します
git clone https://github.com/NVlabs/SPADE.git
環境作成
conda create -n gauGAN
必要なライブラリのインストール
cd SPADE-master\SPADE-master pip install -r requirements.txt
ここでエラーが出る場合には、環境に合わせて自分でPytorchをインストールします
conda install torch‑0.4.0‑cp37‑cp37m‑win_amd64.whl
※これでインストールした場合、後から「No Module Named~」のエラーが出ますが
その都度必要なライブラリをインストールしてください
②データセットの取得
※学習済のモデルを使用する場合には必要ないかもしれないです!
githubのREAD MEに沿って、必要なデータセットを準備します。
今回は以下からCOCO-Stuff Datasetというデータセットを取得しました。
このページから「train2017.zip」と「test2017.zip」をダウンロードし、解凍しておきます。
解凍したらtrain・test両方ともgauGANのSPADE-master\SPADE-master\datasetsフォルダに移動しておきます。
③the Synchronized-BatchNorm-PyTorchの取得
以下から取得します。
取得したフォルダ(Synchronized-BatchNorm-PyTorch-master)の中身一式(sync_batchnormとか)を
SPADE-master\SPADE-master\models\networkに移動しておきます。
④学習済モデルの取得
以下から取得し、解凍します。
解凍したcheckpointsフォルダをSPADE-master\SPADE-masterに移動しておきます。
⑤学習済モデルを使って、画像を生成する
以下のようなコマンドで生成することができます
python test.py --name [type]_pretrained --dataset_mode [dataset] --dataroot [path_to_dataset]
今回の場合だと
python test.py --name coco_pretrained --dataset_mode coco --dataroot datasets/coco_stuff
このようなコマンドになります。
生成された画像はresultsフォルダに保存されます。
多少歪んでますが、ちゃんと生成で来てますね!