ノードベースGUI「ComfyUI」のちょっとだけ高度な使い方を紹介します
といってもそこまで大変な設定でもありませんけどね
なんなら公式ページの画像をドロップするとノードの設定ロード出来ますし
ただいくつか追加でダウンロードしないといけないファイルがありますので注意してください
基本的な使い方に関してはリンク先を見て下さい
【Stable Diffusion】導入が非常に簡単なノードベースの新GUI「ComfyUI」
Upscale Model
まずはUpscale Modelからです
webUIで言うと設定の項目にあるやつですね
てっきりRestore facesのことだと思っていたんですけど、何か違うみたいですね
webUIでも使ったこと無いかもしれません
webUIのフォルダにあった「GFPGANv1.4」では動作しなかったので
まずは「Real-ESRGAN」の必要ファイルからインストールします
Real-ESRGANインストール
https://github.com/xinntao/Real-ESRGAN
リンク先に詳しい情報は載っています
git clone https://github.com/xinntao/Real-ESRGAN.git
cd Real-ESRGAN
# Install basicsr - https://github.com/xinntao/BasicSR
# We use BasicSR for both training and inference
pip install basicsr
# facexlib and gfpgan are for face enhancement
pip install facexlib
pip install gfpgan
pip install -r requirements.txt
python setup.py develop
コマンドプロンプトで上記のコードを入力すれば「Real-ESRGAN」がインストール出来ます
codeからDownload zipでも多分大丈夫
次に学習済みのモデルをダウンロードします
wget https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth -P weights
このコードでダウンロード出来ますが、上手くいかない時は公式ページの下にある
Download pre-trained models:RealESRGAN_x4plus.pthをクリックすればOKです
ダウンロード出来たら「ComfyUI\models\upscale_models」に入れてください
これで準備は完了です
ノード設定
基本的にデフォルトモデルとそこまで変わりはありません
- 「loaders」→「UpscaleModelLoader」の追加
- 「image」→「upscaling」→「ImageUpscaleWithModel」の追加
- 「UpscaleModelLoader」→model_name→「RealESRGAN_x4plus.pth」を選択
- 「UpscaleModelLoader」UPSCALE_MODELから「ImageUpscaleWithModel」UPSCALE_MODELへ接続
- 「ImageUpscaleWithModel」のimageとIMAGAEを「VAEDecode」と「SaveImage」にそれぞれ接続
以上です
元々「VAEDecode」と「SaveImage」のimageが繋がっているのでUpscaleModelを繋ぎ変えるだけですね
注意点としては結構重いです
Hires fix
webUIだとこの部分ですね
Hires fixは他にファイルを用意する必要はありません
Hires fix前の画像も生成していますが、必要なければ省いても大丈夫です
- 「latent」→「LatentUpscale」の追加
- 「sampling」→「Ksampler」の追加
- 「LatentUpscale」のsamplesを左側「Ksampler」のLATENTを接続
- 「LatentUpscale」のLATENTを右側「Ksampler」のlatent_imageを接続
- 右側「Ksampler」のmodel,positive,negativeをそれぞれ左側「Ksampler」と同じ場所に接続
以上です
注意点として右側「Ksampler」のdenoiseはデフォルトの1だと上手く出力されませんでした
この画像をdenoise1で生成すると
何かこんななります
また右側の「Ksampler」を省いても画像の生成は出来ますが
ガビガビになりました
しっかりとノードを組んだ場合はこうなります
ちょっと顔の出来がイマイチですけど、プロンプトが原因だと思うのであまり気にしないで下さい
ControlNet
最早お馴染みになっているControlNetですが、「ComfyUI」でも当然使用可能です
ただこちらはモデルファイルをダウンロードする必要があります
モデルダウンロード
https://huggingface.co/webui/ControlNet-modules-safetensors/tree/main
といってこちらは上記リンクで必要なモデルファイルをダウンロードするだけです
ダウンロードしたモデルは「ComfyUI\models\controlnet」に入れてください
今回は定番のopenposeのみを使ってみます
何気に1つ700mb以上あるので全部ダウンロードするかは考えた方が良いかもしれません
t2iadapterはまだ使い方が良くわからないので、また調べてから記事にします
どうやらt2iadapterの方が良いらしい?
ノード設定
「CLIPTextEncode」と「Ksampler」の間に割り込ませる感じです
画像のコードが白くなっているところが接続されているところになっています
- 「loader」→「ControlNetLoader」追加
- 「image」→「LoadeImage」の追加
- 「conditioning」→「ControlNetApply」の追加
- 「ControlNetLoader」でControlNetモデルを開く
- 「LoadeImage」でポーズ(カラフル棒人間)画像を開く
- 「ControlNetApply」のcontrol_netを「ControlNetLoader」に接続
imageを「LoadeImage」に接続 - 「CLIPTextEncode」のCONDITONINGと「Ksampler」のpositiveを「ControlNetApply」に接続
以上です
img2imgはこうなります
gif作成
Civitaiを見ていたらopenposeで使えるgif用のポーズがあったので試してみました
”sadCatDance”とかいうミームらしいです
正直あまり上手くはいきませんでした
LoRAとか使わないと難しいかもしれません
こちらは同一seed値で作りましたがかなりバラツキがありますね
こっちはimg2imgで作りました
まあ多少は服装が似たような感じになったかなといったところですね
せめて背景はシンプルにした方が良さそうですね