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에서 발표)의 공식 코드 릴리스입니다. 저자는 다음을 제공합니다:
- 훈련 코드 — 자체 데이터로 모델을 훈련하기 위한
- 추론 코드 — 훈련된 모델을 새 이미지에서 실행하기 위한
- 로컬 데모 — 자신의 컴퓨터에서 실행할 수 있는 웹 인터페이스
- 호스팅 데모 — 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에서 설치 없이 사용해 볼 수 있습니다
이 프로젝트가 아닌 것
- 완성된 소비자용 앱이 아닙니다 — 설정과 기술 지식이 필요한 연구 코드베이스입니다
- 상업적 용도로 사용할 수 없습니다(라이선스 때문)
- 데이터셋을 포함하지 않습니다 — 별도로 다운로드해야 합니다
요약하자면: 가상 착용 기술에 관심이 있는 연구자나 개발자라면, 이는 문서화가 잘 되어 있고 동료 검토를 거친 구현체로, 비상업적 용도 내에서 훈련, 테스트, 확장할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트