今回はStable Diffusionで使える2次元特化モデル、Anythingに新しいV4.0がリリースされましたので、使い方を解説します。Pythonから実行しますので、自宅のローカルPCやGoogle Colabで使用できます。
また、当ブログ内のStable Diffusionに関する記事を以下のページでまとめていますので、こちらもあわせてご覧ください。

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

Anythingとは
Anythingは画像生成AIであるStable Diffusionで使用できる学習済みモデルです。2次元のアニメ調のイラストに特化したモデルとなっており、キャラクターだけでなく風景も綺麗に描画できるということで試してみました。
今回、使用するバージョンはAnything V4.0です。公式のリポジトリは以下となります。

Stable Diffusion 2.xについては以下の記事で解説していますので、あわせてご覧ください。

StableDiffusion 2.xのセットアップ
以下のコマンドを実行してパッケージをインストールします。
pip install diffusers[torch]==0.9 transformers
pip install --upgrade --pre triton
StableDiffusionのリポジトリを取得してインストールします。
pip install --upgrade git+https://github.com/huggingface/diffusers.git transformers accelerate scipy
以上でStableDiffusion 2.0のセットアップは完了です。

作成したソースコード
変更点
先ほど紹介したStable Diffusion 2.xの実行コードからの変更点は以下となります。
使用するモデルを「andite/anything-v4.0」に変更します。
model_id = "andite/anything-v4.0"
パイプラインの設定処理もパラメータを一部変更しています。
pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, torch_dtype=torch.float16)
ソースコード全体
今回作成したソースコードは以下の通りです。
from datetime import datetime
from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
import torch
#使用するモデルを設定
model_id = "andite/anything-v4.0"
#StableDiffusionパイプライン設定
scheduler = EulerDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")
pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, torch_dtype=torch.float16)
#使用する計算機を設定(GPUがない場合は"cpu"に変更)
pipe = pipe.to("cuda")
#画像生成の指示(呪文)
prompt = "(生成したい画像への指示)"
#描画する回数を設定
num_images = 5
#イラスト生成
for i in range(num_images):
#推論実行
image = pipe(prompt, height=768, width=768).images[0]
#生成日時をファイル名にして保存
date = datetime.now().strftime("%Y%m%d_%H%M%S")
path = date + ".png"
image.save(path)



実行結果
まずはHugging Face公式ページにあるサンプルのPromptを試します。
1girl, white hair, golden eyes, beautiful eyes, detail, flower meadow, cumulonimbus clouds, lighting, detailed sky, garden
以下のように非常に奇麗に背景も描画することができました。
また、キャラクターの安定感も非常に高く、Waifu Diffusionよりもかなり試行回数が少なくなりました。


続いてTwitterでchiliさんが公開されているPromptをお借りして描画してみました。
たった5枚生成しただけでこの高いクオリティの絵を描画することができました。




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


Stable Diffusionのローカル環境
Stable Diffusionを使用する際にGoogle ColaboratoryやWebサービスを利用されている方も多いかと思います。しかし、最近Google Colabの無料での使用範囲が大きく制限されたり、Webサービスでは月額費用がかかったりします。
欲しいイラストを生成するにはかなりの回数をトライする必要があるため、これらの制約に縛られることなく使用できるローカル環境を構築するのがおすすめです。
ローカルのPCに搭載するグラフィックボード
ローカルマシンで実行する上で重要になってくるのがグラフィックボードです。
Stable Diffusionでイラストを生成するために実行される推論処理を、グラフィックボード上のGPUを使って大幅に高速化することができます。
トライする回数が増えれば品質の高いイラストが生成される可能性が上がりますので、グラフィックボードは重要です。
エントリーモデルの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の海外講座の字幕を日本語化する方法
まとめ
今回はStable Diffusionで使える2次元特化モデルAnything V4.0を試してみました。描画されるキャラクターも風景も非常にクオリティの高いものが生成できました。
2次元を生成したい方には非常におすすめのモデルです。
以下のページで自然言語処理モデルGPT-3を使ったライティングツールCatchyで、Stable DiffusionのPromptを自動生成する方法について解説していますので、あわせてご覧ください。


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


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


それでは、また次の記事でお会いしましょう。