AIを使って 画像に 自動で色付けをするWebアプリ「style2paints」の紹介です。
近年になってから IT業界のみならず、ニュースなどでも AIを活用した " 自動運転 " や " 顔認識 " など、 今まで実現されなかった 夢のような話題を目にするようになりました。
そんな AI ( * 今回の場合は機械学習 ) を利用した面白い Webアプリが 「style2paints」です。
- ベースとなる スケッチ (白黒のラフ画) 画像 から 素材となる画像を指定することで、画像に自動で色付けをしてくれる

style2paints は こちら のデモページから利用することができます。

使い方も簡単で ' upload sketch
' ボタンを押して元となるスケッチ画像を指定し、' upload reference
' で 素材となる画像の指定、' colorize
' ボタンを押すと 彩色された画像が作成されます。

1. " upload sketch
" で彩色する画像のアップロード
2. " upload reference
" で色のベースとなる画像のアップロード
3. " colorize
" で画像の作成
4. " download
" で作成した画像の入手
メニューには " v1 ", " v2 " などのラジオボタンが配置されていますが、モードを変更することで、仕上がりを変えることができます。

また、' denoize
' にチェックボックスをいれることで、出来上がりの背景に若干の変化を与えることもできます。
denoize
' オプションの有る無し 
' pen
' を押すとカラーピッカーが起動し、素材画像から指定場所に指定した色を与えることができます。

* style2paintsを使って色々な画像と組み合わせてテストしてみました



2018年 11月1日に style2paints の新しいバージョン 4 がリリースされ、自動ペイント機能が向上、複雑な事がより簡単に出来るようになりました。
Webアプリページ : style2paints バージョン 4

下記の画像は style2paints v4 を実際に使って、不思議の国のアリスの挿絵(著作権切れオリジナル) の画像を拝借し、ペイントしてみました。


* 実際に style2paints を使って彩色した動画

style2paint は オープンソースで開発されているので、ローカル環境にも導入することができます。
* style2paint の開発に使われている環境
- language : python 3.6.*
- server: bottle
- frontend: cocos2d-js
- backend: tensorflow
style2paints のローカル環境への導入
style2paint は pythonで開発されているパッケージなので、python 3.6 + pip本体のインストール、 その他に git が導入されている必要があります。
まずは コマンドライン上から style2paints に 依存しているパッケージのインストールをします。
# 依存パッケージのインストール * 環境によっては 'sudo' が必要かもしれません
# バージョン2からは tensorflow_gpuをインストールします
pip install tensorflow
# GPU を使う場合 *バージョン2からはgpuのみがサポートされています
# pip install tensorflow_gpu
pip install keras
pip install chainer
pip install bottle
pip install gevent
pip install h5py
pip install opencv-python
依存パッケージの導入が済めば、' git clone
' コマンドを使ってレポジトリからソースを入手します。
# gitコマンドを使ってレポジトリからソースを入手
# フォルダ 'style2paints' が作成されます。
git clone https://github.com/lllyasviel/style2paints.git
# * style2paintsをアップデートする場合
# git remote update
# git pulll
ソースコードを入手すれば、こちらのページからmodels を全て入手し zipファイルを解凍。解凍後、 models.zipフォルダ内に ' base_generator.net
', ' style2paints.net
', ' google_net.net
'の 3つのファイルが作成されているので、 ' style2paints/server
'内に3 ファイルを設置します。

* model解凍〜設置までの手順
1. models.zip.001 ~ models.zip011 まで入手
2. modelsファイルが揃ったフォルダ内で解凍 -> models.zipフォルダが作成される
3. models.zipフォルダ内の 'base_generator.net', 'style2paints.net', 'google_net.net' を 'style2paints/server' に配置
正しく、依存パッケージの入手、モデルの配置が済んでいると 下記のコマンドで style2paints が起動し、ブラウザで ' http://0.0.0.0:8000
' にアクセスすると使うことができます。
# cpu バージョンのtensorflowを導入した場合
python3 server.py cpu
# gpu バージョンtensorflowを導入した場合
python3 server.py
http://0.0.0.0:8000/
'にアクセスすると welcome画面が表示されます 
以上が style2paints の紹介でした。技術的にもコンセプト的にもモダンなパッケージです。「近い将来はこのようなペイント方法も1つの主流になるのでしょうか?」そんな未来を想像したくなるパッケージですね。
GitHub : lllyasviel/style2paints