AIモデルとプラットフォーム
InstantID: ゼロショット・アイデンティティー保存画像生成
AIを搭載した画像生成技術は、DALL-E、GLIDE、Stable Diffusion、Imagenなどの大規模なテキストから画像の拡散モデルが登場して以来、驚くべき成長を遂げてきました。これらの画像生成AIモデルは独自のアーキテクチャとトレーニング方法を持っていますが、すべてカスタマイズされた画像生成とパーソナライズされた画像生成を目的とした共通の焦点を持っています。画像生成AIフレームワークの優れた生成能力により、画像アニメーション、仮想現実、Eコマース、AIポートレートなどさまざまな分野で応用されています。しかし、これらのフレームワークは、人間のオブジェクトの繊細なアイデンティティー詳細を保存しながらカスタマイズされた画像を生成することができないという共通の課題を持っています。
カスタマイズされた画像を生成しながら繊細な詳細を保存することは、特に人間の顔のアイデンティティーに関するタスクで、高い忠実度と詳細が必要です。さらに、LoRA、DreamBooth、Textual Inversionなどのパーソナライズされた画像合成フレームワークは近年大幅に進歩しました。しかし、パーソナライズされた画像生成AIモデルはまだ現実世界のシナリオで展開するには完璧ではありません。大量のストレージが必要であり、複数の参照画像が必要であり、長いファインチューニングプロセスが必要であるためです。一方、既存のID埋め込みベースの方法は、単一のフォワード参照のみを必要としますが、公開されている事前トレーニング済みモデルとの互換性がなく、または多数のパラメーターの過剰なファインチューニングプロセスを必要とします、または高い顔の忠実度を維持できないためです。
これらの課題に対処し、画像生成能力をさらに強化するために、この記事では、画像生成のための拡散モデルベースのソリューションであるInstantIDについて説明します。InstantIDは、単一の参照画像で様々なスタイルやポーズの画像を生成し、高い忠実度を維持することができるプラグアンドプレイモジュールです。この記事の主な目的は、読者にInstantIDフレームワークの技術的基礎とコンポーネントについて包括的な理解を提供することです。そこで、モデルのアーキテクチャ、トレーニングプロセス、アプリケーションシナリオについて詳細に説明します。では、始めましょう。
InstantID: ゼロショット・アイデンティティー保存画像生成
テキストから画像の拡散モデルは、画像生成技術の進歩に大きく貢献しています。これらのモデルの主な目的は、カスタマイズされた画像生成とパーソナライズされた画像生成であり、参照画像を使用して一貫したサブジェクト、スタイル、キャラクターIDを持つ画像を生成することです。これらのフレームワークの画像生成能力により、画像アニメーション、AIポートレート生成、Eコマース、仮想現実、拡張現実などさまざまな業界で応用されています。
しかし、これらのフレームワークは、人間のオブジェクトの繊細な詳細を保存しながらカスタマイズされた画像を生成することができないという共通の課題を持っています。人間の顔のアイデンティティーに関するタスクでは、高い忠実度と詳細が必要であり、一般的なオブジェクトやスタイルの画像生成タスクよりも高度なセマンティクスが必要です。既存のテキストから画像のモデルは、詳細なテキストの説明に依存しており、カスタマイズされた画像生成のための強いセマンティック関連性を達成するのに苦労しています。さらに、一部の事前トレーニング済みテキストから画像のフレームワークは、空間制御を強化するために、ボディポーズ、深度マップ、ユーザーによるスケッチ、セマンティックセグメンテーションマップなどを使用します。しかし、これらの追加と強化にもかかわらず、これらのフレームワークは、参照画像に対する生成画像の忠実度を達成するのに苦労しています。
これらの課題に対処するために、InstantIDフレームワークは、単一の参照画像で画像を生成し、高い忠実度を維持することを目的とした、プラグアンドプレイモジュールを導入します。さらに、参照画像からの顔のアイデンティティーを保存するために、InstantIDフレームワークは、テキストプロンプト、ランドマーク画像、顔画像を組み込むことで、画像生成プロセスを導く、新しい顔エンコーダーを実装します。
InstantID: 方法論とアーキテクチャ
先ほど述べたように、InstantIDフレームワークは、事前トレーニング済みテキストから画像の拡散モデルに、アイデンティティー保存能力を容易に与える、効率的な軽量アダプターです。
アーキテクチャについて話すと、InstantIDフレームワークは、Stable Diffusionモデルに基づいて構築されています。これは、低次元の潜在空間ではなく、ピクセル空間で拡散プロセスを実行することで、高い計算効率を実現することで知られています。入力画像に対して、エンコーダーは最初に画像をダウンサンプリング係数と潜在次元を持つ潜在的な表現にマッピングします。さらに、ノイズのある潜在的なノイズ、条件、現在のタイムステップをデノイズするために、拡散プロセスはデノイズUNetコンポーネントを採用します。条件は、事前トレーニング済みCLIPテキストエンコーダーコンポーネントを使用して生成されるテキストプロンプトの埋め込みです。
さらに、InstantIDフレームワークは、事前トレーニング済み拡散モデルに空間制御を追加できる、ControlNetコンポーネントを使用します。ControlNetコンポーネントは、UNetアーキテクチャをStable Diffusionフレームワークから採用し、UNetコンポーネントの複製をトレーニングします。UNetコンポーネントの複製には、中間ブロックとエンコーダーブロックにゼロの畳み込み層があります。同じ性質を持っているにもかかわらず、ControlNetコンポーネントは、Stable Diffusionモデルと異なります。両者は、残差アイテムで異なります。ControlNetコンポーネントは、ポーズ、深度マップ、スケッチなどを含む空間条件情報をUNetブロックに追加し、残差を元のネットワークに埋め込みます。
InstantIDフレームワークは、IP-AdapterまたはImage Prompt Adapterからもインスピレーションを得ています。これは、テキストプロンプトと並行して動作する画像プロンプト機能を実現するための新しいアプローチを導入します。IP-Adapterコンポーネントは、追加のクロスアテンション層を使用して画像機能を埋め込み、他のパラメータを変更せずに、デカップルされたクロスアテンション戦略を採用します。
方法論
簡単に説明すると、InstantIDフレームワークは、単一の参照ID画像で、高い忠実度を持つカスタマイズされた画像を生成することを目的としています。次の図は、InstantIDフレームワークの概要を示しています。

