祖雅妮 张毅
摘要: 现有的虚拟试穿技术需要用户提供人体图像和服装图像,且存在生成图像质量低、泛化性差等缺点。为了解决现有问题,文章提出了一种基于文本图像预训练模型的虚拟试穿方法。用户只需输入描述服装的文本,即可获取试穿效果。此外,通过编辑GAN-Inversion优化生成的隐向量,能够保障生成与输入图像质量上的一致性。定性实验结果表明,文章提出的方法能够有效地保留输入人体图像的特征,并生成与文本描述一致的服装。在定量实验中,该方法在语义信息、IoU和FID等评价指标上均优于现有方法。
关键词: 虚拟试穿;GAN-反转;预训练模型;CLIP;GAN-编辑;文本图像模型
中图分类号: TS941.2 文献标志码: A
文章编号: 10017003(2023)080099-08
引用页码: 081201 DOI: 10.3969/j.issn.1001-7003.2023.08.012
虚拟试穿是一项利用计算机视觉和机器学习预测指定体型上服装效果的技术。使用虚拟试穿技术能够为消费者提供更个性化和交互性的购物体验,同时降低了实体试穿的需求,具有广泛的研究和应用价值。在现有的虚拟试穿研究中,有一种基于三维模型的方法,即通过采集人体数据模型来进行三维物理仿真,以此预测服装在人体上的效果。该方法虽具备较高精度,但需要昂贵的三维采集设备,且在数据安全上存有一定风险[1]。相较而言,基于二维图片的虚拟试穿技术具有使用方便、成本低廉等优点,但在精度上有所下降。针对这一问题,学界将深度学习技术广泛应用至虚拟试穿领域。Han等[2]提出了VITON(virtual try-on network)框架,即生成与输入人体位姿相适应的扭曲服装图像进行粗配准后,再进行纹理和细节的微调。基于此项工作,Minar等[3]在粗配准阶段添加了几何匹配模块,提高了服装与人体的贴合效果;Choi等[4]提出了VITON-HD,即在最终生成图像时添加提升图像质量的模块,提高了图像的分辨率和细节;Dong等[5]提出了MG-VTON,允许输出多种位姿的试穿图像。但上述工作基于“图像+图像”的输入,即需要输入指定的服装图像,限制了方法的应用范围。
近年来,随着深度学习的发展,大語言模型(Large Language Model,LLM)得到了广泛应用,如对话模型ChatGPT[6]及对比语言图像预训练模型(Contrastive Language-Image Pre-Training,CLIP)[7]等。这些语言模型通过无监督或自监督学习的方式,使用了大量网络直接获取的数据进行训练,在泛化能力上远超过了在指定数据集上的传统监督训练。由此,语言模型被广泛应用到各项研究中,如语音[8]和图像生成[9]等。“本文+图像”的训练模式改变了传统“图像+图像”的方法,即可同时生成描述的服装及试穿效果,扩展虚拟试穿的应用范围。在图像生成领域,生成式对抗网络(Generative Adversarial Network,GAN)[10]因其优异性能而得到普遍应用。Karras等[11]针对GAN的网络架构进行了改进,提高了生成图片的质量并降低了对数据量的需求。然而,如何更稳定和有效地控制生成的图像一直是研究的难点。Tov等[12]提出了GAN反转(GAN-Inversion)的概念,即构造一个编码器结构,直接在GAN的隐空间中对隐向量进行编辑,从而提高了图像效果。
相较于现有研究,本文基于CLIP将虚拟试穿的输入范围设定为“图像图像”扩展到“文本图像”,并结合GAN-Inversion构造的编码器,在Patashnik等[9]的工作基础上,使用神经网络直接对GAN-Inversion生成的隐向量进行优化,提高生成图像的质量。然后,利用定性与定量实验验证现有方法的可行性。
1 虚拟试穿方法框架
1.1 现有虚拟试穿方法框架分析
现有的基于二维图像输入的虚拟试穿遵循以下主要流程:1) 输入指定的人体图片和服装图片;2) 进行人体位姿提取和人体区域分割;3) 根据人体位姿对服装进行扭曲并与人体图片进行粗配准;4) 精调服装纹理和匹配细节。
本文以VITON为例,其流程如图1所示。
在真实的使用场景中,虚拟试穿需要保持输入的人体图像位姿和其他外部特征(如脸部、头发)不变,最终输出的图像与原始输入的人体图像除了在服装上有所不同,其余特征均保持一致。首先,VITON对人体图像进行位姿提取,并使用GAN网络预测最终服装效果。然后对输入的衣物与人体进行粗配准,获得大致的形态。最后通过卷积神经网络进行精调,丰富纹理细节和姿态匹配。
1.2 基于文本图像预训练模型的虚拟试穿整体架构
本文提出的方法基于文本图像预训练模型CLIP,将虚拟试穿的输入范围扩展到文本+图像。该方法的整体架构主要分为三步骤(图2)。首先,对输入的人体图像(I)进行位姿提取(P)和图像分割(S)。提取的位姿用于约束身体的各部分
尺寸、形态及最终生成服装的形态。这一步骤的主要目的为保持输入与输出图像的一致性。其次,为使用文本描述作为输入,添加了用于提取文本和图像特征的编码器,分别为Ct及Ci。文本图像编码器将用于约束服装图像的生成,使其符合文本描述。再次,为了提高生成图像的质量,采用GAN-Inversion,将原始的图像输入编码器(E)得到隐向量wini,用映射模块(M)生成相同维度的向量woffset,对得到的隐向量进行编辑。最后得到的隐向量w被输入到生成器(G)中以生成最终图像G(w)。本文的主要目标在于优化映射模块(M),最小化文本转图像的误差,即:
式中:W表示GAN隐空间。
1.2.1 文本图像编码(C)
文本图像编码模块需要匹配输入的文本和输出的服装图像特征,使得最终的输出图像符合文本描述。本文直接使用了预训练的视觉语言模型CLIP[7]用于特征提取。
输入的文本t将通过CLIP的文本编码器Ct输出高维的特征向量vt=Ct(t);同样,生成图像G(w)将通过CLIP的图像编码器Ci输出特征向量vw=Ci(G(w))。输出的向量用于衡量文本图像之间的匹配程度并构造误差函数,其中特征向量的维度为dim(v)=640[7]。
1.2.2 位姿提取(P)
为确保输入与输出的人体图像在位姿上保持一致,需要对原始人体位姿进行提取分析。本文采用了预训练的基于ResNet50的Detectron2模型作为位姿提取模块(P)。该模型最多可以解析人体24个独立部位,如左小臂、右大臂等。本文仅提取上身14个独立部分的位姿。经过解析后,可得到14个通道,长×宽为112×112的矩阵(长、宽分别为112像素的图像)。为了更好地展示结果,本文将其转化为热力图并进行可视化,如图3所示。
1.2.3 图像分割(S)
为了加强输出图像与输入图像的一致性,本文采用了图像分割模块(S),将人体图像分成头部(脸部+头发)区域和身体区域。使用SegNet[13]作为图像分割模块,最终输出2通道的二值图像,尺寸与原图像相同(256×256),如图4所示。分割后的头部区域将用于最终的图像拼接,以进一步提高输出与输入图像的吻合度。
1.2.4 编码器(E)
近年来,GAN-Inversion[12]技术在图像编辑领域备受关注。该技术可以直接编辑图像对应的隐向量,较调整GAN网络的整体模型参数更为高效和直接。本文将GAN-Inversion用于虚拟试穿中,将原始输入图像I通过编码器(E)输出为隐向量wini。在具体模型选择上,采用了E4e[12]作为图像的编码器,输出的隐向量的维度为dim(wini)=512。
1.2.5 生成器(G)
生成器(G)本身就是GAN网络中的生成网络,通常是一个卷积神经网络。输入隐向量w并输出最终的图像G(w)。具体来说,本文采用了预训练的图像生成模型StyleGANv2[14]。通过使用预训练的生成器模型,可以减少训练时间和计算资源,从而生成高质量的图像。
1.2.6 映射模块(M)
直接将编码器(E)生成的隐向量winit输出到生成器(G)中,得到的图片效果通常很差。因为虽然编码器可以将真實的图像映射到隐空间W′中,但W′是一个刻意创造出来的空间,与GAN原始的隐空间并不一致。因此,为了保证生成图像的质量,需要通过映射模块(M)对生成的隐向量进行优化。映射模块(M)是一个全连接层的神经网络,层数与生成器(G)一致;映射模块将输出与隐向量wini相同维度的一个偏移向量woffset,用以优化隐向量并使其靠近真正的隐空间W,进而提升图像质量。
2 损失函数设置
2.1 语义约束
为使生成的图像符合文本的描述特征,需要优化图像文本之间的特征误差。输入的文本及输出的图像分别经过CLIP编码之后,得到特征向量Ci(G(w))及Ct(t)。衡量两个向量之间的误差通常采用余弦距离[9],语义约束的损失函数如下式所示:
2.2 位姿约束
输入与输出图像的位姿是否一致直接影响了用户的使用体验。为保持整体的位姿一致,需要保证身体各个部位在尺寸、形状及位置上前后不变。据此,构造位姿误差函数为:
式中:NB表示提取出的独立的人体部位的数目(本文中NB=14);Di()表示提取的第i个部位的特征表示。具体来说,Di()将输出与原始图像相同尺寸的二维矩阵。
对于衡量矩阵之间的误差,通常采用逐元素平方误差均值的形式,即假设A,B为两个M×N的矩阵,A,B之间的误差表示为:
2.3 图像分割约束
虽然分割的图像可用于最终的图像拼接,但为了增强输入与输出图像的一致性,同时为了保证进行图像拼接时更加贴合,基于分割后的人体区域,定义了损失函数。具体如下式所示:
式中:Sbody()表示对图像进行分割后的身体部分的区域;Shead()表示对图像进行分割后的头部(即面部与头发)的区域。
body与head使生成图像在整体形态上与输入图像保持一致。
2.4 隐向量正则化
虽然映射模块(M)对原始的隐向量进行偏移操作,但是需要注意,最终生成的隐向量w不应与初始的隐向量winit偏差过大,否则生成的图像将产生较大差异。为此,在对woffset进行优化时,需要对其自身添加正则化限制:
2.5 最终损失函数
基于上述分析,最终得到的映射模块(M)的损失函数为:
式中:λ表示各项损失函数的权重系数。
3 结果与分析
3.1 实验环境设置
3.1.1 数据集
虽然本文使用了多个预训练模型,但考虑到服装领域模型的预训练数据集差异,因此还需要以下3种数据集对预训练的模型进行微调以提升性能。1) 图像生成数据集:使用VITON数据集对生成器(G)与编码器(E)进行训练。本文使用整个训练集对StyleGANv2和E4e模型进行训练,并取测试集中的100张图片进行最终的性能评估。2) 图像分割数据集:为使图像分割模块更适用于人体输入,本文将预训练的SegNet在DeepFashion[15]数据集上进行微调。为提升最终性能,在进行训练时仅保留了与VITON中类似的数。在分割标签的选择上,仅保留了头部、身体及背景。3) 文本测试数据集:对于文本数据,本文采用了Fashion-Gen[16]数据集用于测试文本图像一致性误差。Fashion-Gen包含了293 000个文本图像对,类似地,本文仅选择了与VITON类似风格的数据用于测试。此外,在文本的选择上,剔除了非服装类型的描述(如“黑色鳄鱼纹双层皮手镯,采用针扣式扣合”);对于高度专业化的描述(如“黑色方形纹理皮革背心。前面带有拉链口袋。后领口带有挂环和按扣装置。内里完全衬里,线迹色调一致”),CLIP模型难以有效提取特征,因此在进行测试时也进行了剔除,仅选择了易于理解的文本数据。
3.1.2 参数设置
对于生成器StyleGANv2,在进行训练时首先将VITON数据集中的数据裁剪为256×256大小的尺寸,训练共迭代450 000次;对于编码器E4e,设置学习率η=10-2;对于分割模型SegNet,设置学习率η=10-4,共训练20轮模型收敛。对于映射模块(M),为全连接的4层神经网络,尺寸上与StyleGANv2的生成网络相同,具体的各项误差函数的权重系数设置为λclip=λoffset=1,λhead=λbody=λpose=10,学习率η=5×10-2;训练过程使用Adam优化器[17]。
3.1.3 对比方法及评价指标
本文对最终收敛的模型进行多次、多种类的输入,检测其是否满足使用要求。为探究方法的有效性,选择了图像生成模型ReStyle-E4e[18]作为比较基准。此外,为了探究映射模块(M)的效果,对比了不添加映射模块(M),即由编码器(E)直接输出隐向量生成图像的方法。
在定性实验中,主要进行以下两方面的对比:1) 给定相同的人体输入图像,对比不同文本输入下的输出效果,探究不同模型对于文本的解析能力;2) 给定相同的文本输入,对比不同人体图像下的输出效果,探究不同模型对于保持位姿一致性的能力。
在定量实验中,本文对几种方法进行了定量分析。具体的数量指标包括:1) 文本图像语义一致性,即衡量输出图像的服装描述与输入文本的匹配程度。因图像和文本通过CLIP编码器后均生成一维的特征向量,因此可以通过余弦距离来衡量两个向量的间距。2) 位姿一致性,即衡量输入和输出人体图像所提取位姿的一致程度,采用计算机视觉中常用的交并比(IoU)进行衡量。3) 图像质量,即衡量输出图像是否与输入图像在质量和风格上保持一致。本文采用了FID(Fr’echet Inception Distance)对输入与输出图像的相似性进行衡量,即采用了预训练的Inception-v3模型[19]对输入与输出图像的数据分布一致性进行衡量。
3.2 实验结果定性分析
在输入时,将不同位姿的人体图片及不同颜色、材质、类型的服装文本描述纳入测试范围,最终的实验结果如图5所示。根据实验结果,输入图像和输出图像在位姿上基本保持一致;输出的服装符合输入的文本描述;输出图像并未发生严重的错位或伪影。此外,本文的方法能够较为有效地解析输入文本的描述并生成符合要求的服装。如图5中第2行与第4行生成了对应颜色的服装;第4行生成相应的款式和图案。
需要注意到尽管大部分输出符合描述,但是也存在错误的情况。如图5中第2行第4列,第5行第5列等。这主要是由于预训练模型的训练数据分布与实验使用的测试数据分布不是绝对一致,存在泛化性不够的问题。
图6、图7分别展示了本文提出的方法与其他的方法的对比结果。图6为给定相同人体输入图像,对比不同文本输入条件下的结果;图7为给定相同文本输入,对比不同人体输入图像的结果。
通过对比研究,本文提出的方法能够很好地匹配输入文本的语义信息,并同时保持原有输入人体图像的位姿。而若直接使用E4e模型输出隐向量而不进行优化,输出的图像会在语义信息上存在不匹配的情况。如在图6第1行和第2行在直接使用E4e模型时,最终生成的服装图像颜色与描述不一致,即E4e与ReStyle-E4e无法保持与输入图像一致的位姿和外貌。由圖7可见,ReStyle-E4e输出的图像在肤色、发型上与原有图像存在较大差异,而本文提出的方法在语义信息保留和位姿,外貌一致性上表现较好。
3.3 实验结果定量分析
定量实验的结果如表1所示。实验结果表明,提出的方法在语义一致性,位姿一致性及图像质量等方面均优于现有方法,与定性研究的结论一致。在图像质量(FID)上,本文提出的方法与现有方法相比提升了77.3%及77.1%,表明了对生成的隐向量优化的有效性。
4 结 论
本文研究了基于文本图像预训练模型的虚拟试穿方法,通过输入人体图像和服装的描述性文本生成相应的试穿图像,与现有的基于图像输入的方法相比,具有更大的使用弹性。同时,本文在GAN隐空间内直接进行隐向量的优化,提高了输出图像的质量,并由定性和定量实验证明了本文提出的方法的优越性。与此同时,本文提出的方法仍存有缺陷。首先,本文虽大量使用完成了预训练的模型,但在实际部署时还需要在大数据集上进行再次训练,否则容易出现伪影,即生成图像与描述不一致的情况;其次,虽然在实验展示中输入了语言为中文的描述性文字,但由于所采用的训练数据集的语言为英文,故在实际操作时需将文字转为英文输入。由此可见,时装行业建立大规模中文数据集也是未来的工作之一。
参考文献:
[1]张淑芳, 王沁宇. 基于生成对抗网络的虚拟试穿方法[J]. 天津大学学报(自然科学与工程技术版), 2021, 54(9): 925-933.
ZHANG Shufang, WANG Qinyu. Generative-adversarial-network-based virtual try-on method[J]. Journal of Tianjin University (Science and Technology), 2021, 54(9): 925-933.
[2]HAN X T, WU Z X, WU Z, et al. VITON: An image-based virtual try-on network[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Utah: IEEE, 2018.
[3]MINAR M R, TUAN T T, AHN H. Cloth-Vton: Clothing three-dimensional reconstruction for hybrid image-based virtual try-on[C]// Asian Conference on Computer Vision. Springer: Cham, 2020.
[4]CHOI S, PARK S, LEE M, et al. Viton-hd: High-resolution virtual try-on via misalignment-aware normalization[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Montreal: Computer Vision Foundation-CVF IEEE Computer Society, 2021.
[5]DONG H Y, LIANG X D, SHEN X H, et al. Towards multi-pose guided virtual try-on network[C]//2019 IEEE/CVF International Conference on Computer Vision (ICCV). Seoul: IEEE, 2019.
[6]OUYANG L, WU J, JIANG X, et al. Training language models to follow instructions with human feedback[J]. Advances in Neural Information Processing Systems, 2022, 35: 27730-27744.
[7]RADFORD, A, KIM J W, HALLACY C, et al. Learning transferable visual models from natural language supervision[J]. Computer Vision and Pattern Recognition, 2021, 26(2): 8748-8763.
[8]GUZHOV A, RAUE F, HEES J, et al. Audioclip: Extending clip to image, text and audio[C]//ICASSP 2022-2022 IEEE International Conference on Acoustics. Singapore: Speech and Signal Processing (ICASSP), 2022.
[9]PATASHNIK O, WU Z, SHECHTMAN E D, et al. Styleclip: Text-driven manipulation of stylegan imagery[C]//2021 IEEE/CVF International Conference on Computer Vision (ICCV). Montreal: IEEE, 2021.
[10]VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[C]//Conference on Neural Information Processing Systems (NIPS 2017). New York: Curran Associates, 2017: 1-15.
[11]KARRAS T, LAINE S, AILA T. A style-based generator architecture for generative adversarial networks[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). New York: Curran Associates, 2019: 4396-4405.
[12]TOV O, ALALUF Y, NITZAN Y, et al. Designing an encoder for StyleGAN image manipulation[J]. ACM Transactions on Graphics, 2021, 40(4): 1-14.
[13]BADRINARAYANAN V, KENDALL A, CIPOLLA R. Segnet: A deep convolutional encoder-decoder architecture for image segmentation[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(12): 2481-2495.
[14]KARRAS T, LAINE S, AITTALA M, et al. Analyzing and improving the image quality of StyleGAN[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020.
[15]LIU Z W, LUO P, QIU S, et al. Deepfashion: Powering robust clothes recognition and retrieval with rich annotations[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas: IEEE, 2016.
[16]ROSTAMZADEH N, HOSSEINI S, BOQUET T, et al. Fashion-gen: The generative fashion dataset and challenge[J]. arXiv, 2018: 08317.
[17]KINGMA D P, BA J. Adam: A method for stochastic optimization[C]//International Conference on Learning Representations. New York: Computer Science, 2014.
[18]ALALUF Y, PATASHNIK O, COHENOR D. Restyle: A residual-based stylegan encoder via iterative refinement[C]//Computer Vision and Pattern Recognition. New York: Accepted to ICCV, 2020.
[19]SZEGEDY C, VANHOUCKE V, IOFFE S, et al. Rethinking the inception architecture for computer vision[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas: IEEE, 2016.
A virtual try-on method based on the large-scale pre-training text-image model
ZHANG Chi, WANG Xiangrong
ZU Yani, ZHANG Yi
(School of Design, Jiangnan University, Wuxi 214122, China)
Abstract: Virtual try-on is a technology used to predict and visualize how clothing will look on a given body input. Traditional virtual try-on methods rely on expensive 3D body scanning devices and simulations to simulate how clothing appears on the human body. While these methods offer high-quality results, the cost of 3D scanning devices can be a barrier. In contrast, using 2D images provides a more convenient and cost-effective alternative. Users only need to input 2D images of the human body and clothing, and the try-on result can be visualized. This study builds upon previous 2D virtual try-on methods and extends them from image-image input to text-image input. This means that users can now input text descriptions of clothing instead of specific images. By utilizing text descriptions, the system can generate corresponding clothing that matches the provided text, expanding the range of use cases for virtual try-on.
To generate accurate try-on results based on the text-image input, this study introduces a comprehensive framework comprising six modules: the text-image encoder, pose extractor, image segmentation, GAN-encoder, GAN-generator, and a mapping module. The overall framework follows a GAN-inversion editing pipeline. First, the GAN encoder encodes the input body image, producing a latent vector that captures the essential characteristics of the image (such as the image style and the body shape). Second, the obtained latent vector is edited and then the GAN-generator is fed to the edited vector to generate the desired result.
Specifically, the obtained latent vector is edited by using the mapping module, which shares the same network structure as the GAN generator. The mapping module generates an additional offset latent vector of the same dimension as the one obtained from the GAN encoder. This offset vector is used to edit the latent vector, ensuring that the generated image fulfills the desired pose and text description requirements. The offset vector also helps constrain the latent vector within the GAN latent space, facilitating the generation of high-quality images by using the GAN generator. To maintain consistency in poses and appearances, the pose extractor and image segmentation modules are utilized to construct loss functions. These loss functions guide the optimization process of the latent vectors, enabling the generator to produce a final generated image that remains consistent with the input human body. To generate accurate clothing images based on the input text descriptions, the pre-training text-image model CLIP is employed. CLIP encodes both the text descriptions and the final output image and constructs a loss function that regulates the optimization process during training. In experimental evaluations, the proposed method successfully generates correct images corresponding to the input body image and text descriptions. Compared to existing methods, quantitatively, the proposed method outperforms existing methods, achieving improvements of 15% in IoU, 8% in semantics, and 77.1% in image quality evaluation.
Compared to traditional physical fitting methods, virtual try-on provides consumers with an economical and convenient way to try on clothes. With the rapid advancements in machine learning and computer vision, virtual try-on has achieved impressive results. Furthermore, as consumers increasingly seek personalized experiences, the proposed virtual try-on method can generate the desired clothing based on text descriptions and present the final fitting results. This further enhances the flexibility and application scope of virtual try-on to meet the diverse needs of consumers.
Key words: virtual try-on; GAN-inversion; pre-training model; CLIP; GAN-editing; text-image model
收稿日期: 20230307;
修回日期: 20230629
基金項目: 教育部人文社会科学研究一般项目(21YJA760096);中国非物质文化遗产传承人群研修研习培训计划项目(文非遗发〔2017〕2号);江苏省社会科学基金立项一般项目(19WMB040)
作者简介: 祖雅妮(1998),女,硕士研究生,研究方向为服饰文化与艺术设计。通信作者:张毅,教授,zy519@foxmail.com。