综合介绍
CatVTON-FLUX 是一个先进的虚拟试穿解决方案,结合了 CATVTON(Concatenation Is All You Need for Virtual Try-On with Diffusion Models)和 Flux 填充修复模型,实现了逼真且准确的服装转移。该项目由 nftblackmagic 开发,受到了 In-Context LoRA 提示工程的启发,旨在通过使用扩散模型和 LoRA(In-Context LoRA for prompt engineering)技术,提供高质量的虚拟试穿体验。用户可以通过该平台在 Hugging Face 上进行虚拟试穿,体验最新的模型权重和性能改进。
功能列表
- 虚拟试穿:使用 CATVTON 和 Flux 模型实现逼真的服装转移。
- LoRA 权重支持:提供 LoRA 权重以提高模型性能。
- Gradio 演示:通过 Gradio 平台展示虚拟试穿效果。
- Hugging Face 支持:在 Hugging Face 上运行 CATVTON-FLUX-TRY-ON。
- 模型权重更新:定期更新模型权重以提高性能和细节表现。
使用帮助
安装流程
- 确保运行环境的 VRAM >= 40GB(推荐使用 80GB GPU)。
- 创建并激活 Python 虚拟环境:
conda create -n flux python=3.10
conda activate flux
- 安装所需依赖:
pip install -r requirements.txt
huggingface-cli login
使用流程
运行 LoRA 版本的试穿
- 准备输入图像、掩码和服装图像。
- 运行以下命令进行试穿:
python tryon_inference_lora.py \
--image ./example/person/00008_00.jpg \
--mask ./example/person/00008_00_mask.png \
--garment ./example/garment/00034_00.jpg \
--seed 4096 \
--output_tryon test_lora.png \
--steps 30
运行无 LoRA 版本的试穿
- 准备输入图像、掩码和服装图像。
- 运行以下命令进行试穿:
python tryon_inference.py \
--image ./example/person/00008_00.jpg \
--mask ./example/person/00008_00_mask.png \
--garment ./example/garment/00034_00.jpg \
--seed 42 \
--output_tryon test.png \
--steps 30
启动 Gradio 演示
- 运行以下命令启动带 LoRA 权重的 Gradio 演示:
python app.py
- 运行以下命令启动不带 LoRA 权重的 Gradio 演示:
python app_no_lora.py
详细操作流程
- 准备输入图像:确保输入图像、掩码和服装图像的尺寸一致,推荐尺寸为 576x768。
- 运行试穿命令:根据需要选择 LoRA 版本或无 LoRA 版本的试穿命令,调整参数如种子(seed)和步数(steps)以获得最佳效果。
- 查看结果:试穿结果将保存在指定的输出路径中,用户可以查看并评估试穿效果。
- Gradio 界面交互:通过 Gradio 界面,用户可以上传自己的图像和服装,实时体验虚拟试穿效果。