目录
SwapNet: Garment transfer in single view images(ECCV 2018)又名 SwapNet: Image Based Garment Transfer
SwapNet: 基于单视图图像的换装(ECCV 2018)
作者提出了Swapnet,一个框架,可在具有任意身体姿势,形状和衣服的人的图像之间转移服装。服装转移是一项具有挑战性的任务,需要(i)使服装的特征与身体的姿势和形状脱钩,以及(ii)在新的身体上逼真的服装质地合成。作者提出了一种神经网络架构,可通过两个特定于任务的子网来解决这些子问题。由于获取在不同身体上显示相同服装的图像对很困难,因此作者提出了一种新颖的弱监督方法,该方法通过数据增强从单个图像生成训练对。作者提出了在不受约束的图像中进行服装转移的第一种全自动方法,而无需解决困难的3D重建问题。
图1. 流水线由两个阶段组成:(1)变形阶段,它生成与所需姿势一致的服装分割;(2)纹理阶段,它使用所需服装图像中的服装信息合成与前一阶段服装分割一致的详细服装纹理。
给定一个包含穿着期望服装的人的图像A和一个以目标体型和姿势描绘另一个人的图像B,生成一个由与A中穿着期望服装的人相同的人组成的图像B′。A和B可以描绘穿着任意服装的不同体型和姿势的人。
条件生成模型使用编码器-解码器类型的网络架构,以转换输入图像以直接生成输出像素变得越来越流行。最近的工作,如pix2pix在图像翻译任务中显示了高质量的结果,其中输出的结构和形状与输入的偏差不大。然而,本文的服装转移任务提出了独特的挑战。成功的转换需要对输入图像进行显著的结构更改。如前面的工作(做你自己的普拉达:结构连贯的时尚合成)所示,将所需衣服的形状和纹理细节直接转移到目标身体上会给网络带来太多的负担,从而导致转换的质量不佳。(分开处理形状与纹理的必要性同样在FiNet论文中提及,生成同时进行,通常会因为二者的耦合而无法处理好衣服的形状和边界)
作者提出了一个两级流水线(图1)来分别处理形状和纹理合成。具体地说,作者认为服装和身体分割提供了一个所需服装和目标身体的简洁和必要的表示。因此,作者首先对这些分割进行操作以执行所需的形状变化,即在目标身体形状和姿势为B但衣服在A中的情况下生成衣服分割。假设图像A的衣服分割和图像B的身体分割是给定的或由先前的工作计算的(通过人类解析器)。在第二阶段,作者提出了一个纹理化网络,该网络以合成的服装分割和所需服装的图像作为输入,生成最终的传输结果。
图2. 阶段1模块的架构。变形模块由一个双路径U-net组成,该U-net对人体分割有较强的依赖,对服装分割有较弱的依赖。
变形模块
流水线的第一个阶段变形模块,根据A的服装分割 A cs A_{\text{cs}} Acs和B身体分割 B b s B_{bs} Bbs进行生成,得到B的服装分割 B ′ cs {B'}_{\text{cs}} B′cs,该分割与A的服装分割形状和标签具有一致性,同时严格遵循图2中B的身体形状和姿势。作者把这个问题看作是一个条件生成过程,在这个过程中,衣服应该受到 A cs A_{\text{cs}} Acs的制约,而身体则受到 B bs B_{\text{bs}} Bbs的制约。
作者使用双路径U-net网络来解决双调节问题。双路径网络由两个编码器流组成,一个用于身体,一个用于衣服,还有一个解码器,该解码器将两个编码的隐藏表示组合起来生成最终输出。用一个18通道分割mask来代表服装,不包括皮带或眼镜等小配件。给出这个18通道分割图,其中每个通道包含一个服装类别的概率图,服装编码器生成512×16×16大小的特征图(512大小的16×16特征)。给定一个彩色编码的3通道身体分割,身体编码器同样生成一个512×16×16大小的特征映射来表示目标身体。这些编码的特征映射被连接起来并通过4个residual blocks传递。然后对得到的特征映射进行上采样,以生成所需的18通道服装分割。
图3. 第一阶段分割可视化。(a) A的服装分割;(b)B的人体分割;(c)通过变形模块生成B的服装分割;(d)B的原始服装分割。
生成的图像强烈地依赖于人体分割,而微