ControlNetで線画から画像を生成する方法【AUTOMATIC1111版】RunPod Template ”Stable Diffusion WebUI Forge”で解説

この記事ではControlNetを使用して、線画のポーズを維持した画像を生成する方法について書いています。
今回は、ControlNetで抽出した線画を使用して、ControlNetで二次生成をしていますが、オリジナルの線画の場合も同様に進めて下さい。
本記事では、ローカルでの使用方法に加え、クラウドGPU”RunPod”の”Stable Diffusion WebUI Forge”というTemplateの使用方法を交えながら、解説しています。ControlNet自体の使用方法は同じ(バージョンによって差異あり)ですので、
ローカル環境(自身のPC)で使用される場合は、【ローカル環境】を、RunPodを使用される方は【RunPod】をご参照ください。


【ローカル環境】でControlNetを使用して線画から画像を生成する場合
前提条件
AUTOMATIC1111がローカルPCにインストール済みである事。


自身のPCにAutomatic1111がインストール済みで
「Stable Diffusion WebUI > extensions 内に sd-webui-controlnet
フォルダがない場合は、ControlNetの拡張機能が未インストールです。」その場合については、以下のアコーディオンを開いてください。
【ローカル環境】でControlNet拡張自体が未インストールの場合はこちらをクリック!
ControlNetなどの拡張機能(Extensions)関連のタブ自体が出てこない場合、以下のどれかが原因であることが多いです。それぞれの原因と対処方法を順番に説明します。
【1】拡張機能タブが無効化されている
launch.py
に以下のようなオプションが付いていると拡張機能が無効化されます
--disable-extensions
対処方法
- WebUIを閉じる
- 起動コマンドから
--disable-extensions
を削除 - 再起動
【2】WebUIのバージョンが古い
古いバージョンでは、拡張機能関連のUIが未実装、あるいはバグで表示されないことがあります。
対処方法
WebUIのアップデートを行いましょう
cd stable-diffusion-webui
git pull
その後、再起動。
【3】config.json で拡張機能UIが無効化されている
設定ファイル config.json
や ui-config.json
内に、拡張機能UIを非表示にする設定が入っている場合。
対処方法
以下のいずれかのファイルをチェック
webui-config.json
ui-config.json
config.json
もし以下のような項目があれば、それを修正または削除
"show_extensions_tab": false
true
に書き換えるか、行ごと削除してOKです。
【4】完全に壊れている/見当たらない場合のインストール
見当たらない場合は、ControlNet拡張を手動で導入できます。


- stable-diffusion-webuiからターミナルを開く
- GitでControlNet拡張を直接クローン


以下のコマンドコピペして下さい。
cd stable-diffusion-webui/extensions
git clone https://github.com/Mikubill/sd-webui-controlnet.git


- WebUIを再起動
- 左メニューやタブに「ControlNet」が出現するか確認
「ControlNet」タブ自体がない/設定が出ない場合は、以下の手順で拡張機能を追加します。
WebUIの「Extensions」タブ → 「Available」タブで以下を検索
sd-webui-controlneX
なければ、「Install from URL」タブで以下のURLを貼って「Install」
https://github.com/Mikubill/sd-webui-controlnet
【RunPod】でControlNetを使用して線画から画像を生成する場合
ここでは、RunPodでTemplateを使用できる環境にある事を前提に話を進めていきます。
RunPodの使用方法に関しては
【RunPodの使い方と料金】Stable Diffusionを使用して画像生成とLoRA学習をする方法をご覧ください。
今回の「Stable Diffusion WebUI Forge」とは、AUTOMATIC1111版 WebUI の改良版・派生版の1つで、より高性能・高速・低VRAMで動作するように最適化されたバージョンです。
RunPodではこの他にも、ControlNetを使用出来るTemplateが沢山あります。お好みのTemplateで進めて下さい。


Forge の特徴
項目 | 説明 |
---|---|
高速化 | PyTorch 2.0系の機能や xformers などを使い、標準より描画や学習が速いです。 |
省メモリ | VRAM消費を抑えるための最適化が多数入っています。 |
高機能 | SDXL・LoRA・ControlNetなど、AUTOMATIC1111の主要機能はほぼ対応しています。 |
使い方は同じ | UIや使い方は通常のAUTOMATIC1111と似ていて、乗り換えが簡単です。 |
⚠️ 互換性に注意 | 一部スクリプトや拡張が動作しないこともあります(でも大半は動く)。 |
ControlNetでモデルを読み込む
【ローカル環境】【RunPod】共通:モデルの選び方(例)
ControlNetで線画を使用して画像生成を行う場合、ControlNet用のモデルをダウンロードして指定フォルダ内に配置する必要があります。
モデル名 | 特徴 |
---|---|
control_sd15_scribble | 手描き風のラフ線にも強い。柔らかく効く。 |
control_sd15_lineart | アニメ線画に近い。線の忠実度が高い。 |
control_sd15_openpose | ポーズ指定に特化。線画ではなく人体の線に強い。 |
control_sd15_canny | エッジ画像(カンニーフィルター)向け。すでに線画なら不要。 |
例:control_sd15_lineart
を使いたい場合
🔗 Hugging Faceからダウンロード


