yisol/IDM-VTON

[ECCV2024] IDM-VTON : Improving Diffusion Models for Authentic Virtual Try-on in the Wild

IDM-VTON — 機能概要

IDM-VTON は、バーチャル試着のための AI システムです。人物の写真と衣服の写真を入力すると、その人物がその衣服を着用したリアルな画像を生成します。名前は「Improving Diffusion Models for Virtual Try-On」の略で、Stable Diffusion などの画像生成器で使用されるのと同じタイプの AI である拡散モデルに基づいています。

このプロジェクトは、査読付き論文(ECCV 2024 で発表)の公式コードリリースです。著者は以下を提供しています:

  • トレーニングコード — 独自のデータでモデルをトレーニングするため
  • 推論コード — トレーニング済みモデルを新しい画像で実行するため
  • ローカルデモ — 自分のコンピュータで起動できる Web インターフェース
  • ホスト型デモ — Hugging Face Spaces の無料オンラインバージョン

仕組み(概要)

システムは複数の AI コンポーネントを組み合わせています:

  • 拡散モデル — 最終的な試着画像を作成するコア画像生成器
  • IP-Adapter — モデルが衣服の外観を理解するのに役立つツール
  • DensePose — 人物の体型をマッピングして、衣服が正しくフィットするようにします
  • 人間解析 — 体の部位(腕、胴体など)を識別して、衣服の配置場所を決定します
  • マスキング — 人物を背景と既存の衣服から分離します

これらのコンポーネントが連携して、生成された画像が本物に見えるようにします。衣服は人物のポーズに従い、自然に折り目が付き、照明にマッチします。

使用に必要なもの

データセット — コードは、次の 2 つの標準的なファッションデータセットのいずれかを想定しています:

  • VITON-HD — 人物写真と衣服写真のペア
  • DressCode — 衣服の種類(ドレス、上半身、下半身)で整理

どちらも前処理(DensePose 画像、キャプション、マスク)が必要で、README に設定方法が説明されています。

ハードウェア — トレーニングは GPU アクセラレーション(accelerate ライブラリ経由)を使用します。README には最小仕様は記載されていませんが、拡散モデルのトレーニングには通常、強力な GPU が必要です。

実行するコマンド

  • トレーニング:accelerate launch train_xl.py にバッチサイズ、出力ディレクトリ、データ場所の引数を指定
  • 推論(VITON-HD):accelerate launch inference.py に画像サイズ、ステップ数、シードを指定
  • 推論(DressCode):accelerate launch inference_dc.py に追加の --category 引数(例:upper_body)を指定
  • ローカルデモ:python gradio_demo/app.py — ただし、最初に 3 つのチェックポイントファイル(DensePose、人間解析モデル、OpenPose ボディモデル)をダウンロードし、ckpt フォルダに配置する必要があります

重要な詳細

  • ライセンス:CC BY-NC-SA 4.0 — 非商用利用のみ、派生作品は同じライセンスで共有する必要があります
  • クレジット:コードは複数のオープンソースプロジェクト(IP-Adapter、OOTDiffusion、DCI-VTON、SCHP、DensePose)に基づいており、すべて README で謝辞が述べられています
  • 論文:技術的な詳細が必要な場合は、arXiv(2403.05139)で入手できます
  • オンラインデモ:Hugging Face Space で、インストールなしで試すことができます

このプロジェクトがではないもの

  • 完成された消費者向けアプリではありません — セットアップと技術的知識が必要な研究コードベースです
  • 商用利用はできません(ライセンスのため)
  • データセットは含まれていません — 別途ダウンロードする必要があります

要するに:バーチャル試着技術に興味のある研究者や開発者にとって、これは文書化が充実し、査読済みの実装であり、非商用利用の範囲内でトレーニング、テスト、拡張が可能です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト