使用多尺度图块对抗性损失的衣物变形的制作方法

文档序号:25023752发布日期:2021-05-11 16:48阅读:90来源:国知局
使用多尺度图块对抗性损失的衣物变形的制作方法

本公开总体上涉及计算机领域,并且更具体地涉及使用多尺度图块(patch)对抗性损失的衣物变形(warping)。



背景技术:

随着计算设备技术的进步,与访问实体零售店的常规方法相比,在线购物已成为更受消费者青睐的机制。然而,尽管在线购物平台提供了便利,但是消费者无法感知由产品图像表示的特定时尚物品在被消费者穿戴时实际将如何显现。为了向消费者提供时尚物品将如何显现的预览,常规的虚拟试衣间使用三维模型来估计消费者的身体形状。可以使用各种不同的方法来生成这种常规的三维模型,诸如使用深度感测相机、使用二维图像估计消费者的三维身体形状等等。尽管这些方法使得能够模拟消费者所穿戴的时尚物品,但是这种常规方法与收集和注释三维图像数据所需的硬件和计算资源的高成本相关联。

为了减轻这些问题,一些常规方法考虑了二维、红-绿-蓝(rgb)图像,而没有利用任何三维数据。这些常规方法的目的是生成将产品图像覆盖到消费者的图像的对应区域上的新图像。但是,这样的图像覆盖方法无法准确地表示诸如消费者的身体姿势之类的消费者图像的重要方面以及诸如与产品材料相适应的形变、产品的视觉图案等等之类的产品图像的重要方面。因此,仅考虑二维信息的常规方法往往输出被覆盖在消费者上的产品的图像,该产品的图像不能表示该产品在由消费者实际穿戴时将如何显现的逼真外观。因此,在线购物消费者被提供了不能准确地表示由个体消费者所穿戴的时尚物品的真实世界外观的时尚物品预览。



技术实现要素:

描述了生成穿戴服装的人物的合成图像。基于图像的虚拟试穿(ibvton)系统接收描绘穿戴服装制品的人物的二维参考图像。ibvton系统还接收该人物要穿上的目标服装的二维图像,其可以表示消费者在在线市场上正考虑购买的时尚物品。为了生成穿戴目标服装的人物的合成图像,ibvton系统使用几何匹配模块来生成目标服装的变形图像。几何匹配模块实现了使用多尺度图块对抗性损失而被训练来识别相同服装制品的变形的和非变形的图像之间的相似性和差异的机器学习模型,该多尺度图块对抗性损失通过从相同服装制品的变形的和非变形的图像的对应相同位置中采样多个尺寸的图块而被确定。几何匹配模块基于描绘人物的参考图像来生成目标服装的变形图像,使得目标服装被变形以适应该人物的特定身体姿势和特性。

为了计算几何匹配模块在生成目标服装的变形版本时所考虑的多尺度图块对抗性损失,ibvton系统考虑了各种图像对,每个图像对包括穿戴服装制品的人物的参考图像以及描绘未被该人物穿戴的服装制品的产品图像。ibvton系统还被配置为得出人物的服装不可知(agnostic)的人物表示,其描述人物的姿势、人物的身体形状以及与人物的个体身份相对应的一个或多个保留区域,诸如头发和面部区域。ibvton系统通过将产品图像映射到服装不可知的人物表示来生成变形衣物,并且通过从参考图像提取服装制品的掩码来生成真值(groundtruth)变形衣物。多尺度的图块对从来自完全落在变形衣物和真值变形衣物的衣物区域内的区域(例如,来自不包括变形衣物的边缘或真实变形衣物的边缘的区域中)的所生成的变形衣物和真值变形衣物的对应相同区域中被采样。通过比较每个图块对并且确定来自变形衣物的图块是否与来自真值变形衣物的图块共享相同的局部纹理,多尺度图块对抗性损失被最终计算出。

ibvton系统通过提供来自共享相同局部纹理的相同对应区域的图块对作为正训练示例并且提供来自不同区域或者不共享局部纹理的图块对作为负训练示例,来使用图块对训练几何匹配模块。ibvton系统然后实现试穿模块,该试穿模块被配置为生成合成图像,该合成图像描绘了人物穿戴变形目标服装而不是由人物在参考图像中穿戴的服装。

本发明内容以简化的形式介绍了一些概念,这些概念将在下面的“具体实施方式”中被进一步描述。这样,本发明内容既不旨在标识所要求保护的主题的必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

附图说明

参考附图描述具体实施方式。

图1是示例实现中的环境的图示,该示例实现可操作以采用本文所描述的衣物变形技术。

图2图示了其中图1的基于图像的虚拟试穿系统使用本文所描述的技术生成穿戴变形服装的人物的合成图像的示例实现。

图3图示了由图1的基于图像的虚拟试穿系统所生成的服装不可知的人物表示的示例实现。

图4图示了图1的基于图像的虚拟试穿系统的几何匹配模块的示例实现。

图5图示了图1的基于图像的虚拟试穿系统的试穿模块的示例实现。

图6图示了使用多尺度图块对抗性损失来训练图1的基于图像的虚拟试穿系统的几何匹配模块的示例实现。

图7是描绘了用于使用本文所描述的技术来生成穿戴变形服装的人物的合成图像的示例实现中的过程的流程图。

图8是描绘了用于使用本文所描述的技术来利用多尺度图块对抗性损失训练几何匹配模块以生成合成图像的示例实现中的过程的流程图。

图9图示了包括示例设备的各种组件的示例系统,该示例设备可以被实现为参考图1-图8描述和/或利用以实现本文所描述的技术的计算设备。

具体实施方式

总览

