ComfyUIで複数キャラクターの描き分け1
全体公開
久々のComfyUIネタですw
ComfyUIで複数キャラクターを描き分けるには、カスタムノードが必要です。
今回は、↓で使った、「ComfyUI-ppm」を使います。
「ComfyUIではBREAKが効かない?」
https://membership.chichi-pui.com/posts/images/f4d7145c-c182-4842-b752-63ab83b44925/
・ComfyUI-ppm
URL: https://github.com/pamparamm/ComfyUI-ppm
Attention Couple (PPM)
Latent to Mask (Bounding Box)
画像1の茶色のノードです。
ベースに成る部分と各キャラクター分のプロンプトが必要です。
ベースプロンプトには、品質タグと背景、キャラクターの人数、位置関係(並んでいる、向かい合っている等)を記述します。
キャラクター毎のプロンプトには、各キャラクターの特徴、ポーズ、衣服等を記述します。
「Latent to Mask (Bounding Box)」(画像2)を使って、キャラクターを描く範囲(マスク)を指定します。
基本下記4項目で指定します。
x:X方向の開始位置(0~1で指定)
y:Y方向の開始位置(0~1で指定)
w:幅の割合(0~1で指定)
h:高さの割合(0~1で指定)
画像1のキャラクター1、キャラクター2の値を見て下さい。
今回は左右に二分割するので、
キャラクター1は、
x:0.0
y:0.0
w:0.5(幅の半分の指定)
h:1.0
キャラクター2は、
x:0.5(半分の位置から開始)
y:0.0
w:0.5(幅の半分の指定)
h:1.0
に成っています。
各プロンプトとマスクを「Attention Couple (PPM)」(画像3)でモデルとしてKサンプラーへ送ります。
他は通常のワークフローと変わりませんが、キャラクターが増えるとノードが増えるので、変更が手間です。
変更しなくても良い工夫が必要です。
画像4~5に作例を置いておきます。