こんばんは、スタジオ真榊です!
ControlNet、してますか?毎晩寝不足な日々が続いていますが、今夜は前回の「ControlNet徹底解説!プロンプト苦難の時代が終わる…」に続き、具体的なポーズの付け方についての実践編です。
ControlNet公開以来、特にキャラクターのボーン(骨組み)でポーズ指定できるOpenposeをより自由に設定する方法が次々に考案され、拡張機能としても登場しています。今回はそれらを使って、さまざまなポージングの可能性を探っていければなと思います。よろしくお願いいたします!
…とその前に、ちょっとわたくしごとで宣伝ですが、ツイッターアカウントが開設7年目にして初めて5000フォロワーを突破しました✨ フォローしてくださった方々、お祝いしてくださった皆様方、この場を借りて御礼を言わせてくださいませ!
実験概要
さて本題に入りましょう。今回はスレッタちゃんに例のポーズを取ってもらう実験をしてみます。
プロンプトではほぼどう指定したものだか困ってしまう、例のポーズ…。ただ、Cannyやopenpose handを使ってこの輪郭をぶっこ抜くのは公式のi2iパクリとほぼ同じなので、それ以外の方法を使って再現するにはどうするのがよいか、実践していきたいと思います。
「scribble」で再現してみよう
まず最初に、「ポンチ絵」(ラフスケッチ)を使って再現を試みます。やり方はとっても簡単。Preprocessor「Scribble」、モデルも「Scribble」とし、一番下の「Create blank canvas」をクリックすれば下図のようなキャンバスが出てくるので、ささっとラフスケッチを描いてやるだけです。

我ながら特徴を捉えた良いイラストですねぇ!
(※背景が白いので、「scribble mode(invert colors)」にチェックをいれておきます。こうすることで、生成画像も背景が空白になるのを防いでくれる効果があるようです)
これを(anime color:1.2),(angry:1.3),suletta_mercury,scared,open mouth,sweat,white short pants,out door,wall(+ クォリティタグ&Lora設定)で生成したのが以下のイラスト。

うーん、惜しい!あのトンチキ絵でよくココまで…という驚きはあるものの、へっぴり腰がなかったり、ド正面を向いていたりと、ちょっぴり雰囲気が違いますね。この成果をもとにさらにCannyしてみると…

残念ながら右手の輪郭がうまく検出されずに消えてしまいました。腕がクロスしていることがしっかり分かるような輪郭を書き加えてやればもうちょっとうまくいきそうですが、今度はOpenposeを試してみましょう。
「VRMお手軽ポーズ」を使ってOpenpose!
さて、キャラクターに骨組みでポーズを指定することができるOpenPoseはプロンプトとi2iでなんとかポーズをつけていた我々AI術師に衝撃を与えたわけですが、「せっかく素晴らしい機能だし、もっと簡単に参考ボーン画像を作れたら便利じゃないか?」ということで、さまざまな試みが進んでいます。
例えば、こちらは「VRMお手軽ポーズ」を使って参考ボーンを立体的につける方法です。
FKだ!!!(古の記憶を刺激されるコイカツ勢)
こちらのサービスはもともとVRMモデルを使ってポージング画像を撮影できるWebアプリなのですが、キャラクターモデルとしてカラフル骨組みのVRMデータを使うことで、こうした3Dなアプローチが可能になったわけです。
使い方は簡単で、まずはまじかる☆しげぽんさんが配布されている「COCOv2互換リグ / 黒背景バージョン」を「このモデルを使用する」からダウンロード。「VRMお手軽ポーズ」を開いて「ファイルを開く」でさきほどの「.vrm」拡張子のファイルを開くだけです。

あとは画面上でボーンをクリックしてぐりぐりポーズをつけていきます。完成したら、こちらの設定でコントローラー表示とグリッド表示をオフにします。

png画像を保存してWEBUI上で読み込むこともできますが、もっと簡単な方法があります。「Shift+Win+s」キーでスクリーンショットを撮り、それをWebUI画面を開いてCtrl+Vで貼り付ければ…

画像をいちいち保存することなく、一発で貼り付けられます。便利~!
今回はこちらのポーズを付けてみました。心なしかへっぴり腰が再現できている気がいたします。

既存イラストからボーンを検出する必要がなく、自分でボーンを用意しているので「Preprocessor」はNoneに(重要)、モデルはopenposeにして生成したのがこちらのイラスト。
手の破綻はひどいですが、腕のクロス感を出すことができていますね。なんかちょっと壁を破壊している気がしますが…




