IDM-VTON | 가상 착용
IDM-VTON, 또는 Improving Diffusion Models for Authentic Virtual Try-on in the Wild는 현실적인 가상 의류 착용을 가능하게 하는 혁신적인 확산 모델입니다. 의류의 고유한 세부 사항과 정체성을 보존함으로써 IDM-VTON은 놀랍도록 진정성 있는 결과를 생성합니다. 이 모델은 이미지 프롬프트 어댑터(IP-Adapter)를 사용하여 고급 의류 의미를 추출하고, 병렬 UNet(GarmentNet)을 사용하여 저수준의 특징을 인코딩합니다. ComfyUI에서는 IDM-VTON 노드가 가상 착용 프로세스를 지원하며, 인간 이미지, 자세 표현, 의류 마스크 및 의류 이미지와 같은 입력이 필요합니다.ComfyUI IDM-VTON 워크플로우
ComfyUI IDM-VTON 예제

ComfyUI IDM-VTON 설명
IDM-VTON은 "Improving Diffusion Models for Authentic Virtual Try-on in the Wild"의 약자로, 몇 가지 입력만으로 현실적으로 의류를 가상으로 착용할 수 있게 해주는 혁신적인 확산 모델입니다. IDM-VTON의 차별점은 의류의 고유한 세부 사항과 정체성을 보존하면서도 놀랍도록 진정성 있는 가상 착용 결과를 생성하는 능력에 있습니다.
1. IDM-VTON 이해하기
IDM-VTON의 핵심은 가상 착용을 위해 특별히 설계된 확산 모델입니다. 사용하기 위해서는 단순히 사람의 표현과 착용하고자 하는 의류가 필요합니다. IDM-VTON은 마법을 발휘하여 실제로 사람이 의류를 착용한 것처럼 보이는 결과를 렌더링합니다. 의류의 충실도와 진정성을 이전의 확산 기반 가상 착용 방법보다 뛰어난 수준으로 달성합니다.
2. IDM-VTON의 내부 작동 원리
그렇다면 IDM-VTON은 어떻게 그렇게 현실적인 가상 착용을 구현할까요? 비밀은 의류 입력의 의미를 인코딩하기 위해 함께 작동하는 두 가지 주요 모듈에 있습니다:
- 첫 번째는 이미지 프롬프트 어댑터, 줄여서 IP-Adapter입니다. 이 똑똑한 구성 요소는 의류의 고급 의미, 즉 외관을 정의하는 주요 특성을 추출합니다. 그런 다음 이 정보를 주요 UNet 확산 모델의 교차 주의 레이어에 융합합니다.
- 두 번째 모듈은 GarmentNet이라는 병렬 UNet입니다. 이 모듈의 역할은 의류의 저수준 특징, 즉 그 고유함을 만드는 세부 사항을 인코딩하는 것입니다. 이러한 특징은 주요 UNet의 자기 주의 레이어에 융합됩니다.
하지만 그게 다가 아닙니다! IDM-VTON은 의류와 사람 입력 모두에 대한 자세한 텍스트 프롬프트도 사용합니다. 이러한 프롬프트는 최종 가상 착용 결과의 진정성을 향상시키는 추가적인 컨텍스트를 제공합니다.
3. ComfyUI에서 IDM-VTON 활용하기
3.1 쇼의 스타: IDM-VTON 노드
ComfyUI에서 "IDM-VTON" 노드는 IDM-VTON 확산 모델을 실행하고 가상 착용 출력을 생성하는 파워하우스입니다.
IDM-VTON 노드가 마법을 발휘하기 위해서는 몇 가지 주요 입력이 필요합니다:
- Pipeline: 전체 가상 착용 프로세스를 지원하는 로드된 IDM-VTON 확산 파이프라인입니다.
- Human Input: 가상으로 의류를 착용할 사람의 이미지입니다.
- Pose Input: IDM-VTON이 사람의 자세와 체형을 이해하는 데 도움이 되는 사전 처리된 DensePose 표현입니다.
- Mask Input: 인간 입력의 어느 부분이 의류인지 표시하는 이진 마스크입니다. 이 마스크는 적절한 형식으로 변환되어야 합니다.
- Garment Input: 가상으로 착용할 의류의 이미지입니다.
3.2 모든 준비 완료
IDM-VTON 노드를 구동하기 위해 몇 가지 준비 단계가 필요합니다:
- 사람 이미지 로드: LoadImage 노드를 사용하여 사람의 이미지를 로드합니다.
- 자세 이미지 생성: 인간 이미지를 DensePosePreprocessor 노드에 통과시켜 IDM-VTON이 필요로 하는 DensePose 표현을 계산합니다.
- 마스크 이미지 획득: 의류 마스크를 얻는 두 가지 방법이 있습니다:
a. 수동 마스킹 (권장)
- 로드된 인간 이미지를 마우스 오른쪽 버튼으로 클릭하고 "마스크 편집기에서 열기"를 선택합니다.
- 마스크 편집기 UI에서 의류 영역을 수동으로 마스킹합니다.
b. 자동 마스킹
- GroundingDinoSAMSegment 노드를 사용하여 자동으로 의류를 분할합니다.
- 노드에 의류의 텍스트 설명(예: "t-shirt")을 프롬프트합니다.
어느 방법을 선택하든, 얻은 마스크는 MaskToImage 노드를 사용하여 이미지로 변환되어야 하며, 이는 IDM-VTON 노드의 "Mask Image" 입력에 연결됩니다.
- 의류 이미지 로드: 의류의 이미지를 로드하는 데 사용됩니다.

IDM-VTON 모델에 대한 더 깊은 탐구를 원하신다면, 원본 논문 ""을 놓치지 마세요. ComfyUI에서 IDM-VTON을 사용해보고 싶다면, 여기의 전용 노드를 확인하세요 . 이러한 놀라운 자원을 만든 연구자들과 개발자들에게 큰 감사를 전합니다.