
ローカルでのAIによる画像生成と言えば殆どの場合はStable Diffusionを指しますが、少し前までStable Diffusionを動作させる為の環境構築はハードルの高い印象がありました。しかし前回記事にしたStabilityMatrixでは簡単にStable Diffusionの導入と管理が出来る事を書きましたが、今回記事にするNMKD Stable Diffusion GUIは更に簡単にStable Diffusionを使用出来る環境を構築する事が出来ます。NMKD Stable Diffusion GUIの場合、基本的には圧縮ファイルをダウンロードして展開後に直ぐ使用可能ですが、簡単仕様故にUI(操作画面)が固定である事や拡張を導入出来ないといった制限もあります。
本格的にStable Diffusionを極めたいといった目標がある場合はStabilityMatrixの方がお勧めですが、極力簡単にStable Diffusionで画像生成を試してみたい、ローカルでの画像生成AIを体験したいという目的であればNMKD Stable Diffusion GUIがお勧めです。
NMKD Stable Diffusion GUIの動作環境はWindows 11/10、メモリ 8GB以上(推奨16GB)、VRAM 4GB以上(推奨8GB)のNvidia GPU、もしくはVRAMが8GB以上のDirectML対応GPU、10GB以上(推奨12GB)の空き容量があるSSDとなっています。
NMKD Stable Diffusion GUIのダウンロードと準備
公式サイトのN00MKRADからStable Diffusion GUIのページを開くと上部に「Download Now」のボタンがあるのでクリック。

寄付を求めるポップアップ画面が表示されますが、寄付を行わずにダウンロードページを開く場合は「No thanks…」となっているリンクをクリックして進みます。

表示されるページには2つのファイルが用意されており、上が初期状態でモデル同梱のファイル、下がモデルの無いファイルとなっています。出来るだけ簡単に始めたい方はモデル同梱の方を、自身でモデルを別途用意して使用したい方はモデル無しの方をダウンロード。

モデル無しの方をダウンロードした方はCivitaiのモデルページ辺りから自身で好みのモデルを探しダウンロードしておいて下さい。好みのモデルを探す際は「Filters」を開いて「Time period」を「All Time」に、「Model types」を「Checkpoint」にしておきます。

好みのモデルが見付かったら該当ページにある「Download」からダウンロードします。勿論1つだけでなく複数のモデルをダウンロードして使用する事が出来ます。因みにモデルファイルの拡張子は「.safetensors」になっている筈です。

ダウンロードしたNMKD Stable Diffusion GUIを展開します。展開後、「SDGUI」フォルダを任意の場所に配置。更に中にある「Models」フォルダから「Checkpoints」フォルダと辿って開き、ダウンロードしたモデルファイルをフォルダ内にコピーしておきます。モデル同梱版をダウンロードした場合はこの中にモデルファイルが既に入っている筈です。

NMKD Stable Diffusion GUI 使い方
「StableDiffusionGui.exe」を実行してNMKD Stable Diffusion GUIを起動します。最初にWelcome画面が表示されますが、初回起動時以降で画面左下に「Do Not Display…」のチェックボックスが表示されるようになるので、これにチェックを入れておくとこの画面は表示されなくなります。

まずは画面右上の歯車のアイコンから設定画面を開いて最低限の設定を行っておきます。「Stable Diffusion Model」の欄でモデルが読み込まれている事を確認。複数のモデルファイルがある場合は、ここからモデルを切り替える事が出来ます。更に下にある「Output Settings」の「Image Output Folder」で生成した画像の保存フォルダを設定。標準ではピクチャフォルダになっています。

他、「Favorites Folder」も任意の場所を設定しておくと便利です。気に入った画像が生成された際、直ぐにその場所に保存出来るのでデスクトップ辺りを指定しておくと良さそう。
早速画像生成をと思った所で筆者の環境にトラブルが。現在のバージョンはsafetensors形式のモデルファイルを使用出来るようになっていますが、何故か初期使用時の方ではこの形式のモデルファイルで動作しませんでした。仕方ないので一旦画面右上のスパナアイコンから表示されるメニューの「Convert Models」でモデルファイルをckpt形式に変換します。何も問題が無い場合は読み飛ばして下さい。
Convert Modelsの画面で「Model Input Format」に変換元のファイル形式を、「Model Version/Architecture」はAutomaticのまま、「Model File」は変換元のファイル、「Model Output Format」は変換目的の形式を選択しますが、今回は「Pytorch (CKPT/PT File)」となります。その下にある「Save As FP16 Model (Half Size)」はFP32から不要な部分を取り除いて縮小化する機能らしいのですが、特にファイルサイズの変化はありませんでした。「Delete Input File If Successful」は変換成功後に変換元のファイルを削除しますが念の為、チェックを外しておきます。

「Convert!」で変換実行後、完了すると同じ場所にckpt形式のモデルファイルが保存されます。同じようにsafetensors形式で動作しない場合は試してみて下さい。因みに現在は特に設定を変えていないのにsafetensors形式のモデルファイルで問題無く動作しています。
画面についてざっと説明していきます。まず上部にある「Implementation Settings…」は隠れている設定をスライドで表示し、別のモデルに切り替えといった操作が出来ます。「プロンプト」は生成させる画像をテキストで入力しますが複数ある場合はカンマで区切って入力。ネガティブプロンプトでは逆に生成させたくない要素を入力しておきます。日本語でも一応動作しますが、基本的には英語で入力するのが確実です。
NMKD Stable Diffusion GUIでは「EasyNegative」という機能が使え、自身で様々なネガティブプロンプトを入力しなくても生成される画像の品質を上げる事が出来ます。使い方は「Textual Inversion Embeddings」の欄で「EasyNegative」に切り替えて「Append To Prompt」ボタンで追加、その際にプロンプト欄に追加されますが、これを切り取ってネガティブプロンプト欄に張り付けて入力しておきます。

