颠覆虚拟试衣行业标准!阿里发布OutfitAnyone:任意服装 + 任意人!

文章链接:https://arxiv.org/pdf/2407.16224
git 链接 : https://humanaigc.github.io/outfit-anyone/
huggingface: https://huggingface.co/spaces/HumanAIGC/OutfitAnyone

• 顶尖逼真度:OutfitAnyone 方法为虚拟试穿设立了新的行业标准,提供行业领先的高质量结果。
• 高鲁棒性:OutfitAnyone 可以支持任何人、任何服装、任何体型和任何场景的虚拟试穿。
• 灵活控制:支持各种姿势和体型引导方法,包括 (openpose,SMP,densepose)。
• 高质量:支持灵活尺寸的虚拟试穿合成,尺寸范围从 384(宽)× 684(高)到 1080
(宽)× 1920(高)。 

虚拟试穿 (VTON) 已成为一种变革性技术,使用户能够在不实际试穿衣服的情况下尝试时尚。然而,现有的方法通常难以生成高保真和细节一致的结果。虽然扩散模型(如 Stable Diffusion 1/2/3)在创建高质量和逼真的图像方面展示了其能力,但在 VTON 这样的条件生成场景中,它们遇到了巨大的挑战。具体来说,这些模型在生成虚拟试穿图像时难以在控制和一致性之间保持平衡。 

OutfitAnyone 通过利用双流条件扩散模型解决了这些限制,使其能够巧妙地处理服装变形,从而生成更加逼真的结果。它的特点在于可扩展性——可以调节姿势、体型等因素,且应用范围广泛,从动漫图像到实际场景图像均可适用。OutfitAnyone 在各种场景中的表现突显了其实用性和现实世界部署的准备程度。

整体框架

如图所示,开发了一个框架,结合了 ReferenceNet,该网络在服装图像作为主要生成流程中的条件时,有效地保持了图案和纹理信息的完整性。该设计确保了在生成过程中服装的合身性和视觉细节能够准确保留。内部网络分为两个流,用于独立处理模型和服装数据。这些流在融合网络中汇合,从而将服装细节嵌入到模型的特征表示中。在此基础上,建立了OutfitAnyone,包括两个关键元素:用于初始试穿图像的零样本试穿网络(Zero-shot Try-on Network),以及用于增强输出图像中服装和皮肤纹理细节的事后优化器(Post-hoc Refiner)。

服装特征注入

Stable Diffusion (SD) 及其增强版 SDXL 都采用了预训练的自动编码器进行复杂度降低,该自动编码器由编码器和解码器组成。为了扩展此框架以解决虚拟试穿问题,保持服装外观一致性至关重要,因此需要额外的服装图像条件输入。输入的服装图像被输入到编码器中,以提取其在潜在空间中的相应特征。研究者们设计了一个专门的服装特征处理网络 ReferenceNet,该网络的结构与原始 SD 模型中的 U-Net 相似。两个网络都以相同的预训练参数初始化,以确保一致性。通过集成空间注意力和交叉注意力层,成功地将与服装相关的特征纳入去噪流程,从而显著提升试穿图像生成的质量。 

无分类引导

在原始 SD 的背景下,无分类器引导(classifier-free guidance)是一种在不依赖外部分类器的情况下控制生成过程的技术。该方法利用单个扩散模型在有条件和无条件数据上进行训练。通过调整引导比例,可以引导生成过程生成与给定文本提示一致的图像。

在虚拟试穿框架中,将服装图像确定为关键控制元素,强调其相对于文本提示的重要性。因此,调整了无条件分类器引导,使用空白服装图像作为无条件输入,而使用实际提供的服装图像作为条件输入。能够有效地利用引导比例,从而提供更加精确和一致的生成结果。

背景和光照保留

为了保持生成图像与原始图像在光照和背景上的一致性,之前的工作如 TryonDiffusion 使用了人物服装分割模型,从模型图像中获取服装 mask。这个 mask 会稍微扩展,然后擦除模型图像中对应的区域。将部分擦除的图像输入生成模型,生成模型学习基于该图像和给定的服装图像填充服装区域。这种方法在更换相似风格的服装时效果很好,而无需大量数据。然而,对于风格差异显著的服装更换,如从短裤换成长裙或从紧身换成宽松的衣服,则不适用。原因是原始服装 mask 的区域可能限制新服装的生成,并且 mask 形状可能导致与风格的不良耦合。

本文的方法首先检测模型图像中人物的边界框,然后擦除除了面部和手部以外的所有部分。这种方法避免了 mask 形状与风格的不良耦合,并提供了足够大的区域支持上下装的更换。然而,增加生成的背景区域可能导致显著的背景差异。在这种情况下,可以使用精确的人物分割模型提取生成的人物并将其粘贴回原始背景中。 

姿势和形状引导

传统方法在更换单件衣服时,通过选择性地替换图像部分来保留身体形状的真实度,保留躯干以生成合理的身体轮廓。然而,这种方法在更换整套衣服时失败,需要额外的姿势和形状引导器进行指导。 

