AIを使ってPSO2の自キャラのSSから、イラストを作る方法【StyleGAN】
はじめに
追記:(6月更新) プログラミング分からない人でもボタンクリックで簡単にできる有料noteを付け加えました。質問もOKなのでよかったら是非。
アークスの皆さん。みんなも自キャラ好きですよね?(唐突)
神絵師なら、自キャラをイラストにして楽しむこともできますが、私たち一般ピーポーには無理です。画力ステータスが足りません。描くと悲惨になります。;;
そんなアークスに朗報。
顔画面アップのSS、1枚あればAIが代わりに描いてくれます。
*もちろん、FF14だろうが、アニメのカットだろうが何でも可能です。
実際に、20~30パターンほど生成しましたが、かなり出来がいいです。
悪夢しか生み出せない己の画力とはおさらばです。AI様様です。
ちなみに、こんな感じになります。(驚愕)
←左 入力データ(SS) 右→ 出力データ
この夢のような技術は、通称「GAN」と呼ばれています。
GANをアークス向けに、すごく雑に説明すると、「リリーパの画像」から「ラッピーの画像」に特徴を残しながら少しずつ変化させるような技術です。膨大な画像データのマッピング処理の学習を通じて、「リリーパ」から「ラッピー」に変化させる処理を、機械学習で行っています。
本題
今回使う技術は、「StyleGAN」です。
StyleGANは、後継の「StyleGAN2」も出ています。参考までに。
では、ざっくりとした使い方のフローと、注意ポイントについて書いていきます。
必要な物
・GPU
・Python
・スクリーンショット(顔アップ)
・学習済みモデル(2019-02-26-stylegan-faces-network-02048-016041.pkl)
・やる気
GPU:自前のGPUでもできますが、迷ったらColab使えばいいと思います。(無料ですし)
Python:SSを学習済みモデルに混ぜたり、トレーニングのときにも使います。
スクリーンショット:イラスト化したいデータを準備してください。
学習済みモデル:アニメ顔のデータで学習させたモデルを配布されているサイトです。自作のデータセットを作るのは、現実的ではないのでお借りしましょう。
Making Anime Faces With StyleGAN · Gwern.net(pklファイル)
やる気:エラーを吐いてもあきらめない根性が必要です。(マジ)
注意事項:学習済みモデルは女の子(人間)のデータのため、キャストや男キャラは難しいです。(できないことはない、、、)
工程
実質のゴール: npyファイルの生成ができれば9割以上完了するのでがんばりましょう。
① 学習済みモデルをダウンロードします。
② SSを学習済みモデルに混ぜるための処理をします。
512×512の正方形にトリミングしましょう。
Pythonで処理すると楽です。
③ git cloneでダウンロードします。 Puzer氏のgithubからやるのが簡単です
④ ライブラリをインストールします
(このとき、tensorflow→tensorflow-gpuの順番でやらないとエラー起きます。)
⑤ 「raw_images」「aligned_images」「generated_images」ファイルを作り、①で加工したデータを「raw_images」に入れます。
*学習済みモデルと、目線の高さを合わせるのが重要です
⑥ python encode_images.py で学習済みモデルに混ぜ込みます。
その後、学習済みモデル用の入力データ(npyファイル)ができます。 ここまで終わればゴールはすぐそこです。
←左 学習済みモデル用に調整した画像 右→AIに生成した画像
ちなみに、このイラストのもとデータはこれです。
⑦ npyファイルを使って、画像の生成をすれば完成です。
適宜、パラメーターの数値をいじって最適なイラストが出るよう試行回数を重ねてください。
おわりに
今回は、「StyleGAN」を使って、AIにイラストを生成してもらう工程をざっくりと紹介しました。生成したイラストの色合いが気に入らなければ、最後に自分で色を付けたりと、加工すればより自分好みのイラストができると思います。
「絵を描くのは苦手だけど、自キャラのイラストが欲しい!!」
って思うアークスはたくさんいると思います。
機械学習は、データ準備が相当面倒ですが、かなり夢のある技術なので、興味を持った方は是非やってみてください。
次回は、「StyleGAN」で生成したイラストと、「Live2d」を使ってキャラを動かしてみる!! という、記事を書く予定です。
では。また~
追記:書きました~
参考
スクリーンショットのゲーム元
『PHANTASY STAR ONLINE 2』公式サイト
http://pso2.jp/
~有料エリア~ 楽したい人向け
(追記の追記(2021年6月5日更新))
プログラミングのことわからんのじゃー。って人向け。
記事を公開してからTwitterのDMで10人ぐらいの人から、「金の糸目はつけないから教えてくれー」という問い合わせを頂きました。
そこで、リッチなアークス向けにnoteを追加で書きました。
と、いうわけで楽したい人向けのコードを「Google Colab」で作りました。よかったら使ってください。
みなさんにやってもらう作業を大幅に減らしました。
以下の2つができる方なら誰でもイラスト生成できるようにしました。
① Googleアカウントの作成(持ってる方は作らなくていいです)
② 簡単なssの加工
①については各自ググって作って下さい。
②は、次の作業です。
1.windowsに標準で付属している「ペイント」ツールでssを開きます。
2.四角形を選択し、「shift」を押しながら顔が中心になるよう正方形を書きこみます。
3.選択ツールで四角形の上をなぞりトリミングする
以上です。
①Googleアカウントを作ることと、②上記の画像加工ができる方ならAIを使ってssをイラスト化させることができます。
注意事項:学習済みモデルは女の子(人間)のデータのため、キャストや男キャラは難しいです。(できないことはない、、、) *再掲
質問なども随時受付てますので、よかったら試してください。
ここまでが無料部分です。これより下は有料部分になります。
① Googleのホーム画面から、ドライブを選択してください。
② 以下のリンクからファイルをダウンロードしてください(Google ドライブ)
ここから先は
¥ 10,000
この記事が気に入ったらチップで応援してみませんか?