How to build an environment of ComfyUI on Windows Ⅱ
序
Python3.12.xをWindowsのグローバル環境にインストールし、venv仮想環境を構築する形での、0スタートからのComfyUIインストール解説書ですが、以前とある必要性があって、以下にSDXLベースでのIC Lightを例に取る形で作成していたものを更新する形で、まずは完成版として再公開しました。
上記事内でも触れていますが、ここまで公開してきた全てのjsonに対して、改めて解説をする予定は、今後もありません。
(工数的に現実的ではない)
ただ繰り返しますが、私がここまで作成してきたComfyUI関連の記事は、基本的にComfyUIの初学者各位を前提には作成していません。
公開してきた各jsonも単に公開しているだけで、いちいちその設定方法などは解説してきませんでした。
しかし、最低でも一つは0ベースの解説書を作るつもりで上記事を作成した訳です。
今回の記事もその辺りの延長線上にある次第ですが、私が過去作成して来たjsonsの中でも、基本中の基本…と言っても良い、私自身も最も使用するSDXLベースのt2iについて、0ベース記事を作成したいと思います。
Python3.13.x環境では正常に動作しないmediapipeを使用せず、Florence-2で代用する形のFace Detalierもテストを重ねてほぼ完成した...と言っても良い段階に来たので、その新型Face Detailerを実装したVer.Ⅳを例に取って記事を作成していきます。
(但し、本記事はあくまでもPython3.12.x環境へのインストールを解説する)
また、ComfyUIを起動する段階迄は、完全に上記事内と記述が同一になる為、重複する非効率は避けて本記事では省略します。
上記事内の手順を踏んで、下図のように、ほぼまっさらのComfyUIを起動する処迄到達している…前提で、以下記述していきます。

Load a base of SDXL Ver.Ⅳ
Base of SDXL Ver.Ⅳをロードする
本jsonでは、ベースモデルに加えてReFinerモデルを使用する形になっている。以下からsd_xl_refiner_1.0.safetensorsをダウンロードして、\ComfyUI312\models\checkpointsに保存する
また、ControlNetモデルは以下からダウンロードして、
\ComfyUI312\models\controlnetに保存する。
次に下図のように、左上のメニューからワークフロー→開くを選択し、上記事で公開しているxl-feltⅡ.jsonをダウンロードして読みこむ。

すると、下図のような画面になるので、エラー表示ウィンドウは×をクリックして閉じる。

Missing Nodesをインストールする
次に下図のように、右上のメニューからManagerをクリックし、次いでInstall Missing Custom Nodesをクリックする。

次に下図のように、全てにチェックを付けて、Installをクリックする。

インストールが完了したら、Restartをクリックする。

確認をクリックする。

再起動後、再び確認をクリックする。

この時、ここまでの工程を正しく進めていれば、下図のようにベースモデル、Refiner、VAEが正しく設定させている筈である。

次に下図のように、Powershellを起動して、custom_nodesフォルダにパスを移動する。

次に、下のインストールコマンドを実行する。これは、ComfyUI-Managerに登録されていないノードをインストールする為である。
git clone https://github.com/Shiba-2-shiba/ComfyUI_FreeU_V2_advanced.git尚、ここでインストールするノードは、shiba*2さんという方が開発された以下のFreeUの機能強化版を使用する。FreeUは、着色に関して改善を行う機能を持つ。
必要なLoRAを入手して配置する
次に、必要なLoRAファイルを入手して、所定の場所に保存する。
このワークフローでは以下のLoRAを使用するが、保存場所は\ComfyUI312\models\loras"である。
ダウンロード後、Rキーを押すと以下の様にダウンロードしたLoRAが適用されている筈である。

Skin DetailerとFace Detailerの設定を行う
この状態では、Skin DetailerとFace Detailerで使用するモデルがまだ入手できていない為、完走できない。
ここで、そのダウンロードを行う。
まず、下図を見て欲しい。この赤枠でピックアップされている部分が、必要なモデル名になる。このモデル名を、テキストに控えておくなり、覚えておくなりしておくこと。このファイル名がこの後必要になる。
以下の如く、最低でも2つのモデルが必要になる。


次にComfyUI Managerを開いて、Model Managerをクリックし、検索窓にskinと入力すると、該当モデルが表示されるので、インストールする。

次に、faceで検索すると、該当モデルが表示されるので同様にインストールする。この2つのモデルをインストール後、Refreshをクリックして、ComfyUI Managerを閉じる。
尚、右側の方にモデルの保存場所が表示されているので、このパスも良く覚えておく事。須らく、「プログラムの背景」を理解すべく努めておく事が、ComfyUIにおいては重要である。

Florence-2モデルを設定する
次に、Face Detailer 2部分で使用するFlorence-2で使用するモデルを選択する。下図のように、下から2番目のlarge-PromptGen-v2.0を選択する。

Attentionは、sdpaを選択する。

初期設定では、以下の様に目のみを検出してDetailingする設定にしているが、ここもプロンプト次第で、口や髪の毛など、適用対象を自在にカスタマイズすることが出来る。

初回の生成を行う
これで、基本的な生成の為の準備が完了したので、まず各ノードの選択設定は以下の様に設定し、生成を実行する。

下図のように、全てのノードが正常に完走する筈である。


完走する事を確認したら、下図のようにSkin Detailerはoffにしておくことを推奨する。一般的な用途に於いては、余り使用する機能ではない。

ControlNetを使用する
Base of SDXLでは、canny、openpose、depthという3つの基本的な機能を実装しているが、ここではcannyを例に取って使用方法を解説する。
Canny とは、Stable Diffusion などの画像生成モデルに「輪郭(エッジ)」情報を与えて、生成画像の構図や形をコントロールするための拡張機能のひとつである。
まず、下図のようにcannyを有効化する。

下図のように、参照したい画像をロードする。
強度設定など「効き具合」を様々に変えることが出来るが、このあたりの感覚は実際に自分で体験して掴む以外にないので、様々な数値を試行錯誤してみるのが良いだろう。

強度0.8では、以下の様に相当元の絵を踏襲した仕上がりになる。

ControlNetには他にも、「Depth」「OpenPose」など様々な機能があるが、Base of SDXLには、これらも実装している。
Depth:奥行きを使って立体感を制御
OpenPose:人体の骨格だけをガイド
