PyTorchでA Nueral Algorithm of Artistic Styleを試してみる

chainerではすでに実装されているので、PyTorchでも実装されていないか探してみる
https://github.com/mattya/chainer-gogh


PyTrochのチュートリアルにあった(汗)
https://pytorch.org/tutorials/advanced/neural_style_tutorial.html



ケイティ先生をピカソの画風にしてみる

ピカソの絵(学習対象)

ネット上で拾ったケイティ先生の画像(適用対象)

ピカソ画風に変換後


ゴッホの絵(学習対象)

ゴッホ画風ケイティ先生


ムンクの絵(学習対象)

ムンク画風ケイティ先生


■いくつか注意点

・pytorchのバージョンは0.4にしないと動かない

・学習対象の画像と適用対象の画像の縦横比は一致しないといけないので、ちょっと横を切ったりしている


・画像サイズは内部で変換しているが、256*256になるようにしている
ソースのL185あたりだと↓だが、学習の時間をなるべく少なくしたいため(いちおうCUDAはインストール済み)


imsize = 512 if torch.cuda.is_available() else 128 # use small size if no gpu
→この条件だと5分くらいで学習が終わった





■余談
おおっと、手が滑って学習対象と変換対象を入れ替えてしまった(棒)

sally(ケイティ先生の絵師の名前)画風ムンクの叫び