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 — 映射人物身体形状,使服装合身
  • 人体解析 — 识别身体部位(手臂、躯干等),以确定服装放置位置
  • 掩码 — 将人物与背景和现有衣物分离

这些组件协同工作,使生成的图像看起来真实——服装跟随人物姿势,自然褶皱,并匹配光照。

使用所需条件

数据集 — 代码需要以下两个标准时尚数据集之一:

  • 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 — 但首先您必须下载三个检查点文件(DensePose、人体解析模型和 OpenPose 身体模型)并将它们放在 ckpt 文件夹中

重要细节

  • 许可证:CC BY-NC-SA 4.0 — 仅限非商业用途,任何衍生作品必须使用相同许可证共享
  • 致谢:代码基于多个开源项目(IP-Adapter、OOTDiffusion、DCI-VTON、SCHP、DensePose),均在 README 中致谢
  • 论文:可在 arXiv(2403.05139)上获取,供需要技术细节的人参考
  • 在线演示:Hugging Face Space 让您无需安装即可试用

此项目不是什么

  • 它不是成品消费应用 — 它是一个需要设置和技术知识的研究代码库
  • 它不用于商业用途(由于许可证)
  • 它不包含数据集 — 您必须单独下载

简而言之:如果您是对虚拟试穿技术感兴趣的研究人员或开发人员,这是一个文档完善、经过同行评审的实现,您可以训练、测试和扩展——只要您保持在非商业用途范围内。

相关

  • 项目
  • 项目
  • 项目
  • 项目