ハイクオリティなイラストを生成できるAIとして話題のStable Diffusionですが、その中でも2次元キャラクターのクオリティを劇的に向上させるモデルがあることがわかりましたので、使用方法を解説していきたいと思います。


以下のページで自然言語処理モデルGPT-3を使ったライティングツールCatchyで、Stable DiffusionのPromptを自動生成する方法について解説していますので、あわせてご覧ください。

Waifu Diffusionとは
ハイクオリティなイラストを生成できるお絵かきAI、Stable Diffusionをさらに2次元イラストに特化させるためのチューニングが行われたモデルがWaifu Diffusionです。
Waifu Diffuisonのリポジトリは以下となります。今回はこのモデルを使って2次元キャラクターを描かせてみようと思います。

Waifu Diffusionの実装
ベースとなるStable Diffusionのインストールと実装するためのソースコードの解説は以下のページでまとめていますので、あわせてご覧ください。

WaifuDiffusionの使用方法はいたって簡単で、モデルを指定する箇所を”hakurei/waifu-diffusion”に変更するだけです。
先ほどのStable Diffusionの使用方法を解説しているページに掲載しているソースコードの、パイプラインの設定部分を以下のように変更してください。
pipe = StableDiffusionPipeline.from_pretrained("hakurei/waifu-diffusion", use_auth_token=YOUR_TOKEN)
作成したソースコード
今回作成したソースコードは以下の通りです。
このコードを実行する前に先ほど紹介した「無料で使える描画AI!Stable Diffusionで画像を生成する方法」の解説に従いStable Diffusionのインストールを済ませておいてください。
モデルの変更に伴う箇所は8行目のパイプラインの設定の一行だけとなります。
また今回は一度の実行で10枚のイラストを生成するように変更しました。
from diffusers import StableDiffusionPipeline
from datetime import datetime
#HuggingFaceのトークン
HF_TOKEN = "〇〇"
#StableDiffusionパイプライン設定
pipe = StableDiffusionPipeline.from_pretrained("hakurei/waifu-diffusion", use_auth_token=HF_TOKEN)
#使用するデバイスを設定
pipe.to("cuda")
#pipe.to("cpu")
#生成したい画像を指示
prompt = "〇〇"
#10枚続けて生成
for i in range(10):
#画像生成
image = pipe(prompt, height=512, width=768)["sample"][0]
#ファイル名に日時を付ける
date = datetime.now().strftime("%Y%m%d_%H%M%S")
path = date + ".png"
image.save(path)
使用するデバイスでGPUが使えない場合は11行目を”cpu”に変更してください。

実行結果
今回は動作テストのためchiliさんがTwitterで公開されている呪文をおかりしました。
生成された絵の1枚がこちらです。

20枚ほど作っただけでかなりクオリティが高い画像が数枚出てきました。
以前のモデルだと人物は100枚生成して1~3枚くらい良い絵が出てくるかなといった感じでしたので、Waifu Diffusionに変更したことで2次元女性キャラクタークオリティが劇的に向上しています。

Stable Diffusionのローカル環境
Stable Diffusionを使用する際にGoogle ColaboratoryやWebサービスを利用されている方も多いかと思います。しかし、最近Google Colabの無料での使用範囲が大きく制限されたり、Webサービスでは月額費用がかかったりします。
欲しいイラストを生成するにはかなりの回数をトライする必要があるため、これらの制約に縛られることなく使用できるローカル環境を構築するのがおすすめです。
ローカルのPCに搭載するグラフィックボード
ローカルマシンで実行する上で重要になってくるのがグラフィックボードです。
Stable Diffusionでイラストを生成するために実行される推論処理を、グラフィックボード上のGPUを使って大幅に高速化することができます。
トライする回数が増えれば品質の高いイラストが生成される可能性が上がりますので、グラフィックボードは重要です。Stable Diffusionで使用するためのGPUは2022年に新たにNVIDIAから発売されたRTX4000シリーズのGPUとVRAM12GB以上のものがおすすめです。最近は半導体不足も一服したこともあり、新しい製品ながら価格が下がりつつあります。
エントリーモデルのGPU
予算を安く抑えたい方向けにはRTX4070を搭載したグラフィックボードがおすすめです。
予算に余裕がある方向け ミドル~ハイエンド
予算に余裕がある方向けにおすすめのRTX 4080、ビデオメモリ16GB以上搭載のモデルです。
大サイズの画像を高速に生成したい方向けのハイエンドGPU、RTX 4090 ビデオメモリ24GB搭載モデルです。
予算とパフォーマンスに合わせて選んでみてください。
画像生成AIについて学ぶ
動画学習プラットフォームUdemyでは、画像生成AIで高品質なイラストを生成する方法や、AIの内部で使われているアルゴリズムについて学べる講座が用意されています。
Udemyは講座単体で購入できるため安価で(セール時1500円くらいから購入できます)、PCが無くてもスマホでいつでもどこでも手軽に学習できます。
画像生成AIの使い方を学ぶ
Stable DiffusionやMidjourneyの使い方や活用方法を勉強したい方には、以下の講座がおすすめです。

画像生成AIの仕組みを学ぶ
画像生成AIの仕組みについて学びたい方には、以下の講座がおすすめです。
画像生成AIで使用される変分オートエンコーダやGANのアーキテクチャを理解することで、よりクオリティの高いイラストを生成することができます。

UdemyのStable Diffusionなど、AIアート関連の講座は海外のものも多いですが、ブラウザのリアルタイム翻訳機能を使うことで日本語字幕付きで視聴できます。
Udemyの海外講座の字幕を日本語化する方法
まとめ
今回はハイクオリティな2次元キャラクターを量産できるモデルWaifu Diffusionを紹介しました。人物のイラストを生成する際の成功率が劇的に上昇しますので、2次元美少女を描いてみたい方はぜひ試してみてください。
以下のページで自然言語処理モデルGPT-3を使ったライティングツールCatchyで、Stable DiffusionのPromptを自動生成する方法について解説していますので、あわせてご覧ください。

また、以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。
スキルアップや副業にぜひ活用してみてください。

スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。
講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。

それではまた次の記事でお会いしましょう。
\ Pythonのプログラミングを学びたい人には自宅で学べるUdemyがおすすめ! /
講座単位で購入できます!
参考
