Stable Diffusionで、同じ顔の人物を生成したいと思ったことはありませんか?
写真集や立ち絵画像の生成で顔が変わってしまい困ったことはありませんか?
この記事では参照画像と同じ顔の画像を生成できるPhotomakerという機能の使い方を紹介します。
- Stable Diffusion WebUI ForgeでPhotomakerを使う方法
- Photomakerの効果
Photomakerとは?
参照画像の人物の特徴を維持したまま、画像生成が行える技術・手法です。
通常、人物を維持して画像生成するには事前学習(LoRAなど)が必要ですが、Photomakerでは1枚の画像だけで学習不要です。
同じように事前学習無しで顔を固定する手法は、FaceIDやControlnetのReference Onlyがありますが、精度や参照画像に近い人物を生成できる点でPhotomakerは優れています。
Photomakerの使い方
PhotomakerはHagging Faceでデモ版が公開されていますが、今回はStable Diffusion WebUI Forgeに組み込まれている機能を使用して、ローカルPCで実行する手順を紹介します。
Stable Diffusion WebUI Forgeのインストール方法については、以下の記事で解説しています。
画像生成に使用するチェックポイントモデルはSDXLベースモデルを設定してください。
SD1.5ベースモデルは対応していないので、Photomakerが正常動作しません。
PhotomakerのモデルをHugging faceからダウンロードします。
ダウンロードしたファイルは「Forgeフォルダ」→「models」→「ControlNet」に保存します。
WebUI Forgeのホーム画面左下に表示されている「ControlNet Integrated」をクリックして展開します。
その後、参照画像をドラッグ&ドロップするか、クリックしてロードします。
次に以下項目をチェックします。
- Enable:有効化
- Pixel Perfect:解像度を画像から取得
- Control TypeからPhotoMakerをチェック
モデルのインストールが問題無ければ、
Preprocessorに「ClipVision (Photomaker)」、
Modelに「photomaker-v1」が自動設定されます。
(反映されない場合は手動で設定してください)
プロンプトに「a photo of photomaker」を必ず追加してください。
その他のプロンプトは自由です。
ここまで、設定したら画像生成するだけです。
2Dイラストの生成でも「a photo of photomaker」が使えます。
その他「a illustration of photomaker」などが有効です。
たまにphotomakerに反応してカメラが生成されることがあります。
この場合はネガティブプロンプトに「camera」を追加することで回避できる可能性があります。
Photomakerの効果を確認
参照画像の生成及び、画像生成モデルはjuggernautXLを使用しています。
最初のテストは、参照画像と同じようなプロンプトを追加して生成してみます。
参照画像と同じ人物に見える画像が生成できました。
次にプロンプトに関係の無いワードを追加して遊んでみました。
どれも精度が高いですね。
これなら写真集や、グラビア用の画像にも使い易いです!
まとめ
今回はStable Diffusion WebUI ForgeでPhotomakerを使う方法を紹介しました。
Photomakerはサンプル画像の通り、期待通りの画像が生成できましたね。
FaceIDと比較すると、より参照画像と近い顔が生成できるので現状はイチオシの機能です。
Photomakerの使い方についてYouTube動画も投稿しています。合わせてご確認ください。
コメント