
同じ顔を出力したい! Stable Diffusion の機能を検証
モデルを自由に出力できるStable Diffusion。
きちんと使えばナチュラルでリアルと見間違えるほどの画像になります。
そうなると必ず「同じ顔を出力したい」という願望を持つようになります。
そう、人類の夢です。
今回は、Stable Diffusion を使用した
「顔を似せる」ための機能の検証をします。
元になる画像は、前の回で生成した下記を使用します。
(Seed値は使用せず、関連性のない画像として検証します)

Control Net(Reference) と Roop を試してみた結果がこちら。

Reference は、画像の特徴をつかんで反映してくれるようです。
回数をこなせば綺麗に出力することもありますが
上記のとおり、はめ込んだ感が出てしまうことが多くありました。
もう一方のRoop については、う~ん。。。
正直論外でした。
角度やサイズ感はうまく入りますが
肌の繊細さや濃淡が潰れてしまい、私の出力したいクオリティは
確保できないことがわかりました。
Reference については、Roopよりは実践向きと感じましたので
すんごいたくさん出力テストしましたが
タイパ悪すぎ。。
無理です。
似ません。
夢と散りました。
ほぼ諦めかけたその時
「LoRAって1枚の画像から作れないかな・・」
と思い、一縷の望みをかけて取り組んでみました。
結果はこちら。

結果は歴然。
モデルの特徴をきちんととらえ、
クオリティそのままに再現してくれました。
(しかも、正面画像からナナメ画像の生成にまぁまぁ成功)
これならモデルの生成に主力として使用できますね。
人間の顔は左右で異なるといわれています。
そしてさらに人間の目は、シンメトリーの画像でも
「同じ」と認識しないこともよくあるようです。
下記は、左右反転させただけの画像です。
何だか違う人に見えてきませんか?

こういったことが、
理論的には同じ顔を出力できていても、実際見ると違って見える
「似てねぇー」
ということを引き起こすように思えます。
難しい分野なだけに、やりがいがありまくり。
次回はこの LoRAを使った実例をみていきます。