【Stable Diffusion】ComfyUIを使って画像生成AIで遊んでみよう【InstantID編】

4分で読了
更新日
Progress 7 / 15
目次

InstantIDはStable Diffusionを拡張する手法の一つであり、顔画像を入力することで出力される人物の顔を固定することができます。今回の記事ではこのInstantIDをComfyUIで使用する方法を解説します。

作業の流れ

1. ComfyUIの導入と最新版へのアップデート

ComfyUIを導入します。導入済の方もComfyUIを最新版にアップデートしてください。

【Stable Diffusion】ComfyUIを使って画像生成AIで遊んでみよう【導入編】

>-

blog.otama-playground.com

2. 拡張のインストール

以下の拡張をインストールします。

GitHub - cubiq/ComfyUI_InstantID

Contribute to cubiq/ComfyUI_InstantID development by creating an account on GitHub.

github.com

3. ライブラリの手動インストール

InstantIDに必要なpythonライブラリ(insightface)が一部エラーでインストールされないので、手動でインストールします。

下のリンクからinsightfaceのwheelをダウンロードしてから、pipでインストールコマンドを叩いてください。

Assets/Insightface at main · Gourieff/Assets

Contribute to Gourieff/Assets development by creating an account on GitHub.

github.com
Terminal window
python -m pip install (ダウンロードしたwhlのパス) onnxruntime onnxruntime-gpu

standalone版の場合はpythonコマンドをpythonの実行バイナリへのパスで置き換えます。以下あたりにpython.exeが配置されているはずです。

  • Comfyui-Standaloneの場合はpython-embeddedディレクトリ内
  • StabilityMatrixの場合はData/Packages/{パッケージ名}/venv/Scriptsディレクトリ内

4. モデルのダウンロードと配置

まずantelopev2をダウンロード+解凍してComfyUI/models/insightface/models/antelopev2に配置。↓のどちらかで入手できます。

次にInstantIDのメインモデルをComfyUI/models/instantidに配置。

最後にcontrolnetのモデルをcontrolnetのディレクトリに追加します。

5. ワークフローのインポート

exampleのワークフローがあるのでそれを使用します。

ComfyUI_InstantID/examples/InstantID_basic.json at main · cubiq/ComfyUI_InstantID

Contribute to cubiq/ComfyUI_InstantID development by creating an account on GitHub.

github.com

6. 生成する

モデルを先ほど配置したモデルに変更し、最後に顔画像とプロンプトを指定して生成します。

生成結果

モデルはAnimagine XLを使用しました。

入力した顔画像
入力した顔画像
生成結果
生成結果

最後に

生成結果から、入力した顔画像に沿って画像が生成されることが感じられたと思います。InstantIDを使用することで、生成する顔をコントロールすることができるようになり、画像生成の幅が広がります。(肖像権には注意してください)

今回はInstantIDのみを使用しましたが、ControlNetと組み合わせることで、姿勢・構図なども制御可能になるらしいです。ここら辺は応用の話になるのでこの記事では触れませんが、気になる方は以下の記事とワークフローを参考にしながら組み合わせてみると良いと思います。

ComfyUIでControlNet:姿勢指定した画像生成AIの基本

>-

blog.otama-playground.com
ComfyUI_InstantID/examples/InstantID_depth.json at main · cubiq/ComfyUI_InstantID

Contribute to cubiq/ComfyUI_InstantID development by creating an account on GitHub.

github.com