随着计算设备技术的进步,在线市场和电子商务平台已成为比物理地访问实体零售店更受青睐的购物机制。经由在线市场和电子商务平台购物的一个缺点是缺乏在实体零售店处所提供的物理环境,诸如物理更衣室,购物者在做出购买决策之前可以在物理更衣室中试穿服装制品以预览服装的合身性。为了解决该缺点,常规方法使得用户能够使用计算机生成的图形来预览服装制品将如何显现。这些常规方法使得用户能够自己体验穿戴不同的衣物而无需用户物理地穿戴服装。为此,常规的试穿系统使用计算机图形来使用从三维模型得出的几何变换和物理约束以构建用户和要由用户穿戴的服装的三维模型。然而,这些常规的试穿系统要求人工输入和大量的计算和网络资源来收集构建三维模型和构建模型所需的信息。

为了减轻这些常规虚拟试穿系统所需要的计算和网络资源量,一些常规系统将生成用户穿戴目标服装的预览图像的方法制定为条件性图像生成问题。在这种条件性图像生成方法中,给定两个图像,一个是人物图像并且另一个是目标服装图像,新的图像被合成,其目的是在维持诸如纹理、徽标、文字等的服装产品特性的同时保留人物的原始身体形状和姿势。一些常规方法使用诸如图像到图像转换之类的条件性图像生成技术使目标服装形变以与人物图像对准。为了考虑由这些条件性图像生成技术导致的模糊性和其他伪像,各种方法都考虑了像素到像素损失(例如,l1和l2损失)、感知损失和对抗性损失。但是,这些常规方法仍然将合成图像绘制得具有明显的模糊性,并且不能充分保留目标服装的特性。此外,这些常规方法受限于在人物图像和目标服装在合成之前大致对准的情况下生成合成图像。因此,这样的常规方法不能处理向用户提供目标服装将如何显现的实时预览所需的大尺度变换或按需变换。

因此,描述了使用多尺度图块对抗性损失的衣物变形。ibvton系统接收描绘穿戴服装的人物的参考图像和参考图像中所描绘的人物将要穿上的目标服装的图像。为了生成参考图像中描绘的人物穿戴目标服装而不是在参考图像中最初描绘的服装的合成图像,ibvton系统生成参考图像中所描绘的人物的服装不可知的人物表示,并使用服装不可知的人物表示作为模型以用于以留下参考图像中所描绘的人物和目标服装的视觉特性的方式生成目标服装的变形版本。使用由卷积神经网络输出的可学习的薄板样条变换使目标服装的变形版本形变,以使目标服装与服装不可知的人物表示所描述的属性对准。从目标服装和穿戴目标服装的人物的成对图像训练用于卷积神经网络的参数,而无需指示穿戴目标服装的人物和目标服装的图像中的显式对应兴趣点。

本文在几何匹配模块的上下文中描述了卷积神经网络,其以服装不可知的人物表示和目标服装的图像作为输入,并生成目标服装的姿势相关的变形版本以及构成掩码,该构成掩码指示在合成图像中要被保留的目标服装的细节。构成掩码使得能够输出平滑的合成图像,并且适应不同的身体形状和身体姿势的变换,使得ibvton系统输出的合成图像保留参考图像中所描绘人物的个人身份。

几何匹配模块被配置为通过使用多尺度图块对抗性损失进行训练来输出逼真的合成图像,该合成图像留下服装纹理细节以更好地对目标服装图像中的细粒度的复杂之处进行建模。通过从变形衣物和对应的真值变形衣物的图像的相同对应位置采样多尺度的图块对,确定多尺度图块对抗性损失。针对服装物品的真值变形衣物可以是指穿戴该服装物品的模特的图像,因此,其考虑了人物的身体形状和身体姿势,从而提供在为人物穿戴服装时应当如何可视地显现该服装物品的外观的真实世界基线。

从这些采样的图块,可以确定局部损失,以指示图块对是否在预测的变形衣物和真值变形衣物中都表示相同的局部区域并具有相同的局部纹理。多尺度图块对抗性损失与像素到像素损失一起被使用以生成目标服装的变形图像,其随后能够被ibvton系统的试穿模块使用以输出合成图像,该合成图像描绘了人物穿戴变形目标服装而不是原始参考图像中描绘的服装。以这种方式,本文所描述的技术生成合成图像,该合成图像不遭受常规方法所生成的视觉变形和渗色伪像,同时减少了这样做所需的网络和计算资源量。

示例环境

图1是在可操作来采用本文所描述的技术的示例实现中的数字媒体环境100的图示。所图示的环境100包括可以在各种配置中被实现的计算设备102。例如,计算设备102可以被配置为台式计算机、膝上型计算机、移动设备(例如,假设诸如平板电脑或移动电话之类的手持式配置)等等。因此,计算设备102的范围可以从具有大量存储器和处理器资源的全资源设备(例如,个人计算机,游戏控制台)到具有有限存储器和/或处理资源的低资源设备(例如,移动设备)。另外,尽管示出了单个计算设备102,但是计算设备102可以表示多个不同的设备,诸如用于相对于图9所描述的“在云上”执行操作的多个服务器。

计算设备102被图示为包括ibvton系统104。ibvton系统104表示计算设备102的接收人物的参考图像106和目标服装108的图像并生成合成图像110的功能性,该合成图像110描绘了参考图像106中的人物穿戴目标服装108而不是该人物在参考图像106中穿戴的服装112。通过在维持参考图像106中的人物的诸如头发和脸部区域之类的独特个人特性的同时考虑参考图像106中的人物的身体形状和姿势的方式使目标服装108变形来生成合成图像110。

为了生成合成图像110,ibvton系统104采用表示模块114、采样模块116、几何匹配模块118、试穿模块120和绘制模块122。表示模块114、采样模块116、几何匹配模块118、试穿模块120和绘制模块122各自至少部分地在计算设备102的硬件中(例如,通过使用处理系统和计算机可读存储介质)被实现,如下面关于图9进一步详细描述的。

在给定参考图像106的情况下,表示模块114被配置为生成参考图像106中所描绘的人物的服装不可知的人物表示。服装不可知的人物表示包括描述身体形状、身体姿势、描述了与服装112无关的、参考图像106中的人物的外观的某些区域(例如,面部和头发区域)的信息,如下面关于图3进一步详细描述的。表示模块114还被配置为针对服装制品生成变形衣物和真值变形衣物,其能够被ibvton系统104使用来训练几何匹配模块118,如下面关于图4-图6进一步详细描述的。

