CN114926568A - 模型训练方法、图像生成方法和装置 - Google Patents
模型训练方法、图像生成方法和装置 Download PDFInfo
- Publication number
- CN114926568A CN114926568A CN202210597992.5A CN202210597992A CN114926568A CN 114926568 A CN114926568 A CN 114926568A CN 202210597992 A CN202210597992 A CN 202210597992A CN 114926568 A CN114926568 A CN 114926568A
- Authority
- CN
- China
- Prior art keywords
- image
- input
- encoder
- initial
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012549 training Methods 0.000 title claims abstract description 126
- 238000000034 method Methods 0.000 title claims abstract description 99
- 238000012545 processing Methods 0.000 claims abstract description 69
- 238000010801 machine learning Methods 0.000 claims abstract description 37
- 239000013598 vector Substances 0.000 claims description 175
- 230000006870 function Effects 0.000 claims description 80
- 230000004927 fusion Effects 0.000 claims description 58
- 238000013507 mapping Methods 0.000 claims description 26
- 230000007246 mechanism Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 11
- 230000008447 perception Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 239000010410 layer Substances 0.000 description 202
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 15
- 238000000605 extraction Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 244000025254 Cannabis sativa Species 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000002365 multiple layer Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本公开的实施例提供了一种模型训练方法、图像生成方法和装置。所述的模型训练方法包括:首先获取训练样本集,训练样本集包括样本输入图像、样本参考图像和期望图像,然后构建初始模型,该初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器,最后利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,基于样本输入图像和样本参考图像进行训练,训练得到一种能够基于输入图像和参考图像进行处理得到输出图像的图像生成模型。
Description
技术领域
本公开的实施例涉及计算机技术领域和互联网技术领域,具体涉及人工智能技术领域和图像处理技术领域,尤其涉及模型训练方法、图像生成方法和装置。
背景技术
随着深度神经网络的不断发展和广泛应用,人工智能在计算机视觉领域迅猛发展,其中,基于人工智能技术进行图像编辑不仅可以让没有修图技术基础的大众方便快捷地编辑照片,还能高效地形成一些有趣的特效,比如生成异性照片、不同年龄阶段的照片、以及卡通脸等。现在常用的技术手段是一种基于生成网络逆映射的图像转译框架,将图像的语义分割图或草绘图作为输入,映射到生成网络的隐变量,用隐变量生成的图像去拟合语义分割图或草绘图所对应的原图。
然而上述训练方式训练复杂且训练时间长,并且网络对数据的依赖性较强;基于生成网络逆映射的图像编辑虽然可以实现对真实图像的语义编辑,但是编辑过程需要对生成网络的隐空间进行细致的分析和处理,比较繁琐,无法方便地进行控制等等。
发明内容
本公开的实施例提出了一种模型训练方法、图像生成方法、装置、电子设备和计算机可读介质。
第一方面,本公开的实施例提供了一种模型训练方法,该方法包括:获取训练样本集,其中,训练样本集包括样本输入图像、样本参考图像和期望图像;构建初始模型,其中,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。
在一些实施例中,多层级生成器中每层生成器基于预训练的多层级生成网络构建得到,每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块;以及,利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,包括:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入;将第一初始编码器和第二初始编码器的输出结果输入至每层生成器中的第一模块,期望图像作为期望输出,利用机器学习方法对第一初始编码器和第二初始编码器进行训练,得到第一编码器和第二编码器;将第一编码器、第二编码器和包括第一模块的多层级生成器确定为图像生成模型。
在一些实施例中,多层级生成器中预设层生成器还包括用于处理第二空间中的特征向量的第二初始模块;以及,方法还包括:获取样本参考图像对应的样本特征金字塔,其中,样本特征金字塔包括多个尺度的样本特征图;将样本输入图像作为第一编码器的输入,样本参考图像作为第二编码器的输入;将第一编码器和第二编码器的输出结果输入至每层生成器中的第一模块;将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块;以及将第一编码器、第二编码器和包括第一模块的多层级生成器确定为图像生成模型,包括:将第一编码器、第二编码器、包括第一模块和第二模块的多层级生成器确定为图像生成模型。
在一些实施例中,第二初始模块包括特征选择层、特征融合层和Transformer;以及将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块,包括:将样本参考图像对应的样本特征金字塔作为特征融合层的输入,预设层生成器的上一层生成器的输出结果和样本输入图像对应的输入特征作为特征选择层的输入,并将特征融合层和特征选择层的输出作为Transformer的输入;将Transformer的输出和第一编码器和第二编码器的输出结果输入至预设层生成器中的第一模块;将期望图像作为期望输出,利用机器学习方法对预设层生成器中的第二初始模块进行训练,得到第二模块。
在一些实施例中,利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,包括:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,得到多层级生成器的生成图像;基于生成图像和期望图像,确定表征图像像素特征的第一损失函数;基于第一损失函数调整初始模型,得到图像生成模型。
在一些实施例中,该方法还包括:基于生成图像和期望图像,确定第二损失函数,其中,第二损失函数包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数;以及基于第一损失函数调整初始模型,得到图像生成模型,包括:基于第一损失函数和第二损失函数调整初始模型,得到图像生成模型。
第二方面,本公开的实施例提供了一种图像生成方法,该方法包括:响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,其中,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量;通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量;将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,其中,图像生成模型基于第一方面中的模型训练方法获取。
在一些实施例中,多层级生成器中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块,并且预设层生成器还包括用于处理第二空间中的特征向量的第二模块;以及,方法还包括:获取参考图像对应的特征金字塔,特征金字塔包括多个尺度的特征图;将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,包括:将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至第二模块;通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,生成输入图像和参考图像对应的目标图像。
在一些实施例中,第二模块包括特征选择层、特征融合层和Transformer;以及通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,生成输入图像和参考图像对应的目标图像,包括:将特征金字塔输入至特征融合层,得到多个融合特征;将预设层生成器的上一层生成器的输出结果和输入图像对应的输入特征输入至特征选择层,基于预设条件输出期望特征;将多个融合特征和期望特征输入至Transformer进行特征对齐,得到对齐特征;将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
在一些实施例中,Transformer还包括注意力机制;以及,方法还包括:基于Transformer的注意力机制对对齐特征进行选择,得到选择后的特征向量;以及将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像,包括:将选择后的特征向量、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
第三方面,本公开的实施例提供了一种模型训练装置,该装置包括:获取模块,被配置成获取训练样本集,其中,训练样本集包括样本输入图像、样本参考图像和期望图像;构建模块,被配置成构建初始模型,其中,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;训练模块,被配置成利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。
在一些实施例中,多层级生成器中每层生成器基于预训练的多层级生成网络构建得到,每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块;以及,训练模块,进一步被配置成:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入;将第一初始编码器和第二初始编码器的输出结果输入至每层生成器中的第一模块,期望图像作为期望输出,利用机器学习方法对第一初始编码器和第二初始编码器进行训练,得到第一编码器和第二编码器;将第一编码器、第二编码器和包括第一模块的多层级生成器确定为图像生成模型。
在一些实施例中,多层级生成器中预设层生成器还包括用于处理第二空间中的特征向量的第二初始模块;以及,获取模块,进一步被配置成:获取样本参考图像对应的样本特征金字塔,其中,样本特征金字塔包括多个尺度的样本特征图;训练模块,进一步被配置成:将样本输入图像作为第一编码器的输入,样本参考图像作为第二编码器的输入;将第一编码器和第二编码器的输出结果输入至每层生成器中的第一模块;将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块;将第一编码器、第二编码器、包括第一模块和第二模块的多层级生成器确定为图像生成模型。
在一些实施例中,第二初始模块包括特征选择层、特征融合层和Transformer;训练模块,进一步被配置成:将样本参考图像对应的样本特征金字塔作为特征融合层的输入,预设层生成器的上一层生成器的输出结果和样本输入图像对应的输入特征作为特征选择层的输入,并将特征融合层和特征选择层的输出作为Transformer的输入;将Transformer的输出和第一编码器和第二编码器的输出结果输入至预设层生成器中的第一模块;将期望图像作为期望输出,利用机器学习方法对预设层生成器中的第二初始模块进行训练,得到第二模块。
在一些实施例中,训练模块,进一步被配置成:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,得到多层级生成器的生成图像;基于生成图像和期望图像,确定表征图像像素特征的第一损失函数;基于第一损失函数调整初始模型,得到图像生成模型。
在一些实施例中,训练模块,进一步被配置成:基于生成图像和期望图像,确定第二损失函数,其中,第二损失函数包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数;基于第一损失函数和第二损失函数调整初始模型,得到图像生成模型。
第四方面,本公开的实施例提供了一种图像生成装置,该装置包括:输入模块,被配置成响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,其中,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;第一编码模块,被配置成通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量;第二编码模块,被配置成通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量;生成模块,被配置成将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,其中,图像生成模型基于第一方面中的模型训练方法获取。
在一些实施例中,多层级生成器中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块,并且预设层生成器还包括用于处理第二空间中的特征向量的第二模块;该装置还包括获取模块;获取模块,被配置成获取参考图像对应的特征金字塔,特征金字塔包括多个尺度的特征图;生成模块,进一步被配置成:将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至第二模块;通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,生成输入图像和参考图像对应的目标图像。
在一些实施例中,第二模块包括特征选择层、特征融合层和Transformer;生成模块,进一步被配置成:将特征金字塔输入至特征融合层,得到多个融合特征;将预设层生成器的上一层生成器的输出结果和输入图像对应的输入特征输入至特征选择层,基于预设条件输出期望特征;将多个融合特征和期望特征输入至Transformer进行特征对齐,得到对齐特征;将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
在一些实施例中,Transformer还包括注意力机制;以及,生成模块,进一步被配置成:基于Transformer的注意力机制对对齐特征进行选择,得到选择后的特征向量;将选择后的特征向量、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
第五方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面和第二方面中任一实施例描述的模型训练方法和图像生成方法。
第六方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面和第二方面中任一实施例描述的模型训练方法和图像生成方法。
本公开的实施例提供的模型训练方法,上述执行主体首先获取训练样本集,训练样本集包括样本输入图像、样本参考图像和期望图像,然后构建初始模型,该初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器,最后利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,基于样本输入图像和样本参考图像进行训练,训练得到一种能够基于输入图像和参考图像进行处理得到输出图像的图像生成模型,使得样本输入图像和样本参考图像能够相互作用,使得图像生成模型更准确,输出的图像更符合用户需求,提高了模型训练的多样性和准确性,从而提高了图像生成模型的多样性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的模型训练方法的一个实施例的流程图;
图3是根据本公开的模型训练方法的又一个实施例的流程图;
图4是根据本公开的模型训练方法的另一个实施例的流程图;
图5是根据本公开的图像生成方法的一个实施例的流程图;
图6是根据本公开的图像生成方法的又一个实施例的结构示意图;
图7是根据本公开的图像生成方法的另一个实施例的结构示意图;
图8是根据本公开的模型训练装置的一个实施例的结构示意图;
图9是根据本公开的图像生成装置的一个实施例的结构示意图;
图10是适于用来实现本公开的实施例的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关公开,而非对该公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关公开相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的实施例的模型训练方法、图像生成方法和装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备104、105、106,网络107,服务器101、102、103。网络107用以在终端设备104、105、106与服务器101、102、103之间提供通信链路的介质。网络107可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以通过终端设备104、105、106通过网络107与属于同一服务器集群的服务器101、102、103交互,以接收或发送信息等。终端设备104、105、106上可以安装有各种应用,例如物品展示应用、数据分析应用、搜索类应用等。
终端设备104、105、106可以是硬件,也可以是软件。当终端设备为硬件时,可以是具有显示屏并且支持与服务器通信的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器101、102、103可以是提供各种服务的服务器,例如对与其建立通信连接的终端设备发送的请求进行接收的后台服务器。后台服务器可以对终端设备发送的请求进行接收和分析等处理,并生成处理结果。
服务器101、102、103可以获取包括样本输入图像、样本参考图像和期望图像的训练样本集,然后构建初始模型,该初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器,最后利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。
或者,服务器101、102、103获取到图像生成模型后,可以获取输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,该图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器,然后通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量,之后通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量,最后将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像。服务器101、102、103可以将生成的目标图像发送至终端设备104、105、106。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以是为终端设备提供各种服务的各种电子设备。当服务器为软件时,可以实现成为为终端设备提供各种服务的多个软件或软件模块,也可以实现成为为终端设备提供各种服务的单个软件或软件模块。在此不做具体限定。
需要说明的是,本公开的实施例所提供的模型训练方法和图像生成方法可以由服务器101、102、103执行。相应地,模型训练装置和图像生成装置设置于服务器101、102、103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本公开的模型训练方法的一个实施例的流程200。该模型训练方法包括以下步骤:
步骤210,获取训练样本集。
在本步骤中,模型训练方法运行于其上的执行主体(例如图1中的服务器101、102、103)可以从网络平台中或者从本地数据库中读取一段人物视频,从该视频中获取不同帧图像,不同帧图像中的人物具备不同的姿态,将不同帧图像分别作为样本参考图像和期望图像,则样本参考图像和期望图像可以是相同人物、不同人物姿态的不同图像,其中,样本参考图像可以表征具备当前人物的真实特征信息的图像,期望图像可以表征具备需要的姿态信息和当前人物的真实特征信息的图像。
上述执行主体可以对期望图像进行人物关键点提取,将提取出的关键点组成关键点图像,并将关键点图像作为样本输入图像,从而样本输入图像与期望图像具备相同的姿态信息。或者,上述执行主体对期望图像进行语义分割,得到对应的语义分割图像,将该语义分割图像作为样本输入图像,从而样本输入图像与期望图像具备相同的姿态信息。因此,上述执行主体可以通过任何相关技术所支持的方式基于期望图像获取对应的样本输入图像。
上述执行主体可以对人物视频重复进行上述处理,得到多组样本输入图像、样本参考图像和期望图像,从而将获取到的多组样本输入图像、样本参考图像和期望图像组成训练样本集。
以及,上述执行主体也可以通过任何相关技术所支持的方式获取包括上述样本输入图像、上述样本参考图像和上述期望图像的训练样本集,本公开对此不做具体限定。
步骤220,构建初始模型,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器。
在本步骤中,上述执行主体在获取到训练样本集后,可以构建用于根据样本输入图像和样本参考图像生成期望图像的初始模型,该初始模型可以包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器的初始模型。其中,上述第一初始编码器和第二初始编码器用于对输入的图像进行特征编码;基于层级架构的多层级生成器可以包括多层生成器,且多层生成器通过级联的方式进行数据传输,上一层生成器的输出作为下一层生成器的输入,多层级生成器用于根据输入的图像特征生成对应的图像。
步骤230,利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。
在本步骤中,上述执行主体获取到训练样本集和构建出初始模型后,可以利用机器学习方法,基于训练样本集对初始模型进行训练,得到用于生成具备需要的姿态信息和当前人物的真实特征信息的图像的图像生成模型。
具体地,上述执行主体可以将样本输入图像和样本参考图像输入至初始模型中,其中,将样本输入图像作为第一初始编码器的输入,将样本参考图像作为第二初始编码器的输入,第一初始编码器对样本输入图像进行编码处理,得到第一输出结果,第二初始编码器对样本参考图像进行编码处理,得到第二输出结果。
上述执行主体将第一初始编码器的输出结果和第二初始编码器的输出结果作为多层级生成器的输入,可以将第一初始编码器的输出结果分别输入至多层级生成器中排序在前的一半生成器中,将第二初始编码器的输出结果分别输入至多层级生成器中后面的一半生成器中。或者,上述执行主体还可以将第一初始编码器的输出结果和第二初始编码器的输出结果进行相加融合,得到融合结果,然后将第一初始编码器的输出结果分别输入至多层级生成器中排序在前的第一预设数量个生成器中,将第二初始编码器的输出结果分别输入至多层级生成器中后面的第二预设数量个生成器中,将融合结果输入至多层级生成器中剩余的生成器中。并且上述执行主体将期望图像作为期望输出,对上述初始模型进行训练,得到图像生成模型。
作为示例,多层级生成器中包括18个级联的生成器,可以根据每个生成器的排序位置为每个生成器排序,将18个级联的生成器记作1-18号,上述执行主体可以将第一初始编码器的输出结果作为1-4号生成器的输入,将第二初始编码器的输出结果作为9-18号生成器的输入,将第一初始编码器的输出结果和第二初始编码器的输出结果进行相加融合得到融合结果,将融合结果作为5-8号生成器的输入。
作为一个可选实现方式,上述步骤230,可以基于以下步骤实现:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,得到多层级生成器的生成图像;基于生成图像和期望图像,确定表征图像像素特征的第一损失函数;基于第一损失函数调整初始模型,得到图像生成模型。
具体地,上述执行主体可以将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,第一初始编码器对样本输入图像进行编码处理,得到第一输出结果,第二初始编码器对样本参考图像进行编码处理,得到第二输出结果。上述执行主体可以将第一输出结果和第二输出结果作为多层级生成器的输入,多层级生成器对输入的第一输出结果和第二输出结果进行处理,得到多层级生成器的生成图像。
上述执行主体可以根据生成图像和期望图像的像素特征计算第一损失函数,该第一损失函数可以是用于表征图像像素特征的损失函数,第一损失函数的表现形式可以是:
L2(I,E,Y)=‖Y-M(I,E)‖2
其中,M(·)表示上述初始模型,I表示样本输入图像,E表示样本参考图像,Y表示期望图像。
上述执行主体确定出第一损失函数后,判断第一损失函数是否超过预设阈值,若第一损失函数超过预设阈值,则调整初始模型的网络参数,并再次输入样本输入图像和样本参考图像继续进行训练。若第一损失函数不超过预设阈值,则模型训练完成,得到图像生成模型。其中,该预设阈值可以根据经验预先设定,本公开对此不做具体限定。
在本实现方式中,通过基于表征图像像素特征的第一损失函数对初始模型进行调整,以得到最终的图像生成模型,能够提高了模型训练的准确性,使得图像生成模型能够更准确地生成需要的图像。
作为一个可选实现方式,上述步骤230,还可以基于以下步骤实现:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,得到多层级生成器的生成图像;基于生成图像和期望图像,确定第二损失函数,第二损失函数包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数;基于第一损失函数和第二损失函数调整初始模型,得到图像生成模型。
具体地,上述执行主体可以将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,第一初始编码器对样本输入图像进行编码处理,得到第一输出结果,第二初始编码器对样本参考图像进行编码处理,得到第二输出结果。上述执行主体可以将第一输出结果和第二输出结果作为多层级生成器的输入,多层级生成器对输入的第一输出结果和第二输出结果进行处理,得到多层级生成器的生成图像。
上述执行主体可以根据生成图像和期望图像的像素特征计算第一损失函数,该第一损失函数可以是用于表征图像像素特征的损失函数,第一损失函数(L2(I,E,Y))的表现形式可以是:
L2(I,E,Y)=‖Y-M(I,E)‖2
其中,M(·)表示上述初始模型,I表示样本输入图像,E表示样本参考图像,Y表示期望图像。
上述执行主体确定出第一损失函数后,还可以根据生成图像和期望图像计算第二损失函数,第二损失函数可以包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数。
(1)表征图像感知特征的感知损失函数(LLPIPS(I,E,Y))的表现形式可以是:
LLPIPS(I,E,Y)=‖F(Y)-F(M(I,E))‖2
其中,M(·)表示上述初始模型,I表示样本输入图像,E表示样本参考图像,Y表示期望图像,F(·)表示一个感知特征提取网络,上述LPIPS损失函数是感知损失函数的一种,被广泛地证明对于衡量和保持图像质量有很好的表现。
(2)表征图像标识特征的损失函数(LID(I,E,Y))的表现形式可以是:
LID(I,E,Y)=1-<R(Y),R(M(I,E))>
其中,M(·)表示上述初始模型,I表示样本输入图像,E表示样本参考图像,Y表示期望图像,R(·)是一个预训练的ArcFace(人脸识别)网络,用于保持人脸的身份信息,优化模型的时候要求生成图像的特征和期望图像的特征尽可能相似。
(3)正则化损失函数(Lreg(I,E))的表现形式可以是:
上述执行主体可以同时利用这四项损失函数对初始模型进行优化,则可以表现为:
L=λ1L2+λ2LLPIPS+λ3LID+λ4Lreg
其中,λ1,λ2,λ3,λ4分别是四个损失函数的权重,可以根据经验设置,例如采用λ1=1,λ2=0.8,λ3=0.1,λ4=0.005,本公开对此不做具体限定。
在本实现方式中,通过利用多个损失函数来优化初始模型,能够使得模型训练更准确,提高了图像生成模型的准确性,从而基于图像生成模型生成的图像更准确、更符合用户需求。
本公开的实施例提供的模型训练方法,上述执行主体首先获取训练样本集,训练样本集包括样本输入图像、样本参考图像和期望图像,然后构建初始模型,该初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器,最后利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,基于样本输入图像和样本参考图像进行训练,训练得到一种能够基于输入图像和参考图像进行处理得到输出图像的图像生成模型,使得样本输入图像和样本参考图像能够相互作用,使得图像生成模型更准确,输出的图像更符合用户需求,提高了模型训练的多样性和准确性,从而提高了图像生成模型的多样性。
参考图3,图3示出了模型训练方法的又一个实施例的流程图,可以包括以下步骤:
步骤310,获取训练样本集。
本实施例的步骤310可以按照与图2所示实施例中的步骤210类似的方式执行,此处不赘述。
步骤320,构建初始模型,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器。
本实施例的步骤320可以按照与图2所示实施例中的步骤220类似的方式执行,此处不赘述。
步骤330,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入。
本实施例的步骤330可以按照与图2所示实施例中的步骤230类似的方式执行,此处不赘述。
步骤340,将第一初始编码器和第二初始编码器的输出结果输入至每层生成器中的第一模块,期望图像作为期望输出,利用机器学习方法对第一初始编码器和第二初始编码器进行训练,得到第一编码器和第二编码器。
上述多层级生成器中每层生成器基于预训练的多层级生成网络构建得到,其中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块。上述预训练的多层级生成网络可以是已经完成模型训练的多个级联的生成网络,例如StyleGAN网络等用于对第一空间中的特征向量进行处理的生成网络,该第一空间可以是隐变量对应的W+空间,则上述第一模块是已经经过预训练的处理网络,则本次模型训练不需要对其进行训练。
在本步骤中,上述执行主体将样本输入图像作为第一初始编码器的输入,将样本参考图像作为第二初始编码器的输入,第一初始编码器对样本输入图像进行编码处理,得到第一输出结果,第二初始编码器对样本参考图像进行编码处理,得到第二输出结果。
上述执行主体将第一初始编码器的输出结果和第二初始编码器的输出结果作为每层生成器中第一模块的输入,可以将第一初始编码器的输出结果分别输入至多层级生成器中排序在前的一半生成器中,即将第一初始编码器的输出结果输入至前一半生成器的第一模块中,并且将第二初始编码器的输出结果分别输入至多层级生成器中后面的一半生成器中,即将第二初始编码器的输出结果输入至后一半生成器的第一模块中。或者,上述执行主体还可以将第一初始编码器的输出结果和第二初始编码器的输出结果进行相加融合,得到融合结果,然后将第一初始编码器的输出结果分别输入至排序在前的第一预设数量个第一模块中,将第二初始编码器的输出结果分别输入至后面的第二预设数量个第一模块中,将融合结果输入至多层级生成器中剩余的第一模块中。并且上述执行主体将期望图像作为期望输出,对第一初始编码器和第二初始编码器进行训练,得到训练后的第一编码器和第二编码器。
步骤350,将第一编码器、第二编码器和包括第一模块的多层级生成器确定为图像生成模型。
在本步骤中,上述执行主体通过训练得到训练后的第一编码器和第二编码器,则第一编码器、第二编码器和包括第一模块的多层级生成器组成图像生成模型。
在本实现方式中,通过利用预训练好的生成网络,不需要再对多层级生成器进行训练,摆脱了对对抗训练的依赖,同时能够增强图像生成模型的泛化性,提高了模型训练的效率。
参考图4,图4示出了模型训练方法的另一个实施例的流程图,可以包括以下步骤:
步骤410,获取训练样本集。
本实施例的步骤410可以按照与图2所示实施例中的步骤210类似的方式执行,此处不赘述。
步骤420,构建初始模型,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器。
本实施例的步骤420可以按照与图2所示实施例中的步骤220类似的方式执行,此处不赘述。
步骤430,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入。
本实施例的步骤430可以按照与图2所示实施例中的步骤230类似的方式执行,此处不赘述。
步骤440,将第一初始编码器和第二初始编码器的输出结果输入至每层生成器中的第一模块,期望图像作为期望输出,利用机器学习方法对第一初始编码器和第二初始编码器进行训练,得到第一编码器和第二编码器。
本实施例的步骤440可以按照与图3所示实施例中的步骤340类似的方式执行,此处不赘述。
步骤450,获取样本参考图像对应的样本特征金字塔。
上述多层级生成器中的每层生成器都包括第一模块,以及在预设层生成器中还包括用于处理第二空间中的特征向量的第二初始模块,该第二空间可以是隐变量对应的F空间,F空间可以实现特征在空间维度(此处的“空间”是指三维特征,通道、长、宽中的长宽维度)的特征交互,开启了对参考图片特征重利用的绿色通道,参考图片特征的重利用,会大大改善模型对身份信息的保持程度,使得输出图像跟参考图像视觉上更像。
在本步骤中,上述执行主体得到训练后的第一编码器和第二编码器后,可以获取用于提取图像特征的骨干网络,该骨干网络可以是深度神经提取特征网络,可以由不同卷积层和池化层组合而成的残差提取块,同时使用不同的尺度特征提取模块来提取对应信息。上述执行主体将样本参考图像输入至骨干网络中,骨干网络对样本参考图像进行特征提取,输出样本参考图像对应的样本特征金字塔,该样本特征金字塔可以包括样本参考图像对应的多个尺度的样本特征图。
步骤460,将样本输入图像作为第一编码器的输入,样本参考图像作为第二编码器的输入。
在本步骤中,上述执行主体可以将样本输入图像作为第一编码器的输入,将样本参考图像作为第二编码器的输入,第一编码器对样本输入图像进行编码处理,得到对应的输出结果,第二编码器对样本参考图像进行编码处理,得到对应的输出结果。
步骤470,将第一编码器和第二编码器的输出结果输入至每层生成器中的第一模块。
在本步骤中,上述执行主体可以将第一编码器的输出结果和第二编码器的输出结果作为每层生成器中第一模块的输入,可以将第一编码器的输出结果分别输入至多层级生成器中排序在前的一半生成器中,即将第一编码器的输出结果输入至前一半生成器的第一模块中,并且将第二编码器的输出结果分别输入至多层级生成器中后面的一半生成器中,即将第二编码器的输出结果输入至后一半生成器的第一模块中。或者,上述执行主体还可以将第一编码器的输出结果和第二编码器的输出结果进行相加融合,得到融合结果,然后将第一编码器的输出结果分别输入至排序在前的第一预设数量个第一模块中,将第二编码器的输出结果分别输入至后面的第二预设数量个第一模块中,将融合结果输入至多层级生成器中剩余的第一模块中。
步骤480,将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块。
在本步骤中,上述执行主体在将第一编码器和第二编码器的输出作为每层生成器中的第一模块的输入后,可以对预设层生成器中的第二初始模块的输入进行设定。
上述执行主体可以将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块中,即每个预设层生成器中的第二初始模块的输入可以是上一层生成器的输出结果和样本参考图像对应的样本特征金字塔。并且上述执行主体将期望图像作为期望输出,对上述第二初始模块进行训练,得到训练后的第二模块。
步骤490,将第一编码器、第二编码器、包括第一模块和第二模块的多层级生成器确定为图像生成模型。
在本步骤中,上述执行主体通过训练得到训练后的第一编码器和第二编码器,以及得到训练后的第二模块,则第一编码器、第二编码器和包括第一模块和第二模块的多层级生成器组成图像生成模型。
在本实现方式中,通过基于Dropout的退火训练方式,先对第一空间对应的第一初始编码器和第二初始编码器进行训练,优化第一空间的特征处理模块,可以使得第一空间的作用能够充分发挥,然后对第二空间对应的第二初始模块进行训练,优化第二空间的特征处理模块,可以使得第二空间的作用能够充分发挥,从而使得图像生成模型中的第一空间和第二空间对应的特征处理模块更加有效,提高了图像生成模型的准确性。
作为一个可选实现方式,第二初始模块可以包括特征选择层、特征融合层和Transformer。则上述步骤480,将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块,可以包括以下步骤:将样本参考图像对应的样本特征金字塔作为特征融合层的输入,预设层生成器的上一层生成器的输出结果和样本输入图像对应的输入特征作为特征选择层的输入,并将特征融合层和特征选择层的输出作为Transformer的输入;将Transformer的输出和第一编码器和第二编码器的输出结果输入至预设层生成器中的第一模块;将期望图像作为期望输出,利用机器学习方法对预设层生成器中的第二初始模块进行训练,得到第二模块。
具体地,上述执行主体将样本参考图像对应的样本特征金字塔作为特征融合层的输入,特征融合层可以对样本特征金字塔进行处理,得到多个样本融合特征。
上述执行主体还可以对样本输入图像进行特征提取,获取到样本输入图像对应的输入特征,将预设层生成器的上一层生成器的输出结果和样本输入图像对应的输入特征作为特征选择层的输入,特征选择层可以对上一次生成器的输出结果和输入特征进行选择,根据不同需求设置不同的选择。
上述执行主体可以将特征融合层和特征选择层的输出作为Transformer的输入,即可以将特征融合层的输出作为Transformer中的Key和Value的输入,将特征选择层的输出作为Query的输入,Transformer可以对输入的多个样本融合特征和选择后的特征进行处理。
上述预设层生成器中包括第一模块和第二模块,第二模块的处理结果需要输入至第一模块中,则上述执行主体可以将Transformer的输出、第一编码器和第二编码器的输出结果输入至预设层生成器中的第一模块中,将期望图像作为期望输出,利用机器学习方法对预设层生成器中的第二初始模块进行训练,得到训练后的第二模块。
在本实现方式中,通过在第二模块中设置特征选择层、特征融合层和Transformer,可以使得第二模块能够更好的保持样本参考图像中的身份信息,并且设置了特征选择层,选择将上一层生成器的输出结果或者样本输入图像对应的输入特征作为Transformer的输入,能够满足不同情况的需求,可以使得输出的图像更好地保持身份信息,或者更好地保持输入的空间信息。
参考图5,图5示出了图像生成方法的一个实施例的流程图500,可以包括以下步骤:
步骤510,响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器。
在本步骤中,图像生成方法运行于其上的执行主体(例如图1中的服务器101、102、103)可以获取输入图像和参考图像,该输入图像可以是关键点图像或者语义分割图像等等,参考图像可以是具备人物特征信息的图像。上述执行主体可以将输入图像和参考图像输入至图像生成模型中,该图像生成模型可以包括第一编码器、第二编码器和基于层级架构的多层级生成器。
步骤520,通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量。
在本步骤中,上述执行主体可以通过图像生成模型中的第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量,该第一空间可以是隐变量对应的W+空间。
步骤530,通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量。
在本步骤中,上述执行主体可以通过图像生成模型中的第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量,该第一空间可以是隐变量对应的W+空间。
步骤540,将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像。
在本步骤中,上述执行主体获取到第一编码器输出的第一空间输入向量和第二编码器输出的第一空间参考向量后,将第一空间输入向量和第一空间参考向量输入至多层级生成器中,多层级生成器包括多个级联的生成器。
上述执行主体可以将第一空间输入向量分别输入至多层级生成器中排序在前的一半生成器中,将第一空间参考向量分别输入至多层级生成器中后面的一半生成器中。或者,上述执行主体还可以将第一空间输入向量和第一空间参考向量进行相加融合,得到向量融合结果,然后将第一空间输入向量分别输入至多层级生成器中排序在前的第一预设数量个生成器中,将第一空间参考向量分别输入至多层级生成器中后面的第二预设数量个生成器中,将向量融合结果输入至多层级生成器中剩余的生成器中,多层级生成器对输入的第一空间输入向量和第一空间参考向量进行处理,生成输入图像和参考图像对应的目标图像,该目标图像可以具备输入图像的姿态信息和参考图像的人物真实特征信息。
作为示例,多层级生成器中包括18个级联的生成器,可以根据每个生成器的排序位置为每个生成器排序,将18个级联的生成器记作1-18号,上述执行主体可以将第一空间输入向量作为1-4号生成器的输入,将第一空间参考向量作为9-18号生成器的输入,将第一空间输入向量和第一空间参考向量进行相加融合,得到向量融合结果,将向量融合结果作为5-8号生成器的输入。
其中,上述图像生成模型基于上述模型训练方法获取,即可以基于上述图2-4中的步骤获取,图像生成模型可以生成输入图像和参考图像对应的目标图像。
本公开的实施例提供的图像生成方法,上述执行主体首先响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,该图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器,然后通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量,之后通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量,最后将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,该图像生成模型基于上述模型训练方法获取,通过增加参考图像作为额外输入,控制生成人脸图像的身份信息,实现对真实图像的编辑,能够基于输入图像和参考图像生成同时具有输入图像的姿态和参考图像的身份信息的目标图像,提高了图像生成的真实性和多样性。
参考图6,图6示出了图像生成方法的又一个实施例的结构示意图,可以包括以下步骤:
步骤610,响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器。
本实施例的步骤610可以按照与图5所示实施例中的步骤510类似的方式执行,此处不赘述。
步骤620,通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量。
本实施例的步骤620可以按照与图5所示实施例中的步骤520类似的方式执行,此处不赘述。
步骤630,通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量。
本实施例的步骤630可以按照与图5所示实施例中的步骤530类似的方式执行,此处不赘述。
步骤640,获取参考图像对应的特征金字塔。
上述图像生成模型中的多层级生成器中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块,并且预设层生成器还包括用于处理第二空间中的特征向量的第二模块。
在本步骤中,上述执行主体可以获取用于提取图像特征的骨干网络,该骨干网络可以是深度神经提取特征网络,可以由不同卷积层和池化层组合而成的残差提取块,同时使用不同的尺度特征提取模块来提取对应信息。上述执行主体将参考图像输入至骨干网络中,骨干网络对参考图像进行特征提取,输出参考图像对应的特征金字塔,该特征金字塔可以包括参考图像对应的多个尺度的特征图。
步骤650,将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至所述第二模块。
在本步骤中,上述执行主体可以将得到的第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块中,以及将预设层生成器的上一层生成器的输出结果和特征金字塔输入至所述第二模块。上述多层级生成器可以通过第一模块对应第一空间输入向量和第一空间参考向量进行处理,和通过第二模块对上一层生成器的输出结果和特征金字塔进行处理。
步骤660,通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,生成输入图像和参考图像对应的目标图像。
在本步骤中,上述执行主体将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至所述第二模块后,可以通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,实现了多层级生成器对第一空间输入向量、第一空间参考向量、特征金字塔进行处理,生成输入图像和参考图像对应的目标图像。
在本实现方式中,通过在多层级生成器中设置第二模块,能够进一步对第二空间的特征进行处理,将参考图像更好地融入多层级生成器中,不会影响到生成网络逆映射对图像进行语义编辑的能力,可以对真实图像同时进行跨域控制和语义控制,使得生成的目标图像更真实、更准确。
参考图7,图7示出了图像生成方法的另一个实施例的结构示意图,可以包括以下步骤:
步骤710,响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器。
本实施例的步骤710可以按照与图5所示实施例中的步骤510类似的方式执行,此处不赘述。
步骤720,通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量。
本实施例的步骤720可以按照与图5所示实施例中的步骤520类似的方式执行,此处不赘述。
步骤730,通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量。
本实施例的步骤730可以按照与图5所示实施例中的步骤530类似的方式执行,此处不赘述。
步骤740,获取参考图像对应的特征金字塔。
本实施例的步骤740可以按照与图6所示实施例中的步骤640类似的方式执行,此处不赘述。
步骤750,将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至所述第二模块。
本实施例的步骤750可以按照与图6所示实施例中的步骤650类似的方式执行,此处不赘述。
步骤760,将特征金字塔输入至特征融合层,得到多个融合特征。
上述第二模块可以包括特征选择层、特征融合层和Transformer。
在本步骤中,在特征金字塔中,较大尺度的特征可以包含更多的高频细节信息,较小尺度的特征可以包含更多的结构化信息。上述执行主体可以将特征金字塔输入至特征融合层,可以对特征金字塔中每相邻的特征进行融合,得到多个融合特征。
上述特征融合层可以对特征金字塔执行以下操作:
att(X)=sigmoid(Wa2tanh(Wa1X))
其中,X指输入,Wa1和Wa2是注意力机制中的参数,且Wa1和Wa2是不可训练的固定参数。
上述特征融合层可以根据上述操作对特征金字塔中的多个特征图进行特征融合,得到多个融合特征。
步骤770,将预设层生成器的上一层生成器的输出结果和输入图像对应的输入特征输入至特征选择层,基于预设条件输出期望特征。
在本步骤中,上述执行主体可以将预设层生成器的上一层生成器的输出结果和输入图像对应的输入特征输入至特征选择层。特征选择层可以根据预设条件对输入内容进行选择输出期望特征,该预设条件可以是用户想要的期望图像,即若用户想要生成与参考图像一致的目标图像,则可以选择并输出预设层生成器的上一层生成器的输出结果;若用户想要生成与输入图像一致的目标图像,则可以选择并输出输入图像对应的输入特征。
步骤780,将多个融合特征和期望特征输入至Transformer进行特征对齐,得到对齐特征。
在本步骤中,上述执行主体可以将多个融合特征和期望特征输入至Transformer进行特征对齐,得到对齐特征,即将融合特征作为Transformer中的Key和Value输入,将期望特征作为Transformer中的Query输入,进行特征对齐,得到对齐特征。
若期望特征是预设层生成器的上一层生成器的输出结果,则Transformer可以对输入的多个融合特征和期望特征执行以下操作:
F′e=WvFesoftmax((WkFe)TWqFg/t)
若期望特征是输入图像对应的输入特征,则Transformer可以对输入的多个融合特征和期望特征执行以下操作:
F′e=WvFesoftmax((WkFe)TWqFi/t)
步骤790,将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
在本步骤中,上述执行主体获取到对齐特征后,可以将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,通过第一模块对输入的对齐特征、第一空间输入向量和第一空间参考向量进行处理,并将处理结果输入至预设层生成器的下一层生成器,使得下一层生成器对输入的特征进行处理,直至多层级生成器双输出第一空间输入图像和第一空间参考图像对应的目标图像。
在本实施例中,通过在第二模块中设置特征选择层、特征融合层和Transformer,可以使得第二模块能够更好的保持样本参考图像中的身份信息,并且设置了特征选择层,选择将上一层生成器的输出结果或者输入图像对应的输入特征作为Transformer的输入,能够满足不同情况的需求,可以使得输出的图像更好地保持身份信息,或者更好地保持输入的空间信息。
作为一个可选实现方式,Transformer还可以包括注意力机制。上述图像生成方法还包括:基于Transformer的注意力机制对对齐特征进行选择,得到选择后的特征向量;将选择后的特征向量、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
具体地,由于变换人脸姿态的时候会有遮挡的情况,比如闭上嘴的时候牙齿会被遮挡,因此不是所有的参考图片的特征都是可以被对齐、有效利用的。因此,上述执行主体可以在Transformer中设置注意力机制,将对齐特征进一步基于注意力机制进行选择,得到能够用于生成目标图像的选择后的特征向量。上述Transformer基于注意力机制进行选择的过程可以是:
其中,F″e表示选择后的特征向量,F′e表示对齐特征,att(·)表示注意力模块:
att(X)=sigmoid(Wa4tanh(Wa3X))
X指输入,Wa3和Wa4是注意力机制中的参数。
上述执行主体获取到选择后的特征向量后,可以将选择后的特征向量、第一空间输入向量和第一空间参考向量输入至第一模块,通过第一模块对选择后的特征向量、第一空间输入向量和第一空间参考向量进行处理,并将处理结果输入至预设层生成器的下一层生成器,使得下一层生成器对输入的特征进行处理,直至多层级生成器双输出第一空间输入图像和第一空间参考图像对应的目标图像。
在本实现方式中,通过设置注意力机制,能够提高参考图像的特征的准确性,使得生成的目标图像更准确,更真实。
进一步参考图8,作为对上述各图所示方法的实现,本公开提供了一种模型训练装置的一个实施例。该装置实施例与图2所示的方法实施例相对应。
如图8所示,本实施例的模型训练装置800可以包括:获取模块810、构建模块820和训练模块830。
其中,获取模块810,被配置成获取训练样本集,其中,训练样本集包括样本输入图像、样本参考图像和期望图像;
构建模块820,被配置成构建初始模型,其中,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;
训练模块830,被配置成利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。
在本实施的一些可选的实现方式中,多层级生成器中每层生成器基于预训练的多层级生成网络构建得到,每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块;以及,训练模块,进一步被配置成:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入;将第一初始编码器和第二初始编码器的输出结果输入至每层生成器中的第一模块,期望图像作为期望输出,利用机器学习方法对第一初始编码器和第二初始编码器进行训练,得到第一编码器和第二编码器;将第一编码器、第二编码器和包括第一模块的多层级生成器确定为图像生成模型。
在本实施的一些可选的实现方式中,多层级生成器中预设层生成器还包括用于处理第二空间中的特征向量的第二初始模块;以及,获取模块,进一步被配置成:获取样本参考图像对应的样本特征金字塔,其中,样本特征金字塔包括多个尺度的样本特征图;训练模块,进一步被配置成:将样本输入图像作为第一编码器的输入,样本参考图像作为第二编码器的输入;将第一编码器和第二编码器的输出结果输入至每层生成器中的第一模块;将预设层生成器的上一层生成器的输出结果和样本特征金字塔输入至第二初始模块,期望图像作为期望输出,利用机器学习方法对第二初始模块进行训练,得到第二模块;将第一编码器、第二编码器、包括第一模块和第二模块的多层级生成器确定为图像生成模型。
在本实施的一些可选的实现方式中,第二初始模块包括特征选择层、特征融合层和Transformer;训练模块,进一步被配置成:将样本参考图像对应的样本特征金字塔作为特征融合层的输入,预设层生成器的上一层生成器的输出结果和样本输入图像对应的输入特征作为特征选择层的输入,并将特征融合层和特征选择层的输出作为Transformer的输入;将Transformer的输出和第一编码器和第二编码器的输出结果输入至预设层生成器中的第一模块;将期望图像作为期望输出,利用机器学习方法对预设层生成器中的第二初始模块进行训练,得到第二模块。
在本实施的一些可选的实现方式中,训练模块,进一步被配置成:将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,得到多层级生成器的生成图像;基于生成图像和期望图像,确定表征图像像素特征的第一损失函数;基于第一损失函数调整初始模型,得到图像生成模型。
在本实施的一些可选的实现方式中,训练模块,进一步被配置成:基于生成图像和期望图像,确定第二损失函数,其中,第二损失函数包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数;基于第一损失函数和第二损失函数调整初始模型,得到图像生成模型。
本公开的上述实施例提供的模型训练装置,上述执行主体首先获取训练样本集,训练样本集包括样本输入图像、样本参考图像和期望图像,然后构建初始模型,该初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器,最后利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型,基于样本输入图像和样本参考图像进行训练,训练得到一种能够基于输入图像和参考图像进行处理得到输出图像的图像生成模型,使得样本输入图像和样本参考图像能够相互作用,使得图像生成模型更准确,输出的图像更符合用户需求,提高了模型训练的多样性和准确性,从而提高了图像生成模型的多样性。
本领域技术人员可以理解,上述装置还包括一些其他公知结构,例如处理器、存储器等,为了不必要地模糊本公开的实施例,这些公知的结构在图8中未示出。
进一步参考图9,作为对上述各图所示方法的实现,本公开提供了一种图像生成装置的一个实施例。该装置实施例与图5所示的方法实施例相对应。
如图9所示,本实施例的图像生成装置900可以包括:输入模块910、第一编码模块920、第二编码模块930和生成模块940。
其中,输入模块910,被配置成响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,其中,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;
第一编码模块920,被配置成通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量;
第二编码模块930,被配置成通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量;
生成模块940,被配置成将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,其中,图像生成模型基于上述模型训练方法获取。
在本实施的一些可选的实现方式中,多层级生成器中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块,并且预设层生成器还包括用于处理第二空间中的特征向量的第二模块;该装置还包括获取模块;获取模块,被配置成获取参考图像对应的特征金字塔,特征金字塔包括多个尺度的特征图;生成模块,进一步被配置成:将第一空间输入向量和第一空间参考向量输入至每层生成器中的第一模块,将预设层生成器的上一层生成器的输出结果和特征金字塔输入至第二模块;通过第一模块和第二模块对第一空间输入向量、第一空间参考向量、特征金字塔和预设层生成器的上一层生成器的输出结果进行处理,生成输入图像和参考图像对应的目标图像。
在本实施的一些可选的实现方式中,第二模块包括特征选择层、特征融合层和Transformer;生成模块,进一步被配置成:将特征金字塔输入至特征融合层,得到多个融合特征;将预设层生成器的上一层生成器的输出结果和输入图像对应的输入特征输入至特征选择层,基于预设条件输出期望特征;将多个融合特征和期望特征输入至Transformer进行特征对齐,得到对齐特征;将对齐特征、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
在本实施的一些可选的实现方式中,Transformer还包括注意力机制;以及,生成模块,进一步被配置成:基于Transformer的注意力机制对对齐特征进行选择,得到选择后的特征向量;将选择后的特征向量、第一空间输入向量和第一空间参考向量输入至第一模块,并将处理结果输入至预设层生成器的下一层生成器,直至生成第一空间输入图像和第一空间参考图像对应的目标图像。
本公开的上述实施例提供的图像生成装置,上述执行主体首先响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,该图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器,然后通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量,之后通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量,最后将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,该图像生成模型基于上述模型训练方法获取,通过增加参考图像作为额外输入,控制生成人脸图像的身份信息,实现对真实图像的编辑,能够基于输入图像和参考图像生成同时具有输入图像的姿态和参考图像的身份信息的目标图像,提高了图像生成的真实性和多样性。
本领域技术人员可以理解,上述装置还包括一些其他公知结构,例如处理器、存储器等,为了不必要地模糊本公开的实施例,这些公知的结构在图9中未示出。
下面参考图10,其示出了适于用来实现本公开的实施例的电子设备1000的结构示意图。本公开的实施例中的终端设备可以包括但不限于诸如智能屏、笔记本电脑、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图10示出的终端设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图10所示,电子设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储装置1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有电子设备1000操作所需的各种程序和数据。处理装置1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
通常,以下装置可以连接至I/O接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备1000与其他设备进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图10中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从ROM 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、构建模块和训练模块,或者,一种处理器包括输入模块、第一编码模块、第二编码模块和生成模块,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取训练样本集,其中,训练样本集包括样本输入图像、样本参考图像和期望图像;构建初始模型,其中,初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;利用机器学习方法,将样本输入图像作为第一初始编码器的输入,样本参考图像作为第二初始编码器的输入,并将第一初始编码器和第二初始编码器的输出作为多层级生成器的输入,期望图像作为期望输出,对初始模型进行训练,得到图像生成模型。或者,使得该电子设备:响应于获取到输入图像和参考图像,将输入图像和参考图像输入至图像生成模型,其中,图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;通过第一编码器对输入图像进行编码映射,得到输入图像对应的第一空间输入向量;通过第二编码器对参考图像进行编码映射,得到参考图像对应的第一空间参考向量;将第一空间输入向量和第一空间参考向量输入至多层级生成器中,生成输入图像和参考图像对应的目标图像,其中,图像生成模型基于模型训练方法获取。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (14)
1.一种模型训练方法,所述方法包括:
获取训练样本集,其中,所述训练样本集包括样本输入图像、样本参考图像和期望图像;
构建初始模型,其中,所述初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;
利用机器学习方法,将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入,并将所述第一初始编码器和所述第二初始编码器的输出作为所述多层级生成器的输入,所述期望图像作为期望输出,对所述初始模型进行训练,得到图像生成模型。
2.根据权利要求1所述的方法,其中,所述多层级生成器中每层生成器基于预训练的多层级生成网络构建得到,所述每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块;以及,
所述利用机器学习方法,将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入,并将所述第一初始编码器和所述第二初始编码器的输出作为所述多层级生成器的输入,所述期望图像作为期望输出,对所述初始模型进行训练,得到图像生成模型,包括:
将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入;
将所述第一初始编码器和所述第二初始编码器的输出结果输入至每层生成器中的第一模块,所述期望图像作为期望输出,利用机器学习方法对所述第一初始编码器和所述第二初始编码器进行训练,得到第一编码器和第二编码器;
将所述第一编码器、所述第二编码器和包括所述第一模块的多层级生成器确定为所述图像生成模型。
3.根据权利要求2所述的方法,其中,所述多层级生成器中预设层生成器还包括用于处理第二空间中的特征向量的第二初始模块;以及,所述方法还包括:
获取所述样本参考图像对应的样本特征金字塔,其中,所述样本特征金字塔包括多个尺度的样本特征图;
将所述样本输入图像作为所述第一编码器的输入,所述样本参考图像作为所述第二编码器的输入;
将所述第一编码器和所述第二编码器的输出结果输入至每层生成器中的第一模块;
将所述预设层生成器的上一层生成器的输出结果和所述样本特征金字塔输入至所述第二初始模块,所述期望图像作为期望输出,利用机器学习方法对所述第二初始模块进行训练,得到第二模块;以及
所述将所述第一编码器、所述第二编码器和包括所述第一模块的多层级生成器确定为所述图像生成模型,包括:
将所述第一编码器、所述第二编码器、包括所述第一模块和所述第二模块的多层级生成器确定为所述图像生成模型。
4.根据权利要求3所述的方法,其中,所述第二初始模块包括特征选择层、特征融合层和Transformer;以及
所述将所述预设层生成器的上一层生成器的输出结果和所述样本特征金字塔输入至所述第二初始模块,所述期望图像作为期望输出,利用机器学习方法对所述第二初始模块进行训练,得到第二模块,包括:
将所述样本参考图像对应的样本特征金字塔作为所述特征融合层的输入,所述预设层生成器的上一层生成器的输出结果和所述样本输入图像对应的输入特征作为所述特征选择层的输入,并将所述特征融合层和所述特征选择层的输出作为所述Transformer的输入;
将所述Transformer的输出和所述第一编码器和所述第二编码器的输出结果输入至所述预设层生成器中的第一模块;
将所述期望图像作为期望输出,利用机器学习方法对所述预设层生成器中的第二初始模块进行训练,得到所述第二模块。
5.根据权利要求1所述的方法,其中,所述利用机器学习方法,将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入,并将所述第一初始编码器和所述第二初始编码器的输出作为所述多层级生成器的输入,所述期望图像作为期望输出,对所述初始模型进行训练,得到图像生成模型,包括:
将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入,并将所述第一初始编码器和所述第二初始编码器的输出作为所述多层级生成器的输入,得到所述多层级生成器的生成图像;
基于所述生成图像和所述期望图像,确定表征图像像素特征的第一损失函数;
基于所述第一损失函数调整所述初始模型,得到所述图像生成模型。
6.根据权利要求5所述的方法,其中,所述方法还包括:
基于所述生成图像和所述期望图像,确定第二损失函数,其中,所述第二损失函数包括以下至少一项:表征图像感知特征的感知损失函数、表征图像标识特征的损失函数和正则化损失函数;以及
所述基于所述第一损失函数调整所述初始模型,得到所述图像生成模型,包括:
基于所述第一损失函数和所述第二损失函数调整所述初始模型,得到所述图像生成模型。
7.一种图像生成方法,所述方法包括:
响应于获取到输入图像和参考图像,将所述输入图像和参考图像输入至图像生成模型,其中,所述图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;
通过所述第一编码器对所述输入图像进行编码映射,得到所述输入图像对应的第一空间输入向量;
通过所述第二编码器对所述参考图像进行编码映射,得到所述参考图像对应的第一空间参考向量;
将所述第一空间输入向量和所述第一空间参考向量输入至所述多层级生成器中,生成所述输入图像和所述参考图像对应的目标图像,其中,所述图像生成模型基于权利要求1-6任意一项方法获取。
8.根据权利要求7所述的方法,其中,所述多层级生成器中每层生成器包括预训练的、用于处理第一空间中的特征向量的第一模块,并且预设层生成器还包括用于处理第二空间中的特征向量的第二模块;以及,所述方法还包括:
获取所述参考图像对应的特征金字塔,所述特征金字塔包括多个尺度的特征图;
所述将所述第一空间输入向量和所述第一空间参考向量输入至所述多层级生成器中,生成所述输入图像和所述参考图像对应的目标图像,包括:
将所述第一空间输入向量和所述第一空间参考向量输入至每层生成器中的第一模块,将所述预设层生成器的上一层生成器的输出结果和所述特征金字塔输入至所述第二模块;
通过所述第一模块和所述第二模块对所述第一空间输入向量、所述第一空间参考向量、所述特征金字塔和所述预设层生成器的上一层生成器的输出结果进行处理,生成所述输入图像和所述参考图像对应的目标图像。
9.根据权利要求8所述的方法,其中,所述第二模块包括特征选择层、特征融合层和Transformer;以及
所述通过所述第一模块和所述第二模块对所述第一空间输入向量、所述第一空间参考向量、所述特征金字塔和所述预设层生成器的上一层生成器的输出结果进行处理,生成所述输入图像和所述参考图像对应的目标图像,包括:
将所述特征金字塔输入至所述特征融合层,得到多个融合特征;
将所述预设层生成器的上一层生成器的输出结果和所述输入图像对应的输入特征输入至所述特征选择层,基于预设条件输出期望特征;
将所述多个融合特征和所述期望特征输入至所述Transformer进行特征对齐,得到对齐特征;
将所述对齐特征、所述第一空间输入向量和所述第一空间参考向量输入至所述第一模块,并将处理结果输入至所述预设层生成器的下一层生成器,直至生成所述第一空间输入图像和所述第一空间参考图像对应的目标图像。
10.根据权利要求8所述的方法,其中,所述Transformer还包括注意力机制;以及,所述方法还包括:
基于所述Transformer的注意力机制对所述对齐特征进行选择,得到选择后的特征向量;以及
所述将所述对齐特征、所述第一空间输入向量和所述第一空间参考向量输入至所述第一模块,并将处理结果输入至所述预设层生成器的下一层生成器,直至生成所述第一空间输入图像和所述第一空间参考图像对应的目标图像,包括:
将所述选择后的特征向量、所述第一空间输入向量和所述第一空间参考向量输入至所述第一模块,并将处理结果输入至所述预设层生成器的下一层生成器,直至生成所述第一空间输入图像和所述第一空间参考图像对应的目标图像。
11.一种模型训练装置,所述装置包括:
获取模块,被配置成获取训练样本集,其中,所述训练样本集包括样本输入图像、样本参考图像和期望图像;
构建模块,被配置成构建初始模型,其中,所述初始模型包括第一初始编码器、第二初始编码器和基于层级架构的多层级生成器;
训练模块,被配置成利用机器学习方法,将所述样本输入图像作为所述第一初始编码器的输入,所述样本参考图像作为所述第二初始编码器的输入,并将所述第一初始编码器和所述第二初始编码器的输出作为所述多层级生成器的输入,所述期望图像作为期望输出,对所述初始模型进行训练,得到图像生成模型。
12.一种图像生成装置,所述装置包括:
输入模块,被配置成响应于获取到输入图像和参考图像,将所述输入图像和参考图像输入至图像生成模型,其中,所述图像生成模型包括第一编码器、第二编码器和基于层级架构的多层级生成器;
第一编码模块,被配置成通过所述第一编码器对所述输入图像进行编码映射,得到所述输入图像对应的第一空间输入向量;
第二编码模块,被配置成通过所述第二编码器对所述参考图像进行编码映射,得到所述参考图像对应的第一空间参考向量;
生成模块,被配置成将所述第一空间输入向量和所述第一空间参考向量输入至所述多层级生成器中,生成所述输入图像和所述参考图像对应的目标图像,其中,所述图像生成模型基于上述权利要求1-6任意一项方法获取。
13.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-10中任一项所述的方法。
14.一种计算机可读介质,其上存储计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597992.5A CN114926568A (zh) | 2022-05-30 | 2022-05-30 | 模型训练方法、图像生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597992.5A CN114926568A (zh) | 2022-05-30 | 2022-05-30 | 模型训练方法、图像生成方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114926568A true CN114926568A (zh) | 2022-08-19 |
Family
ID=82813449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210597992.5A Pending CN114926568A (zh) | 2022-05-30 | 2022-05-30 | 模型训练方法、图像生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114926568A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190080148A1 (en) * | 2017-09-08 | 2019-03-14 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for generating image |
CN109902767A (zh) * | 2019-04-11 | 2019-06-18 | 网易(杭州)网络有限公司 | 模型训练方法、图像处理方法及装置、设备和介质 |
CN111784565A (zh) * | 2020-07-01 | 2020-10-16 | 北京字节跳动网络技术有限公司 | 图像处理方法、迁移模型训练方法、装置、介质及设备 |
KR20220027565A (ko) * | 2020-08-27 | 2022-03-08 | 연세대학교 산학협력단 | 참고 이미지의 특성을 고려한 종합적 스타일 변환 장치 및 방법 |
WO2022057837A1 (zh) * | 2020-09-16 | 2022-03-24 | 广州虎牙科技有限公司 | 图像处理和人像超分辨率重建及模型训练方法、装置、电子设备及存储介质 |
-
2022
- 2022-05-30 CN CN202210597992.5A patent/CN114926568A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190080148A1 (en) * | 2017-09-08 | 2019-03-14 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for generating image |
CN109902767A (zh) * | 2019-04-11 | 2019-06-18 | 网易(杭州)网络有限公司 | 模型训练方法、图像处理方法及装置、设备和介质 |
CN111784565A (zh) * | 2020-07-01 | 2020-10-16 | 北京字节跳动网络技术有限公司 | 图像处理方法、迁移模型训练方法、装置、介质及设备 |
KR20220027565A (ko) * | 2020-08-27 | 2022-03-08 | 연세대학교 산학협력단 | 참고 이미지의 특성을 고려한 종합적 스타일 변환 장치 및 방법 |
WO2022057837A1 (zh) * | 2020-09-16 | 2022-03-24 | 广州虎牙科技有限公司 | 图像处理和人像超分辨率重建及模型训练方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109816589B (zh) | 用于生成漫画风格转换模型的方法和装置 | |
CN111901598B (zh) | 视频解码与编码的方法、装置、介质及电子设备 | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
EP3834137A1 (en) | Committed information rate variational autoencoders | |
CN114339409B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN112906721B (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
CN112381707B (zh) | 图像生成方法、装置、设备以及存储介质 | |
Shen et al. | Clipgen: A deep generative model for clipart vectorization and synthesis | |
JP2022532669A (ja) | ビデオを識別するための方法及び装置 | |
US20240320807A1 (en) | Image processing method and apparatus, device, and storage medium | |
CN115965840A (zh) | 图像风格迁移和模型训练方法、装置、设备和介质 | |
CN111046757A (zh) | 人脸画像生成模型的训练方法、装置及相关设备 | |
CN118172134A (zh) | 虚拟试衣方法、装置、电子设备及可读存储介质 | |
CN118429755A (zh) | 文生图模型训练方法、图像预测方法、装置、设备及介质 | |
CN117894038A (zh) | 一种图像中对象姿态生成方法和装置 | |
CN115170388A (zh) | 人物线稿生成方法、装置、设备及介质 | |
KR20220018633A (ko) | 이미지 검색 방법 및 장치 | |
CN118230081B (zh) | 图像处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN117576248B (zh) | 基于姿态引导的图像生成方法和装置 | |
CN108765549A (zh) | 一种基于人工智能的产品三维展示方法及装置 | |
CN118229632A (zh) | 显示屏缺陷检测方法、模型训练方法、装置、设备及介质 | |
CN114418835B (zh) | 图像处理方法、装置、设备及介质 | |
CN118042246A (zh) | 视频生成方法、装置、电子设备及可读存储介质 | |
CN114926568A (zh) | 模型训练方法、图像生成方法和装置 | |
CN115880526A (zh) | 图像处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |