Yuanhao Wang* Johanna Karras* Yingwei Li Ira Kemelmacher-Shlizerman
* Equal Contribution, listed in no particular order
University of Washington · Google Research
ACM Transactions on Graphics (SIGGRAPH 2026)
Given a person and a garment image, virtual try-on (VTO) aims to synthesize a realistic image of the person wearing the garment while preserving their original pose and identity. Although recent VTO methods excel at visualizing garment appearance, they largely overlook a crucial aspect of the try-on experience: the accuracy of garment fit — for example, depicting how an extra-large shirt looks on an extra-small person. A key obstacle is the absence of datasets that provide precise garment and body size information, particularly for "ill-fit" cases, where garments are significantly too large or too small. Consequently, current VTO methods default to generating well-fitted results regardless of the garment or person size.
In this paper, we take the first steps towards solving this open problem. We introduce FIT (Fit-Inclusive Try-on), a large-scale VTO dataset comprising over 1M try-on image triplets accompanied by precise body and garment measurements. We overcome the challenges of data collection via a scalable synthetic strategy: (1) We programmatically generate 3D garments using GarmentCode and drape them via physics simulation to capture realistic garment fit. (2) We employ a novel re-texturing framework to transform synthetic renderings into photorealistic images while strictly preserving geometry. (3) We introduce person identity preservation into our re-texturing model to generate paired person images (same person, different garments) for supervised training. Finally, we leverage our FIT dataset to train a baseline fit-aware virtual try-on model. Our data and results set the new state-of-the-art for fit-aware virtual try-on, as well as offer a robust benchmark for future research. We will make all data and code publicly available.
A preview release of the FIT dataset is available on HuggingFace:
Yuanhao-Harry-Wang/fitvto-100k — 100K training samples · 5K evaluation benchmark · CC-BY-NC-ND-4.0
Each sample contains:
| Field | Description |
|---|---|
target |
Photorealistic try-on image (768×1024) |
person |
Paired person image — same person, different garment (768×1024) |
cloth |
Layflat garment image (768×1024) |
body_height / body_bust / body_waist / body_hips |
Person body measurements (cm) |
garment_bust / garment_length / garment_sleeve_length |
Garment measurements (cm) |
Preview scale: 100K training · 5K eval · Full dataset (1.13M triplets · 168 body shapes · 528 poses · 158K+ garment designs) coming soon.
This repository contains the full pipeline used to generate the FIT dataset. Follow the steps below in order.
Programmatically generates sewing patterns across a range of body and garment sizes, runs physics-based cross-draping simulation, and renders the results.
📄 See garmentcode_generation/ for installation, asset setup, and usage.
Transforms synthetic GarmentCode renders into photorealistic try-on images via a two-stage FLUX.1-dev LoRA pipeline conditioned on composite normal maps.
📄 See sim2real/ for installation, model weights, and usage.
FIT-VTO/
├── garmentcode_generation/ # 3D garment simulation (GarmentCode-based)
│ ├── run_experiment.py # Main entrypoint: pattern sampling + physics simulation
│ ├── pattern_sampler.py # Cross-draping pattern generation
│ ├── batch_sim.py # GPU-accelerated physics simulation
│ ├── gen_masks.py # Post-simulation garment mask generation
│ ├── postprocess.py # Measurement recomputation, filtering, and output collection
│ ├── generate_design_templates.py # Generate custom garment design template pools
│ └── README.md
│
└── sim2real/ # Synthetic-to-photorealistic retexturing (FLUX-based)
├── run_example.py # End-to-end Stage 1 + Stage 2 demo on example pairs
└── README.md
If you find this work useful, please cite:
@article{fitvto2026,
author = {Karras, Johanna and Wang, Yuanhao and Li, Yingwei and Kemelmacher-Shlizerman, Ira},
title = {FIT: A Large-Scale Dataset for Fit-Aware Virtual Try-On},
journal = {SIGGRAPH},
year = {2026},
}This work builds on GarmentCode for procedural garment simulation, FLUX.1-dev for image generation, and OminiControl for multi-condition FLUX fine-tuning.