采样模块116被配置为从表示模块114接收变形衣物和真值变形衣物,并且从变形衣物和真值变形衣物的对应相同位置采样图块对。从完全落在衣物区域内的相应变形衣物和真值变形衣物的位置以相同的尺寸采样每个图块对,使得样本不包括表示衣物的边缘的变形衣物或真值变形衣物的任何部分或其他未描绘衣物的图像伪像。采样模块116从变形衣物和真值变形衣物随机采样多个不同尺寸的图块对,其被ibvton系统104使用,以使用多尺度图块对抗性损失和最小绝对偏差或l1损失来训练几何匹配模块118,如下面关于图5进一步详细描述的。多尺度图块对抗性损失是指局部损失,该局部损失确定来自变形衣物的图块和来自真值变形衣物的图块是否表示相同的局部区域并共享相同的纹理。

在利用多尺度图块对抗性损失进行训练时,几何匹配模块118表示基于参考图像106中描绘的人物的服装不可知的人物表示来生成目标服装108的变形版本的功能性。通过利用多尺度图块对抗性损失训练几何匹配模块118,ibvton系统104能够经由弹性变换来生成目标服装108的变形版本以适合参考图像106中所描绘的人物的身体形状和姿势,同时保持目标服装108的纹理细节,诸如材料属性、徽标、刺绣等。以这种方式,由几何匹配模块生成的目标服装108的变形版本表示目标服装108的变形版本与参考图像106中描绘的人物的身体形状和姿势对准时的粗略对准。

几何匹配模块118然后将变形目标服装传送给试穿模块120,该试穿模块120表示用以生成穿戴变形目标服装的人物的图像的功能性。为此,试穿模块120生成服装不可知的人物表示和变形服装的级联输入,以将穿戴变形服装的人物的图像和表示从穿戴变形服装的人物的输出图像中得出的没有人物的变形服装的掩码的构成掩码作为输出进行绘制。通过使用构成掩码,试穿模块120将变形服装和穿戴变形服装的人物的图像融合在一起,以改善对准并且从穿戴变形目标服装的人物的所得图像中消除模糊。以这种方式,试穿模块120避免了从常规方法生成的合成图像的不自然外观,常规方法将变形服装直接粘贴到目标人物图像上,或者使用通过编码器-解码器网络的单次前向传递生成合成图像。为了确保穿戴目标服装的人物的所得合成图像的逼真外观,ibvton系统104被配置为使用感知损失和最小绝对偏差或l1损失来训练试穿模块120,如下面关于图6进一步详细描述的。

绘制模块122表示用以输出由ibvton系统104考虑和生成的信息的显示的功能性,诸如参考图像106、目标服装108的图像和合成图像110。绘制模块122还被配置为针对ibvton系统104生成和输出用户界面,该用户界面可以包括用于在给定参考图像106和目标服装108的图像的情况下生成合成图像110并显示由ibvton系统104考虑和生成的信息的控件。

参考图像106、目标服装108的图像、合成图像110以及由ibvton系统104处理或生成的其他信息可以被存储在计算设备102的存储装置中,如下面关于图9进一步详细描述的。备选地或附加地,ibvton系统104被配置为将参考图像106、目标服装108的图像、合成图像110以及下面关于图2-图8更详细描述的附加信息提供给远程存储位置,以供计算设备102或不同计算设备的后续取回和/或访问。例如,ibvton系统104可以经由网络126将信息传送给远程存储装置124,或者直接传送给不同的计算设备。

已经考虑了示例数字媒体环境,现在考虑根据本文公开内容的各方面的可用于生成穿戴目标服装的人物的合成图像的示例系统的讨论。

图2图示了根据本文所描述的技术的可用于生成合成图像的示例系统200,该合成图像在给定穿戴不同服装的人物的二维图像和目标服装的二维图像的情况下描绘了穿戴变形目标服装的人物。在所图示的示例中,系统200包括如关于图1引入的ibvton系统104的模块,诸如表示模块114、采样模块116、几何匹配模块118和试穿模块120。系统200可以被实现在任何合适的设备或设备组合上。在一个示例中,系统200被实现在一个计算设备(例如,图1的计算设备102)上。在另一示例中,系统200被实现在多于一个的计算设备上,如下面关于图9更详细地描述的。

在示例系统200中,ibvton系统104接收参考图像106。根据一个或多个实现,参考图像106与参考图像106中所描绘的人物要穿上的目标服装(诸如目标服装108)的指示一起被接收。备选地或附加地,ibvton系统104可以在接收参考图像106之后接收目标服装的指示。参考图像106表示描绘人物的二维图像,并且可选地描绘穿戴一个或多个服装制品的人物。目标服装108也是二维图像,其描绘了未被人物穿戴的至少一个目标服装制品,诸如从在线市场提供的任何其他图像对象或伪像中隔离的服装制品的预览图像。

在接收到参考图像106时,表示模块114被配置为针对参考图像106中所描绘的人物生成服装不可知的人物表示202。服装不可知的人物表示202表示由ibvton系统104使用来使目标服装形变以生成穿戴变形目标服装的人物218的图像的信息,该图像诸如图1中所图示的合成图像110。具体而言,服装不可知的人物表示202包括针对参考图像106中所描绘的人物的姿势热图204、身体形状206以及一个或多个保留区域208,其共同表示用作先验的一组特征,以限制ibvton系统104的生成合成图像110的过程。

图3图示了由表示模块114从参考图像106生成的服装不可知的人物表示202的示例实现300。服装不可知的人物表示202表示由ibvton系统104使用以使目标服装形变以生成穿戴变形目标服装的人物218的图像的信息,该图像诸如图1中所图示的合成图像110。具体而言,服装不可知的人物表示202包括针对参考图像106中所描绘的人物的姿势热图204、身体形状206以及一个或多个保留区域208,其共同表示用作先验的一组特征,以限制ibvton系统104的生成合成图像110的过程。

