※こちらは既に内容の古くなったアーカイブ記事です。当時の記録として残してありますが、特に理由がなければ、こちらのアップデート版をお読みください。
こんばんは、スタジオ真榊です。今夜はStableDiffusionWebUI上で生成結果の比較実験ができる機能「X/Y/Z plot」を使って、初めて使うcheckpoint(学習モデル)と仲良くなる方法について書いていきますよ。
ダウンロードしたばかりのモデルはどんなクォリティタグが効くのか、どんなステップやスケールにしたら自分好みのイラストが生成できるかが分からず、実力を活かしきれないままお蔵入りになってしまうことがよくあると思います。X/Y/Z plotとある裏技をうまく組み合わせると、外出中に全部の総当りを済ませて一番好みの組み合わせを探り当てることができるんです! 「X/Y/Zプロットは研究好きなマニア向け機能なんでしょ?」と思っていた方も、使い方さえ分かればとっても簡単・親切・便利な機能なので、ぜひこの機会に試してみてくださいね。
X/Y/Zプロットの基本

さて、さっそく使い方の解説から。WebUIの生成画面の一番下にあるプルダウンメニューから「X/Y/Z Plot」を選択すると現れるのがこちらの画面です(▲)。「X軸(横軸)」や「Y軸(縦軸)」に比較したいSeed値や学習モデルなどを入れると、それぞれの組み合わせを総当りで生成し、下図のように比較一覧画像まで生成してくれます。「凡例を描画」のチェックを外すと、一覧画像は作られません。

こちらの画像は、X軸に「checkpoint名」、縦軸に「prompt S/R」を指定して、2つの学習モデル✕2つのプロンプトの組み合わせを試したケースです。他にもSeed値やステップ、スケール、Controlnetの各種設定や拡張機能のオンオフなど、ありとあらゆる設定を総当りできるので、新しいモデルや拡張機能を導入したときにはぜひ試しておきたい機能と言えます。
試せる設定値の一覧
「X(orY,Z)軸の種類」欄から総当りできる設定値を下記に示しました。※新たな拡張機能がインストールされると、操作できる値が自動的にこの一覧に追加されるので、人によって表示は異なります。


これらの設定を選んで、すぐ右側の欄に試したい数値を入れます。例えば、スケールなら「5,6,7,8」と入れると、順番に5~8の4つの画像が(スケール値以外はそのままで)生成されます。※最後の数字のあとには「,」を入れないようにしましょう。AIが「空欄」を指示されたと勘違いして、もう一枚余計な画像が生成されてしまうことがあります。
下記がよく使う設定値の一覧です。
・なし
こうしておくと、この欄は使用されない。X軸が「なし」だと、生成画像は縦一列に並ぶ。Y軸が「なし」だと、横一列に並ぶ。Z軸を使うことは滅多にない(総当りの下図が膨大になる)ので、基本は「なし」にしておくことになる。
・シード
複数のシード値で画像生成したいときに使う。と言ってもピンとこないが、本来の使い方はY軸:「-1,-,1-,1-,1-,1」のように指定する。こうすると、縦軸にランダムに5種類のSeed値(例:12823721、28367493、2888221...)が割り振られ、それぞれのSeed値におけるX軸の違いが分かる。下図はCutoff機能のオン・オフでどう画像が変わるかを検証する際に、画像が1組だとわかりづらいのでY軸を「-1,-,1-,1-,1-,1」にしたケース。

・Var.seed、Var.Strength
バリエーション機能を使ったときのSeed値とStrength。
・高解像度でのステップ数
「高解像度補助(hires.fix)」をオンにしたときのステップ数。
・PromptS/R
プロンプトを比較したいときに使う。(後述)
・PromptOrder
プロンプトの順番を入れ替えた影響を調べたいときに使う。入れ替えたい複数のタグを「カンマ(,)」入りで指定すると、順序を入れ替えたすべての組み合わせが総当り生成される。下図は「1girl,sky,sea」を入れた結果(X軸は-1,-1)。膨大な生成数になりかねないので、PromptOrderに入力するプロンプトは3つまでにしておこう。

・Checkpoint名…使用する学習モデル。どう指定すればいいのか迷ってしまうが、そういうときは入力欄の右側に黄色いボタン(▼)が出るので、これをクリックすると使用できるすべての値が入力されるので、いらないものを削除すればOK。サンプラーとかVAEとかアップスケーラーとかでも同じボタンが出るので迷わないで済む。

・[Controlnet]enabled
使用しているcontrolnetのオンオフを切り替えられる。これも黄色いボタンを押せばオンオフを示すtrue,falseというキーワードが自動で入力されるので分かりやすい。他にも「重み」や「preprosessor」などほとんどの数値を入れ替えられるので、例えばCannyをうまく効かせるにはどの設定がいいか探りたいときに有用。





