PFNのChainerで、ネコ写真をゴッホ風にしてみた。
Deep Neural Networkを使って画像を好きな画風に変換できるプログラムの、Chainer実装が公開されています。
画風を変換するアルゴリズム | Preferred Research
結果もとても分かりやすく載っています。
だがしかし、なるほどねー、と分かった気になってないで自分でやってみないと、というわけで、「やってみた」シリーズ。2011年物のMacBook Airにインストール、ブンブンやりました。フーフーかな。
CPU、Intel Core i7 2GHz (Ivy Bridge)です。Intel HD Graphics 4000なので、残念ながらGPUライブラリは使えません。裏で回しながら通常業務をやっていましたが、全く支障なし。
インストール&実行自体も特に支障なく、非常に簡単。
1. githubでクローン。
2. インストール。
pip install chainer
3. Caffeのモデルを使うので、ダウンロード、同じディレクトリーに配置。
https://gist.github.com/ksimonyan/211839e770f7b538e2d8#file-readme-md
ページ内のこのファイルをゲットします。→ caffemodel_url:
http://www.robots.ox.ac.uk/~vgg/software/very_deep/caffe/VGG_ILSVRC_16_layers.caffemodel
4. PIL (Python Imaging Library) が足りない!と言われたので、インストール。
pip install Pillow
5. ディレクトリーを用意して、実行!
python chainer-gogh.py -m vgg -i sample_images/cat.png -s sample_images/style_0.png -o sample_images -g -1
6. 完全にノイズからスタート、10分ごとに、だんだんと細部までゴッホ風に表現されていきました。
元のネコ写真と画風のテンプレートとなるゴッホの名画「星月夜」
MacBook Air にて9時間ちょっと計算した結果をGIFアニメにしてみました。
<---- GIFアニメです。
4時間ぐらいやると、大体、いい感じになりました。4時間経過時の物。
テンプレート、対象写真、共に題材を選ぶ感じですが、いろいろ試してみたいです。
Chainer、一応入門できたので、しばらく食いついてみよう。