ComfyUI.Tokyo
ReActor
みなさんが大好き、でも設定が厄介なReAcorです。
ComfyUIでReActorを設定する際に、特に ` buffalo_l ` と ` inswapper_128.onnx ` の設定で初心者がつまずきやすい点について解説します。
ReActor導入時の注意点とbuffalo_l, inswapper_128.onnxの設定について
ComfyUIにReActorを導入する際、いくつかの段階で設定が必要になります。特に、顔認識モデルである `buffalo_l` と顔入れ替えモデルである `inswapper_128.onnx` の設定は、ReActorが正しく動作するために非常に重要です。
1. Insightfaceのインストール
ReActorは、顔認識技術に Insightface というライブラリを利用しています。
通常、ReActorをインストールする際に自動で導入されますが、Windows環境でエラーが発生することがよくあります。
これは、Visual StudioのC++ビルドツールが必要になるためです。
もし、Visual Studioをインストールしたくない場合や、インストールしてもビルドがうまくいかない場合は、以下の手順で事前にビルドされたInsightfaceパッケージを導入することをおすすめします。
- Pythonのバージョン確認:
ComfyUIのルートフォルダでコマンドプロンプトを開き、以下のコマンドを実行してPythonのバージョンを確認します。
```
python_embedded\python.exe -V
```
例: `Python 3.10.x` のように表示されます。 - Insightfaceパッケージのダウンロード:
確認したPythonのバージョン(例: 3.10, 3.11, 3.12)に対応するInsightfaceの `whl` ファイルをダウンロードします。提供されているGitHubのトラブルシューティングセクションにリンクがあることが多いですが、通常は以下のようになります。- Python 3.10向け: `insightface-0.7.3-cp310-cp310-win_amd64.whl`
- Python 3.11向け: `insightface-0.7.3-cp311-cp311-win_amd64.whl`
- Python 3.12向け: `insightface-0.7.3-cp312-cp312-win_amd64.whl`
- pipの更新とInsightfaceのインストール:
再度ComfyUIのルートフォルダでコマンドプロンプトを開き、以下のコマンドを順番に実行します。
- pipPの更新:
```
python_embedded\python.exe -m pip install -U pip
``` - Insightfaceのインストール(ダウンロードした `whl` ファイルの名前に合わせてください):
```
python_embedded\python.exe -m pip install insightface-0.7.3-cp310-cp310-win_amd64.whl (Python 3.10の場合)
```
- pipPの更新:
2. buffalo_lとinswapper_128.onnxの配置と確認
ReActorは、顔の検出と入れ替えを行うために、Insightfaceが提供する特定のONNXモデルファイルを使用します。これらは通常、ReActorのインストール時に自動的にダウンロードされますが、手動での確認や再配置が必要になる場合があります。
- `buffalo_l` モデル: `buffalo_l` は、複数の顔関連モデル(性別・年齢推定、顔の特徴点検出など)をまとめたディレクトリです。ReActorが正しく動作するためには、この`buffalo_l` ディレクトリが `ComfyUI\models\insightface` の中に存在し、必要なonnxファイルが含まれている必要があります。
- 場所: `ComfyUI\models\insightface\buffalo_l\`
- このディレクトリ内に、`1k3d68.onnx`, `2d106det.onnx`, `det_10g.onnx`, `genderage.onnx`, `w600k_r50.onnx` などのファイルがあることを確認してください。
- `inswapper_128.onnx` モデル: `inswapper_128.onnx` は、実際に顔の入れ替えを行うための主要なモデルファイルです。
- 場所: `ComfyUI\models\insightface\`
- このファイルが `ComfyUI\models\insightface`ディレクトリの直下にあることを確認してください。もしファイルが破損している、または存在しない場合は、[公式GitHubページ](https://github.com/Gourieff/ComfyUI-ReActor) のトラブルシューティングセクションに記載されているリンクから手動でダウンロードし、既存のファイルを置き換えてください。
3. モデルのハッシュ値の確認
提供元は、ダウンロードしたモデルのハッシュ値(MD5, SHA256)を公開しています。これにより、ダウンロードしたファイルが破損していないか、また改ざんされていないかを確認できます。
ダウンロードしたファイルと公開されているハッシュ値を比較し、一致するかどうかを確認することをおすすめします。ハッシュ値の確認ツールは、WindowsであればPowerShellの `Get-FileHash` コマンドや、フリーのハッシュ計算ツールなどがあります。
その他のトラブルシューティング(初心者が遭遇しやすいもの)
- `AttributeError: 'NoneType' object has no attribute 'get'` これは `inswapper_128.onnx` ファイルに問題がある可能性が高いエラーです。上記の手順に従い、`inswapper_128.onnx` を手動でダウンロードして `ComfyUI\models\insightface` に置き換えると解決することがほとんどです。
- `reactor.execute() got an unexpected keyword argument 'reference_image'` ReActorノードの入力ポートが更新によって変更された場合に発生します。
現在のワークフローからReActorノードを削除し、もう一度追加し直してください。
これにより、新しい入力ポートが反映されます。 - `ControlNet Aux Node IMPORT failed error when using with ReActor Node` ComfyUIでOpenCVのバージョン競合が発生している可能性があります。 ComfyUIを閉じて、ComfyUIのルートフォルダでコマンドプロンプトを開き、以下のコマンドを実行します。
```
python_embedded\python.exe -m pip uninstall -y opencv-python opencv-contrib-python
opencv-python-headless python_embedded\python.exe -m pip install opencv-python==4.7.0.72
```
これにより、互換性のあるバージョンのOpenCVがインストールされます。 - 商用利用に関する注意点 ReActorは、非商用目的でのみ使用が許可されている `buffalo_l` および `inswapper_128.onnx` モデルを利用しています。もし商用目的でReActorを使用したい場合は、ご自身でモデルをトレーニングするか、商用利用が許可されている別のモデルを見つける必要があります。この点には十分ご注意ください。
カスタム・ノード設定だけでは、こんな感じになります。


modelsフォルダ下のReActorフォルダ

modelsフォルダ下のinsightfaceフォルダ

当site管理人も良くわかっていないので、詰め込み過ぎる感がありますね。
とにかく、動けばいいやという感じで設定しています。
Build Tools for Visual Studio 2022も当site管理人は入れています。
認識系の細かい部品は、マイクロソフト製のものが使われいるからです。
insightface-0.7.3-cp312-cp312-win_amd64.whlは、当site管理人は、insightfaceフォルダに入れてあります。
フォルダも準備してうまくいかなかったときは、いろいろ試してみます。

ここまで進み、上のアドレスを削除してcmdを入力しコマンドプロンプトを立ち上げます。

当site管理人は、埋め込み型ComfyUIをWinsows11 Cドライブで使用しています。
pipをアップデートする
C:\ComfyUI_windows_portable\python_embeded\python.exe -m pip install -U pip
Insightfaceのインストール
C:\ComfyUI_windows_portable\python_embeded\python.exe -m pip install insightface-0.7.3-cp312-cp312-win_amd64.whl
場合によっては、
C:\ComfyUI_windows_portable\python_embeded\python.exe -m pip install insightface-0.7.3-cp313-cp313-win_amd64.whl
C:\ComfyUI_windows_portable\python_embeded\python.exe -m pip install -r requirements.txt
C:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-ReActor のなかにある、install (windows)をダブルクリック
これでもだめなら、と、当site管理人は削除して何度も何度も設定した経験があります。
Workflow
画像サイズ 横448(64×7) 縦576(64×9)にしましたが、任意サイズでも稼働します。
GPUなしでも十分に楽しめます。
当site管理人の古いノートパソコンでReActorを楽しんでいます。