観察すると、InstantIDフレームワークには3つの重要なコンポーネントがあります:
- 画像の顔の特徴の強いセマンティック情報を取得するID埋め込みコンポーネント。
- 画像を視覚的なプロンプトとして使用するために、デカップルされたクロスアテンションコンポーネントを備えた軽量アダプターモジュール。
- 参照画像からの詳細な特徴を空間制御を使用してエンコードするIdentityNetコンポーネント。
ID埋め込み
既存の方法、たとえばFaceStudio、PhotoMaker、IP-Adapterなどは、事前トレーニング済みCLIP画像エンコーダーを使用して視覚的なプロンプトを抽出しますが、InstantIDフレームワークは、アイデンティティー保存タスクで強いセマンティクスと高い忠実度を実現することに重点を置いています。CLIPコンポーネントの固有の制限は、弱く整列されたデータでトレーニングされているため、エンコードされた特徴は主に色、スタイル、構成などの広いセマンティック情報を取得します。ただし、これらの特徴はテキスト埋め込みの一般的な補足として機能する可能性がありますが、アイデンティティー保存タスクでは強いセマンティクスと高い忠実度が必要です。さらに、顔表現モデル、特に顔認識の分野における最近の研究は、顔表現の有効性を実証しています。InstantIDフレームワークは、事前トレーニング済み顔モデルを使用して参照画像から顔のID埋め込みを検出して抽出し、画像生成を導くためにモデルをガイドします。
画像アダプター
事前トレーニング済みテキストから画像の拡散モデルの画像プロンプトタスクの能力は、テキストプロンプトで十分に説明できないシナリオで特に強化されます。InstantIDフレームワークは、IP-Adapterモデルと同様の戦略を採用して画像プロンプトを実現します。ただし、IP-Adapterと異なり、InstantIDフレームワークは、画像プロンプトとしてID埋め込みを使用して、セマンティックに豊かでニュアンスのあるプロンプト統合を実現しようとします。
IdentityNet
既存の方法は画像プロンプトとテキストプロンプトを統合することができますが、InstantIDフレームワークは、これらの方法はアイデンティティー保存画像生成のために必要なレベルの統合を提供していないと主張しています。さらに、クロスアテンション層で画像トークンとテキストトークンを直接追加することは、テキストトークンの制御を弱めることがあり、画像トークンの強度を強化しようとすることが、テキストトークンの編集タスクの能力を損なう可能性があります。これらの課題に対処するために、InstantIDフレームワークは、ControlNetという代替の特徴埋め込み方法を採用します。これは、空間情報を入力として使用することで、UNet設定と一致することを可能にします。
InstantIDフレームワークは、伝統的なControlNetアーキテクチャに2つの変更を加えます。条件入力のために、InstantIDフレームワークは、細かいOpenPose顔のキーポイントではなく、5つの顔のキーポイントを使用します。2つ目に、InstantIDフレームワークは、クロスアテンション層の条件としてテキストプロンプトではなくID埋め込みを使用します。
トレーニングと推論
トレーニング段階で、InstantIDフレームワークは、IdentityNetと画像アダプターのパラメータを最適化しますが、事前トレーニング済み拡散モデルのパラメータは固定します。InstantIDパイプラインは全体が、人間の被写体を含む画像とテキストのペアでトレーニングされ、Stable Diffusionフレームワークで使用されているタスク固有の画像条件と同様のトレーニングオブジェクトを使用します。InstantIDトレーニング方法のハイライトは、画像アダプター内の画像とテキストのクロスアテンション層の分離であり、これにより、画像条件の重みを柔軟に独立して調整でき、よりターゲットを絞った制御と推論プロセスが可能になります。
InstantID: 実験と結果
InstantIDフレームワークは、LAION-Faceという、大規模なオープンソースデータセットに基づいて、Stable Diffusionを実装し、トレーニングします。このデータセットには、5000万以上の画像とテキストのペアが含まれています。さらに、InstantIDフレームワークは、BLIP2モデルによって自動的に生成された1000万以上の人間の画像を収集して、画像生成の品質をさらに向上させます。InstantIDフレームワークは、主に単一の人物の画像に焦点を当てており、事前トレーニング済みの顔モデルを使用して、人間の画像から顔のID埋め込みを検出して抽出します。トレーニング中、InstantIDフレームワークは、事前トレーニング済みテキストから画像のモデルを固定し、IdentityNetと画像アダプターのパラメータのみを更新します。
画像のみ生成
InstantIDモデルは、参照画像のみを使用して、画像生成プロセスを導くために、空のプロンプトを使用します。プロンプトなしでの結果は、次の画像に示されています。

