以前NMKD StaleDifusion GUIを紹介しましたが、改善が頻繁に行われるため使い方の記事を分けることにしました。
導入はこちら
現在のバージョン(1.9.0)ではStableDiffusion2.x系列のモデルは使用できません。
次回メジャーアップデートで対応予定だそうです。
ver1.9.0の使い方
1から順に説明していきます
1.プロンプト入力欄
欲しい画像のキーワードを入力します。
入力は英語なのでDeepLなどの翻訳を使いましょう。
NMKD特有の仕組みとして改行によって複数のプロンプトを一度の「Generate」で自動実行できます。
長いプロンプトだからと改行するとそこで分割されてしまうので注意して下さい。
一行で書くことを忘れないようにしましょう。
ポジティブプロンプトの設定
{} ()を使用して囲まれた単語の印象を操作する事ができます。
(example){example} 囲まれた単語の印象を強める・弱める
()で囲まれた物は印象を強く、{}で囲まれた物は印象を弱めます。
また、複数使用することでより効果を強めることが出来ます。
例:hatsunemiku (((((greenhair)))))
(緑の髪)の印象を強めたので髪の色が濃ゆい緑になっています。
例:hatsunemiku {{{{{greenhair}}}}}
{緑の髪}の印象を弱めたので青に近い色になります。
使用したモデルWaifuDiffusion1.3です
2.ネガティブプロンプト
ネガティブプロンプトは除外する要素を入力する欄です。
不要な要素をネガティブプロンプトに入力することによって、生成される画像のクオリティを上げること等ができます。
ツイッターや掲示板ではネガティブプロンプトのテンプレが流れているので探してみてください。
例:hatsunemiku ネガティブプロンプト:greenhair
この例では緑の髪を除外しているので髪の色が青色になっています。
3.Load Image
画像を元にAIが画像を生成します。
「Load Image(s)」をクリックして画像を読み込む事が可能です。
複数の画像を一度に入力する事もできます。
インプットすると以下のような物が表示されますが通常は「Use as Initialization Image」をクリックして下さい。
クリックすると以下のような設定が可能になります。
Init Image Strength(Influence)
「Init Image Strength(influence)」では生成される画像にどれくらい似せるかを調整します。
数字が大きいほど元画像が強く反映されます。
0.050~0.950の間で反映できます。
実際に試してみる
今回はWaifuDiffusionで「anime kawaii」とだけ入力しImage Strengthの値を変更しました。
元画像はStableDiffusionが出力した画像になります。
このように最大値だとほぼ変わらない画像が出力されます。
実際に作成する際は細かく調整しながら作成していくことになると思います。
Image Mask
チェックを付けてから「Generate」ボタンを押すと以下のように黒く塗ることが出来ます。
これは黒く塗った部分のみAIが変更を加える事ができ、画像の一部を書き換えたい時に役に立ちます。
Text Mask
変更したいオブジェクトをテキスト(英語)で指定します。
4.Amount Of Images~
一度に何枚の画像を生成するか調整します。
複数のプロンプトを改行で実行すると、設定した枚数を排出した後に次のプロンプトを実行します。
5.Generation Steps
画像生成時に行うStep数を調整できます。
極端に増やすと逆に汚くなる時もあるので注意しましょう。
数字が大きほど1枚作成する処理に時間がかかるようになります。
6.Prompt Guidance(CFG Scale)
どの程度プロンプトの指示を反映するか調整します。
数字が大きいほどプロンプトの指示が強く画像に反映され、小さくするとAIが独自に考えた画像になります。
7.Seed
空白だとランダムな数値を当てはめます。
「Use Previous」をクリックすると直前に使用したseedを入力できるので、同じような画像を作れます。
8.Resolusion
画像の解像度を決める部分です。
基本的に正方形じゃないと表示が崩れたり人物が二人表示されます。
因みに、現在モニターや動画で主流の16:9をどうしても作りたい場合はW1024×H576になります。
High-Resolusion Fix
高解像度を設定するとチェックボタンが表示されます。
チェックすると高解像度での生成物がより良くなる場合があります。
9.Smapler
どのサンプラーを使うのか設定できます。
デフォルトの「Euler Ancestral」は低ステップで高クオリティを表示してくれるサンプラーです。
ステップ数は多くても60程度、大体20~40で高クオリティになると説明されています。
基本的にサンプラーは変えなくて大丈夫です。
10.Generate Seamless
チェックして画像を生成するとシームレスに繋げられるようになります。
例えばこのような要求をDeepLで変換してプロンプトに貼り付け、チェックを付けた状態で生成します。
それで生成されたのがこちら。
この画像はループさせても自然と繋がるので素材として使えるようになります。
現在は以下の設定が可能です。
All Sides
上下左右に画像を繋げられる用に生成されます(例として出した画像のような感じ)
基本はこれで良いでしょう。
Left/Right Edges
左右に画像を繋げられるように画像が生成されます。
Top/Bottom Edges
上下に画像を繋げられるようになります。
11.その他のメニュー
(編集の都合上変更のない部分は古い画像のままになっています。)
アップスケール・顔補正
このソフトにはアップスケール機能と顔補正(実写系の画像のみ)が標準でついています。
画像の部分をクリックすると設定できます。
以下の設定が可能です。
Upscaling
画像を何倍にアプコンするか選択できます。
2倍,3倍,4倍から選択可能です。
設定すると画像が生成された際に自動でアプコンされます。
Strengthで掛かり方の強さを調整します。
Face Restoration
顔を補正する機能です。
ただ、アニメ系の画像では効果がなくリアルな人の顔が修正されます。
Train DreamBooth Model
特定の画像をモデルに覚えさせるトレーニングが出来ます。
ただ、現時点ではGPURAM20GBが必要なので大半の人は出来ないと思います。
Developer Tools
画面のこの部分をクリックするとツールが表示されます。
Open Stable Diffusion CLI・Open CMD in Conda Environment
CUIで本ソフトを動かす機能です。
基本的に開発者や詳しい人向けの機能になります。
Merge Models
モデルのckptファイルを混ぜて新しい物を作ることが可能です。
比率を選ぶ事もできます。
場合によってはGPUのメモリエラーが起きるかもしれません。
2つのモデルを混ぜることで、これまでとは違う画像やお互いの利点を組み合わせる事も可能です。
Prune Models
モデルの不要な部分を削除する事によりモデルファイルを軽くすることができます。
Convert Models
NMDKStableDiffusionは.ckptと.ptしか使用できないので、他の拡張子のモデル(.safetensorsなど)を使用するときにこの機能を使用してモデルの変換を行います。
View Log In Realtime
画像生成時やMerge Models時にログを見ることができます。
エラーが起きる時はここを見れば解決手段が分かるかもしれません。
設定
画面右上の歯車を選択すると詳細設定が表示されます。
主要な部分だけ解説します。
1.Image Generation Implementation
何を使用して画像生成するか選択できます。
InvokeAI
最も基本的な画像生成です。
CUDA(NvidiaのGPU)を使用して生成します。
OptimizedSD
GPUメモリをそこまで使用しないモードです。
InvokeAIが動かない場合等は使用して見てください。
ONNX
AMDのGPUを使用している場合はこちらを選択してください。
InstructPix2Pix
最近出てきた新しい仕組みです。
画像を読み込みプロンプトで指示を出すだけで簡単に編集ができます。
今の所は精度がイマイチに感じます(23/1/29時点)
2.Use Full Precision
GTX1600シリーズはStableDiffusionと相性が悪く、エラーが起こりやすいです。
この部分にチェックを入れると上手く動くようになる可能性があります。
基本的にチェックは不要です。
3.StableDiffusion Model File
使用するモデルをここで選択できます。
モデルの入れ方は後述します。
4.Stable Diffusion VAE
VAEと呼ばれる拡張モデルを設定します。
最近はこれを設定して更にクオリティを上げる事が当たり前になっています。
モデルの入れ方は後述します。
5.CUDA Device
使用するデバイスを選択できます。
基本的には弄らなくでいいですが、CPUを選択することも可能です。
6.Image Output Folder
画像が保存される場所を変更することが可能です。
デフォルトは最初に解凍したフォルダの中に入ります。
Advanced Mode
チェックすると解像度やStepの数値を大幅に大きくする事ができます。
画像生成後の使い方
画像が生成されると作成された画像をその場で閲覧できます。
1.画像を選択
<>をクリックする事で画像を切り替える事が出来ます。
2.アウトプットフォルダを開く
クリックすると画像が保存されているフォルダを選択できます。
3.画像を削除
クリックすると選択中の画像を消すか、作成した画像を全て消すか選択できます。
全て消すを選択した場合は直前に作成した画像群のみが消去されます。
フォルダ内全ての画像が消される訳ではありません。
画像をクリックしたときの挙動について
画像をクリックするとフルスクリーンで表示したり、同じ画像がシームレスに繋がるか確認できます。
右クリックでメニューが表示されます。
別のモデルを使用する
現在StableDiffusionから派生したモデルは沢山ありますが、今回はWaifuDiffusionとTrinartを紹介します。
WaifuDiffusion
Haru氏が開発しているオープンソースの2次元特化のモデルです。
現在1.4の開発が始まっていますが、今回は安定バージョンの1.3とVAEを導入します。
上記サイトへアクセスして一番下にある「wd-v1-3-float16.ckpt」の横にある「↓」をクリックしてダウンロードします。
これは「モデルフォルダ」に入れます。
次に下記サイトに行き「kl-f8-anime.ckpt」をダウンロードします。
こちらは「VAEフォルダ」に入れます。
TrinArt
AIのべりすとを開発している株式会社Bit192が公開した2次元特化のモデルです。
上記サイトにアクセスして「trinart_characters_it4_v1.ckpt」、「autoencoder_fix_kl-f8-trinart_characters.ckpt」をダウンロードします。
「trinart_characters~」の方を「モデルフォルダ」に「autoencoder_fix~」の方を「VAEフォルダ」に入れます。
ダウンロードしたファイルをフォルダへ移動させる
モデルファイルの移動
ダウンロードした「モデル用のckptファイル」を移動させます。
歯車から設定を開き「StableDiffusionModel」にある「OpenFolder」をクリックします。
(Data/models)にカーソルを合わせて右上のフォルダマークをクリックします。
すると、エクスプローラーが開くので先程ダウンロードしたモデルを移動させます。
移動させたら横にある「Reflesh List」をクリックします。
すると「StableDiffusionModelFile」でckptファイルが選択できるようになります。
VAE用ファイルの移動
「Stable Diffusion VAE」にあるOpen Folderをクリックして先ほどと同じように開き、VAE用のckptファイルを入れます。
先程と同じように「Reflesh List」を押します。
モデルを選ぶ
最後にオレンジ色の部分を選択して使用するモデルを選択します。
「Stable Diffusion VAE」は別のモデル(Waifuの物をTrinArtで使用)でも使えるほか、外す事もできるので色々と試してみて下さい。
設定後、プロンプトを入力し生成を始めると自動でモデルを読み込んでくれます。
注意点
このソフトではckptファイルをフォルダー入れると簡単にモデルが使えます。
ただ、ckptファイルはPythonをそのまま実行してしまう性質があります。
面白そうなモデルだからとそこら辺に落ちているckptファイルを使用すると、有害なプログラムが埋め込まれている可能性もあるので注意しましょう。
終わりに
これで、このソフトをある程度自由に使えると思います。
更新頻度が高いので古くなる場合がありますが、なるべく更新できたらいいなぁと思います。
それでは!
コメント