こんにちは!悠です!
皆さんは「Stable Diffusion WebUI」に最初から備わっている、「X/Y/Z plot」という機能をご存知でしょうか?
これは最大3つの変数(x, y, z)を使って、異なる条件で同時に画像生成を行い、その結果を表にまとめてくれる便利機能なんです!

X/Y/Z plotを使えば、モデルに応じた最適なサンプラーやステップ数、プロンプトを簡単に比較できますよ!
今回の記事では、「X/Y/Z plot」の使い方に関して紹介していきます。
「X/Y/Z plot」とは?
「X/Y/Z plot」は言葉で説明するより、下の図を見ていただいた方がわかりやすいです。
上の図は、LonganMix・MeinaPastel・MeinaMixの3つのモデルに対して、Eule a・DPM++ 2M Karras・DPM++ SDE Karrasという3つのサンプラーを使った際の比較画像です。
このように特定の条件を変数(この場合はモデルとサンプラー)にして、どれが一番最適なのか簡単に比較検討できるのが「X/Y/Z plot」です。

変数以外の部分は全て同じです。例えば上の画像の場合、9枚は全て同じプロンプトを使用しています。
ちなみにX軸は横軸(上図でいうサンプラー)、Y軸は縦軸(上図でいうモデル)を指します。
あまり使いませんがZ軸を導入すると、下のように表が2つになります。
「X/Y/Z plot」の使い方
では早速、「X/Y/Z plot」の使い方を紹介していきます。
「Stable Diffusion WebUI」を起動し、txt2imgのタブの下にあるScriptでX/Y/Z plotを選択してください。初期状態はNoneになっているはずです。
新しくタブが開いて、X type(X軸)、Y Type(Y軸)、Z type(Z軸)の入力欄が表示されると思います。
各軸に設定する変数を決めていきましょう。X typeのプルダウンボタンをクリックし、自分の好きな変数を選択してください。
変数はたくさんありますが、主に使いそうなのは次の通りです。ControlNetを導入しているとさらに変数が増えます。
- Seed:シード値
- Var. seed:Extra機能のVariation Seedの値
- Var. strength:Extra機能のVariation strengthの値
- Steps:ステップ数
- Hires steps:アップスケールの際に使うステップ数
- CFG Scale:スケール数
- Prompt S/R:プロンプトの置換(後述)
- Prompt order:プロンプトの順番を入れ替える
- Sampler:Sampling method
- Checkpoint name:モデルデータ
- Clip skip:1と2の比較など
- Denoising:Denoising strengthの値
- Hires upscaler:高画質化で使うアップスケーラー
- VAE
変数を選んだら、X valuesに比較したい数やモデル、プロンプトを入力します。
なおモデルやサンプラーに関しては、ノートブックのマークをクリックすると使用できる候補が自動的に入力されます。
この際注意点なのですが、valueの値は必ずコンマだけで区切りましょう。
コンマ+半角スペースを使うと、空のデータで画像を作成してしまうことがあります。
(悪い例)「A, B, C」
X軸に使う変数と値が決まったら、同様にY軸とZ軸も設定しましょう。使わない軸はNothingにしておけばOKです。
軸設定下の比較表の外観に関する部分は初期設定のままでOKです。Draw legend(凡例を表示)にチェックが入っていることを忘れないにようにしましょう。
これでGenerateボタンを押せば比較表が生成されます。
「Prompt S/R」の使い方
変数の1つである「Prompt S/R」は、特定のプロンプトだけを置換してくれる機能なんですが、ちょっと使い方が独特なので追加で補足しておきます。
例えば、下記のポジティブプロンプトのmedium breastsの部分だけを変更した表を作成したい場合は、
x values(yでもzでもいいです)の場所に、次のように書き込みます。
すると下記のような比較画像が表示されます。
次に、2つ以上のプロンプト、例えば下のmedium breastsとred hairの部分を変更したい場合は、
x values(yでもzでもいいです)の場所に、次のようにダブルクォーテーションで区切って書き込みます。
すると下記のような比較画像が表示されます。
まとめ
以上が「Stable Diffusion WebUI」で、変数比較機能「X/Y/Z plot」を使ってモデルに応じた最適なサンプラーやプロンプトを簡単に調べる方法でした。
「プロンプト案は思い浮かんだけれど、どのモデルを使えばいいか悩む!」という場合にぴったりの機能ですので、ぜひ皆さんも活用してみてくださいね!
では、ここまで読んでいただきありがとうございました。
コメント