「空のプロンプト」生成は、上の画像に示されており、InstantIDフレームワークが、アイデンティティー、年齢、表情などの豊富なセマンティック顔の特徴を強固に維持する能力を示しています。ただし、空のプロンプトを使用することは、性別などの他のセマンティクスを正確に複製できない可能性があることに注意する必要があります。さらに、上の画像の2列目から4列目は、画像とプロンプトを使用し、生成された画像はテキスト制御能力の低下を示さず、アイデンティティーの一貫性も維持しています。最後に、5列目から9列目は、画像、プロンプト、空間制御を使用し、モデルが事前トレーニング済みの空間制御モデルと互換性があることを示しています。

参照画像の数は、生成された画像に大きな影響を与えることもわかります。上の画像に示されているように、InstantIDフレームワークは単一の参照画像で良好な結果を生成できますが、複数の参照画像は、より高品質の画像を生成するために、ID埋め込みの平均を画像プロンプトとして使用するため、より良い結果をもたらします。次に進み、単一の参照画像を使用してパーソナライズされた画像を生成する既存の方法とInstantIDフレームワークを比較することが重要です。次の図は、単一の参照画像を使用したカスタマイズされた画像生成の結果を、InstantIDフレームワークと既存の最先端モデルで比較しています。

観察すると、InstantIDフレームワークは、顔の特徴を保存することができ、ID埋め込みが豊富なセマンティック情報、たとえばアイデンティティー、年齢、性別を内在的に持っているためです。InstantIDフレームワークは、カスタマイズされた画像生成で既存のフレームワークを上回り、人間のアイデンティティーを保存しながら、制御とスタイリッシュな柔軟性を維持することができるため、安全に言えるでしょう。

最終的な考え
この記事では、画像生成のための拡散モデルベースのソリューションであるInstantIDについて説明しました。InstantIDは、単一の参照画像で様々なスタイルやポーズの画像を生成し、高い忠実度を維持することができるプラグアンドプレイモジュールです。InstantIDフレームワークは、単一の顔画像を使用して画像をパーソナライズし、高い忠実度を維持することを目的とした、プラグアンドプレイモジュールを導入することで、効率性と高い忠実度のギャップを埋めることを目指しています。












