【ControlNet】顔を固定して別の構図の画像を生成できる新機能「reference_only」の紹介!【Stable Diffusion】

こんにちは!悠です!

 

今回は、拡張機能「ControlNet」のv1.1.153以降に追加された新機能「reference_only」について紹介していきます。

素材に使う画像の顔や画風をある程度固定したまま、別の構図でイラストを出力してくれる便利機能なのでぜひ試してみてください!

 

Redditでも該当スレッドがかなり話題になっていました。

 

アイキャッチ画像はモデルに「Hassaku」を使用しています。
スポンサーリンク
スポンサーリンク

「reference_only」の使い方

拡張機能「ControlNet」の導入方法に関しては、下の記事で紹介しています。

【Stable Diffusion】生成されるイラストのポーズを指定できる「ControlNet」の導入方法と使い方について紹介!
「Stable Diffusion」で、生成されるAIイラストのポーズを指定することができる拡張機能「ControlNet」の導入方法と使い方を紹介した記事です。

 

「reference_only」は、「ControlNet」がv1.1.153以上ではないと使用できないため、バージョンが古い方は下の記事の方法で拡張機能をアップデートしてください。

【Stable Diffusion】Extension(拡張機能)を更新する方法についてまとめていく!【アップデート】
「Stable Diffusion WebUI」で、Extensions(拡張機能)をアップデートする方法についてまとめた記事です。Colab版では更新する必要がないので、基本的にローカル版の方向けの方法になります。

 

「reference_only」はcannyやdepthと違い、Preprocessorのみで機能するため、ControlNet専用のモデルデータをダウンロードする必要はありません。

 

今回は例として、下記のプロンプトで生成した画像を素材にして新たな画像を生成していきます。モデルにはHassakuを使用しています。

【Positive】
masterpiece, best quality, absurdres, highres, official art, 1girl, solo, portrait, tattoo, japanese clothes, hair ornament, unsheathing, black hair, sheath, back tattoo, blue eyes, off shoulder, bare shoulders, looking back, from behind, flower, looking at viewer, holding, makeup, indoor
【Negative】
(worst quality, low quality:1.4), (monochrome, greyscale:1.4), nude, bad anatomy, EasyNegative, text, logo, watermark, bad_prompt_version2

 

 

使い方は簡単でtxt2imgタブでControlNetの項目を開き、Enableにチェックを入れ、Preprocessorをreference_onlyに設定するだけです。

 

素材画像と全く同じプロンプトを使って生成した画像がこちらです。ほぼ同じ顔で出力されていますね。

 

次にblack hairをblonde hairに変えたときの例がこちらです。他のプロンプトはそのままです。

顔はほぼ同じで、髪の色だけ変化させることができていますね。

 

最後にポジティブプロンプトを下記のように変更してみました。

masterpiece, best quality, absurdres, highres, official art, 1girl, solo, portrait, school uniform

 

その結果がこちらです。髪型や髪の色を指定することなく、かなり似た顔のキャラの服装だけを変更した画像を生成できていますね。

 

このように「reference_only」を使うことで、数百回のガチャで奇跡的に生成できた神画像のキャラを簡単に複製できたり、マイナー過ぎてほとんど素材が集まらないキャラの画像を無理やり複製してLoRAの学習ができたりするようになるかもしれません。

まだまだ絶賛アップデート中の機能ですので、今後に期待できそうですね!

 

v1.1.168で追加された新機能「Style Fidelity Slider」

 

ControlNet v1.1.168で、Blancedモードのみで使える「Style Fidelity Slider」が追加されました。

 

値が大きいほど、スタイルへの忠実度が高くなりますが、生成画像が崩壊するリスクも高くなります。

値が小さいほど、スタイルへの忠実度は低くなりますが、安定性が高くなります。

 

【参考記事】

 

v1.1.171で新たに2種のプリプロセッサが追加

ControlNet v1.1.171で、新たに2種のプリプロセッサ「reference_adain」「reference_adain+attn」が追加されました。

 

下記のRedditのスレッドを見た感じ、「reference_adain」は素材の内容ではなく画風やスタイルをコピーし、「reference_adain+attn」は「reference_only」と同じく内容とスタイルをコピーするように見えます。

 

もし試された方がいらっしゃいましたら、ぜひ感想を教えてください!

 

【参考記事1:3つのプリプロセッサの比較】

 

【参考記事2】

