按顺序穿衣
👕 ICCV'21 论文 | :jeans: 项目主页 | :womans_clothes: arXiv | 🎽 视频讲解 | :dress: 运行此代码
《按顺序穿衣:用于姿势转移、虚拟试衣和服装编辑的递归人物图像生成》的官方实现。 作者: 崔爱玉、 Daniel McKee 和 Svetlana Lazebnik。 (ICCV 2021)
:bell: 更新
- [2023/04] 官方Colab演示现已可用 。包含数据下载和环境安装。
- [2021/08] 请查看我们最新版本的论文,了解更新和澄清的实现细节。
- 澄清: 由于一个小错误,面部组件并未如我们的CVPR 2021研讨会论文所述那样添加到皮肤编码中。然而,这并不影响我们的结论,也不影响与先前工作的比较,因为这是一个独立的皮肤编码设计。
- [2021/07] 将在ICCV 2021发表。
- [2021/06] CVPR 2021 计算机视觉在时尚、艺术和设计中的应用研讨会最佳论文。
支持的试衣应用
支持的编辑应用
更多结果
演示
Bash脚本入门
DeepFashion数据集设置
__DeepFashion数据集__可从DeepFashion MultiModal Source获取。
要在指定的数据文件夹$DATA_ROOT
中设置数据集,请运行:
pip install --upgrade gdown
python tools/download_deepfashion_from_google_drive.py --dataroot $DATA_ROOT
此脚本将自动从Google Drive下载所有必要的数据(
图片来源、解析来源、注释来源)到指定的$DATA_ROOT
中,以所需格式存储。
环境设置
请根据需要安装环境。
1. 仅用于推理或测试(用于评估指标)的环境
所需的包包括:
torch
torchvision
tensorboardX
scikit-image==0.16.2
对于推理来说,torch/torchvision的版本没有限制。
2. 用于训练的环境
注意,训练过程需要GFLA提供的CUDA函数,这些函数只能在__torch=1.0.0__版本下编译。
要开始训练,请按照GFLA的安装说明安装环境。
然后运行pip install -r requirements.txt
。
下载预训练权重
预训练权重可以在这里找到。请将它们解压到checkpoints/
目录下。
(上述检查点是重新训练的,因此在定量评估中可能与报告的结果略有不同。要获得原始结果,请查看我们发布的生成图像这里。)
(DIORv1_64
是用略微不同的代码训练的,但在某些应用中可能会产生更好的视觉效果。如果想尝试,请指定--netG diorv1
。)
训练
预热全局流场估计器
注意,如果你不想预热全局流场估计器,你可以通过从这里下载预训练的GFLA权重来提取其权重。(查看Issue #23了解如何从GFLA提取权重。)
否则,运行
sh scripts/run_pose.sh
训练
预热flownet后,通过以下命令训练整个流程:
sh scripts/run_train.sh
运行tensorboard --logdir checkpoints/$EXP_NAME/train
以查看tensorboard。
注意:当训练陷入局部最小值时,重置判别器可能会有帮助。
评估
下载生成的图像
这里是我们生成的图像,用于论文中报告的评估。(Deepfashion数据集)
SSIM、FID和LPIPS
要在姿势迁移任务上运行评估(SSIM、FID和LPIPS):
sh scripts/run_eval.sh
进行推理时请始终指定--frozen_flownet
。
引用我们!
如果你觉得这项工作有帮助,请考虑给这个仓库加星:star2:并引用我们:
@InProceedings{Cui_2021_ICCV,
author = {Cui, Aiyu and McKee, Daniel and Lazebnik, Svetlana},
title = {Dressing in Order: Recurrent Person Image Generation for Pose Transfer, Virtual Try-On and Outfit Editing},
booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
month = {October},
year = {2021},
pages = {14638-14647}
}
致谢
这个仓库基于GFLA、 pytorch-CycleGAN-and-pix2pix、 PATN和 MUNIT构建。使用代码时请注意其许可证。
非常感谢这些先驱研究者的杰出工作!