おすすめモデル
control_sd15_lineart.pth
→ 古いv1.0版(SD1.5向け)control_v11p_sd15_lineart.pth
→ 新しいv1.1版(SD1.5向け)
(または .safetensors
)
他にも必要なら control_sd15_scribble
, control_sd15_canny
など
② モデルファイルを指定フォルダに配置する
【ローカル環境】でのモデルファイルの配置
stable-diffusion-webui/models/CotrolNet
上記フォルダに、ダウンロードした .pth
または .safetensors
ファイルを直接入れる
【RunPod】でのモデルファイルの配置
JupiterLabのある場合・・・UI上部のアップローダーからアップロード。
rcloneでアップロード


- Stable Diffusion WebUIのインストールフォルダに移動


control_v11p_sd15_lineart.pth
をフォルダに移動stable-diffusion-webui/models/CotrolNet
- 上記フォルダに、ダウンロードした
.pth
または.safetensors
ファイルを直接入れる
ControlNet設定




プロンプトとネガティブプロンプト
通常のStable Diffusionと同じように、ポジティブ(肯定)プロンプトとネガティブ(否定)プロンプトの両方を使って生成品質をコントロールできます。
ControlNetは「構図や構造をガイドする」拡張機能で、画像生成の構図・骨格・輪郭などを制御する役割ですが、最終的な描写内容やスタイル、ノイズ抑制などはプロンプトの影響が大きいです。
ControlNetが“どこに何を描くか”を制御し、プロンプトが“何をどう描くか”を補完してくれます。
ControlNetで ポーズ指定(OpenPose)を使いながら、ネガティブプロンプトで「歪んだ顔, 余分な指, ノイズ, 背景の崩れ」などを除外する
Prompt(肯定):
masterpiece, 1girl, standing, school uniform, sunny day
Negative Prompt(否定):
lowres, bad anatomy, extra fingers, deformed, blurry, text, watermark
逆に、ControlNetの影響が強すぎると、ネガティブプロンプトが効きづらくなることもあります
項目 | 設定内容 |
---|---|
ControlNet Module(Preprocessor) | none (※すでに線画なので再抽出しない) |
ControlNet Model | control_sd15_lineart.pth などを選択 |
Invert Input Color | 内部的に画像を反転させたい時(白地黒線↔黒白線など) |
Control Weight | 1.0 〜1.5 強すぎる場合は、0.5〜0.9 |
Guidance Start / End | 0.0 / 1.0 (全体に効かせる) |
Control Mode | Balanced or My prompt is more important |
⚠️ ControlNet使用時の注意点
- 線画を入力する場合、線画と生成画像の解像度は一致させるのが基本です。
- ControlNetの「Model」の欄で、ファイルを選択
Schedule type
名前 | 特徴 | おすすめ用途 |
---|---|---|
linear(デフォルト) | 学習率が一定の割合で直線的に減少 | 一般的なLoRA学習に最適。特にこだわりがなければこれ |
cosine | 最初はゆるやか、後半で急に学習率が下がる | 最終段階でオーバーフィッティングを避けたいとき |
cosine_with_restarts | 一定周期で学習率がリセット | 不安定なデータや周期性のあるタスク向け |
polynomial | 学習率が多項式的に減少 | 緩やかな減衰がほしいとき(あまり一般的でない) |
constant | 学習率をずっと固定 | 微調整や実験用、通常は推奨されない |
オプション「Enable」「Pixel Perfect」「Allow Preview」
1. Enable(有効化)
- 意味:そのControlNetユニット(モデル)を使うかどうかのON/OFFスイッチです。
- ONにすると:画像生成にControlNetが適用されます。
- OFFにすると:ControlNetは無効になり、通常の画像生成のみになります。
- 使い方:複数のControlNetユニットを用意しておいて、必要なものだけONにするときに便利。
2. Pixel Perfect(ピクセルパーフェクト)
- 意味:ControlNetに入力する画像のサイズや位置合わせを、入力画像に合わせて「完璧に整える」設定です。
- ONにすると:
- 自動で元画像サイズを元に、モデルの処理設定が最適化されます(特に拡大・縮小の誤差が減る)。
- OFFにすると:
- 手動でサイズを調整できるが、モデルがズレて処理される可能性があります。
- おすすめ:入力画像の線や形が細かいとき、ON推奨。
3. Allow Preview(プレビュー許可)
- 意味:ControlNetの影響を画像生成前に軽く確認できる設定(GUIでプレビュー表示)。
- ONにすると:
- 画面に「ControlNetがどんな風に画像を変えるのか」が軽く表示されます(負荷が少し増える)。
- OFFにすると:
- プレビューは出ないが、処理は少し軽くなる。
- 使い方:設定を調整しながら見たいときはON、確定済みならOFFでもOK。