同じ顔で別の画像生成をしたい!
どうやったら出来るのかな?
通常であれば画像生成をする度に別の顔で生成されます。
気に入った顔の作品ができた時に同じ顔で別の画像生成したい時があります。
そんな時には、Reference Onlyを使用することで可能になります。
Reference Onlyを使うにはControlNetを導入する必要があります。
ControlNetを簡単に導入する方法について、以下の記事で解説しているの合わせて読んでみてください。
Reference Onlyを使って画像生成
ControlNetの右側にある逆三角形の部分をクリックして開いてから、Single Image内に同じ顔で生成したい画像をアップロードしてください。
「Enable」にチェックを入れてControlNetを有効にしてください。
Preprocessorの項目で「reference_only」を選択してください。
後はそのままの設定にしましょう。
今回の例では、以下のようにアップロードした画像と同じCheckpointモデル、プロンプト、ネガティブプロンプトなどのパラメーター内容にしています。
これで右上にある「Generate」ボタンを押して画像生成してみます。
以下の画像は生成した結果になります。
元画像と同じ顔で生成できていることが確認できます。
このようにReference Onlyではキャラを固定して生成したい時に利用するといいです。
服装と背景を変更する
元画像ではブラウスとスカートをつける呪文である「blouse , skirt」を指定して画像生成していました。
次は、フリルのついたビキニと背景をビーチにする呪文である「frill white bikini , beach」に変更して服装と背景を変更して画像生成してみます。
以下の画像では、元画像と比較した結果になります。
ビキニと背景を指定すると、見事に同じ顔のままで変えることができました。
このようにReference Onlyは、服装や背景などを変更しても同じ顔を維持したまま別の画像生成をすることも出来ます。
別のモデルで画像生成する
元画像はCivitAIで配布されているAnyLoraのモデルを使用して生成しています。
「別のモデルを使用した時でも同じ顔になるのかな?」と思った人もいるでしょう。
ここでは、別のモデルを使用した時に同じ顔になるのか比較してみます。
以下の画像では、AnythingV5とLittle Step Mix Aのモデルを使用して比較した結果になります。
モデルを変えても同じ顔を維持して画像生成することが出来ています。
服装をビキニにして、背景をビーチに変更した結果がこちらになります。
モデルを変更すると違った顔で生成されると思いますが、このように服装や背景を変更しても同じ人物・キャラを維持して生成することが出来ます。
Control Weightについて
Control Weightの数値では同じ顔を維持させる強さを調整することが出来ます。
以下の画像では、元画像以外に「Control Weight」の数値を「0.05」「1」「2」で生成した結果になります。
「0.05」では元画像と比べると髪が短かくなって離れています。
「1」以上からは元画像と同じような人物で生成することが出来ています。
「2」では「1」と変わらない結果になっていました。
これらの結果から初期設定である「1」くらいの数値で調整するといいでしょう。
Style Fidelityについて
「Style Fidelity」ではスタイルの忠実度を調整する項目になります。
「Control Mode」の項目で「Balanced」にしている場合のみ適用されます。
以下の画像では、Style Fidelityの数値を「0.01」「0.5」「0.99」で生成した比較結果になります。
「0.01」では髪のサイドにある三つ編み部分がなくスタイルが維持できていません。
「0.5」以上では元画像と同じような髪型を維持しています。
数値が大きほど元画像の髪型や顔に近くなり、小さいほど離れています。
もう1つ別で比較してみました。
やはり元画像と比べると、数値が小さいほど髪型や顔の角度などが離れていき、数値が大きほど元画像と同じ髪型や顔全体を維持しています。
このように「Style Fidelity」では、髪型や顔全体を維持させる調整項目だと思われますので参考にしてください。
Control Modeについて
「Control Mode」では少し違った画像生成がされます。
Balanced以外に、プロンプト重視にして画像生成する「My prompt is more important」か、コントロールネット重視で画像生成する「ControlNet is more important」の2つが選択できます。
以下は画像生成した結果になります。
同じ顔で別の違った画像生成がされているので、全て試して見て良いと思った画像を選択するといいでしょう。
まとめ
以上でReference Onlyの使い方について解説しました。
ControlNetを導入してからReference Onlyを使用することで、同じ人物・キャラで別の画像生成をすることが可能になります。
モデルを変更しても同じ顔になるので非常に素晴らしい機能となっております。
同じ顔の特徴を維持したまま別の画像を生成したいときは、是非「Reference Only」を使用してみてください!