「Base Image」の欄にある「Load Image」ボタンから画像を入力して、その画像をベースに新たに画像を生成したり編集する事が出来ますが、この機能に関して後述します。「Amount Of Images To Generate」は1度に生成する画像の枚数で、「Resolution」は画像の横と縦のサイズとなります。因みに現バージョンのNMKD Stable Diffusion GUIではサイズはメニュー内から選択する仕組みとなっており直接自身で入力して設定する事は出来ません。
上記以外の分かり難い部分を下に書いていきますが、筆者も聞きかじった程度の知識なので正確性は一切保証しません。
- Generation Steps
- ステップ数の設定。最小で5、最大で75、標準値12。Stable Diffusionではノイズをベースにした画像から徐々にプロンプトに沿って画像が生成されていく仕組みになっているそうなのですが、その生成の過程で画像を作り変えていく回数になります。この値を大きくすると生成時間が長くなる欠点がある他、単純にステップ数が多ければ良い物が生成される訳では無いので自身で色々と試行錯誤していく必要があります。私的には20前後辺りがバランス的に良さそうです。
- Prompt Guidance (CFG Scale)
- プロンプトに対する忠実度の設定。最小で0、最大で25、標準値7.5。数値が高いほど生成される画像に対してプロンプトが強く反映される事になりますが、高すぎると色合いがおかしくなったり不自然な画像が生成される事が多々あります。
- Seed
- 生成される画像に紐づいた数値。生成された画像にはシード値があり、NMKD Stable Diffusion GUIの場合は生成画像のサムネイル下に表示されます。「Use Previous」ボタンで現在表示しているサムネイルのシード値を入力、「Lock Seed」でシード値を固定する事が出来ます。同じシード値を使用する事で同じような画像を生成するといった事が出来ます。
- Sampler
- 画像を生成する際に使用するアルゴリズム。NMKD Stable Diffusion GUIでは現在11種のサンプラーを選択出来ますが、これを切り替える事で生成結果に大きな違いが出ます。DPM++ 2M KarrasやEuler、Euler Karras、Euler Ancestral辺りが安定して高品質な画像を生成出来る印象がありますが、生成する対象によって向き不向きがあるようです。
画像を入力して生成、編集
NMKD Stable Diffusion GUIでは既存の画像を使って、それを元に同じような画像を生成したり編集したりといった事が出来ます。まずは「Load Image」ボタンで画像を入力します。因みにこの画像もNMKD Stable Diffusion GUIで生成した物です。

まずは「Image Usage」の欄で「Initialization Image (Img2Img)」を使用してみます。これは入力した画像をベースに別の画像を生成する機能で、「Image Strength (Influence)」から元の画像の反映度を調整する事が出来ます。今回はプロンプトにgrassland(草原)を加えて生成してみました。

次に「Inpainting with Mask」を使ってみます。この機能は部分的に変更したい箇所にマスクをかけて、その部分だけを作り変える機能です。「Generate!」ボタンをクリック後にマスクの編集画面が表示されるので、マウスボタンでドラッグしてマスクをかけます。下部にあるスライダーは「Brush Size」がペンの大きさを変更、「Mask Blur」はボカシの範囲となります。

この機能は壊れたような画像が生成される事が多く、5枚作って1枚ぐらいしかまともに見れる物が生成されませんでした。ただStable Diffusionでは尻尾が2本だったり指が6本だったりといった画像が頻繁に生成されるので、それらを後から部分的に修正するのにこの機能は有用です。また、実行後は「Clear Mask」と「Edit Mask」ボタンが表示されるのでマスクを削除したり再編集する事が出来ます。

他、「Inpainting with Text Description」では編集する範囲をペンの代わりにテキストで入力する事で、その範囲を変更した画像を生成出来ます。例えばbackgroundと入力しておく事で背景が編集対象になりますが、かなり曖昧な範囲になるので使いこなせませんでした。もう一つ、「Outpaintine」では被写体の位置を9箇所から選択して移動する事が出来ますが、あまり有用性を感じられる機能ではありませんでした。
NMKD Stable Diffusion GUI 備考
ControlNetなどの人気の拡張が使えないとか生成させる画像サイズを細かく自身で指定出来ないといった不満もありますが、NMKD Stable Diffusion GUIには手軽で簡単にAIでの画像生成を楽しめる魅力があります。また、使いやすいUIで複雑な設定も少なく、ソフトウェアのアップデート機能も備わっており初心者の方でも使いやすい親切設計になっています。
Stable Diffusionでは思い通りの画像が中々生成出来ないもどかしさが多々ありますが、ガチャと呼ばれるようにお気に入りが出るまで回し続ける行為にはかなりの中毒性が有り、あっという間に時間が過ぎていきます。正直筆者は画像生成に自身がそんなにハマるとは思っていませんでしたが、実用性を抜きにして純粋に娯楽として楽しめるソフトだと思います。
コメント