はじめに
ConsisIDは、北京大学のYuan Rongのグループによって開発されたオープンソースプロジェクトであり、周波数分解技術によってIPT2V(identity-consistent text-to-video generation)を実現することを目指している。プロジェクトの中核は、DiT(拡散変換器)に基づくモデルであり、動画生成時に文字の同一性の一貫性を維持することができる。ConsisIDプロジェクトは、完全なコードとデータセットを提供するだけでなく、ユーザがすぐに始められるように、詳細なインストールと使用に関するガイドラインも含んでいる。このプロジェクトは、映像生成の分野、特に映画やテレビ制作、バーチャルリアリティなど、キャラクターの一貫性を維持する必要があるアプリケーションシナリオにおいて、大きな意義がある。
機能一覧
- アイデンティティ一貫性のあるビデオ生成入力テキストの記述と一致し、文字の同一性を維持する動画を生成するために、周波数分解技術が使用される。
- オープンソースのコードとデータセット二次開発や研究を容易にするために、完全なコードと部分的なデータセットが提供されています。
- マルチプラットフォーム対応JupyterノートブックとComfyUIの拡張機能を提供します。
- 高品質のプロンプトのための最適化GPT-4oを使用してテキストプロンプトワードの入力を最適化し、生成されるビデオの品質を向上させます。
- GPUメモリの最適化さまざまなハードウェア構成に合わせて、GPUメモリの最適化オプションを提供します。
- 地域貢献コミュニティが開発したプラグインや拡張機能をサポートし、機能や使用感を向上させます。
ヘルプの使用
環境設定
- プロジェクトコードをクローンする:
git clone --depth=1 https://github.com/PKU-YuanGroup/ConsisID.git
cd ConsisID
- 仮想環境を作成し、起動する:
conda create -n consisid python=3.11.0
consisidをアクティブにする
- 依存関係をインストールします:
pip install -r requirements.txt
モデルウェイトのダウンロード
- HuggingFaceからウェイトをダウンロードする:
huggingface-cli download --repo-type model BestWishYsh/ConsisID-preview --local-dir ckpts
- またはWiseModelからダウンロードしてください:
git lfs install
git clone https://www.wisemodel.cn/SHYuanBest/ConsisID-Preview.git
実行例
- Web UIの例を実行します:
python app.py
- コマンドライン推論を実行する:
python infer.py --model_path BestWishYsh/ConsisID-preview
キュー・ワードの最適化
GPT-4oを使って、プロンプト文の入力を最適化する。 最適化されたプロンプトワード:「ビデオには、飛行機の横に立って携帯電話で話している男性が映っている。サングラスをかけ、黒い上着を着て、真剣な表情をしている。飛行機の側面には緑のストライプがあり、後部には大きなエンジンがある。"
GPUメモリの最適化
複数のGPUまたは十分なGPUメモリがない場合は、以下のオプションを有効にすることができます:
pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()
pipe.vae.enable_slicing()
pipe.vae.enable_tiling()
注:これらのオプションを有効にすると、推論時間が長くなり、生成品質が低下する可能性があります。
データ前処理
ConsisIDの学習に必要なデータについては、プロジェクトのデータ前処理ガイドを参照してください。テキストから画像や動画生成モデルを学習する必要がある場合は、データセットを以下の形式に整理する必要がある:
データセット
├── captions/
│ ├── dataname_1.json
│ ├── dataname_2.json
├── dataname_1/ ├── captions/ │ ├── refine_1.json
│ ├─ refine_bbox_jsons/
│ ├── track_masks_data/ ├── track_masks_data/ ├── track_masks_data/
│ ├── videos/
├── dataname_2/ │── refine_bbox_jsons/ ├── track_masks_data/
├─ refine_bbox_jsons/ │ ├─ track_masks_data/ ├─ videos/
├── track_masks_data/ ├── videos/ ├── videos/
│ ├── videos/ ├── dataname_2/ │── refine_bbox_jsons/
├── ...
├── total_train_data.txt
モデルトレーニング
- ハイパーパラメータを設定する:
バッシュ train_single_rank.sh
- トレーニングを開始する:
bash train_multi_rank.sh
地域貢献
プラグインやエクステンションのコミュニティ開発者に感謝する:
- ComfyUI-ConsisIDWrapper
- Jupyter-ConsisID
- ウィンドウズコンシスID
ConsisIDクイック統合
オンライン経験:ハグする顔
Windowsインストーラー:ハグする顔 初級インテリジェンス AI
ComfyUIノード:ComfyUI-CogVideoXWrapper オープンアート:https://openart.ai/workflows/TxIQ6lwGkRx2zQiYjvE5