姿势热图204表示描述参考图像106中描绘的人物的身体姿势的信息,其因此影响要在穿戴变形目标服装的人物218的图像中表示的目标服装的形变。在一些实现中,表示模块114使用已知的姿态估计器,诸如在z.cao、t.simon、s.-ewei和y.sheikh,realtimemultiperson2dposeestimationusingpartaffinityfields,(cvpr,2017)中描述的姿态估计器,来生成姿态热图204。姿势热图204可以包括表示多个关键点的坐标,这些关键点继而表示参考图像106中描绘的人物的姿势。在一些实现中,表示模块114使用18个关键点来生成姿势热图204。为了利用其空间布局,每个关键点被变换为具有围绕关键点的hxh像素邻域(诸如11x11像素)的热图,其中h表示任何合适数目的像素,该热图在其他地方被填充有一和零。从关键点生成的每个热图还被堆叠成x通道姿势热图,其由表示模块114输出作为姿势热图204,其中x对应于表示模块114在生成姿势热图204中使用的多个关键点。

身体形状206表示描述参考图像106中描绘的人物的身体的各个区域(例如,臂部、腿部、躯干等)的信息。为了生成身体形状206,表示模块114被配置为实现人类解析器以计算人类分割图,其中不同区域表示对应的不同身体部位。在一些实现中,表示模块114使用已知技术来实现人类解析器。表示模块114然后将使用人类解析器得出的分割图转换为单通道二进制掩码,其中二进制掩码中的“一”指示人类身体区域(除了面部和头发),并且二进制掩码中的“零”表示参考图像106的没有描绘人类身体部位的区域。表示模块114然后将二进制掩码下采样到较低的分辨率,这有助于避免在人类身体的如由身体形状206指示的某些部分与目标服装冲突时可能发生的伪像。然后,由表示模块114输出该下采样的二进制掩码,作为身体形状206。

保留区域208表示描述参考图像106中描绘的人物的物理属性的信息,诸如面部属性、皮肤属性、头发属性等,这些信息使得ibvton系统104能够在生成合成图像110时维持参考图像106中描绘的人物的身份。为了生成保留区域208,表示模块114实现人类解析器,诸如被实现来得出身体形状206的人类解析器。使用人类解析器,表示模块114以在生成穿戴变形目标服装的人物218的图像时要被留下的特征图的形式提取在参考图像106中描绘的人物的面部、皮肤和头发区域的红色、绿色、蓝色(rgb)通道。

姿势热图204、身体形状206和一个或多个保留区域208中的每个都是可用于描述参考图像106中描绘的人物的外观的特征图,而与参考图像106中描绘的人物所穿戴的任何服装无关,诸如在图1中图示的服装112。表示模块114将由姿势热图204、身体形状206以及一个或多个保留区域208所表示的特征图的尺寸调整为共同的分辨率,并将这些特征图级联以形成服装不可知的人物表示202。在数学上,服装不可知的人物表示可以根据等式1来表示,其中p表示服装不可知的人物表示,m表示级联的特征图的高度,n表示级联的特征图的宽度,并且k表示针对特征图的通道数。

然后,服装不可知的人物表示202由几何匹配模块118可使用以留下参考图像106中描绘的人物的身体形状和姿势的方式生成目标服装的变形图像。

返回图2,表示模块114将服装不可知的人物表示202和目标服装108一起传送至几何匹配模块118。几何匹配模块118被配置为生成变形目标服装210,其表示使目标衣物108变形以符合服装不可知的人物表示202的结果。为了使几何匹配模块118输出视觉上逼真的变形目标服装210,ibvton系统104被配置为使用多尺度图块对抗性损失来训练几何匹配模块118,多尺度图块对抗性损失是使用由采样模块116生成的多尺度图块212而被计算的。多尺度图块212表示不同图块对的集合,其中每个图块对包括从变形衣物214的区域采样的一个图块和从真值变形衣物216的对应相同区域采样的另一图块。

根据一个或多个实现,变形衣物214表示由几何匹配模块118生成的变形目标服装210的实例,使得由几何匹配模块118输出的信息随后可以被ibvton系统104使用以进一步训练几何匹配模块。根据一个或多个实现,真值变形衣物216表示由试穿模块120生成的穿戴变形目标服装的人物218的真值表示,如下面进一步详细描述的。以这种方式,由试穿模块120输出的信息由ibvton系统104可使用以进一步训练几何匹配模块。ibvton系统104被配置为使用从不同的变形衣物214和真值变形衣物216对中采样的多尺度图块212来训练几何匹配模块118。因此,为了初始地训练几何匹配模块118,ibvton系统104从远程位置、诸如从不同的计算设备经由网络126接收不同的变形衣物214和真值变形衣物216对,如图1中所图示。

对于每对变形衣物214和真值变形衣物216,采样模块116从相应的变形衣物214和真值变形衣物216的对应相同位置伪随机地提取变化尺寸的图块对。从变形衣物214或真值变形衣物216的仅包括衣物(例如,不包括所描绘的衣物的边缘或包括不与衣物相对应的其他伪像的部分,诸如在真值变形衣物中被表示的人物的部分、图像的背景部分等)的区域中采样多尺度图块212中的每个多尺度图块。然后,ibvton系统104使用多尺度图块212来利用多尺度图块对抗性损失训练几何匹配模块118,以生成变形目标服装210,如下面关于图4-图6更详细地描述的。

