![見出し画像](https://assets.st-note.com/production/uploads/images/130882636/rectangle_large_type_2_2ac6c24299106b0afc26068fc1befbc8.png?width=1200)
Stable Diffusion - ControlNet入門(4) 画像を生成するワークフロー
この記事では、実際に ControlNet を使用して画像を生成する手順、ワークフローを解説します。
画像のアップロード
まず、Colab の場合は ControlNet のインストールを行うセルを実行してから Web UI を立ち上げます。
ローカル環境の場合は、extention フォルダに ControlNetをダウンロードしたことを確認してから Web UI を立ち上げましょう。
すると『ControlNet v1.1.423』と書かれたバーが表示されます。
開くとこのようなメニューが表示されます。
![](https://assets.st-note.com/img/1705650189526-EbG3OiQ9yA.png)
まず「ここに画像をドロップ」と書いてある枠内に、元になる画像をアップロードします。写真、イラストのどちらでも良いです。人物以外の画像でも問題ありません。今回は blue_pencil-XL で生成したイラストを使用します。
![](https://assets.st-note.com/img/1705650384292-1sw7wAEHdA.png)
![](https://assets.st-note.com/img/1705650401733-6Z8iO70FfN.png?width=1200)
画像のアップロードができたら、すぐ下の左の『Enable』のチェックをオンにします。これは ControlNet を適用するかどうかのメニューなので、オフにすると ControlNet が無視されて生成されます。
プリプロセッサとモデルの選択
次に、プリプロセッサとモデルを選択します。
まずプリプロセッサです。
![](https://assets.st-note.com/img/1705650328578-uSbhXVT9Tc.png?width=1200)
画像をアップロードした枠の下にある『Control Type』のメニューでプリプロセッサを選択します。デフォルトは『All』になっており、『Control Type』メニュー下の『Preprocessor』から使用可能なプリプロセッサを選択することもできますが、モデルを選択するのが楽なので最初は『Control Type』から選択しましょう。
今回は『Canny』を選択します。
![](https://assets.st-note.com/img/1705650358618-9hKCLCMy8b.png?width=1200)
『Control Type』メニューからプリプロセッサを選択すると、自動で下の『Preprocessor』『Model』に、適したものが選択されます。もし自動で進まない場合は、プルダウンメニューで使用するプリプロセッサとそれと同じ名前のモデルを選択しましょう。
これで ControlNet の適用は完了です。プロンプトを入力し、『Generate』で生成しましょう。
![](https://assets.st-note.com/img/1705650564752-EL1badpiDH.png)
bluepancilXL absurdres, highres, masterpiece, best quality, ultra detailed, 1girl, closed eyes,black hair
【NP】worst quality, low quality, bad anatomy
生成されました。
また、前の章にあったような ControlNet が抽出した要素を確認したい場合、プリプロセッサとモデルを選択した状態で破裂しているようなマークのボタンを押します。
![](https://assets.st-note.com/img/1705650660501-NDGn6wNPhk.png?width=1200)
すると『Enable』のチェックの下の『Allow Preview』にもチェックが入り、アップロードした画像の右に抽出した要素の画像(Preprocessor Preview)が表示されます。
これは右上のダウンロードボタンでダウンロードすることができます。
![](https://assets.st-note.com/img/1705650693489-r7MvQT1OKG.png?width=1200)
ControlNetの重みの比較
ControlNet を使って生成していると「もっと ControlNet の指定通りになってほしい」「ControlNet が強すぎてプロンプトが効かない」といったことが起こることがあります。
そのような時には、『Control Weight』の数値を変更します。
![](https://assets.st-note.com/img/1705650725675-IMniinEvK8.png?width=1200)
これは ControlNet の重みを変更するパラメータです。デフォルトは1ですが、数値を変えて生成してみましょう。
![](https://assets.st-note.com/img/1707468848866-FAUtQIFRaE.png)
![](https://assets.st-note.com/img/1707468860956-AXjpd0MA7h.png)
![](https://assets.st-note.com/img/1707468902309-4QVbni8Az5.png?width=1200)
0から1.0まではかなり自由なポーズになり、1.0を超えるとポーズが固定されてきています。数値が大きくなるほど頭身も写真に近づきますね。
また、『Control Mode』のメニューでプロンプトと ControlNet のバランスを変えることもできます。
![](https://assets.st-note.com/img/1707468948847-RGfIfmllqi.png?width=1200)
デフォルトは『Balanced』ですが、『My prompt is more important』でプロンプト優先、『ControlNet is more important』でControlNet優先になります。seedを固定して結果を比較してみましょう。
![](https://assets.st-note.com/img/1707468977826-earZRP6C1L.png?width=1200)
masterpiece, best quality, ultra detailed, 1girl, black long hair, onepiece dress, light smile,
【NP】worst quality, low quality, bad anatomy, easynegative,
![](https://assets.st-note.com/img/1707469046523-hGGsXfQY8Y.png)
![](https://assets.st-note.com/img/1707469046978-UBitxkYUaz.png)
![](https://assets.st-note.com/img/1707469047386-upetvmcKlY.png)
『My prompt is more important』ではポーズが OpenPose から遠くなりました。『ControlNet is more important』にすると身体の向きが OpenPose の座標と最も近いように感じます。
このように、生成したいイラストに合わせて ControlNet の重みを調節してみてください。
以上が ControlNet を使う上での基本的な流れです。
前回紹介した多様なプリプロセッサを組み合わせて、自分のお気に入りの構図や演技を作っていきましょう!
次回はいよいよ ControlNet入門の最終回です。
Stable Diffusion - ControlNet入門はこちらから
img2img 入門シリーズはこちらから。
※本ブログは発売予定の新刊書籍に収録される予定です。期間限定で先行公開中しています。
メンバー向けには先行してメンバーシップ版をお届けします
Stable Diffusionをお手軽に、しかもめっちゃ丁寧に学べてしまう情報をシリーズでお送りします。
メンバーは価値あるソースコードの入手や質問、依頼ができますので、お気軽にご参加いただければ幸いです!
この下にGoogle Colabで動作する「AUTOMATIC1111/Stable Diffusion WebUI」へのリンクを紹介しています。
メンバーシップ向けサポート掲示板はこちら!応援よろしくお願いします!
ここから先は
Amazonギフトカード5,000円分が当たる