最新技術が複雑さを一掃しました。
この記事では、一枚の画像で個人の特徴を再現する方法を紹介します。
InstantIDはデジタルアートやパーソナライズドコンテンツ制作を変革します。
この記事では、その基本から魅力的な機能、簡単なインストール方法までを解説します。
本記事の内容
- InstantIDとは?
- InstantIDのインストール
- InstantIDの動作確認
それでは、上記に沿って解説していきます。
InstantIDとは?
InstantIDは、1枚の画像だけでID保持生成を実現する、新しい最先端のチューニング不要な方法です。
ID保持生成とは、生成された画像やデータが元の個人や対象の識別情報(ID)を維持することを意味します。
簡単に言うと、たとえば人の顔を生成する場合、その生成された顔が元の人物と同じように見えることを保証する技術です。
これにより、その人物が持つ特徴や個性を失うことなく、新しい画像やデータを生成することができます。
そのようなことが、1枚の画像だけで可能になります。
そして、LoRAはもう不要だと言わんばかりの勢いです。
LoRA不要という点では、InstantIDはIP-Adapter-FaceIDと同じになります。
InstantIDでも、InsightFaceとIP-Adapterが技術のベースになっています。
したがって、InsightFaceがインストールできる環境である必要があります。
IP-Adapterについては、次の記事で解説しています。
なお、IP-Adapter-FaceIDとInstantIDは非常に似ています。
しかし、IP-Adapter-FaceIDがSD 1.5ベースであるのに対して、
InstantIDはSDXLベースという点で大きく異なります。
InstantIDのインストール
ここで言うInstantIDは、次のデモ環境を指しています。
GUIで動かした方が、便利ですからね。
では、InstantIDをインストールしていきます。
インストールには、仮想環境の利用がオススメです。
まずは、プロジェクトをダウンロードします。
git clone https://huggingface.co/spaces/InstantX/InstantID cd InstantID
そして、コンテンツルートに移動しておきます。
そこでは、次のファイルを確認できます。
requirements.txt
diffusers==0.25.0 torch==2.0.0 torchvision==0.15.1 transformers==4.36.2 accelerate safetensors einops onnxruntime-gpu spaces==0.19.4 omegaconf peft huggingface-hub==0.20.2 opencv-python insightface
PyTorchはGPUで動かすので、以下をコメントアウトします。
削除してもOK。
#torch==2.0.0 #torchvision==0.15.1
その代わりに、以下のコマンドでGPU版のPyTorchをインストールします。
pip install torch==2.0.0 torchvision==0.15.1 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu118
GPU版PyTorchのインストールについては、次の記事で解説しています。
PyTorchのインストールが終われば、次のコマンドを実行します。
pip install -r requirements.txt
処理が終われば、InstantIDのインストールは完了です。
InstantIDの動作確認
InstantIDの動作確認を行います。
デモ画面を起動させるには、以下のコマンドを実行することになります。
python app.py
ただし、ローカル環境で動かすにapp.pyの修正が必要です。
修正内容は、次の2か所のコメントアウトになります。
Hugging FaceのSpacesで動かすための記述です。
ローカル環境であれば、Spacesは関係ありませんからね。
修正できたら、app.pyを実行します。
ただ、初回起動時はモデルのダウンロードが行われます。
その分だけ、待たされることになります。
起動できたら、あとはHugging Face上のデモ画面を同じように利用できます。