執筆: K.S

はじめに

はじめまして。プログラマーをしていますK.Sと申します。

最近、AIの技術が発展している中で、私自身もAIを駆使して理想の美少女を作りたいという野望があったので、興味がある方に向けてStableDiffusion web UIの導入方法を紹介したいと思います。

今回は以下の理想の美少女を生成してみたいと思います。

目標:銀髪でロングヘアで中世ヨーロッパ風の服を着ている美少女

StableDiffusionとは

StableDiffusionとは「入力されたテキスト」を元に画像を生成するAIモデルを搭載した画像生成AIで、ユーザが入力したプロンプト(テキスト)を元に画像を生成することが出来ます。

StableDiffusionは潜在拡散モデルが搭載されているシステムかつオープンソースAIであるため、Web上で構築させた環境で動かしたり、ローカル環境で独自に動かしたりすることが可能となります。

今回はローカル環境にて実行させていきたいと思います。

1. StableDiffusion WebUIの導入方法

下記URLからAUTOMATIC111さんのgithubページに遷移してください。

https://github.com/AUTOMATIC1111/stable-diffusion-webui

遷移後のページ下部にある「Automatic Installation on Windows」に記載されている項目をインストールしてください。

これらはStableDiffusionをインストールするにあたって事前に必要なものとなります。

①Pythonの導入

まず必要な項目としてPythonをインストールする必要があります。

こちらはStableDiffusionの作者が指定している通り、バージョン3.10.6をインストールしてください。

下記画像のようにgithubページにリンクが張ってあるので、クリックしてください。

ページ遷移後、ダウンロードページからWindows installer (64-bit)をダウンロードしてください。

ダウンロードしたexeファイルを起動してください。

下記のような画面がでてきましたら、Install Nowを押下してください。

※Installを始める前に、Add Python 3.10 to PATHに必ずチェックを入れてください。

(こちらのボタンはプログラム中に自動的にPATH取得してくれるものとなります。)

下記のような画面になりましたら、インストール完了です。

②gitの導入

続けてgitをインストールしましょう。

下記画像のようにgithubページにリンクが張ってあるので、クリックしてください。

遷移後に、「Click here to download」 を押下してダウンロードしてください。

こちらからダウンロードすることで、gitの最新版をインストールすることができます。

続けてStable diffusionをインストールするためのフォルダーを作成しましょう。

私の場合はD:直下に「StableDiffusion」というフォルダを作成しました。

作成が完了したら、作成したフォルダを開き、アドレスバーにcmdと入力してください。

下記のようにコマンドプロンプトが開き、先ほど作成したフォルダのディレクトリとなっていれば問題ありません。

AUTOMATIC111さんのgithubページにもどり、#3の指示に従い、gitをクローンしてください。

コマンドプロンプトに以下をコピーし実行してください。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

done という文字がでたらクローン完了です。

先ほど作成したフォルダを開いてください。

すると、stable-diffusion-webuiというフォルダが出来上がっていると思います。

③Stable diffusionを起動しよう。

さあここまできましたら、後は起動するだけとなります。

「D:\StableDiffusion\stable-diffusion-webui」直下に「webui-user.bat」というバッチファイルがありますので、それをダブルクリックし起動してください。

※StableDiffusionを起動するたびに、上記バッチを起動してください。

下記のように「Running on local URL: http://127.0.0.1:7860」と表示されると起動完了です。

それでは実際にStableDiffusion web ui を出してみましょう。

コマンドプロンプトに記載されているURLをブラウザで検索してください。

下記の画像のような画面が出てきたらStableDiffusionを使用可能となります。

http://127.0.0.1:7860

④ モデルを入手しよう

StableDiffusionを使うにはモデルと呼ばれるものを導入しないと画像を作成することができません。

モデルとは、AIが学習した画像を生成する為のモデルで、クオリティの高い画像を誰でも簡単に作成することができるようになります。

モデルにはそれぞれ得意な絵柄があるため、生成したい画像に近いモデルを利用することで、理想の画像を生成することができます。

今回はアニメ調の美少女を生成したいと思いますので、高クオリティのアニメ風イラストを作れる「Anything」を利用したいと思います。

こちらのモデルではStableDiffusionを使う場合には必ず必要となるプロンプトと呼ばれる呪文を「かわいい」や「笑顔」などといったシンプルな呪文でも高クオリティなイラストを生成できることが強みとなっております。

それでは早速モデルをインストールしていきましょう。

まずは以下のURLに遷移してください。

こちらは、HuggingFaceと呼ばれるAI画像生成の為のモデルを無料でダウンロードすることができるサイトとなっています。

https://huggingface.co/andite/anything-v4.0

遷移先の「Files and Versions」をクリックし、「anything-v4.5-pruned.safetensors」をダウンロードしてください。

多くのモデルには以下のようなものがあります。

fp16:半精度版

fp32:単精度版

safetensors:安全版

pruned:軽量版

無印:フルサイズ

これらのモデルの違いというのは、目視レベルでの違いはあまりなく、セキュリティ上一番安全なsafetensors版をダウンロードしてください。

次にダウンロードしたファイルをStableDiffusionのモデルフォルダーの中に入れてください。

※私の場合は以下のパスに配置します。

D:\StableDiffusion\stable-diffusion-webui\models\Stable-diffusion

