この記事でやること
Windows 10 で bash が使えるようになったということで、試しに neural-style を動かしてみたいと思います。ただの動作報告です。
Neural-styleとは?
下記ブログである程度説明されていますが、A Neural Algorithm of Artistic Style というアルゴリズムが発表されました。
画風を変換するアルゴリズム | Preferred Research
ある写真と画風を与えてあげると、写真をその画風で書かれた絵のように変換してくれるアルゴリズムです。
裏ではニューラルネットの学習が行われています。上で紹介した記事にもchainerを使った実装がありますが、今回はそれとは別の以下の実装を動かしてみます。
GitHub - jcjohnson/neural-style: Torch implementation of neural style algorithm
動かす環境
また、私のマシンの環境はこの通りです。
- Lenovo X1 Carbon (2014年春に購入したモデル)
- Windows 10, Anniversary Update 適用済み
- Bash on Windows で動かしてみます
Bash on Windows はデフォルトではオフになっているので、有効にする方法は下記の記事を参考にしていただければと思います。
Windows 10のbash on Windowsを試す - kkamegawa's weblog
インストール
まずは neural-style が使用しているライブラリを入れていきます。
git
sudo apt-get install git sudo apt-get install pip3
このように、Windowsでapt-getが普通に動きます。すごい時代ですね。
torch7
Torch | Getting started with Torch
上記サイトの指示通りに、以下のコマンドを実行していきます。
git clone https://github.com/torch/distro.git ~/torch --recursive cd ~/torch; bash install-deps; ./install.sh source ~/.bashrc
ここまで実行したところで th というコマンドでtourchが起動するか試したところ、問題なく起動しました。
loadcaffe
GitHub - szagoruyko/loadcaffe: Load Caffe networks in Torch7
次はこのページ通りにloadcaffeをインストールします。
sudo apt-get install libprotobuf-dev protobuf-compiler luarocks install loadcaffe
neural-style
そしていよいよ neural-style 本体です。
git clone https://github.com/jcjohnson/neural-style.git ~/neural-style
cd ~/neural-style
sh models/download_models.sh
これでソースコードとモデルがダウンロードされます。
実行してみる
下記のコマンドで実際の処理を実行できます!私のマシンにはGPUが載ってないので、CPUモードで。
th neural_style.lua -style_image <image.jpg> -content_image <image.jpg> -gpu -1
試しにこの猫の画像を、
この点画のような画風にしてみると、
こうなりました。
人の顔は載せられないので猫の画像を載せていますが、人でやると結構面白いです。
ちなみに、私の環境だと、1000回イテレーションを回すのに、大体2時間くらいかかります。