让机器也拥有品味!时尚图像补全网络FiNet| ICCV 2019 Oral

点击我爱计算机视觉标星,更快获取CVML新技术


本文对ICCV 2019 Oral 论文 FiNet: Compatible and Diverse Fashion Image Inpainting进行了解读,希望对从事视觉时尚研究的朋友所有启发。


视觉上的兼容与协调对于时尚分析至关重要,然而现有的时尚图像生成系统在此方面却有所欠缺。

在本文中,研究者提出通过时尚图像修复来对视觉上的搭配兼容性进行显式的建模。研究者提出了 Fashion Inpainting Networks(FiNet,时尚图像补全网络),这是一个两阶段的图像到图像生成框架,能够实现视觉上兼容协调但不失多样化的图像修复技术。

为了获得更加真实的结果,研究者对于款式和外观进行了解耦:整个框架由款式生成网络和外观生成网络两部分组成。

更重要的是,对于每一个生成网络,研究者都引入了两个互相作用的编码器,通过共享兼容空间(隐空间),实现对兼容性的学习。

隐空间的表征与相应的生成网络共同优化,并作为生成过程的条件,从而能够生成一组与实际时尚服装在视觉上匹配的穿搭图像。

 

此外,该研究中的框架可以很容易扩展应用到服装重建和时尚风格迁移任务中去。各种时尚图像生成的实验均定性和定量的验证了该方法的有效性。

目录

1    导论

2    研究方法

    2.1    款式生成网络

    2.2    外观生成网络

    2.3    讨论

3    结论

1

导论

深度生成模型的最新突破,尤其是变分自编码器(Variational Autoencoders, VAEs),对抗生成网络(Generative Adversarial Networks, GANs)及相关技术为计算机视觉中众多的时尚应用打开了一扇新的大门,包括时装设计、基于文字指导的时尚图像生成,虚拟试衣系统,以及基于服装外观的迁移任务等。

与刚性物体的图像生成不同,时尚图像生成更为复杂,因为每一组服装搭配中都包含多个服装单品,而且同一套服装搭配中的单品可能具有截然不同的外观,例如质地和颜色(例如,棉衬衫、牛仔裤、皮鞋等),但穿搭在一起时它们却是相互补充的,因为他们共同构成了整个时尚风格。

因此,探索各种服装单品作为一个完整的集合而不是各个孤立元素时的穿搭兼容性,并且在此基础上生成多种多样的时尚服装图像,有助于提升虚拟试衣的体验和得到更加令人惊叹的时装设计。

但是,在计算机视觉任务中对穿搭兼容性进行建模非常困难,因为没有明确的标注与指标来对此进行评判。

因此,研究人员通过借助各单品之间的关系(或同时出现在搭配中)来作为一种弱性评估方法来评估穿搭是否兼容协调,以此缓解上述难题。

例如,出现在同一服装搭配中的两个时尚单品被认为是兼容协调的,而通常不在一起穿着的服装搭配则是不兼容的。

 

Figure 1: Weinpaint missing fashion items with compatibility and diversity in both shapesand appearances

 

同样,研究者还探索了对穿着搭配关系作为时尚图像合成任务时的上下文语义信息的应用。

特别地,研究者将此问题描述为图像修复和补全过程,其目的是根据图像周围的像素填充图像中的缺失区域。

值得注意的是,在生成一整套穿着搭配的同时对不同单品之间的搭配兼容性进行建模是一件极具挑战性的事情,因为它还需要在同一个模特身上匹配生成各种款式和外观的服装单品。

因此,研究者先对问题进行了简化,即先对穿有整套衣服图像做图像修复(重建),以此对穿搭兼容性进行建模。其目的是渲染生成一组逼真的服装单品,以填充图像中缺失服装单品的区域,同时能够和已穿着的服装搭配得当(图1)。

这项技术可用于各种时尚应用,例如:时尚推荐、服装设计和服装风格迁移。例如,修复后的图像可以作为中间结果(例如,用作在 Google / Pinterest 上进行查询时的输入,或者向时尚设计师们显示以激发其创作灵感的图像)从数据库中检索出相似单品,以此进行时尚推荐。

 

与修复刚性物体图像缺失区域不同,生成一件与周围穿着搭配的服装单品(柔性物体)是更具挑战的,因为:

