一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型训练方法、图像编辑方法、装置、介质与电子设备与流程

2022-11-19 10:52:00 来源:中国专利 TAG:


1.本公开涉及人工智能技术领域,尤其涉及一种用于图像编辑的模型训练方法、图像编辑方法、装置、介质与电子设备。


背景技术:

2.文本驱动的图像编辑是指通过文本描述的语义信息来改变图像的局部或全局属性,以生成新的图像。
3.相关技术中,为了训练用于图像编辑的机器学习模型,需要大量的图像-文本数据对以建立图像与文本之间的关联关系。数据获取成本较高,且模型的训练效果依赖于数据的标注质量。


技术实现要素:

4.本公开提供一种用于图像编辑的模型训练方法、图像编辑方法、用于图像编辑的模型训练装置、图像编辑装置、计算机可读存储介质与电子设备,以至少在一定程度上解决相关技术中数据获取成本高的问题。
5.根据本公开的第一方面,提供一种用于图像编辑的模型训练方法,包括:利用编码器对第一样本图像进行处理,得到所述第一样本图像对应的样本原始特征;将所述样本原始特征输入待训练的编辑模型,通过所述编辑模型将所述样本原始特征按照目标文本进行编辑,得到样本编辑特征;利用解码器对所述样本编辑特征进行处理,得到所述样本编辑特征对应的样本编辑图像;通过对所述样本编辑图像与所述目标文本进行匹配,确定第一损失函数值;根据所述第一损失函数值更新所述编辑模型的参数。
6.根据本公开的第二方面,提供一种图像编辑方法,包括:获取待编辑图像;利用预先训练的图像编辑全局模型对所述待编辑图像按照目标文本进行编辑处理,得到所述待编辑图像对应的目标图像;其中,所述图像编辑全局模型包括编码器、编辑模型、解码器,所述编辑模型由上述第一方面的模型训练方法训练得到。
7.根据本公开的第三方面,提供一种用于图像编辑的模型训练装置,包括:编码处理模块,被配置为利用编码器对第一样本图像进行处理,得到所述第一样本图像对应的样本原始特征;编辑处理模块,被配置为将所述样本原始特征输入待训练的编辑模型,通过所述编辑模型将所述样本原始特征按照目标文本进行编辑,得到样本编辑特征;解码处理模块,被配置为利用解码器对所述样本编辑特征进行处理,得到所述样本编辑特征对应的样本编辑图像;损失函数处理模块,被配置为通过对所述样本编辑图像与所述目标文本进行匹配,确定第一损失函数值;参数更新模块,被配置为根据所述第一损失函数值更新所述编辑模型的参数。
8.根据本公开的第四方面,提供一种图像编辑装置,包括:图像获取模块,被配置为获取待编辑图像;图像编辑模块,被配置为利用预先训练的图像编辑全局模型对所述待编辑图像按照目标文本进行编辑处理,得到所述待编辑图像对应的目标图像;其中,所述图像
编辑全局模型包括编码器、编辑模型、解码器,所述编辑模型由上述第一方面的模型训练方法训练得到。
9.根据本公开的第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一或第二方面的方法及其可能的实现方式。
10.根据本公开的第六方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令,来执行上述第一或第二方面的方法及其可能的实现方式。
11.本公开的技术方案具有以下有益效果:
12.一方面,模型训练所需的数据集包括第一样本图像和目标文本,目标文本用于指示图像编辑的方向,并不是对第一样本图像进行标注的文本。因此,本方案无需图像-文本数据对,无需对图像进行文本标注,从而降低了数据获取成本,并且模型训练的效果不依赖于文本标注的质量,有利于改善模型训练效果,提升模型质量。另一方面,图像编辑是利用编辑模型在特征空间中进行特征编辑而实现的,不仅能生成符合目标文本描述属性的图像,而且能保持图像的其他属性不变,实现对图像的精准编辑。
附图说明
13.图1示出本示例性实施方式中一种用于图像编辑的模型训练方法的流程图;
14.图2示出本示例性实施方式中模型训练方法的子流程图;
15.图3示出本示例性实施方式中模型训练方法的示意图;
16.图4示出本示例性实施方式中一种图像编辑方法的流程图;
17.图5示出本示例性实施方式中图像编辑的实例图;
18.图6示出了本示例性实施方式运行环境的系统架构的示意图;
19.图7示出本示例性实施方式中一种用于图像编辑的模型训练装置的结构示意图;
20.图8示出本示例性实施方式中一种图像编辑装置的结构示意图;
21.图9示出本示例性实施方式中一种电子设备的结构示意图。
具体实施方式
22.下文将结合附图更全面地描述本公开的示例性实施方式。
23.附图为本公开的示意性图解,并非一定是按比例绘制。附图中所示的一些方框图可能是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在硬件模块或集成电路中实现这些功能实体,或在网络、处理器或微控制器中实现这些功能实体。实施方式能够以多种形式实施,不应被理解为限于在此阐述的范例。本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或多个实施方式中。在下文的描述中,提供许多具体细节从而给出对本公开实施方式的充分说明。然而,本领域技术人员应意识到,可以在实现本公开的技术方案时省略其中的一个或多个特定细节,或者可以采用其它的方法、组元、装置、步骤等替代一个或多个特定细节。
24.相关技术中,为了训练用于图像编辑的机器学习模型,需要大量的图像-文本数据对,使得模型能够学习到图像与文本之间的关联关系,进而在模型推理阶段生成符合文本描述的图像。该方案对数据集的要求较高,需要对大量的图像进行文本描述的标注,标注难
度较大,导致数据获取成本较高。并且,模型的训练效果依赖于数据集的标注质量以及数据集的覆盖范围。例如,若进行文本标注时遗漏了图像信息,使得图像与文本之间的关联关系不全面,则导致模型输出结果的准确性降低;或者,模型对于数据集未覆盖到的文本类型或场景,难以对应生成高质量的图像。
25.鉴于上述一个或多个问题,本公开的示例性实施方式提供一种用于图像编辑的模型训练方法。图1示出了模型训练方法的流程,可以包括以下步骤s110至s150:
26.步骤s110,利用编码器对第一样本图像进行处理,得到第一样本图像对应的样本原始特征;
27.步骤s120,将样本原始特征输入待训练的编辑模型,通过编辑模型将样本原始特征按照目标文本进行编辑,得到样本编辑特征;
28.步骤s130,利用解码器对样本编辑特征进行处理,得到样本编辑特征对应的样本编辑图像;
29.步骤s140,通过对样本编辑图像与目标文本进行匹配,确定第一损失函数值;
30.步骤s150,根据第一损失函数值更新编辑模型的参数。
31.基于上述方法,一方面,模型训练所需的数据集包括第一样本图像和目标文本,目标文本用于指示图像编辑的方向,并不是对第一样本图像进行标注的文本。因此,本方案无需图像-文本数据对,无需对图像进行文本标注,从而降低了数据获取成本,并且模型训练的效果不依赖于文本标注的质量,有利于改善模型训练效果,提升模型质量。另一方面,图像编辑是利用编辑模型在特征空间中进行特征编辑而实现的,不仅能生成符合目标文本描述属性的图像,而且能保持图像的其他属性不变,实现对图像的精准编辑。
32.下面对图1中的每个步骤做具体说明。
33.参考图1,在步骤s110中,利用编码器对第一样本图像进行处理,得到第一样本图像对应的样本原始特征。
34.第一样本图像是用于训练模型的原始样本图像,即未经编辑的样本图像。第一样本图像可以是任意类型、通过任意来源获取的图像。例如,第一样本图像可以是从互联网(如社交网络)上收集的人脸图像。
35.编码器用于对图像提取特征,并编码为张量(如向量、矩阵等)形式的数据。编码器可以实现为一种机器学习模型。示例性的,编码器可以是神经网络模型,包括卷积层、全连接层(或全局池化层)等中间层,用于从图像中提取不同尺度的特征,并编码为向量。将第一样本图像输入编码器,编码器输出样本原始特征。样本原始特征是指未经编辑的样本特征。在一种实施方式中,样本原始特征可以是样本原始特征向量。步骤s110中所使用的编码器可以是未经训练的编码器,或经过初步训练的编码器,或经过充分训练的编码器。编码器的训练程度越高,样本原始特征越能够准确表征第一样本图像的内容。
36.在一种实施方式中,编码器可以提取第一样本图像的特征,并映射至潜向量空间中,得到样本原始特征。在潜向量空间中,不同维度的信息表示不同方面的属性,有利于后续编辑模型对特定的维度进行编辑,而不改变其他维度的信息,即仅改变与图像编辑相关的属性,无需改变其他属性,提高图像编辑的精准性与效率。
37.继续参考图1,在步骤s120中,将样本原始特征输入待训练的编辑模型,通过编辑模型将样本原始特征按照目标文本进行编辑,得到样本编辑特征。
38.目标文本是驱动图像编辑的文本,能够指示图像编辑的方向。例如,目标文本可以是“a girl with smile face”(面带笑容的女孩),经过编辑后的图像应当包括相关的图像内容。本示例性实施方式中,可以准备多个用于模型训练的样本文本,目标文本可以是其中的任一个。
39.样本原始特征仅包括第一样本图像的信息,编辑模型用于将样本原始特征编辑为与目标文本匹配的样本编辑特征,使得样本编辑特征包括目标文本的信息。样本编辑特征和样本原始特征可以是相同形式的数据,例如两者都是向量。
40.在一种实施方式中,编辑模型可以包括一个或多个全连接层,能够将样本原始特征从输入特征空间映射至样本编辑特征所在的输出特征空间。编辑模型还可以包括残差结构,实现不同层级的特征之间的连接。
41.在一种实施方式中,上述将样本原始特征输入待训练的编辑模型,可以包括以下步骤:
42.在与多个样本文本一一对应的多个编辑模型中,获取目标文本对应的编辑模型,将样本原始特征输入样本文本对应的编辑模型。
43.也就是说,可以针对每个样本文本分别构建一个对应的编辑模型,使得样本文本与编辑模型一一对应。在模型训练过程中,可以分别对每个编辑模型进行训练。例如,在步骤s120中,确定采用目标文本对应的编辑模型,在步骤s140中,所确定的第一损失函数值针对于目标文本对应的编辑模型,在步骤s150中,根据第一损失函数值更新目标文本对应的编辑模型的参数。若需训练其他样本文本对应的编辑模型,则将目标文本替换为其他样本文本,并再次执行步骤s110至s150。
44.编辑模型可以仅具有一个输入通道,用于输入样本原始特征,这样无需将目标文本输入编辑模型中。通过训练编辑模型,使其学习到目标文本的信息。因此,可以设置结构较为简单的编辑模型,每个编辑模型仅需学习对应的一个样本文本的信息,将样本原始特征按照该样本文本指示的方向进行编辑,有利于加速训练过程。
45.在一种实施方式中,也可以构建一个针对不同样本文本的编辑模型,该编辑模型可以具有两个输入通道,用于输入样本原始特征和目标文本。若输入的目标文本不同,则编辑模型将样本原始特征进行编辑的方向也不同,得到的样本编辑特征也不同。
46.在一种实施方式中,可以将编辑模型设置为输出特征增量的形式。例如,以w表示样本原始特征,编辑模型按照目标文本指示的方向对w进行编辑,输出特征增量δw,则w δw为样本编辑特征。由此,能够简化编辑模型处理过程中的中间数据,减小中间数据的数值,提高效率。
47.继续参考图1,在步骤s130中,利用解码器对样本编辑特征进行处理,得到样本编辑特征对应的样本编辑图像。
48.解码器用于将特征还原为图像。解码器可以实现为一种机器学习模型。在一种实施方式中,解码器可以是预训练的stylegan(style generative adversarial network,基于样式的生成对抗网络)、stylegan2或stylegan3(stylegan2和stylegan3是stylegan的改进版本)中的生成模型。
49.步骤s130中所使用的解码器可以是未经训练的解码器,或经过初步训练的解码器,或经过充分训练的解码器。解码器的训练程度越高,样本编辑图像与样本编辑特征的匹
配性越好。
50.将样本编辑特征输入解码器,可以输出对应的样本编辑图像。可见,在步骤s110至s130中,通过编码器、编辑模型、解码器的先后依次处理,将第一样本图像最终编辑为样本编辑图像,样本编辑图像是编辑模型对第一样本图像进行间接编辑(编辑模型直接编辑样本原始特征,相当于间接编辑第一样本图像)的结果。
51.继续参考图1,在步骤s140中,通过对样本编辑图像与目标文本进行匹配,确定第一损失函数值。
52.如上所述,样本编辑图像是编辑模型对第一样本图像进行间接编辑的结果。编辑模型的训练目标可以包括:使编辑模型能够按照目标文本指示的方向进行准确编辑,那么样本编辑图像应当包括与目标文本匹配的图像内容。由此,本示例性实施方式中,可以基于样本编辑图像与目标文本之间不匹配的程度,来构建第一损失函数并计算第一损失函数值。第一损失函数可以是l1损失函数、l2损失函数、交叉熵等。
53.在一种实施方式中,为便于对样本编辑图像与目标文本进行匹配,上述通过对样本编辑图像与样本文本进行匹配,确定第一损失函数值,可以包括以下步骤:
54.将样本编辑图像和目标文本映射为相同模态的信息,通过对映射后的样本编辑图像和目标文本进行匹配以确定第一损失函数值。
55.其中,模态是指信息的形态,如图像、文本是两种不同模态。为了对样本编辑图像和目标文本进行匹配,先将样本编辑图像和目标文本映射为相同模态的信息,例如,可以将样本编辑图像映射为文本模态的信息,以便于和目标文本直接匹配。或者将目标文本映射为图像模态的信息,以便于和样本编辑图像直接匹配。或者将样本编辑图像和目标文本均映射为向量的形式,以进行匹配。
56.在一种实施方式中,可以对映射后的样本编辑图像和目标文本计算匹配度,如匹配度是0~1范围内的数值,则可以将“1-匹配度”作为第一损失函数值。也可以对映射后的样本编辑图像和目标文本计算余弦距离,以作为第一损失函数值。
57.在一种实施方式中,映射后的样本编辑图像和目标文本均可以包括多个维度的信息,每个维度表示一个方面的属性。可以将两者之间各维度的信息分别进行匹配,为相同维度的信息的匹配度设置监督值为1,为不同维度的信息的匹配度设置监督值为0,根据计算出的匹配度与监督值之间的l1损失、l2损失、交叉熵等,得到第一损失函数值。
58.示例性的,第一损失函数可以如下所示:
59.loss1=dis(decode(w δw),t)
ꢀꢀꢀꢀꢀꢀꢀ
(1)
60.其中,loss1表示第一损失函数,w δw表示样本编辑特征,decode表示解码,decode(w δw)表示对样本编辑特征解码得到的样本编辑图像,t表示目标文本,dis表示对映射后的样本编辑图像和目标文本计算的距离,该距离可以是映射后的模态空间中的余弦距离或欧式距离等。可见,距离越大,说明样本编辑图像与目标文本的不匹配程度越高,第一损失函数值越大。
61.应当理解,也可以将公式(1)中的距离替换为“1-匹配度”的形式,匹配度可以是映射后的样本编辑图像和目标文本之间的相似度,如余弦相似度等。
62.继续参考图1,在步骤s150中,根据第一损失函数值更新编辑模型的参数。
63.第一损失函数值反映了样本编辑图像与目标文本之间不匹配的程度。可以根据第
一损失函数值计算编辑模型的参数更新梯度,采用梯度下降的方式更新编辑模型的参数。通过更新编辑模型的参数,使第一损失函数值不断减小,直至达到训练完成的条件,如第一损失函数值收敛或小于预设的损失阈值等,从而完成对编辑模型的训练。
64.在一种实施方式中,若编码器、解码器已经过充分训练,则可以根据第一损失函数值仅更新编辑模型的参数,保持编码器、解码器的参数不变。
65.在一种实施方式中,若编码器与解码器中的至少一者未经过充分训练,则可以根据第一损失函数值更新编辑模型的参数,同时更新编码器与解码器中的至少一者的参数。示例性的,可以将编码器、编辑模型、解码器视为一个图像编辑全局模型,根据第一损失函数值更新该图像编辑全局模型的参数,从而实现对其中三个模型的训练。
66.在一种实施方式中,模型训练方法还可以包括以下步骤:
67.根据样本编辑特征与样本原始特征之间的变化量,确定第二损失函数值。
68.其中,第二损失函数值可以与变化量正相关。即样本编辑特征与样本原始特征之间的变化量越大,第二损失函数值越大。即第二损失函数值反映了编辑模型对样本编辑特征的编辑程度。为了防止过度编辑,可以使编辑程度尽可能的低。示例性的,第二损失函数可以如下所示:
69.loss2=‖δw‖2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
70.其中,loss2表示第二损失函数,δw表示样本编辑特征相比于样本原始特征的特征增量,即上述变化量。loss2采用l2损失函数,当然也可以采用l1或其他型的损失函数。特征的变化量越大,说明编辑模型进行的编辑程度越高,第二损失函数值越大。
71.上述根据第一损失函数值更新编辑模型的参数,可以包括以下步骤:
72.根据第一损失函数值和第二损失函数值更新编辑模型的参数。
73.也就是说,除了实现准确编辑外,编辑模型的训练目标还可以包括:使编辑程度尽可能的低。根据第一损失函数值和第二损失函数值更新编辑模型的参数,使得编辑模型朝向准确编辑、编辑程度低这两个目标进行训练。
74.在一种实施方式中,可以将第一损失函数值和第二损失函数值进行合并,如相加或加权等,得到综合损失函数值,根据该综合损失函数值计算编辑模型的参数更新梯度,进而对参数进行更新。
75.在一种实施方式中,第一样本图像和样本编辑图像均可以是人脸图像。一般的,若第一样本图像是人脸图像,则经过编辑后的样本编辑图像也是人脸图像。模型训练方法还可以包括以下步骤:
76.提取第一样本图像的人脸特征和样本编辑图像的人脸特征,通过对第一样本图像的人脸特征和样本编辑图像的人脸特征进行匹配,确定第三损失函数值。
77.其中,人脸特征可用于识别人脸对应的身份,如可以包括人脸关键点之间的位置关系、分布特征等。第一样本图像的人脸特征和样本编辑图像的人脸特征进行匹配,两图像的人脸特征的匹配度越高,说明两图像的人脸越接近于同一人。而对人脸图像的编辑可以保持相貌特征,使得编辑前后的图像中的人是同一个人。因此,可以基于第一样本图像的人脸特征和样本编辑图像的人脸特征之间不匹配的程度,构建第三损失函数并计算第三损失函数值。
78.示例性的,第三损失函数可以如下所示:
79.loss3=dis(r(s1),r(decode(w δw)))
ꢀꢀꢀ
(3)
80.其中,loss3表示第三损失函数,s1表示第一样本图像,r表示提取人脸特征,如可以是预先训练的人脸特征模型arcface。dis表示对第一样本图像的人脸特征和样本编辑图像的人脸特征计算距离,该距离可以是人脸特征空间中的余弦距离或欧式距离等。可见,距离越大,说明第一样本图像的人脸特征与样本编辑图像的人脸特征的不匹配程度越高,即两张图像中的人脸越不像同一个人,第三损失函数值越大。
81.应当理解,也可以将公式(3)中的距离替换为“1-匹配度”的形式,匹配度可以是第一样本图像的人脸特征与样本编辑图像的人脸特征之间的相似度,如余弦相似度等。
82.在一种实施方式中,模型训练方法还可以包括以下步骤:
83.利用解码器对样本原始特征进行处理,得到第一样本图像对应的第一样本合成图像,提取第一样本合成图像的人脸特征和样本编辑图像的人脸特征,通过对第一样本合成图像的人脸特征和样本编辑图像的人脸特征进行匹配,确定第三损失函数值。
84.其中,第一样本合成图像是解码器对未经编辑模型编辑的样本原始特征进行解码所生成的图像,由于是非真实的图像,因此称为第一样本合成图像。而样本编辑图像是解码器对经过编辑模型编辑的样本编辑特征进行解码所生成的图像。由于期望编辑模型的编辑过程不改变人脸的相貌,第一样本合成图像与样本编辑图像中的人脸应当是同一个人。因此,可以基于第一样本合成图像的人脸特征和样本编辑图像的人脸特征之间不匹配的程度,构建第三损失函数并计算第三损失函数值。
85.示例性的,第三损失函数可以如下所示:
86.loss3=dis(r(decode(w)),r(decode(w δw)))
ꢀꢀ
(4)
87.其中,w表示样本原始特征,decode(w)表示解码器对样本原始特征处理后生成的第一样本合成图像。公式(4)采用第一样本合成图像的人脸特征和样本编辑图像的人脸特征之间的距离来作为第三损失函数值,也可以将距离替换为“1-匹配度”的形式。
88.在一种实施方式中,上述根据第一损失函数值更新编辑模型的参数,可以包括以下步骤:
89.根据第一损失函数值和第三损失函数值更新编辑模型的参数。
90.也就是说,除了实现准确编辑外,编辑模型的训练目标还可以包括:使编辑前后的人脸保持为同一个人。根据第一损失函数值和第三损失函数值更新编辑模型的参数,使得编辑模型朝向准确编辑、保持人脸不变这两个目标进行训练。
91.在一种实施方式中,可以将第一损失函数值和第三损失函数值进行合并,如相加或加权等,得到综合损失函数值,根据该综合损失函数值计算编辑模型的参数更新梯度,进而对参数进行更新。
92.在一种实施方式中,可以根据第一损失函数值、第二损失函数值和第三损失函数值更新编辑模型的参数。
93.示例性的,可以结合第一损失函数、第二损失函数、第三损失函数,构建综合损失函数,如下所示:
94.lossg=loss1 λ1·
loss2 λ2·
loss3
ꢀꢀꢀꢀ
(5)
95.其中,lossg表示综合损失函数,λ1和λ2分别是第二损失函数和第三损失函数的权重,可以根据经验或具体情况确定,用于平衡第一损失函数、第二损失函数、第三损失函数
三部分之间的比例。根据综合损失函数值计算编辑模型的参数更新梯度,进而对参数进行更新。由此,可以实现如下三方面的训练目标:使编辑模型能够对样本原始特征(间接对样本原始图像)实现准确编辑;使编辑程度尽可能的低;编辑前后的人脸保持为同一个人。
96.在一种实施方式中,可以计算综合损失函数值,该综合损失函数值可以包括第一损失函数值,以及第二损失函数值和第三损失函数值中的至少一者。根据综合损失函数值更新编辑模型的参数,同时更新编码器与解码器中的至少一者的参数。
97.在一种实施方式中,参考图2所示,在上述利用编码器对第一样本图像进行处理,得到第一样本图像对应的样本原始特征前,模型训练方法还可以包括以下步骤s210至s240:
98.步骤s210,获取第二样本图像,第二样本图像为人脸图像。
99.步骤s220,将第二样本图像输入由编码器和解码器组成的生成模型,以输出第二样本图像对应的第二样本合成图像;
100.步骤s230,提取第二样本图像的人脸特征和第二样本合成图像的人脸特征,通过对第二样本图像的人脸特征和第二样本合成图像的人脸特征进行匹配,确定第四损失函数值;
101.步骤s240,根据第四损失函数值更新生成模型的参数。
102.其中,第二样本图像用于训练生成模型。在一种实施方式中,第二样本图像和第二样本图像可以来源于同一数据集,这样训练生成模型与训练编辑模型可以复用该数据集。
103.生成模型由编码器和解码器组成,不包括编辑模型。将第二样本图像输入生成模型,经过编码与解码的处理过程,可以生成一张新的图像,称为第二样本合成图像。第二样本合成图像并未经过文本编辑的处理,其应当与第二样本图像较为相似。由于第二样本图像为人脸图像,第二样本人脸图像也为人脸图像,且两图像中的人脸应当是同一人。因此,可以提取第二样本图像的人脸特征和第二样本合成图像的人脸特征,基于两人脸特征的不匹配程度,构建第四损失函数并计算第四损失函数值,以用于训练生成模型。
104.示例性的,第四损失函数可以如下所示:
105.loss4=dis(r(s2),r(decode(encode(s2))))
ꢀꢀ
(6)
106.其中,loss4表示第四损失函数,s2表示第二样本图像,encode表示编码,decode(encode(s2))表示第二样本图像先经过编码再经过解码所生成的第二样本合成图像。dis表示对第二样本图像的人脸特征和第二样本合成图像的人脸特征计算距离,该距离可以是人脸特征空间中的余弦距离或欧式距离等。可见,距离越大,说明第二样本图像的人脸特征与第二样本合成图像的人脸特征的不匹配程度越高,即两张图像中的人脸越不像同一个人,第四损失函数值越大。也可以将公式(6)中的距离替换为“1-匹配度”的形式,匹配度可以是第二样本图像的人脸特征与第二样本合成图像的人脸特征之间的相似度,如余弦相似度等。
107.根据第四损失函数值计算生成模型的参数更新梯度,进而对参数进行更新,以实现对生成模型的训练,使其能够对图像进行准确地编码与解码。
108.图2所示的步骤可以在图1的步骤之前执行,即在训练编辑模型之前,可以先训练生成模型,以得到经过训练的编码器与解码器。由此,在图1的步骤中,可以在固定编码器与解码器的参数的情况下,仅训练编辑模型,有利于加速编辑模型的训练过程。
109.在一种实施方式中,在将第二样本图像输入由编码器和解码器组成的生成模型时,解码器是已训练的解码器。例如,可以采用真实人脸数据集预先训练解码器,或者采用预训练的stylegan模型作为解码器。相应的,上述根据第四损失函数值更新生成模型的参数,可以包括以下步骤:
110.固定解码器的参数,根据第四损失函数值更新编码器的参数。
111.也就是说,在步骤s240中,可以仅更新编码器的参数,保持解码器的参数不变。这样,相当于先训练解码器,再训练编码器,最后训练编辑模型,有利于进一步降低数据获取成本,如上述不同的训练过程可以复用同一数据集,并且,相比于对编码器、解码器、编辑模型同时训练的方式,对每一部分单独训练的方式,能够使每一部分更快收敛,提高训练效率。
112.在一种实施方式中,对解码器、编码器、编辑模型先后单独训练后,还可以将三部分作为一个图像编辑全局模型,通过进一步的训练对三部分进行微调(fine tuning),例如可以采用上述任一种综合损失函数进行微调,从而进一步提高模型质量。
113.图3示出了模型训练方法的示意图。将第一样本图像输入编码器,输出样本原始特征w;将样本原始特征w输入目标文本“a girl with smile face”(也可以替换为其他目标文本)对应的编辑模型,输出特征增量δw;将样本原始特征与特征增量相加,得到样本编辑特征w δw;将样本编辑特征w δw输入解码器,输出样本编辑图像。通过对目标文本与样本编辑图像进行匹配,计算第一损失函数值loss1;根据特征增量δw的大小确定第二损失函数值loss2;根据第一样本图像与样本编辑图像之间的人脸身份差异,确定第三损失函数值loss3;根据loss1、loss2、loss3更新编辑模型的参数,以实现模型训练。
114.本公开的示例性实施方式还提供一种图像编辑方法。图4示出了该图像编辑方法的流程,可以包括以下步骤s410和s420:
115.步骤s410,获取待编辑图像;
116.步骤s420,利用预先训练的图像编辑全局模型对待编辑图像按照目标文本进行编辑处理,得到待编辑图像对应的目标图像。
117.其中,待编辑图像可以是任意类型、通过任意来源获取的图像。
118.图像编辑全局模型包括编码器、编辑模型、解码器,如可以是上述图像编辑全局模型。编辑模型由本示例性实施方式中的模型训练方法训练得到,例如可以通过执行图1所示的步骤而训练得到编辑模型。
119.此外,图像编辑全局模型中的编码器或解码器可以由本示例性实施方式中的模型训练方法训练得到,例如可以通过执行图2所示的步骤而训练得到编码器。
120.将待编辑图像输入预先训练的图像编辑全局模型,模型可以输出对应的目标图像,该目标图像是按照目标文本对待编辑图像进行编辑后的图像。
121.图5示出了图像编辑的实例图。利用图像编辑全局模型,可以对待编辑图像按照三种不同的目标文本进行编辑处理,三种目标文本分别为:a girl with smile face(面带笑容的女孩),a female child(小女孩),cartoon sketch(卡通素描)。分别得到三张不同风格的目标图像,与三种目标文本相对应。
122.在一种实施方式中,对于不同的目标文本,图像编辑全局模型中的编辑模型也不同。例如,输入待编辑图像后,若指定目标文本为“a girl with smile face”,则采用编码
器 “a girl with smile face”对应的编辑模型 解码器组成的图像编辑全局模型对待编辑图像进行处理,输出目标图像。若指定目标文本为“a female child”,则采用编码器 “a female child”对应的编辑模型 解码器组成的图像编辑全局模型对待编辑图像进行处理,输出目标图像。由于编辑模型不同,输出的目标图像也不同。
123.基于图4的方法,可以基于目标文本对待编辑图像进行准确编辑,生成高质量的目标图像,使得目标图像包含目标文本的信息,并具有真实感。
124.图6示出了本示例性实施方式运行环境的系统架构。该系统架构600可以包括终端610和服务器620。终端610可以是手机、平板电脑、个人电脑、智能穿戴设备、无人机等电子设备。服务器620泛指提供本示例性实施方式中图像编辑相关服务的后台系统,可以是一台服务器或多台服务器的集群。终端610和服务器620之间可以通过有线或无线的通信链路形成连接,以进行数据交互。
125.在一种实施方式中,可以由服务器620执行本示例性实施方式中的模型训练方法,将训练后的模型部署在终端610上,由终端610执行本示例性实施方式中的图像编辑方法,如终端610可以将本地相册中的图像作为待编辑图像,输出目标图像并加以存储。
126.在一种实施方式中,可以由服务器620执行本示例性实施方式中的模型训练方法,得到训练后的模型,并执行本示例性实施方式中的图像编辑方法,得到待编辑图像对应的目标图像。
127.在一种实施方式中,可以由终端610执行本示例性实施方式中的模型训练方法,得到训练后的模型,并执行本示例性实施方式中的图像编辑方法,得到待编辑图像对应的目标图像。
128.由上可知,本示例性实施方式中的模型训练方法的执行主体可以是上述终端610或服务器620,图像编辑方法的执行主体也可以是上述终端610或服务器620。
129.本公开的示例性实施方式还提供一种用于图像编辑的模型训练装置。参考图7所示,模型训练装置700可以包括:
130.编码处理模块710,被配置为利用编码器对第一样本图像进行处理,得到第一样本图像对应的样本原始特征;
131.编辑处理模块720,被配置为将样本原始特征输入待训练的编辑模型,通过编辑模型将样本原始特征按照目标文本进行编辑,得到样本编辑特征;
132.解码处理模块730,被配置为利用解码器对样本编辑特征进行处理,得到样本编辑特征对应的样本编辑图像;
133.损失函数处理模块740,被配置为通过对样本编辑图像与目标文本进行匹配,确定第一损失函数值;
134.参数更新模块750,被配置为根据第一损失函数值更新编辑模型的参数。
135.在一种实施方式中,上述通过对样本编辑图像与样本文本进行匹配,确定第一损失函数值,包括:
136.将样本编辑图像和目标文本映射为相同模态的信息,通过对映射后的样本编辑图像和目标文本进行匹配以确定第一损失函数值。
137.在一种实施方式中,损失函数处理模块740,还被配置为:
138.根据样本编辑特征与样本原始特征之间的变化量,确定第二损失函数值;
139.上述根据第一损失函数值更新编辑模型的参数,包括:
140.根据第一损失函数值和第二损失函数值更新编辑模型的参数。
141.在一种实施方式中,第一样本图像和样本编辑图像均为人脸图像;损失函数处理模块740,还被配置为:
142.提取第一样本图像的人脸特征和样本编辑图像的人脸特征,通过对第一样本图像的人脸特征和样本编辑图像的人脸特征进行匹配,确定第三损失函数值;或者利用解码器对样本原始特征进行处理,得到第一样本图像对应的第一样本合成图像,提取第一样本合成图像的人脸特征和样本编辑图像的人脸特征,通过对第一样本合成图像的人脸特征和样本编辑图像的人脸特征进行匹配,确定第三损失函数值;
143.上述根据第一损失函数值更新编辑模型的参数,包括:
144.根据第一损失函数值和第三损失函数值更新编辑模型的参数。
145.在一种实施方式中,上述将样本原始特征输入待训练的编辑模型,包括:
146.在与多个样本文本一一对应的多个编辑模型中,获取目标文本对应的编辑模型,将样本原始特征输入样本文本对应的编辑模型。
147.在一种实施方式中,模型训练装置700还可以包括生成模型训练模块,被配置为在编码处理模块710利用编码器对第一样本图像进行处理,得到第一样本图像对应的样本原始特征前,执行以下步骤:
148.获取第二样本图像,第二样本图像为人脸图像;
149.将第二样本图像输入由编码器和解码器组成的生成模型,以输出第二样本图像对应的第二样本合成图像;
150.提取第二样本图像的人脸特征和第二样本合成图像的人脸特征,通过对第二样本图像的人脸特征和第二样本合成图像的人脸特征进行匹配,确定第四损失函数值;
151.根据第四损失函数值更新生成模型的参数。
152.在一种实施方式中,在生成模型训练模块将第二样本图像输入由编码器和解码器组成的生成模型时,解码器是已训练的解码器。上述根据第四损失函数值更新生成模型的参数,包括:
153.固定解码器的参数,根据第四损失函数值更新编码器的参数。
154.本公开的示例性实施方式还提供一种图像编辑装置。参考图8所示,图像编辑装置800包括:
155.图像获取模块810,被配置为获取待编辑图像;
156.图像编辑模块820,被配置为利用预先训练的图像编辑全局模型对待编辑图像按照目标文本进行编辑处理,得到待编辑图像对应的目标图像;
157.其中,图像编辑全局模型包括编码器、编辑模型、解码器,编辑模型由本示例性实施方式中的模型训练方法训练得到。
158.上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
159.本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
在一种可选的实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
160.程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
161.计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
162.可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
163.可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
164.本公开的示例性实施方式还提供一种电子设备,该电子设备例如可以是上述控制节点。该电子设备可以包括处理器与存储器。存储器存储有处理器的可执行指令,如可以是程序代码。处理器通过执行该可执行指令来执行本示例性实施方式中的模型训练方法或图像编辑方法。
165.下面参考图9,以通用计算设备的形式对电子设备进行示例性说明。应当理解,图9显示的电子设备900仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来限制。
166.如图9所示,电子设备900可以包括:处理器910、存储器920、总线930、i/o(输入/输出)接口940、网络适配器950。
167.存储器920可以包括易失性存储器,例如ram 921、缓存单元922,还可以包括非易失性存储器,例如rom 923。存储器920还可以包括一个或多个程序模块924,这样的程序模块924包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
168.总线930用于实现电子设备900的不同组件之间的连接,可以包括数据总线、地址总线和控制总线。
169.电子设备900可以通过i/o接口940与一个或多个外部设备2000(例如键盘、鼠标、外置控制器等)进行通信。
170.电子设备900可以通过网络适配器950与一个或者多个网络通信,例如网络适配器950可以提供如3g/4g/5g等移动通信解决方案,或者提供如无线局域网、蓝牙、近场通信等无线通信解决方案。网络适配器950可以通过总线930与电子设备900的其它模块通信。
171.尽管图9中未示出,还可以在电子设备900中设置其它硬件和/或软件模块,包括但不限于:显示器、微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
172.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
173.本领域技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
174.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献