複数人生成させる方法を知りたい!
どうやって生成できるの?
複数人生成させる時に3人までは呪文で生成することが出来ます。
(モデルによっては異なる場合があります)
4人以上で生成したい場合は、複数人生成することが出来るようになるLoRAやLyCORISモデルを追加することで可能になります。
この記事では、複数人の人物を生成させる時に使える3つの方法について解説します。
今回の例では、CheckpointのAnyLoraモデルを使用しているので参考にしてみてください。
複数人生成できる呪文を入れる
複数人生成させる方法の1つ目として、プロンプト内に人数を指定する呪文を入れることです。
2人生成したい場合は「2girls」、3人生成したい場合は「3girls」の呪文を入れることで可能になります。
以下の画像では、「2girls」と「3girls」で生成した結果になります。
呪文で指定した通りに生成することが出来ています。
AnyLoraモデルでは、3人までは生成することが出来ますが
「4girls」と呪文を入力しても、4人で生成することが出来ません。
ですから、対処法として複数人生成することに特化しているLoRA、LyCORISモデルを追加する必要があります。
他の複数人に関する呪文一覧
Group | グループ |
Team | チーム |
Family | 家族 |
Class | クラス |
Community | コミュニティ |
Committee | 委員会 |
Organization | 組織 |
Audience | 観客 |
Crew | クルー |
Party | パーティー |
Delegation | 代表団 |
Association | 協会 |
Choir | 合唱団 |
Band | バンド |
Club | クラブ |
Board | 理事会 |
Council | 会議 |
Staff | スタッフ |
Teamwork | チームワーク |
Society | 団体 |
Union | 連合・組合 |
Fellowship | 仲間 |
Partnership | 共同体・提携 |
Gathering | 集まり |
Tribe | 部族 |
Clan | 一族 |
Brigade | 旅団 |
Syndicate | 組合 |
Ensemble | アンサンブル |
Gang | ギャング |
Congregation | 集会 |
Alliance | 同盟 |
Platoon | 小隊 |
Troop | 軍隊・部隊 |
Fellowship | 仲間同士 |
複数人の生成が出来るモデルを使用する
CIVITAIにある「Multi Girls Group」のLyCORISモデルを使用することで
4人以上の人物を生成することが出来るようになります。
アクセスしたら右側にある「Download」ボタンをクリックすることで、ファイルをダウンロードできます。
Google Colabでモデルを使用したい人は、以下のコードをコピペすることで使用することが出来ます。
#Multiple Girls Group
!wget https://civitai.com/api/download/models/55644 -O /content/stable-diffusion-webui/models/Lora/multiple-girls-group.safetensors
Multi Girls Groupの使い方
使い方ですが、CIVITAIにあるモデルの説明欄に記載されているので確認してください。
6人以上の女性をプロンプト内に記載する例として以下のようになります。
・(6+girls)では6人以上で画像生成するように呪文を入力しています
4人は「4girls」
5人は「5girls」
6人以上は「6+girls」
・「multiple_girls」の呪文を入力する必要があります。
・「Multiple Girls Group」のLyCORISモデルをプロンプト内に追加してください。
以下の画像では、「4girls」「5girls」「6+girls」で生成した結果になります。
4人以上の生成が可能になっています。
「4girls」を入れた場合は、4人生成の確率が低く
5人以上で生成される場合がほとんどなので何度か生成する必要があります。
「4girls」の呪文をプロンプトの先頭に入れると生成されやすくなるので
上手く生成できない場合は試してみてください。
画像サイズの設定によって生成できる可能性もあるので比率を変更してみてください。
「Multiple Girls Group」では複数人生成できるのはいいのですが
全員同じ服装になりやすい傾向にあります。
違った服装にしたい場合は、「Latent Couple」の拡張機能を使うことで解決することが出来ます。
以下の記事で使い方について解説しているので合わせて読んでみてください。
Regional Prompterを利用する
複数人生成できる3つ目の方法として、拡張機能である「Regional Prompter」を使用するやり方があります。
ここでは、「Regional Prompter」の導入方法と使い方について解説します。
Regional Prompterとは
「Regional Prompter」は、Stable Diffusion Web UIの拡張機能であり
使用すると、指定した範囲内に人物を生成することができます。
例えば、以下の画像のように、左側には赤髪の女性、中央は黄髪の女性、右側には黒髪女性の人物を指定して配置することができます。
生成する場合は、全員が女性、または全員が男性でしか生成できないようです。
検証したのですが、2人は女性、1人は男性等の生成ができないと思います。
以下のように複数人生成することが出来るので、ぜひRegional Prompterを利用してみください!
Regional Prompterの導入方法
①右上にある「Extensions」を選択
②「Install from URL」を選択
③「URL for extension’s git repository」で
「https://github.com/hako-mikan/sd-webui-regional-prompter.git」を入力
④「Install」ボタンをクリック
「Installed」をクリックしてから、「sd-webui-regional-prompter」がインストールされているか確認してください。
「Settings」を選択してから
「Reload UI」ボタンをクリックしてStable Diffusion Web UIを再起動したら導入は完了です。
Regional Prompterの使い方
「Seed」の下付近にある
「Regional Prompter」の右側のタブを開いてから、「Active」にチェックを入れてください。
「Base Ratio」は、そのまま0.2でいいです。
「Use common prompt」にチェックを入れてください。
ここにチェックを入れることで、1人1人の性別・髪型・服装などを指定することができます。
「Main Splitting」では、次のことができます。
Columns | 垂直分割 |
Rows | 水平分割 |
Random | ランダムに分割 |
この例では、「Columns」を選択しています。
「Divid Ratio」では、分割範囲を設定することができます。
ここでは、「1,1,1」で3分割にするように設定します。
例えば
「Main Splitting」で「Columns(垂直分割)」にして
「Divid Ratio」で「1(33.3%),1(33.3%),1(33.3%)」にすると
以下の画像のように、垂直で均等に3分割することができます。
仮に「Divide Ratio」を「1,3,1」にすると
中央部分の範囲を大きくすることができます。
設定したら、「visulize and make template」をクリックして、分割数を適用します。
この例では
左側に「白髪、ブラウス、赤いスカート」
中央に「赤髪、青いTシャツ、デニム」
右側に「黄髪、スーツ」
の画像を生成してみます。
プロンプトには次の記載をしています。
1列目では、必ず全体に関係する呪文を入力してください。
2列目では、分割した時にある「0」の数値位置にあたる人物・背景の呪文を入れる
3列目では、分割した時にある「1」の数値位置にあたる人物・背景の呪文を入れる
4列目では、分割した時にある「2」の数値位置にあたる人物・背景の呪文を入れる
3分割した場合は、「2列目〜4列目」に記載します。
仮に5分割した場合は、「2列目〜6列目」に記載します。
1列目〜3列目の呪文の最後には、BREAKで区切るようにしてください。
ネガティブプロンプトは以下を入れています。
以下の画像のように、3分割して各範囲に女性を配置することができています。
左側は、「白髪、ブラウス、赤いスカート」
中央は、「赤髪、Tシャツ、デニム」
右側は、「黄髪、スーツ」で生成できていますね。
このように、Regional Prompterを使用すると、決めた範囲に指定した人物を配置することができます。
次は試しに、「Main Splitting」で「Rows(水平分割)」を選択して
「Divide Ratio」を「1,1,1」にして、水平に3分割して画像生成してみます。
プロンプトとネガティブプロンプトは以下を入力しています。
・上部に夕焼け
・中部に海
・下部に砂辺
の背景のみを生成するようにしています。
以下の画像のように、水平に3分割した範囲で指定した風景を作成することができます。
指定した通り、上部に夕焼け・中部に海・下部に砂辺が生成できています。
Generation Modeについて
「Generation Mode」では、通常「Attention」を選択するのですが
特定の範囲のみLoRAを適用させたい時には「Latent」を選択することで可能になります。
この例では、「Latent」を選択してから、画面の右側のみLoRAを使用して画像生成してみます。
画面は垂直に2分割して設定します。
ここでは、Add More DetailsのLoRAを使用します。
Add More Detailsは、詳細に描写させることができるLoRAです。
3列目の最後にLoRAを入れます。
以下の画像のように、右側半分のみ詳細に描写させることができるLoRAが適用されています。
「Attention」では、以下の画像のように全体にLoRAが適用されてしまうため
特定の範囲のみLoRAを適用させたい場合は、「Latent」を設定するようにしましょう。
まとめ
複数人生成する時に使える方法について解説しました。
1.呪文で生成する
2.Multi Girls Groupのモデルを追加する
3.拡張機能のRegional Prompterを利用する
上記の方法をぜひ参考にして複数人を生成してみてください!