(1)研究者需要生成一组多样化的结果,但多样性受到搭配上的兼容性的限制;(2)更重要的是,整个生成过程本质上是一个多模态问题——给定一张缺少一件服装单品的时尚图像,可以生成各种款式和外观都不同,但是能够和已有穿着搭配的服装单品。

例如,在图 1 的第二个示例中,一个模特可以拥有不同类型的下半身着装(例如短裤或裤子),并且下半身着装类型在视觉外观上可以具有各种颜色(例如蓝色、灰色或黑色)。

因此,对缺失时尚单品的生成,需要对款式和外观都进行建模。但是,对款式和外观同时生成,往往会因为二者的耦合导致无法很好的处理服装的款式和边界,得不到理想的结果,对于这一点,以前的研究者也有讨论。

 

Figure 2: FiNet framework

 

为解决这些问题,研究者提出了图 2 所示的两阶段框架 FiNet,该框架通过对图像中缺失的时尚单品进行像素级填充,生成一组具有多样性、逼真且兼顾搭配兼容性的时尚单品,值得一提的是,研究者利用款式生成网络(图 3)和外观生成网络(图 4)依次生成款式和外观。

每个生成网络都包含一个生成器,该生成器通过重建来生成新图像,并且利用两个编码器网络相互交互以保证生成多样性的同时,还能保持视觉上的穿搭协调。

 

Figure 3: The shape generation network

在第一个编码器学习隐空间表征的时候,我们通过另一个编码器的隐变量对其进行约束,而第二个编码器的输入则是来自缺失项的相邻服装单品(穿搭环境)。

这些隐空间表征与相应的生成器共同学习,作为生成器生成过程的条件。

这种方式使得两个生成网络都可以学习不同服装之间的高层级搭配兼容性信息,从而使该框架能够生成既具有多样性(多模态输出)且具有很强的搭配兼容性的时尚单品,如图 1 所示。

研究者提供了在 DeepFashion 数据集上的大量实验结果,与最新的时尚图像生成方法相比,证实了该方法的有效性。

 

 

2

研究方法

FiNet 要完成的任务是,在给定的一张某处时尚单品缺失的图像(例如对给定区域进行检测得到相应单品)中,通过对该缺失单品周边的时尚单品的信息来生成搭配协调且不失多样性(例如,不同的款式,如长裙、中长裙、短裙;不同的外观,比如深色、浅色、点纹样等等)的真实单品图。

每一个生成的单品图都要求能够无缝地贴合到之前的图像中,并且能够保证和其他周围的服饰搭配的风格协调。

因此,这些生成的图像能够被用到诸如时尚推荐任务中去。另外,和刚性物体相比,服饰以其易变形的特性,导致其在同时兼顾款式和外观的图像生成任务中,经常有一些不太自然的痕迹。

 

鉴于此,研究者提出了一种双阶段网络——FiNet,包含了款式生成网络和外观生成网络两个部分,可以有效的达到生成图像搭配兼容的同时且不失多样性的要求。图 2 是对整个框架结构的说明。接下来,本文将对各部件做详细说明。

2.1 款式生成网络

如图 3 所示,为整个款式生成网络的概览图。它包含了一个基于编码-解码器的生成器,可以通过重建的方式生成新的图像;另外,它还包含了两个编码器,相互协作地为生成器提供生成条件,以此来产生搭配兼容而又多样的生成结果。

更加正式地讲,款式生成网络的目的是学习一个映射,该映射在将款式编码器的输出作为条件的情况下,能够把有缺失的外形信息以及人体信息映射到一个完整的外形信息图 S。

为了得到人体的分割结果以训练该生成器,研究者使用了现有的人体解析器模型(该模型在 LIP 数据集上预训练)。

特别地,假设输入的图像,研究者首先通过该解析器模型得到人体各部位的掩码信息,然后,通过合并相应区域,最终得到 8 个大区域的掩码:面部头发,上身皮肤(躯干+手臂),下身皮肤(腿),帽子,上衣(上衣+外套),下身衣服(裤子+裙子+连衣裙),鞋子,和背景(其他)。

以上 8 种解析结果最终构成了 8 个通道的二值化图 S,其中,它被用作重建时候的标准。输入通过把相应服饰所在区域的掩码去掉之后得到。

