ComfyUIでOpen Pose Editorを使う
全体公開
先日、ComfyUIにOpen Pose Editorを導入しようと巧く行かないと聞き、いろいろ試した結果、下記のカスタムノードが使えましたので、報告です。
今回使ったカスタムノード(画像1と画像5の茶色のノード)
・ComfyUI-openpose-editor
URL: https://github.com/huchenlei/ComfyUI-openpose-editor
Load Openpose JSON
・comfyui_controlnet_aux
URL: https://github.com/Fannovel16/comfyui_controlnet_aux
Render Pose JSON (Human)
OpenPose Pose
※「Load ControlNet Model」「Apply ControlNet」はConfyUI標準のノードです。
------------------------------------------------------------------------------------------------
画像2の様に、「Load Openpose JSON」を右クリックして表示されるメニューから、「Open in Openpose Editer」クリックします。
※画像では抜けていますが、先に「json str」欄に、Pose KeypointのJSON形式のデーターを書き込む必要があります(重要 JSON形式のデーターの作成方法は「おまけ」で)。
初めて使う時は注意して下さい。
一度書き込んで、ワークフローを保存しておけば、次回から問題なく使えます。
なお、ComfyUIのサーバーを再起動するまでは、情報が保持される様ですので、その間は空欄でも使えます。
------------------------------------------------------------------------------------------------
画像3:「SD-WEBUI-OPENPOSE-EDITER 」が起動します。
JSONデーターを基に棒人間が表示されますので、編集します。
編集後、「ControlNetにポーズを送信」クリックすると「SD-WEBUI-OPENPOSE-EDITER」が終了し、ワークフローに戻ります。
※先にJSONデーターを書き込まないと、「ControlNetにポーズを送信」が表示されず、何もできなく成ってしまいます。
抜けるには、ComfyUIのブラウザ画面を閉じるしかありません。
ワークフローに戻ったら、「json str」欄に編集後のデーターが書き込まれていますので、一度コピーして上書きして下さい(重要)。
「json str」欄を選択して、Ctrl+a、Ctrl+c、Ctrl+v を順に実行
※上書きしないと、編集前のデーターで処理されます。
------------------------------------------------------------------------------------------------
画像4:実行例です。
そこまで追従してくれませんねw
Openpose用のモデルを変更すれば変わるかも知れません。
------------------------------------------------------------------------------------------------
おまけ
Pose KeypointのJSON形式のデーターを作成するために、画像を元に作成する方法があります(画像5)
「OpenPose Pose」ノードを使い、「POSE_KEYPOINT」から出力されたデーターをコピーして、「Load Openpose JSON」に張り付けます。