[New Preprocessor] The "reference_adain" and "reference_adain+attn" are added · Mikubill/sd-webui-controlnet · Discussion #1280
V1.1.171 adds two new reference preprocessors: reference_adain AdaIn (Adaptive Instance Normalization) from Arbitrary Style Transfer in Real-time with Adaptive ...

 

「reference_only」の注意点

 

画像の色彩がおかしくなることがある

ControlNet v1.1.166の時点では、「reference_only」を使うと素材画像によっては色がくすんでしまう(VAEを適用していない感じになってしまう)ことがあります。

これは紹介したRedditのスレッドでも言及されていたんですが、サンプラーを変更したり、ステップ数を増やすことで改善される場合もあるようです。

今後のアップデートで修正されていく気がします!

 

まとめ

以上が、素材に使う画像の顔や画風をある程度固定したまま、別の構図でイラストを出力してくれるControlNetの新機能「reference_only」の紹介でした。

ControlNetはほぼ毎週のように更新されて新機能が追加されていきますね。

どこまで進化するのか、すごく楽しみです!試していませんがMulti ControlNetと合わせても面白そうですね。

 

【Stable Diffusion】Multi ControlNetを使って複数のモデルを組み合わせ、複雑な画像の構図を制御するやり方!
「Stable Diffusion」の拡張機能「ControlNet」で、一度に複数のモデルを組み合わせることができる「Multi ControlNet」の使い方について紹介した記事です。

 

では、ここまで読んでいただきありがとうございました。

コメント

  1. ふぁるこん より:

    こんばんは。
    話題の機能をさっそく紹介してくれていますね。
    これはほんと革命的ですね。LoRAやLyCORIS、TIの存在意義が薄れてしまうかも知れません。
    画像1枚だけあれば、それに似た顔の画像を出力してくれるのですから。
    現状はまだLoRAの代わりになるほどの精度はないですが、今後に期待します。
    生成画像に格子模様が出る場合は、Ending Control Stepを0.9などに落とすときれいにでます。

    私事ですが、PCのちょうしが悪くて数回クリーンインストールし直しました。転んだついでに、内蔵SSDを増設し、そこにchatGPT関連も含めて全てのAI関連ファイルを集約させてみました。chatGPTは以前は外付けHDDに置いてましたが、SSDに変えてからモデル読み込みと応答の早いこと! 空いたスペースにpagefile容量も大きくできました。

    ところで、最近SDの起動時にネット接続を必要とするように仕様って変更されました? 他のAIは大丈夫ですが、SDだけオフラインでは起動できないようなのです。起動時にオンラインにすればいいだけなので、問題はないのですが、他の方はどうなのかと思って聞いてみました。WebUI1111の更新内容にはそのようなものはなかったはずですが。。

    • 悠 より:

      おお、お久しぶりです!

      reference_only凄まじいですよね!上でも書きましたが、1枚だけ偶然できた神画像をいくらでも複製できるのが嬉しすぎます..!
      ControlNetの更新頻度最近すごいので、1ヶ月後にはとんでもない場所までいってしまうかもしれませんよね(*’ω’*)

      そのオフラインで起動できない件、1.2.1で直ったそうですよ!
      https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases/tag/v1.2.1

      多分このページの「allow web UI to be ran fully offline」って場所じゃないかなと思います!git pullですね!

  2. ふぁるこん より:

    おぉー。

    数時間前のアプデで修正されたのですね!
    アップトゥーデイトな情報をありがとうございます!

    アート的なものを作るときには気にならないのですが、趣味全開のムフフ的なものを作る場合はオフラインにしないと気になってしまいます

    ムフフ保存フォルダのあるHDDもオンラインにするときは物理的にコードを抜くよゔにしてるので、少し不便でした。

    気にしすぎですかね

    ControlNetは毎日アプデがはいってますね

    プリプロとプロセッサーの数が多くてカオス気味なので、プリプロに応じて適切なプロセッサーを自動で選び、ダウンロードしてくれるようになるといいのですが

    • 悠 より:

      ムフフなものを生成した時に限って、ブログのサムネに使いたいレベルの神画像ができたりして悔しいんで、私はネガティブにnsfwを入れるのがデフォになってしまいましたw

      今年中にPCを買い替えようと思っているので、GPUを更新して生成速度を爆上げできるようになったら、ムフフ成分を全解放して個人的に楽しもうかなって感じですw

      Controlnetのプリプロセッサ半端ない数になってますよねw
      多分私まだ半分くらい試してない気がします(*’ω’*)