经训练的几何匹配模块118因此被配置为在给定服装不可知的人物表示202和目标服装108的情况下生成变形目标服装210,并将变形目标服装210传送给试穿模块120。虽然变形目标服装210与参考图像106中描绘的人物的身体形状206大致对准,但是试穿模块120表示ibvton系统104的用以将变形目标服装210和服装不可知的人物表示202融合在一起以输出合成图像的功能性,诸如穿戴变形目标服装的人物218的图像。在给定服装不可知的人物表示202和变形目标服装210的级联输入的情况下,试穿模块120同时绘制人物图像并预测构成掩码,并使用构成掩码将绘制的人物图像与变形目标服装210融合在一起,以输出穿戴变形目标服装210的人物。如下面关于图6进一步详细描述的,ibvton系统104被配置为训练试穿模块120以最小化穿戴变形目标服装的人物218的图像与对应于变形目标服装210的真值变形衣物216之间的差异。

已经考虑了可用于生成穿戴目标服装的人物的合成图像的示例系统,现在考虑根据本文公开内容的各方面的生成穿戴目标服装的人物的合成图像的示例实现。

图4图示了根据本文所描述的技术的生成变形目标服装210的图1的ibvton系统104的几何匹配模块118的示例实现400。为了生成变形目标服装210,几何匹配模块118接收服装不可知的人物表示202和将由服装不可知的人物表示202所表示的人物穿上的目标服装402的二维图像。以这种方式,目标服装402表示图1中所图示的目标服装108的实例。

几何匹配模块118包括两个卷积神经网络404和406,其被配置为从相应的服装不可知的人物表示202和目标服装402中提取特征。具体地,卷积神经网络404和406表示接收输入图像(例如,服装不可知的表示202或目标服装402)并输出描述接收到的输入图像的高级别特征的特征图的功能性。在数学上,卷积神经网络404和406中的每个所输出的特征图可以如等式2中所述地被表示,其中hxw表示相应输入图像的d维局部描述符的密集空间网格:

在一些实现中,卷积神经网络404和406各自表示预训练的vgg-16卷积神经网络。以这种方式,卷积神经网络404和406以暹罗配置而被布置,使得输入的服装不可知的人物表示202和目标服装402被传递通过共享参数的两个相同的网络。然后,卷积神经网络404和406产生的图像特征被传递到相关性匹配层408,相关性匹配层408表示将卷积神经网络404和406输出的特征组合成单个张量以输入到回归网络410的功能性。

在生成单个张量时,相关性匹配层408最初标识由卷积神经网络404和406输出的描述符之间的所有相似性对。相关性匹配层408然后从相似性对中计算相似性得分并将相似性得分归一化,使得不明确的匹配被大大降低权重。从数学上讲,在卷积神经网络404和406的输出是l2归一化密集特征图的示例实现中,由相关性层输出的相关性图可以被表示为其在每个位置处都包含一对个体描述符fa∈fa和fb∈fb的标量积,如等式3所述。

