ControlNet OpenPoseモデルによる出力の違い
Stable DiffusionのControlNet の OpenPoseモデルによる出力の違いを比較します。
概要
Stable DiffusionでContorlNetでOpenPoseを利用して画像の出力ができますが、OpenPoseには複数のモデルがあります。
また、SDXLでは意図したような出力にならないこともあります。この記事では、OpenPoseのモデルごとの出力を比較し、どのような違があるかを調査します。
OpenPoseの準備
OpenPose Editorでポーズを作成します。今回は下図のポーズを作成します。OpenPoseの適用状況がわかるように、画面に右下にポーズをつけたキャラクターを配置しています。
ポーズの画像を保存します。
SDXL
txt2imgで、ControlNetに先ほど作成したOpenPoseのポーズ画像を読み込みます。
Modelを選択します。SDXLの代表的なOpenPoseのモデルは以下の6つがあります。
- bdsqlsz - Openpose
- kohya - OpenposeAnime
- kohya - OpenposeAnimeV2
- tencentarc - Openpose
- thibaud - Openpose
- thibauld - OpenposeLora
それぞれのモデルの出力結果を確認します。
プロンプトとモデルは以下を利用します。
Prompt
Prompt: 1girl, standing
Negative prompt: worst quality, low quality
Model: Animagine XL v3
Size: 1,024x1,024
出力結果
出力結果は下図です。
OpenPoseなし
ControlNetを無効にして、OpenPoseを利用しない場合の生成結果です。
bdsqlsz - Openpose
OpenPoseの設定がほとんど反映されていないように見えます。
kohya - OpenposeAnime
右下の形状がOpenPoseのポーズを若干反映しているように見えます。元の出力カラーより若干黄色みがかかります。
kohya - OpenposeAnimeV2
右下にOpenPoseのポーズを反映したキャラクターが生成される場合があります。
キャラクターが生成されない場合は、ポーズに似たオブジェクトが生成される場合もあります。
中央にもキャラクターが生成され2キャラになる場合もあります。
元の出力カラーより若干黄色みがかかります。
tencentarc - Openpose
右下にOpenPoseのポーズを反映したキャラクターが生成されます。キャラクターが生成されない場合もあります。
元のカラーより紫色がかる傾向があります。
thibaud - Openpose
OpenPoseのポーズを反映し、右下にキャラクターが生成されます。中央にもキャラクターが生成され2キャラになる場合もあります。
元の出力カラーより赤みがかかります。
thibauld - OpenposeLora
OpenPoseのポーズを反映し、右下にキャラクターが生成されます。中央にもキャラクターが生成され2キャラになる場合もあります。
元の出力カラーより赤みがかかります。
SDXLのOpenPoseではモデルにより反映に差があります。また、OpenPoseを適用しない状態と出力カラーの傾向が変化する場合も多いです。
余白部分(特に中央)にキャラクターを描画してしまう場合が多いです。使用しているモデルの影響もあるかもしれません。
Stable Diffusion 1.5
Stable Diffusion 1.5の動作確認です。
txt2imgで、ControlNetに先ほど作成したOpenPoseのポーズ画像を読み込みます。
Modelを選択します。SD1.5の代表的なOpenPoseのモデルは以下の2つがあります。
- control_v11p_sd15_openpose
- controlnetT2IAdapter_t2iAdapterOpenpose
プロンプトとモデルは以下を利用します。
Prompt
Prompt: 1girl, standing
Negative prompt: worst quality, low quality
Model: FiaMix Reboot Pastel v1.5
Size: 512x512
出力結果
出力結果は下図です。
OpenPoseなし
ControlNetを無効にして、OpenPoseを利用しない場合の生成結果です。
control_v11p_sd15_openpose
OpenPoseのポーズを反映し、右下にキャラクターが生成されます。中央にもキャラクターが生成され2キャラになる場合もあります。SDXLの場合と異なり色味の変化は少ないです。
controlnetT2IAdapter_t2iAdapterOpenpose
OpenPoseのポーズを反映し、右下にキャラクターが生成されます。中央にもキャラクターが生成され2キャラになる場合もあります。若干彩度が落ちる印象があります。
SD1.5のほうがOpenPoseが反映されたイメージが生成されやすい印象です。出力画像の色見の変化も少ない印象です。
余白部分にキャラクターを描画してしまう場合はありますが、SDXLよりは少ないです。
著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。