例如,在图 1 中,当我们想合成上衣服装时,款式上下是通过删除可能出现上衣的区域产生的,这个区域由覆盖上衣和上身皮肤的边界框来表示。

此外,为了在款式重建中保留人的姿势和身份信息,我们采用类似服装无关的表征,其包括人体姿态热力图,以及头发和脸部区域。

更具体地说,姿势表示包含在 COCO 关键点检测数据集上训练的现成姿势估计器所提取的 18 通道热力图,之后由同一个人体解析器生成面部和头发的二值掩码,其面部和头发区域中的像素设置为 1。

然后将两个表示连接起来形成,其中是通道数。

直接使用输入标准的图像到图像转换网络重新构建 S,即,虽然看起来可行,但只会产生单一的输出而没有多样性。

我们从变分自动编码器中汲取灵感,并使用隐向量进一步调整生成过程,通过推理期间的采样来保证多样性。

由于我们的目标是生成各种款式的服装以填补缺失的区域,我们训练生成来编码款式信息。

给定输入款式通过 S 产生,是缺失时尚商品的真实二值分割图),款式编码器输出,我们利用重参数化技巧来使得损失函数可微,即

通常在训练期间被迫遵循高斯分布 N (0,1),这样可以在未知的测试时间进行随机抽样:

其中是 KL 散度函数。

将学习的隐代码与款式上下文和人物表示一起输入到生成器,以生成填充缺失区域的完整款式图

之后,通过最小化和 S 之间的交叉熵分段损失来优化款式生成器:

其中是分割图的通道数。款式编码器和生成器可以通过最小化下面的函数共同优化:

其中是一个平衡两个损失项的权重。在测试时,可以直接从 N (0,1) 采样生成进行多元化的结果生成:

 

虽然款式生成器现在能够合成不同的服装款式,但它没有考虑视觉上搭配兼容性关系。因此,许多生成的结果在视觉上没有吸引力(实验部分将会举例展示)。

为了缓解这个问题,我们通过使用建模搭配兼容性关系来约束采样过程。我们称当前图像中的现有时装为上下文服饰(contextual garments),记作

之后,我们引入款式兼容性编码器,目的是学习合成服装款式和上下文服装之间的相关性。

直觉上,如果时尚服装与那些上下文服装相协调,其款式可以通过观察这些背景服装来确定。

例如,考虑一套服装中的男式背心,缺失服装的款式更可能是男士短裤而不是裙子。这在概念上类似于文本域中的两个流行的模型,即连续词袋(CBOW)和 skip-gram 模型——给出一个单词围绕的上下文单词,这些模型学习预测该词的表示,反之亦然。

我们首先使用 S 提取上下文服装的图像片段。然后,我们通过将这些图像片段从帽子到鞋子来组成上下文服装的视觉表示

兼容性编码器然后将投射到兼容性隐向量,即。为了使用作为生成的先验,我们假设目标服装及其上下文服装应该共享隐空间(这类似于在不成对的图像到图像转换中的共享隐空间假设)。

因此,公式 3 中的 KL 散度可以修改为,

这个损失函数惩罚编码的的分布与编码的兼容性隐向量相差太远。

的共享隐空间也可以被视为一个兼容性空间,它类似于使用度量学习判断一对商品是否相近。

只不过我们不需要减少两个兼容样本之间的距离,而是最小化两个分布之间的差异,这是因为我们需要随机性来生成不同的多模态结果。

通过优化公式 4,生成不仅编码了服装中嵌入的固有兼容性信息,还能实现在推理阶段由于不可用时的采样——我们可以简单地从中抽取,并使用计算最终的合成款式图。

所以,所生成的服装布局在视觉上就会与现有的上下文服装兼容且多样。我们最终的款式生成网络的目标函数是:

2.2 外观生成网络

如图 2 所示,我们将款式生成网络生成的含有缺失项的款式输入到外观生成网络中以生成兼容协调的外观。

网络具有与我们的款式生成网络几乎相同的结构,包括用于重建的编码器-解码器结构的生成器,用于将期望外观编码到隐向量中的外观编码器,以及外观兼容性编码器,它将上下文服装的外观投射到款式兼容性向量中。

然而,外观生成在以下方面中和款式生成不同:首先,如图 4 所示,外观编码器将缺少的衣服本身作为输入而不是衣服的款式(实际上是掩码),以产生外观相关的隐向量作为的输入用于外观重建。

 

