neural artistic styleをUbuntuに構築して自家製Ostagramしようぜって話し
Ostagramとは
AlphaGoのニュースが世界中を駆け回っている中、ひっそりと「Ostagram」というキーワードがBuzzっていた。
Googleが公開して話題になったDeep Dreamを発展・改良した様なソフトウェア郡を用い、
イメージ画像へスタイル画像の画風を転換する技術でアート作品を作るというプロジェクトをやっているロシアングループがいて、彼らがプロジェクトをOstagramと呼んでいる。
仕組み自体は畳み込みニューラルネットワークを用いたシンプルなモノ。(追記予定)
具体的な作品事例は下記を参照。
ゴッホがゲルニカっぽい画風でブラッドピットを描いたらどんな風になるのか?
といった様な事をGPUまたはCPUにやらせている。
で、今回はこの画風変換を自前のPCで遊ぶ為に環境構築しようぜって話し。
ちなみに、有料でこの遊びを代行してくれるWebサービスが2つほどあるのを確認してる。
流行ってる間はいい小遣い稼ぎになりそう。
neural artistic style
僕が知ってる限り、近い仕組みで画風変換をするプログラムは3つばかしある。
1つは今回紹介するneural artistic styleで、もう1つがchainer-gogh、もう1つがneural style。
neural styleも自分のUbuntuで環境構築済みだけど、他に構築方法紹介してるBlogが既にあったのであえて別なのを紹介。
まずはcudarrayを入れよう
Numpyライブラリで、CUDAベースの処理を行える様にするモノらしい。
試してないけどCUDA入れてなくてCPUでやるわって人でも大丈夫なはず。
GitHub - andersbll/cudarray: CUDA-based NumPy
あ、CUDAをUbuntuに入れる時けっこうハマりポイントあります。
Nouveauを無効化した上でインストールしないとダメです。
ニーズがあればこの話しもまた今度…
Deeppyを入れる
ファイル群を自分のPCのどっかにクローンして下記コード打つだけ。
GitHub - andersbll/deeppy: Deep learning in Python
仕上げ
neural_artistic_style
GitHub - andersbll/neural_artistic_style: Neural Artistic Style in Python
を自分のPCのどっかにクローン。
そのフォルダの中に
のimagenet-vgg-verydeep-19というリンクからimagenet-vgg-verydeep-19.matをダウンロードして入れておく。
入れ終わったら下記コード叩いてOstagram画像を生成しよう。
python neural_artistic_style.py --subject images/tuebingen.jpg --style images/starry_night.jpg
自家製例
こうなった。