cab(i,j,k)=fb(i,j)t(fa(ik,jk)(等式3)

在等式3中,(i,j)和(ik,jk)指示在hxw密集特征图中的个体特征位置,并且k=h(jk-1)+ik表示(ik,jk)的辅助索引变量。为了从成对的相似性得分中去除不明确的匹配,几何匹配模块118在每个空间位置处应用相关性图的按通道的归一化以产生最终的试验性(tentative)对应性图fab。这种按通道的归一化最初将负相关清零,然后进行l2归一化。

然后,相关性匹配层408输出的单个张量被传送到回归网络410。回归网络410表示几何匹配模块118的用以在生成变形目标服装210时估计针对服装不可知的人物表示202和目标服装402的空间变换参数的功能性。在一些实现中,从被包括在相关性匹配层408输出的单个张量中的试验性对应性列表中估计这些空间变换参数。空间变换参数是利用神经网络从卷积层的两个堆叠块开始估计的,然后进行批量归一化和整流线性单元(relu)非线性,并且最后使用完全连接的层来完成,其回归到空间变换参数。以这种方式,回归网络410被配置为使用卷积回归网络来估计针对服装不可知的人物表示202和目标服装402的空间变换。备选地或附加地,回归网络410可以被配置为使用完全连接的层。

回归网络410然后将空间变换参数传递到几何匹配模块118的薄板样条(tps)变形模块412。tps变形模块412使用空间参数来变形目标服装402的二维图像并且输出变形目标服装210。tps变形模块412首先估计用于生成变形目标服装210的仿射变换。在一些实现中,仿射变换表示能够对平移、旋转、非各向同性缩放和剪切进行建模的n自由度线性变换,其中n表示任何合适的整数(例如,6)。

然后,tps变形模块412使用估计的仿射变换来使用已知技术,诸如经由图像重采样层,使服装不可知的人物表示202和目标服装402的图像对准。然后,tps变形模块412将服装不可知的人物表示202和目标服装402的对准图像传递通过第二几何估计网络,该第二几何估计网络被配置为估计薄板样条变换的18个参数。tps变形模块412最后通过将两个变换合成为薄板样条来输出将目标服装402变形为变形目标服装210所需的几何变换的估计。

在数学上,变形目标服装210的输出可以如等式4中所描述地被表示,其中c表示目标服装,表示变形目标服装210,θ表示由回归网络410输出的空间变换参数,并且t表示tps变形模块412输出的薄板样条。

为了提高几何匹配模块118输出的变形目标服装210的质量,ibvton系统104被配置为使用l1损失414,以端对端的方式训练几何匹配模块118的管线(pipeline)。l1损失414表示变形目标服装210与针对变形目标服装210的真值,诸如图2中的真值变形衣物216,之间的逐像素损失。在数学上,l1损失414可以如等式5所述地被描述,其中p表示服装不可知的人物表示,并且ct表示真值变形衣物216。

除了使用逐像素l1损失训练几何匹配模型118外,ibvton系统104还被配置为使用多尺度图块对抗性(mspa)损失416在监督学习环境中训练几何匹配模型118,多尺度图块对抗性(mspa)损失416基于采样模块116生成的多尺度图块212来确定,如下面关于图6更详细地描述的。

图5图示了根据本文所描述的技术的图1的ibvton系统104的试穿模块120的生成描绘穿戴变形目标服装的人物218的合成图像的示例实现500。为了生成穿戴变形目标服装的人物218的合成图像,试穿模块120接收由表示模块114生成的服装不可知的人物表示202和由几何匹配模块118生成的变形目标服装210。

试穿模块120将服装不可知的人物表示202和变形目标服装210的级联输入传递到编码器-解码器网络502,并输出预测的构成掩码504和人物图像506。如本文所述,构成掩码504表示变形目标服装210的分割掩码,其可以与人物表示202对比,该人物表示202对要穿上变形目标服装210的人物的所有周围环境进行编码,而不是对变形目标服装210本身进行编码。

在一些实现中,编码器-解码器网络502可以被实现为卷积神经网络,诸如使用unet框架架构来实现。在这样的实现中,编码器-解码器网络包括收缩路径和扩展路径。收缩路径遵循卷积网络的架构,并表示重复应用多个卷积的功能性,每个卷积之后跟随整流线性单位(relu)并进行下采样以增加被包括在输出特征图中的特征通道的数目。编码器-解码器网络502的扩展路径表示由收缩路径输出的特征图的上采样,然后执行上卷积以减少特征通道的数目并裁剪特征图以考虑损失。编码器-解码器网络502的最终层可以被用来将特征结果特征向量映射到期望数目的图像类别标签(例如,被指派给预测的构成掩码504和人物图像506的每个像素的分类标签)。

试穿模块120可使用构成掩码504来生成合成图像110,该合成图像110包括人物图像506和变形目标服装210,其被融合在一起作为合成的最终结果,表示穿戴变形目标服装的人物218,如关于图2所描述的。在数学上,包括穿戴变形目标服装的人物218的合成图像110可以被表示为等式5中的io,其中ir表示人物图像506,m表示构成掩码504,并且⊙表示逐元素矩阵乘法。

为了训练试穿模块120,ibvton系统104被配置为使用l1损失414和感知损失510两者以最小化合成图像110和真值图像512之间的差异。在一些实现中,感知损失510可以被定义为如等式6中的lvgg。

在等式6中,φi(i)标示视觉感知网络φ中的第i层的图像i的特征图,其可以被配置为用于大尺度图像识别的深度卷积网络。在等式6中,it表示用于合成图像110的真值图像512,由io表示。卷积网络的各层i≥1分别表示“conv1_2”、“conv2_2”、“conv3_2”、“conv4_2”和“conv5_2”。每个卷积层被用来学习对输入图像的内容信息进行编码的特征表示。经编码的表示由ibvton系统104可使用以更好地理解在生成变形衣物时要被变形的图像。为了留下目标服装的尽可能多的特性,通过在m上应用l1正则化||1-m||1,构成掩码m被偏斜以选择变形服装。针对试穿模块120的所得损失函数被表示为如公式7中的ltom。

已经考虑了试穿模块可用于为参考图像中所描绘的人物和一件目标服装生成合成图像,现在考虑根据本文所描述的技术的确定用于训练几何匹配模块的多尺度图块对抗性损失。

图6图示了根据本文所描述的技术的ibvton系统104的示例实现600,其确定用于训练几何匹配模块118的多尺度图块对抗性损失。在所图示的示例中,几何匹配模块118接收人物表示202和店内衣物602作为输入,并输出针对店内衣物的变形衣物604。店内衣物602表示由参考图像106中的人物穿戴的服装112的图像,其与被该人物穿戴无关地被显示。

在给定服装不可知的人物表示202和店内衣物602作为输入的情况下,几何匹配模块118被配置为以与被用来生成穿戴变形目标服装的人物218的图像相似的方式输出变形衣物604,如关于图2所述。然后,采样模块116使用变形衣物604作为输入来生成用于在确定多尺度图块对抗性损失416时使用的多尺度图块606。

作为推论,试穿模块120接收从中得出服装不可知的人物表示202的参考图像106以及针对变形衣物604的真值变形掩码608,诸如由试穿模块120所生成的真值图像,如关于图5所述。试穿模块120通过使用试穿模块120的掩码构成模块508处理参考图像106和真值变形掩码608来生成真值变形衣物610。然后,采样模块116使用真值变形衣物610作为输入以生成用于在确定多尺度图块对抗性损失416时使用的多尺度图块612。

采样模块116被配置为:在仅包括变形衣物604或真值变形衣物610的衣物部分的区域中的相同对应位置处,从相应的变形衣物604和真值变形衣物610随机采样多尺度图块606和612。为了确定多尺度图块对抗性损失416,采样模块116被配置为局部图块鉴别器,其识别来自变形衣物604和真值变形衣物610的相同对应区域的裁剪图块对作为正示例,以及来自不同区域的图块对作为负示例。在数学上表示,多尺度图块对抗性损失416由等式8中的lms-adv表示。

在等式8中,由采样模块116标识的正示例被表示为(dpatch(.)=1),并且负训练示例被表示为(dpatch(.)=0)。多尺度图块606和612可以被表示为大小为si×si的并且j对应于大小为si×si的多个裁剪图块。以这种方式,在输出变形目标服装210时,ibvton系统104可以使用多尺度图块对抗性损失416来训练几何匹配模块118。

已经考虑了生成穿戴变形目标服装的人物的合成图像的示例细节,现在考虑一些示例过程来说明技术的各方面。

示例过程

以下讨论描述了可以利用先前描述的系统和设备来实现的技术。每个过程的各方面可以以硬件、固件、软件或其组合来实现。这些过程被示为指定由一个或多个设备执行的操作的一组框,并且不必限于所示的用于由各个框执行操作的次序。在以下讨论的各部分中,可以对图1-图6进行参考。

图7描绘了使用本文所描述的技术的生成合成图像的示例实现中的过程700,该合成图像描绘了穿戴目标服装的变形图像的人物。描绘穿戴服装制品的人物的参考图像被接收(框702)。例如,ibvton系统104的表示模块114接收描绘穿戴服装112的人物的参考图像106。该人物要穿上的目标服装的图像也被接收。例如,表示模块114接收目标服装108。参考图像106和目标服装108两者都表示二维图像。在一些实现中,可以从实现ibvton系统104的计算设备的用户接收参考图像106,并且可以从在线市场接收目标服装108。

然后,使用利用多尺度图块对抗性损失训练的几何匹配模块来生成目标服装的变形图像(框910)。例如,ibvton系统104的几何匹配模块118获得针对参考图像106中描绘的人物的服装不可知的人物表示202,并使用服装不可知的人物表示202,通过将目标服装108映射到服装不可知的人物表示202来生成变形目标服装210。在一些实现中,服装不可知的人物表示202由表示模块114生成,并被传送给几何匹配模块118。几何匹配模块118被配置为通过如下方式来生成变形目标服装210:使用多尺度图块对抗性损失416和l1损失414而被训练以配置薄板样条变换,以使目标服装108变形从而和服装不可知的人物表示202相符。多尺度图块对抗性损失416可以使用由ibvton系统10的采样模块116生成的多尺度图块214来确定,诸如图8的流程所图示。

然后,目标服装的变形图像与参考图像中的人物对准(框708)。例如,ibvton系统104的试穿模块120使变形目标服装210和服装不可知的人物表示202对准,并输出穿戴变形目标服装的人物218的图像,其表示由ibvton系统104输出的合成图像110。为此,试穿模块120通过使服装不可知的人物表示202和变形目标服装210运行通过编码器-解码器网络来生成预测的构成掩码504以及人物图像506。然后,试穿模块120实现掩码构成模块508,以通过使用由构成掩码504指定的参数将人物图像506与变形目标服装210融合在一起来生成合成图像。然后,描绘了穿戴目标服装的变形图像而不是穿戴服装制品的人物的合成图像被输出(框710)。例如,ibvton系统104的绘制模块122输出合成图像110的显示,其描绘了穿戴变形目标服装的人物218。

图8描绘了根据本文所描述的技术使用多尺度图块对抗性损失来训练几何匹配模块以输出针对一件目标服装的变形衣物的示例实现中的过程800。多个图像对被接收,其中每个图像对包括描绘穿戴服装制品的人物的参考图像和描绘未被该人物穿戴的服装制品的产品图像(框802)。例如,ibvton系统104的表示模块114接收描绘穿戴服装112的人物的参考图像106。该人物要穿上的目标服装的图像也被接收。例如,表示模块114接收目标服装108。参考图像106和目标服装108都表示二维图像。在一些实现中,可以从实现ibvton系统104的计算设备的用户接收参考图像106,并且可以从在线市场接收目标服装108。

然后选择图像对中的一个图像对(框804)。表示模块114例如选择包括参考图像106和目标服装108的图像对。对于所选择的图像对,从参考图像中得出服装不可知的人物表示(框806)。表示模块114例如生成服装不可知的人物表示202,其包括描述参考图像106中所描绘的人物的身体姿势的姿势热图204、限定参考图像106中所描绘的人物的身体形状的身体形状206、以及与参考图像106中描绘的人物的脸部、头发和皮肤区域相对应的保留区域208。

然后,通过将产品图像映射到服装不可知的人物表示来生成变形衣物(框808)。ibvton系统104的几何匹配模块118例如获得针对参考图像106中描绘的人物的服装不可知的人物表示202,并使用服装不可知的人物表示202,通过将目标服装108映射到服装不可知的人物表示202来生成变形目标服装210。然后,针对服装制品确定真值变形衣物(框810)。在一些实现中,真值变形衣物作为来自产品图像对的一个图像而被提供给ibvton系统104,该产品图像对诸如是被隔离的服装物品的图像和穿戴该服装物品的模特的图像,其中穿戴该服装物品的模特的图像表示针对被隔离的服装物品的图像的真值变形衣物。

然后,从变形衣物和真值变形衣物中的相同对应位置采样多个图块对(框812)。ibvton系统104的采样模块116例如从变形衣物604生成多尺度图块606,并且从真值变形衣物610生成多尺度图块612。每个多尺度图块606具有多尺度图块612中的对应图块,其表示相应的变形衣物604和真值变形衣物610的整个衣物区域的样本。采样模块116对多尺度图块212进行采样的位置以伪随机的方式被标识,并被相互比较以确定图块是否共享相同的局部纹理,并因此对应于被采样的衣物的相同区域。ibvton系统104被配置为针对多个图像对中的不同图像对重复对多尺度图块202进行采样的该过程,如返回框804的箭头所指示的。

使用多尺度图块,几何匹配模块被训练以使用利用至少一些图块计算出的多尺度图块对抗性损失来输出给定一件目标服装的变形衣物(框814)。ibvton系统104通过提供来自共享相同局部纹理的相同对应区域的图块对作为正训练示例并且提供来自不同区域或者不共享局部纹理的图块对作为负训练示例,使用多尺度图块212训练几何匹配模块118。除了使用多尺度图块对抗性损失416训练几何匹配模块118之外,ibvton系统104还可以使用l1损失414训练几何匹配模块118。以这种方式,几何匹配模块118被训练以输出与服装不可知的人物表示202大致对准的变形目标服装的视觉上逼真的图像,以由试穿模块120进行后续处理,以生成描绘穿戴变形目标服装的人物218的合成图像110。

已经描述了根据一个或多个实现的示例过程,现在考虑可以被利用来实现本文所描述的各种技术的示例系统和设备。

示例系统和设备

图9总体上在900图示了示例系统,其包括表示可以实现本文所描述的各种技术的一个或多个计算系统和/或设备的示例计算设备902。这通过包括基于图像的虚拟试穿(ibvton)系统104来图示。计算设备902可以是例如服务提供方的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统和/或任何其他合适的计算设备或计算系统。

所图示的示例计算设备902包括彼此通信耦合的处理系统904、一种或多种计算机可读介质906和一个或多个i/o接口908。尽管未被示出,但是计算设备902还可以包括系统总线或将各种组件彼此耦合的其他数据和命令传输系统。系统总线可以包括不同总线结构中的任何一种或不同总线结构的组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用多种总线架构中的任何一种的处理器或本地总线。还可以设想各种其他示例,诸如控制线和数据线。

处理系统904表示使用硬件执行一个或多个操作的功能性。因此,处理系统904被图示为包括可以被配置为处理器、功能块等的硬件元件910。这可以包括在硬件中作为使用一个或多个半导体形成的专用集成电路或其他逻辑设备的实现。硬件元件910不受形成它们的材料或其中所采用的处理机制的限制。例如,处理器可以包括(多个)半导体和/或晶体管(例如,电子集成电路(ic))。在这样的上下文中,处理器可执行指令可以是电子可执行指令。

计算机可读存储介质906被图示为包括存储器/存储装置912。存储器/存储装置912表示与一种或多种计算机可读介质相关联的存储器/存储容量。存储器/存储组件912可以包括易失性介质(诸如随机存取存储器(ram))和/或非易失性介质(例如,只读存储器(rom)、闪存、光盘、磁盘等)。存储器/存储组件912可以包括固定介质(例如,ram、rom、固定硬盘驱动器等)以及可移除介质(例如,闪存、可移动硬盘驱动器、光盘等)。可以按照下面进一步描述的各种其他方式来配置计算机可读介质906。

(多个)输入/输出接口908表示允许用户向计算设备902输入命令和信息并且还允许使用各种输入/输出设备将信息呈现给用户和/或其他组件或设备的功能性。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风、扫描仪、触摸功能性(例如,被配置为检测物理触摸的电容或其他传感器)、相机(例如,其可以采用可见或诸如红外频率的不可见波长将运动识别为不涉及触摸的手势)等等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等等。因此,可以按照下面进一步描述的各种方式来配置计算设备902以支持用户交互。

在本文中,可以在软件、硬件元件或程序模块的一般上下文中描述各种技术。通常,这样的模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等。如本文所使用的术语“模块”、“功能性”和“组件”通常表示软件、固件、硬件或其组合。本文所描述的技术的特征是与平台无关的,这意味着可以在具有各种处理器的各种商业计算平台上实现这些技术。

所描述的模块和技术的实现可以被存储在某种形式的计算机可读介质上或通过某种形式的计算机可读介质来进行传输。计算机可读介质可以包括计算设备1002可以访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。

“计算机可读存储介质”可以是指与仅信号传输、载波或信号本身相比能够实现信息的持久和/或非瞬态存储的介质和/或设备。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移除和不可移除介质之类的硬件和/或以适于存储诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据之类的信息的方法或技术所实现的存储设备。计算机可读存储介质的示例可以包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能磁盘(dvd)或其他光学存储装置、硬盘、磁盒、磁带、磁盘存储装置或其他磁存储装置、或其他存储设备、有形介质或适合于存储所需信息且可以由计算机访问的制造产品。

“计算机可读信号介质”可以是指被配置为例如经由网络将指令传输到计算设备1002的硬件的信号承载介质。信号介质通常可以在诸如载波、数据信号或其他传输机制之类的调制数据信号中体现计算机可读指令、数据结构、程序模块或其他数据。信号介质还包括任何信息递送介质。术语“调制数据信号”是指具有以将信息编码为信号的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、rf、红外和其他无线介质之类的无线介质。

如前所述,硬件元件910和计算机可读介质906表示以硬件形式实现的模块、可编程设备逻辑和/或固定设备逻辑,其可以在一些实施例中被采用来实现本文所述的技术的至少一些方面,诸如执行一个或多个指令。硬件可以包括集成电路或片上系统的组件、专用集成电路(asic)、现场可编程门阵列(fpga)、复杂可编程逻辑器件(cpld)以及硅或其他形式的其他实现硬件。在此上下文中、硬件可以操作为执行由硬件所体现的指令和/或逻辑所定义的程序任务的处理设备以及被利用来存储用于执行的指令的硬件(例如,先前描述的计算机可读存储介质)。

前述的组合也可以被采用来实现本文所描述的各种技术。因此,软件、硬件或可执行模块可以被实现为由一个或多个硬件元件910和/或在某种形式的计算机可读存储介质上体现的一个或多个指令和/或逻辑。计算设备902可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,可以例如通过使用处理系统904的计算机可读存储介质和/或硬件元件910至少部分地以硬件来实现由计算设备902作为软件可执行的模块的实现。指令和/或功能可以由一个或多个制造产品(例如,一个或多个计算设备902和/或处理系统904)可执行/可操作,以实现本文所述的技术、模块和示例。

本文所描述的技术可以由计算设备902的各种配置支持,并且不限于本文所描述的技术的特定示例。如下所述,该功能性还可以全部或部分地通过使用分布式系统来实现,诸如经由平台916在“云”914上实现。

云914包括和/或表示用于资源918的平台916。平台916抽象了云914的硬件(例如,服务器)和软件资源的底层功能性。资源918可以包括在远离计算设备902的服务器上执行计算机处理时可以利用的数据和/或应用。资源918还可以包括通过互联网和/或通过订户网络(诸如蜂窝或wi-fi网络)所提供的服务。

平台916可以对资源和功能进行抽象以将计算设备902与其他计算设备连接。平台916还可以用于对资源的缩放进行抽象,以为经由平台916实现的对资源918遇到的需求提供对应的缩放级别。因此,在互连设备实施例中,本文所描述的功能性的实现可以分布在整个系统900中。例如,该功能性可以部分地在计算设备902上以及经由对云914的功能性进行抽象的平台916来实现。

结论

尽管已经用特定于结构特征和/或方法动作的语言描述了本发明,但是应当理解,所附权利要求书中定义的发明不必限于所描述的特定特征或动作。相反,特定的特征和动作作为实现所要求保护的发明的示例形式而被公开。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1