ComfyUIでの複数のControlNetの使用チュートリアル
ControlNetでは、複数のControlNetを組み合わせて、より正確な制御を実現できます。例えば、キャラクターを生成する際に、肢体のずれが発生した場合、depthを重ねることで、肢体の前後関係を正しく保つことができます。
この記事では、OpenPoseとLineartを使用して、ビジュアルスタイルの変化を実現します。
- OpenPoseはキャラクターのポーズを制御するために使用されます。
- Lineartはキャラクターの服装や顔の特徴を一貫して保つために使用されます。
実際には、複数のControlNetを使用する際に、Apply ControlNet
ノードの条件を連結することが重要です。
ControlNetの段階的制御については、Apply ControlNetノードの使用説明を参照してください。
ComfyUIでの複数のControlNetの使用手順
1. 必要なプラグインのインストール
もしComfyUI Wikiの他のチュートリアルを学んでいるなら、対応するプラグインをすでにインストールしているはずなので、このステップはスキップできます。
ComfyUI Coreには対応するDepth画像前処理器が含まれていないため、事前に対応する前処理プラグインをダウンロードする必要があります。 このチュートリアルでは、深度マップを生成するためにComfyUI ControlNet Auxiliary Preprocessorsプラグインを使用する必要があります。
ここでは、ComfyUI Managerを使用してインストールすることをお勧めします。 プラグインのインストール手順については、ComfyUIプラグインインストールチュートリアルを参照してください。この部分はかなり詳しく説明されています。
最新版のComfyUI Desktopには、すでにComfyUI Managerプラグインがプリインストールされています。
2. モデルのダウンロード
まず、以下のモデルをダウンロードする必要があります:
モデルタイプ | モデルファイル | ダウンロードリンク |
---|---|---|
SD1.5基本モデル | dreamshaper_8.safetensors(オプション) | Civitai |
OpenPose ControlNetモデル | control_v11f1p_sd15_openpose.pth(必須) | Hugging Face |
Lineart | control_v11p_sd15_lineart.pth(必須) | Hugging Face |
SD1.5バージョンのモデルは、あなたのコンピュータ上のモデルを使用できますが、このチュートリアルではdreamshaper_8モデルを例として使用しています。
モデルファイルは以下の構造に従って配置してください:
📁ComfyUI
├── 📁models
│ ├── 📁checkpoints
│ │ └── 📁SD1.5
│ │ └── dreamshaper_8.safetensors
│ ├── 📁controlnet
│ │ └── 📁SD1.5
│ │ └── control_v11f1p_sd15_openpose.pth
│ │ └── control_v11p_sd15_lineart.pth
3. ワークフローファイルと入力画像
以下のワークフローファイルと画像ファイルをダウンロードしてください。
4. ComfyUI にワークフローをインポートして画像を生成する
- ステップ
1
で対応する SD1.5 チェックポイントモデルをロードします。 - ステップ
2
で画像をロードします。 - ステップ
3
で OpenPose ControlNet モデルをロードします。 - ステップ
4
で Lineart ControlNet モデルをロードします。 - Queue またはショートカット
Ctrl+Enter
を使用してワークフローを実行し、画像を生成します。
ControlNet の組み合わせ使用シーン
1. 建築ビジュアライゼーションデザイン
ControlNet の組み合わせ
Canny エッジ
+ Depth 深度マップ
+ MLSD 線検出
パラメーター設定プラン
ControlNet タイプ | 主な機能 | 推奨ウェイト | 前処理パラメーターの提案 | フェーズ |
---|---|---|---|---|
Canny | 建築構造の輪郭を正確に保つ | 0.9-1.0 | 低閾値:50、高閾値:150 | フェーズ1 |
Depth | 3D 空間の透視関係を構築 | 0.7-0.8 | MiDaS モデル、コントラスト強化を有効にする | フェーズ2 |
MLSD | 線の変形を修正し、幾何学的精度を維持 | 0.4-0.6 | 最小線長:15、最大線距離:20 | フェーズ3 |
2. キャラクターの動的生成
ControlNet の組み合わせ
OpenPose ポーズ
+ Lineart スケッチ
+ Scribble カラーブロック
パラメーター設定プラン
ControlNet タイプ | 主な機能 | 推奨ウェイト | 解像度適応の提案 | 協力戦略 |
---|---|---|---|---|
OpenPose | キャラクターの全体的なポーズと動作を制御 | 1.0 | 出力サイズと一致させる | メインコントロールネット |
Lineart | 顔の特徴と装備の詳細を洗練する | 0.6-0.7 | アニメモードを有効にする | 中後期介入 |
Scribble | 服の色とテクスチャの分布を定義する | 0.4-0.5 | SoftEdge 前処理を使用する | 色層にのみ影響 |
3. 製品コンセプトデザイン
ControlNet の組み合わせ
HED ソフトエッジ
+ Depth 深度
+ Normal 法線マップ
パラメーター設定プラン
ControlNet タイプ | 主な機能 | ウェイト範囲 | 前処理の重要設定 | 効果 |
---|---|---|---|---|
HED | 製品の柔らかいエッジと表面の遷移をキャッチ | 0.8 | ガウスぼかし:σ=1.5 | 輪郭の柔らかさを制御 |
Depth | 実際の光と影をシミュレートし、背景をぼかす | 0.6 | 近景強化モード | 空間的な層を構築 |
Normal | 材料の表面の詳細と反射特性を強化する | 0.5 | 生成サイズ:768x768 | 材料の詳細を強化 |
4. シーンの雰囲気レンダリング
ControlNet の組み合わせ
セグメンテーション パーティション
+ シャッフル カラートーン
+ Depth レイヤー
レイヤー制御戦略
コントロールレイヤー | 主な機能 | ウェイト | 効果エリア | 介入タイミング |
---|---|---|---|---|
Seg | シーン要素のエリアを分割(空/建物) | 0.9 | グローバル構図 | 完全制御 |
Shuffle | 全体の色調とスタイルの移行を制御 | 0.4 | 色の分布 | 中後期介入 |
Depth | 深度効果と空間的な層を作成する | 0.7 | 背景ぼかしエリア | 早期介入 |