画像処理
TensorFlow
スプー

初心者がTensorFlowの画像スタイル変換を使ってお手軽に遊んでみた

TensorFlowでスタイル変換を使って遊んで見る

TensorFlowのスタイル変換で遊んでみました。今回は、GIthubのFast Style Transferに従ったお遊びです。機械学習やコード解説はありません。同じお遊びとしては、記事「初心者がTensorFlowの画像認識を使ってお手軽に遊んでみた」もあります。
実行環境は下表のとおりです。
00.Architecture.JPG

手順

1. 仮想環境作成

Anacondaのインストールまでは終わっている状態です。Anacondaのインストールは記事「TensorFlowをWindowsにインストール Python初心者でも簡単だった件」の該当箇所を参照ください。そこでは、TensorFlowのインストールをしていますが、今回はTensorFlowのバージョン0.121を使うので、仮想環境を新たに作ります。

1.1. 仮想環境"styletrans"作成

Anaconda Navigatorから仮想環境"styletrans"を作成します。
10.CreateEnvironment01.JPG

GithubのReadmeではPython 2.7.9と書いていますが、Python3.5でも動きます。
10.CreateEnvironment02.JPG

1.2. ターミナル起動

Anaconda Navigatorからターミナルを起動します。
10.CreateEnvironment03.JPG

1.3. pillow, scipy, numpy インストール

Condaコマンドでpillow, scipy, numpyをインストールします。

conda install pillow scipy numpy

実行するかを聞かれるので"y"(yes)でEnterです。
20.Terminal01.png

1.4. TensorFlow インストール

TensorFlow 0.12.1はpipコマンドでインストールします。

pip install tensorflow==0.12.1

20.Terminal02.png

2. Githubからfast-style-transferダウンロード

Githubからfast-style-transferをまとめてダウンロードします。筆者はGithub慣れていないから、ダウンロードしてzip解凍しています。
30.DownloadFromGithub.JPG

3. Google Driveからモデルダウンロード

Google Driveから学習済モデルをまとめてダウンロードします。ファイルを置くディレクトリは手順2でダウンロードしたフォルダfast-style-transferの下に"models"フォルダを作り、置きました。

4. Anaconda Navigatorからターミナル起動

Anaconda Navigatorで手順1で作成した仮想環境"styletrans"からターミナルを開きます。
40.OpenTerminaviaAnaconda.JPG

5. スタイル変換実行

5.1. 仮想環境有効化

まずは、ターミナルで"styletrans"の仮想環境を有効化します。

activate styletrans

5.2. パス変更

fast-style-transferのディレクトリにパスを変更します。

cd C:\Users\yohei.fukuhara\Python\fast-style-transfer-master

5.3. 画像スタイル変換実行

では、実行してみます。適当にネットから有名な絵を拾ってきました。
スプー

ちなみにフォルダ構成は↓で、"input"フォルダに変換元画像を、"models"フォルダに学習済モデルを置いていて、"output"フォルダに変換後の画像を入れます。
50.Folders.JPG

python evaluate.py --checkpoint ./models/rain_princess.ckpt --in-path ./input/spu.jpg --out-path ./output/spu_rain_princess.jpg

特に何のメッセージも出ずに3秒ほどで画像が生成されます。ちょっと芸術的ですね。
spu_rain_princess.jpg

ちなみに全モデルでのスタイル変換後画像を並べるとこんな感じです。
60.spus.jpg