在控制人物姿势方面,虽然之前的研究如 ControlNet 已展示了令人印象深刻的结果,但它们需要额外的训练阶段和参数。相比之下,作者采用了一种更简化的架构方法。如前面所述,为确保一致的背景和光照,结合了反映姿势和形状的条件图像。所有这些组件可以一起连接并作为输入送入去噪 U-Net 中。控制图像可以包括骨架图像、密集姿势图像或使用 SMP 模型渲染的与目标图像对应的图像。在实验中,作者实现了与 ControlNet 类似的姿势和形状控制效果,而无需额外的参数或训练阶段。

细节优化器

为了创建适用于任何服装和任何人的虚拟试穿体验,在数据集中引入了各种服装风格和人类主体。然而,确保数据集的多样性同时保持高图像质量和细节是一个挑战。为了解决这个问题,从数据集中选取了最高质量的图像,并将它们与虚拟试穿初始版本生成的图像配对,这些初始图像缺乏清晰和高质量的细节。参见下图的示意图。通过这种方式,构建了一个特定任务的数据集,包括高质量和低质量图像的配对。随后,重新利用虚拟试穿框架,将低质量图像作为输入,高质量图像作为目标,训练扩散模型有效地恢复精细和真实的细节。

结果

本节展示了本文方法的强大性能,支持任何服装、体型、人物和背景变化的单件和多件虚拟试穿。值得注意的是,本文的技术还能够在未包含在训练数据集中的动画人物上进行虚拟服装更换。 

任何服装

如下图所示,OutfitAnyone 不仅支持单件服装的虚拟试穿,还允许同时更换上下装等完整的服装套装。此外,它能够有效生成适合各种服装风格的真实试穿效果,包括长袖和短袖上衣、长裤和短裤,以及连衣裙和类似服装。与之前的方法相比,OutfitAnyone 在处理各种服装风格和组合方面展示了卓越的适应性和效果。

任何人物

OutfitAnyone 能够适用于各种肤色、年龄和性别的模型虚拟试穿,如下图所示。此外,它能够巧妙处理日常用户的自拍图像,这些图像的质量和光照通常与专业模特照片差异很大。尽管存在这些差异,OutfitAnyone 依然能一致地提供令人信服的服装转换效果,如下图所示。 

此外,本文的技术还扩展到了未包含在训练数据中的动画角色,如下图所示。这一能力表明,本文的模型不仅仅是简单的学习和模仿,它还获得了真正的理解和智能能力,能够在各种情境下有效地应用服装更换! 

任何体型 

本文的框架包含一个额外的通道用于姿势和形状引导,它提取类似于 DensePose 的数据(工作还支持 SMPL 和 OpenPose),这些数据反映了身体的轮廓。这些信息对于引导最终生成的模型复制原始图像的精确体型至关重要。如下图所示,本文的方法在各种体型上,即使在进行全面的服装更换后,也能很好地保持原始模型的体型。

任何背景

OutfitAnyone 在各种背景和光照场景中表现出卓越的鲁棒性。它能够在复杂的户外场景中生成合理的服装光照效果,并在各种室内和户外背景下保持良好表现,如图所示。这种适应性展示了它在不同环境条件和现实世界背景下的有效性。 

细节优化器

本文提出利用自循环优化器模型来增强虚拟试穿结果的真实感。下图显示,该优化器模型显著提升了渲染图像的清晰度和纹理逼真度,而下图强调了其保留清晰、局部细节的能力。在 OutfitAnyone中,这个额外的优化步骤对于实现更加生动和令人信服的虚拟试穿体验至关重要。 

 

比较

将本文的方法与一些流行的社区方法进行了比较,如 OOTDiffusion(在 GitHub 上有 5k 星)和 IDM-VTON(在 GitHub 上有 3k 星)。本文的模型在特别具有挑战性的场景中表现出明显更好的性能。OutfitAnyone 即使在处理普通用户照片时也表现出色,这些照片通常具有复杂的背景和光照条件,使得实现令人满意的虚拟试穿结果更加困难。这突显了本文方法在处理现实世界情况时的卓越鲁棒性,能够在各种情况下保持高质量的表现。 

结论

自 2023 年底初次发布以来,OutfitAnyone 经历了多个版本的迭代,基于 SD 1.5 和 SDXL 版本不断改进。其最初的开源版本在 Hugging Face 平台上排名第 14 位,位列整个 HuggingFace 平台(超过 20 万个项目)前 0.01% ,赢得了广泛的认可和关注。强大的扩散技术(如SD、SDXL、DDPM/DDIM/DPM、ControlNet 等)和谷歌在虚拟试穿方面的开创性探索TryonDiffusion,这使研究者们能够为虚拟试穿开辟出一条独特、成熟的发展路径。总之,OutfitAnyone 有幸为 AI 生成内容(AIGC)的实际部署提供了一个基准应用。

  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值