これでStableDiffusionを実行するために必要な要素を全て取り込み終えました。

いよいよ実施してみましょう。

3. StableDiffusionを起動してみよう

前述でも記載したように、「D:\StableDiffusion\stable-diffusion-webui」直下にある「webui-user.bat」を実行し、StableDiffusion web uiを起動させてください。

※ダウンロードしたモデルの「anything-v4.5-pruned.safetensors」が左上に表示されている場合は問題なく読み込めている状態です。

一旦プロンプトには何も書かずに生成してみましょう。

よくわからない、とんでもないものが生成されましたね・・・

今度は簡単なプロンプトを書いて生成してみたいと思います。

プロンプトに「girl」というワードを追加して生成してみました。

女の子というワードを追加するだけで女の子の画像を生成する事に成功しました。

⑤プロンプトを駆使しよう

それでは理想の美女を作るためにプロンプトを活用しましょう。

そもそもプロンプトとはAIに描いてほしい絵を指定するためのツールです。

プロンプトはStableDiffusionに限らず、ChatGPTなどAIで生成するものに関しては必要になるものです。

ここで注意しなけれならないのが、プロンプトは英語で指示しないといけないことです。

StableDiffusionには生成してほしい条件を指定するプロンプト(指示テキスト)と生成してほしくない条件を指定するネガティブプロンプト(除外テキスト)が存在します。

好きなプロンプトを記載していき、試行錯誤しながら、何度も生成することで良い絵を見つけていきましょう。

※小技にはなりますが、プロンプトに絵文字で指示しても反映してくれます!

使用したプロンプト:😁👍

プロンプトに慣れていない人は、ネガティブプロンプトに何を入れればよいのかわからないと思います。

そこで、ネガティブプロンプトの生成を楽にする「EasyNegative」というものを導入しましょう。

EasyNegativeとは、ネガティブプロンプト用の拡張機能のようなもので、アニメ調のイラストを綺麗に生成してくれるものとなります。

下記の画像がEasyNegativeの比較になります。

明らかにEasyNegativeを導入した方が綺麗に生成できていますね。

EasyNegativeの導入方法

それでは早速EasyNegativeをダウンロードしましょう。

まずは以下のURL先にある「EasyNegative.safetensors」をダウンロードしてください。

https://huggingface.co/datasets/gsdf/EasyNegative/tree/main

ダウンロードしてきたファイルをStable Diffusion webUIフォルダーにある「embeddings」ファイルに入れてください。

これでインストール完了となります。

※導入後はStableDiffusionを一度再起動してください。

「Generate」ボタン直下にある赤いアイコンの「Show/hide extra file」ボタンをクリック後に、以下の画像のようにEasyNegativeが表示されていればインストール完了です。

それでは美少女を作っていきましょう。

今回は、元素法典と呼ばれる中国のコミュニティで独自に発展した、様々なジャンルAIイラスト生成用のプロントが記載されているサイトを参考にプロンプトを作っていきたいと思います。

https://docs.qq.com/doc/DWHl3am5Zb05QbGVs

今回はこちらのサイトの「风魔法」と書かれている項目のプロンプトを使って美少女を生成してみましょう。

プロンプトとネガティブプロンプトに以下のプロンプトを貼り付けてください。

使用するプロンプト:

「(((masterpiece))), (((best quality))), ((ultra-detailed)), (illustration), (1 girl), (solo), ((an extremely delicate and beautiful)), little girl, ((beautiful detailed sky)), beautiful detailed eyes, side blunt bangs, hairs between eyes, ribbons, bowties, buttons, bare shoulders, (small breast), blank stare, pleated skirt, close to viewer, ((breeze)), Flying splashes,  Flying petals, wind」

使用するネガティブプロンプト:

「nsfw, lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, missing fingers,  bad hands, missing arms, long neck, Humpbacked, shadow, nude」

StableDiffusionのパラメーターについて

StableDiffusionでは入力されたプロンプトを基にどのくらい忠実に描画を行うか制御するためのパラメーターを設定する必要があります。

もし、パラメーターを設定するのがめんどくさい!という場合は、デフォルトでセットされている設定値をそのまま利用することをおすすめします。

Sampling Steps:

こちらは画像をどのくらい精密に描画するかを決めるパラメーターです。

設定値が高いほど高精密な絵を生成しますが、その分生成時間が長くなってしまいます。

PCのスペックにも依存するため、PCに搭載されているGPUのスペックを確認してからステップ数を決めるのが良いと思います。

CFG Scale:

こちらはプロンプトの指示にどの程度従った画像を生成するかを決めるパラメーターとなっています。

この値を大きくすればするほど、プロンプトの指示に従った画像を生成するようになりますが、大きくなりすぎると、逆に画が崩れてしまう場合がありますので、Sampling Stepsとの数値をバランスよく決めて設定する必要があります。

今回は以下のパラメーターに設定して理想の美少女が出来上がるまで生成したいと思います。

Sampling Steps:120

CFG Scale:12

そして・・・私が生成できた理想の美少女がこちら!

最高の美少女が出来上がりましたね。

この子を生成するのに35回ほどジェネレートしました。

今回はここまでとさせていただきます。

この記事が少しでも制作のお役に立てましたら幸いです。

最後までご覧いただき、ありがとうございました!

関連記事

https://docs.qq.com/doc/DWHl3am5Zb05QbGVs