Figure 4: Our appearance generation network

 

此外,与通过最小化交叉熵损失重建分割图的不同,外观生成器侧重于给定缺少感兴趣的时尚物品的外观上下文,在RGB空间中重建原始图像 I。

此外,输入到的人体特征由实际真实分割图(在测试时,我们使用由我们的第一阶段生成的分割图,因为 S 不可用),以及面部和头发 RGB 图像组成。

与仅使用关于人身体形状的关键点相比,分割图包含更丰富的信息,并且面部和头发图像约束网络使其在重建图像中保留人的身份

为了可以重建 I,我们采用了风格转移中广泛使用的损失函数,其中包含感知损失,最小化I和在感知神经网络中相应特征图之间的距离,以及与其风格信息相匹配的风格:

其中是图像 I 在 ImageNet 上预训练的 VGG-19 网络中第 l 个的特征图,当 l ≥1 时,我们使用 conv1_2,conv2_2,conv3_2,conv4_2 和 conv5_2 的特征,而。在第二项中, 是 Gram 矩阵,它计算向量化的特征图之间的内积:

其中与感知损失项里的定义相同,是特征图通道的个数。公式 6 中的是平衡不同特征权重的超参数,并按之前的惯例自动设置。

通过最小化公式 6,我们使得重建的图像具有与原始图像类似的高层内容信息以及详细的纹理和图案。

此外,为了保证合成外观的多样性(即不同的纹理、颜色等),我们还利用外观兼容性编码器,将上下文服装作为输入来调节生成一个 KL 散度项。我们的外观生成网络的目标函数是:

与款式生成网络类似,我们的外观生成网络通过建模外观兼容性,可以在推理过程中基于服装分割图和外观隐向量生成各种具有穿搭兼容协调的服装:,其中

2.3 讨论

在共享完全相同的网络架构和输入时,款式兼容性编码器和外观兼容性编码器建模兼容性的不同方面,因此,他们的权重不共享。

在训练期间,我们使用真实的分割图作为外观生成器的输入来重建原始图像。在推理期间,我们首先使用款式生成网络生成一组不同的分割(即穿搭款式布局信息)。

然后,以这些生成的人体穿搭款式布局为条件,用外观生成网络在其上渲染出纹理,从而产生具有各种款式和不同外观的穿搭协调的合成时尚图像。

一些例子在图 1 中给出。除了可以利用各种重建损失函数来修复缺失区域来得到有意义的多样性与兼容性的图像之外,我们的框架还能够将服装渲染到具有不同姿势和形状的人身上。

 

请注意,我们的框架不涉及对抗性训练(难以稳定训练过程)或双向重建损失(需要精心设计的损失函数和选定的超参数),从而使训练更容易,更快。

如果涉及对抗性训练,我们期望得到更真实的结果,如果输出和隐向量是可逆的,我们期望更多样化的合成结果。

 

3

结论

在本文中,研究者提出了 FiNet,一个两阶段生成网络,用于合成搭配兼容且多样的时尚图像。通过分解款式和外观生成过程,FiNet 可以在目标区域中修复具有各种款式和外观的服装单品。

此外,研究者通过集成兼容性模块,该兼容性模块能够将服装搭配信息编码到网络中,从而使得生成的服装单品从款式和外观上都能和其他已经存在身上的服装在兼容空间(隐空间)中相近,因此保证了搭配兼容性。

FiNet 的卓越性能表明,它基本上可以应用于具有搭配兼容性要求的时尚设计辅助工作和新时尚单品推荐任务中。

另外,在未来可以探索一种无需依赖现成人类解析器的完全无监督方法,这将是一个有趣的研究方向。

CV细分方向交流群

52CV已经建立多个CV专业交流群,包括:目标跟踪、目标检测、语义分割、姿态估计、人脸识别检测、医学影像处理、超分辨率、神经架构搜索、GAN、强化学习等,扫码添加CV君拉你入群,如已经为CV君其他账号好友请直接私信,

(请务必注明相关方向,比如:目标检测

喜欢在QQ交流的童鞋,可以加52CV官方QQ群:805388940。

(不会时时在线,如果没能及时通过验证还请见谅)


长按关注我爱计算机视觉

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值