SD WebUIでSDXLのControlNetを使う

スポンサーリンク
Stable Diffusion
スポンサーリンク

Stable DiffusionのWebUIですが、SDXLへの対応に続いて、拡張機能のControlNetがアップデートによりSDXLに対応できるようになりました。早速アップデートして使ってみました。

WebUIでSDXLのControlNetを使う方法

前準備:WebUIのアップデート

まずはセットアップ方法からみていきます。WebUIがまだSDXL対応版のv1.6.0以上になっていない方はまずはWebUIのアップデートから行ってください。アップデートについては、以前の記事「Stable Diffusion WebUIのバージョン1.6.0のアップデートを試してみる」で説明しているので、そちらをご確認ください。

ControlNetのアップデート

WebUIのアップデートができていたら、ControlNetをアップデートします。「Extensions」(拡張機能)の「Installed」(インストール済み)から「Check for updates」(アップデートを確認)を選択します。

ControlNetがアップデート可能になっていると「sd-webui-controlnet」の行に「new commits」が表示されますので、チェックをした状態で、「Apply and restart UI」(適用してUIを再起動)のボタンを押します。するとバックグラウンドでアップデートが行われます。再起動した後もターミナル上ではアップデートが動いていると思うので、動きがなくなるのを待ちます。その後、一旦WebUIを終了します。

SDXL用ControlNetモデルのダウンロード

SDXLでControlNetを使うためには、SDXL仕様のControlNetのモデルを使う必要があります。SDXL用のControlNetモデルは多くの作者様によって開発されています。下記のサイトでControlNetの作者のlllyasviel氏がモデルをまとめてくれています。

sd_control_collection

そこから一つずつダウンロードしても良いのですが、一括でControlNetのmodelsフォルダにコピー(クローン)を作成したい場合はGitコマンドを使うのが便利です。「stable-diffusion-webui」の「models」フォルダの中にある「ControlNet」のフォルダをシフト押しながら右クリックして、そこでターミナルを開いて、以下のコマンドを実行すると、modelsフォルダの中にすべてのモデルを落としてくれます。(容量が大きいのでダウンロードには時間が掛かるので注意!!

git lfs install
git clone https://huggingface.co/lllyasviel/sd_control_collection

WebUIでSDXLのControlNetモデルを使ってみる

それでは使ってみます。ControlNetはCannyの「diffusers_xl_canny_full」を使っています。今回はモデルはCounterfeitXLを使用して、少しプロンプトでリアルに寄せています。ControlNetの画像はPAKUTASOさんの「レモンを持ったスムージー女子」(モデル:河村友歌さん)を使わせていただきました。

元画像

Cannyのプリプロセッサー処理済み画像

生成画像例

しっかりSDXLでもControlNetが使えています。

今回、SDXL用にControlNetモデルを普通に作るとモデルのサイズが大きくなってしまいます。そこで、いろいろな軽量なもでるも提案されています。LoRAモデル作成で広く使わているkohya_ssの作者のKohya氏もTwitter上でご自分のモデルの検証を報告しています。

いろいろなモデルがあるので、それぞれの特徴を今後検証したいと思います。

Stable Diffusion
スポンサーリンク
鷹の目週末プログラマー

コメント