OOTDiffusion 虚拟试穿部署教程环境配置、权重下载与出图全流程【免费下载链接】OOTDiffusion[AAAI 2025] Official implementation of OOTDiffusion: Outfitting Fusion based Latent Diffusion for Controllable Virtual Try-on项目地址: https://gitcode.com/GitHub_Trending/oo/OOTDiffusionOOTDiffusion 是 AAAI 2025 论文《OOTDiffusion: Outfitting Fusion based Latent Diffusion for Controllable Virtual Try-on》的官方开源实现一条命令即可完成虚拟试穿出图。整套部署链路只有三步装环境、下四类权重、跑一条推理命令本文按先出图、再拆细节的顺序走完全流程。技术定位这个项目要解决的问题很具体给一张模特图和一张服装图合成一张服装自然穿在模特身上的新图。技术路线是潜在扩散模型Latent Diffusion Model在压缩空间而非像素空间做去噪核心是一条两段式 U-Net 流程——先用单步网络把服装特征融合进人体图像再多步去噪生成试穿结果。与早期把服装注入和图像修复耦合在同一过程中的虚拟试衣方案不同它把两阶段拆开服装细节在融合阶段注入修复阶段只负责人体重绘因此纹理保真度更高且能控制半身/全身两种输出粒度。⚡ 最小可运行路径跑通的最小闭环是五步克隆仓库、装环境、下权重、跑一条命令、看输出。git clone https://gitcode.com/GitHub_Trending/oo/OOTDiffusion cd OOTDiffusion conda create -n ootd python3.10 -y conda activate ootd pip install torch2.0.1 torchvision0.15.2 torchaudio2.0.2 pip install -r requirements.txt从 Hugging Face 的levihsu/OOTDiffusion空间下载 OOTDiffusion 主权重、humanparsing、openpose 三类文件连同clip-vit-large-patch14一起放进checkpoints目录。然后执行cd run python run_ootd.py --model_path examples/model/model_1.png --cloth_path examples/garment/03244_00.jpg --scale 2.0 --sample 4结束提示跑完后run/images_output/目录会多出 4 张out_hd_*.png第一张出来就说明全链路通了。 完整部署拆解架构图见上节末尾。整条管线分四块环境、权重、预处理姿态估计 人体解析 → 掩码、扩散推理。下面按依赖顺序逐个落位。OOTDiffusion 环境配置官方只在 Ubuntu 22.04 Python 3.10 CUDA 版 PyTorch 上验证过依赖全部锁死在requirements.txtdiffusers 0.24.0、transformers 4.36.2、gradio 4.16.0没有版本协商空间。humanparsing 已改用 ONNX 运行时onnxruntime1.16.2不需要编译 C 扩展这是环境里最容易踩坑的一环。装完用下面命令验证python -c import torch; print(torch.__version__, torch.cuda.is_available())输出应为2.0.1cuXXX True。虚拟试穿 模型下载四类权重都进checkpoints/目录checkpoints/README.txt 里只有一句话清单。需要下载OOTDiffusion 主模型含 hd 半身、dc 全身两个子目录来自 VITON-HD 与 Dress Code 训练集humanparsing 人体解析模型openpose 姿态估计模型openai/clip-vit-large-patch14CLIP 图像编码器服装特征提取用下载完成后用du -sh checkpoints/确认主模型权重体积为数 GB几 MB 的文件基本可以判定下载不全。命令行与 gradio 界面启动命令行是调试首选。半身hd模型只处理上衣--category必须为 0全身dc模型按服装选类别。两条示例都可直接复制执行python run_ootd.py --model_path examples/model/model_1.png --cloth_path examples/garment/03244_00.jpg --scale 2.0 --sample 4 python run_ootd.py --model_path examples/model/model_8.png --cloth_path examples/garment/048554_1.jpg --model_type dc --category 2 --scale 2.0 --sample 4两张输入图会被强制缩放到 768×1024预处理在 384×512 分辨率下进行。结果按out_hd_*.png或out_dc_*.png命名写入run/images_output/同名文件会被覆盖。参数名作用一句话建议起步值--model_type选择半身hd或全身dc推理模型hd--category服装类别0 上衣 / 1 下装 / 2 连衣裙hd 强制为 00--scale引导尺度数值越大越服从条件输入2.0--step去噪扩散步数决定耗时与细节20--sample单次生成的图片数量4--seed随机种子-1 表示随机固定后才能复现-1GUI 模式启动后在浏览器访问http://localhost:7865上传两张图、选模型类型即可出图cd run python gradio_ootd.py验证方式页面能打开、上传示例图后数秒内返回结果图。注意它会同时加载 hd 和 dc 两套完整模型显存占用明显高于命令行单模型模式显存紧张时建议只走命令行。 参数调优与排障调优围绕三个参数。--scale从 2.0 起步服装贴合度不足降到 1.0纹理细节不足升到 3.0超过 4.0 容易出现过饱和伪影。--step保持 20 最快20 到 30 之间对最终观感的提升有限。--sample显存紧张时设 1调试对比用 4 次采样看随机性边界。固定--seed是调参的前提否则每次对比都是两个随机样本。排障按现象→根因→解法对照现象输出服装纹理模糊、印花错位。根因scale 过低时去噪过程主导了服装信息。解法scale 升到 3.0或换背景更干净的服装图。现象人体比例或姿态变形。根因OpenPose 关键点或人体解析掩码错位。解法检查 openpose 与 humanparsing 权重版本是否与主模型匹配重新下载完整。现象CUDA out of memory。根因sample 数量、分辨率与双模型加载叠加。解法降 sample 与 step12GB 以下显存建议放弃 GUI走命令行单模型。现象首次运行 ModuleNotFoundError 或 CUDA 报错。根因环境未激活或 PyTorch 装了 CPU 版。解法重新激活 ootd 环境确认torch.cuda.is_available()为 True。 源码地图入口run/run_ootd.py——参数解析、预处理到推理的串联脚本改这里可以加批量处理或多 GPU 轮询。核心模块ootd/inference_ootd_hd.py 与 ootd/inference_ootd_dc.py——半身/全身推理实现改这里可以换采样器或改输出尺寸。核心模块ootd/pipelines_ootd/——服装特征融合用的 OUTFITTING U-Netunet_garm_2d_condition.py与去噪 U-Net改这里可以调融合强度。预处理管线preprocess/openpose/run_openpose.py 与 preprocess/humanparsing/run_parsing.py——姿态与解析权重在此加载掩码生成逻辑在 run/utils_ootd.py改这里可以定制试穿区域。GUI 入口run/gradio_ootd.py——界面逻辑与参数暴露改这里可以加自己的示例图集。从两张 768×1024 的输入图到多张试穿图输出中间每一环都在源码里可定位改完任意环节几秒内就能看效果。项目主页和 checkpoints 说明文档里还挂着 Space 在线演示复现问题或改逻辑前直接对照上面的路径定位即可。【免费下载链接】OOTDiffusion[AAAI 2025] Official implementation of OOTDiffusion: Outfitting Fusion based Latent Diffusion for Controllable Virtual Try-on项目地址: https://gitcode.com/GitHub_Trending/oo/OOTDiffusion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考