模型训练方法、图像生成方法、装置、设备和介质与流程

文档序号:30704905发布日期:2022-07-09 22:16阅读:75来源:国知局
模型训练方法、图像生成方法、装置、设备和介质与流程

1.本公开涉及计算机视觉与图像处理领域,尤其涉及一种模型训练方法、图像生成方法、装置、设备和介质。


背景技术:

2.近年来,随着科技的进步,虚拟数字人的生成技术日趋成熟。虚拟数字人主要有两种呈现方式:自动播报式(如新闻主播等)和交互式(如情感数字人、虚拟机器人以及各种交互助手等)。在虚拟数字人的生成过程中,数字人的图像生成是比较重要的一个环节。
3.现有的图像生成方法基本为两种:一种是基于传统方法进行人脸拉伸与变换,该方法对于多面点非刚性的真实人像,处理效果较差;另一种是现有的基于模型学习的方式,实现人脸之间的生成与变换,但是该方法对于图像细节生成效果较差,尤其是针对人像生成中的眉毛、口型等细节很难达到逼真的效果,从而导致最终生成的数字人图像的效果较差。


技术实现要素:

4.为了解决上述技术或者至少部分地解决上述技术问题,本公开提供了一种模型训练方法、图像生成方法、装置、设备和介质,可以根据第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,根据第二训练样本对第二网络模型和第一目标模型进行联合训练,得到训练后的图像生成模型,从而使得图像生成模型所生成的图像在细节方面效果更好,能够与真实图像更接近。
5.为了实现上述目的,本公开实施例提供的技术方案如下:
6.第一方面,本公开提供了一种图像生成模型训练方法,该方法包括:
7.基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,所述第一训练样本包括第一人脸图像、所述第一人脸图像对应的人脸关键点图像、目标图像、所述目标图像对应的目标人脸关键点图像以及所述目标图像的人脸关键点数据;
8.基于第二训练样本对第二网络模型和所述第一目标模型进行训练,得到训练后的图像生成模型,所述第二训练样本包括所述第一目标模型生成的第二人脸图像和所述目标图像。
9.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第一生成对抗网络模型包括第一生成器和第一判别器;
10.相应的,所述基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,包括:
11.将所述第一训练样本中的第一人脸图像、所述人脸关键点图像以及所述目标图像的人脸关键点数据输入所述第一生成器,得到第一预测图像;
12.将所述第一人脸图像和所述第一预测图像输入所述第一判别器,得到第一判别结果;
13.基于预设损失函数,根据所述第一预测图像、所述目标图像以及所述第一判别结果,对所述第一生成器进行训练,得到所述第一生成器训练后的第一目标模型。
14.作为本公开实施例一种可选的实施方式,所述基于预设损失函数,根据所述第一预测图像、所述目标图像以及所述第一判别结果,对所述第一生成器进行训练,得到所述第一生成器训练后的第一目标模型,包括:
15.基于第一预设损失函数,根据所述第一预测图像和所述目标图像,确定所述第一生成器对应的第一损失值;
16.基于第二预设损失函数,根据所述第一判别结果,确定所述第一判别器对应的第二损失值;
17.根据所述第一损失值和所述第二损失值,调整所述第一生成器的参数,直至所述第一生成器收敛,得到所述第一生成器训练后的第一目标模型。
18.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第二网络模型包括第二生成对抗网络模型,所述第二生成对抗网络模型包括第二生成器和第二判别器,所述第二生成对抗网络模型的结构与所述第一生成对抗网络模型的结构不同;
19.相应的,所述基于第二训练样本对第二网络模型和所述第一目标模型进行训练,得到训练后的图像生成模型,包括:
20.将所述第二训练样本中的第一目标模型生成的第二人脸图像输入所述第二生成器,得到第二预测图像;
21.将所述第二预测图像和所述目标图像输入所述第二判别器,得到第二判别结果;
22.基于目标损失函数,根据所述第二预测图像、所述目标图像以及所述第二判别结果,对所述第二生成器和所述第一目标模型进行训练,得到训练后的图像生成模型。
23.作为本公开实施例一种可选的实施方式,所述基于目标损失函数,根据所述第二预测图像、所述目标图像以及所述第二判别结果,对所述第二生成器和所述第一目标模型进行训练,得到训练后的图像生成模型,包括:
24.基于第一目标损失函数,根据所述第二预测图像和所述目标图像,确定所述第二生成器对应的第三损失值;
25.基于第二目标损失函数,根据所述第二判别结果,确定所述第二判别器对应的第四损失值;
26.基于第三目标损失函数和所述第二预测图像,确定所述第二生成器对应的第五损失值;
27.根据所述第三损失值、所述第四损失值以及所述第五损失值,调整所述第二生成器的参数,直至所述第二生成器收敛,得到所述第二生成器训练后的第二目标模型;
28.基于所述第三损失值、所述第四损失值以及所述第五损失值,对所述第一目标模型的参数进行调整,得到调整后的第一目标模型;
29.根据所述调整后的第一目标模型和所述第二目标模型,构建所述图像生成模型。
30.第二方面,本公开提供了一种图像生成方法,该方法包括:
31.获取待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据,所述目标人脸关键点数据基于所述待预测人脸图像和对应的语音信息预测得
到;
32.将所述待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及所述目标人脸关键点数据输入图像生成模型中,得到对应的目标预测图像;
33.其中,所述图像生成模型基于如第一方面任一项所述的方法训练得到。
34.第三方面,本公开提供了一种图像生成模型训练装置,该装置包括:
35.第一目标模型确定模块,用于基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,所述第一训练样本包括第一人脸图像、所述第一人脸图像对应的人脸关键点图像、目标图像、所述目标图像对应的目标人脸关键点图像以及所述目标图像的人脸关键点数据;
36.图像生成模型确定模块,用于基于第二训练样本对第二网络模型和所述第一目标模型进行训练,得到训练后的图像生成模型,所述第二训练样本包括所述第一目标模型生成的第二人脸图像和所述目标图像。
37.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第一生成对抗网络模型包括第一生成器和第一判别器;
38.相应的,所述第一目标模型确定模块,包括:
39.第一预测单元,用于将所述第一训练样本中的第一人脸图像、所述人脸关键点图像以及所述目标图像的人脸关键点数据输入所述第一生成器,得到第一预测图像;
40.第一判别单元,用于将所述第一人脸图像和所述第一预测图像输入所述第一判别器,得到第一判别结果;
41.第一模型确定单元,用于基于预设损失函数,根据所述第一预测图像、所述目标图像以及所述第一判别结果,对所述第一生成器进行训练,得到所述第一生成器训练后的第一目标模型。
42.作为本公开实施例一种可选的实施方式,所述第一模型确定单元,具体用于:
43.基于第一预设损失函数,根据所述第一预测图像和所述目标图像,确定所述第一生成器对应的第一损失值;
44.基于第二预设损失函数,根据所述第一判别结果,确定所述第一判别器对应的第二损失值;
45.根据所述第一损失值和所述第二损失值,调整所述第一生成器的参数,直至所述第一生成器收敛,得到所述第一生成器训练后的第一目标模型。
46.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第二网络模型包括第二生成对抗网络模型,所述第二生成对抗网络模型包括第二生成器和第二判别器,所述第二生成对抗网络模型的结构与所述第一生成对抗网络模型的结构不同;
47.相应的,所述图像生成模型确定模块,包括:
48.第二预测单元,用于将所述第二训练样本中的第一目标模型生成的第二人脸图像输入所述第二生成器,得到第二预测图像;
49.第二判别单元,用于将所述第二预测图像和所述目标图像输入所述第二判别器,得到第二判别结果;
50.图像模型确定单元,用于基于目标损失函数,根据所述第二预测图像、所述目标图
像以及所述第二判别结果,对所述第二生成器和所述第一目标模型进行训练,得到训练后的图像生成模型。
51.作为本公开实施例一种可选的实施方式,所述图像模型确定单元,具体用于:
52.基于第一目标损失函数,根据所述第二预测图像和所述目标图像,确定所述第二生成器对应的第三损失值;
53.基于第二目标损失函数,根据所述第二判别结果,确定所述第二判别器对应的第四损失值;
54.基于第三目标损失函数和所述第二预测图像,确定所述第二生成器对应的第五损失值;
55.根据所述第三损失值、所述第四损失值以及所述第五损失值,调整所述第二生成器的参数,直至所述第二生成器收敛,得到所述第二生成器训练后的第二目标模型;
56.基于所述第三损失值、所述第四损失值以及所述第五损失值,对所述第一目标模型的参数进行调整,得到调整后的第一目标模型;
57.根据所述调整后的第一目标模型和所述第二目标模型,构建所述图像生成模型。
58.第四方面,本公开提供了一种图像生成装置,该装置包括:
59.图像获取模块,用于获取待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据,所述目标人脸关键点数据基于所述待预测人脸图像和对应的语音信息预测得到;
60.预测图像生成模块,用于将所述待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及所述目标人脸关键点数据输入图像生成模型中,得到对应的目标预测图像;
61.其中,所述图像生成模型基于如第一方面任一项所述的方法训练得到。
62.第五方面,本公开还提供了一种计算机设备,包括:
63.一个或多个处理器;
64.存储装置,用于存储一个或多个程序,
65.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一项所述的图像生成模型训练方法,或者第二方面中所述的图像生成方法。
66.第六方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一项所述的图像生成模型训练方法,或者第二方面中所述的图像生成方法。
67.本公开实施例提供的技术方案与现有技术相比具有如下优点:本公开首先基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,第一训练样本包括第一人脸图像、第一人脸图像对应的人脸关键点图像、目标图像、目标图像对应的目标人脸关键点图像以及目标图像的人脸关键点数据;然后基于第二训练样本对第二网络模型和第一目标模型进行训练,得到训练后的图像生成模型,第二训练样本包括第一目标模型生成的第二人脸图像和目标图像,解决了现有技术中图像细节生成效果较差的问题,通过先对第一网络模型进行训练,得到第一目标模型,再对第二网络模型和第一目标模型进行联合训练,使得得到的图像生成模型更为准确,在图像细节生成方面效果较好,且有利于提高数字
人图像的生成效果。
附图说明
68.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
69.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
70.图1为现有技术中人像变换过程的示意图;
71.图2为根据本公开一个或多个实施例的计算机设备的软件配置示意图;
72.图3a为本公开实施例提供的一种图像生成模型训练方法的流程示意图;
73.图3b为本公开实施例提供的一种图像生成模型训练方法的原理示意图;
74.图3c为本实施例中将图像中的关键点进行图像化的过程的示意图;
75.图4a为本公开实施例提供的另一种图像生成模型训练方法的流程示意图;
76.图4b为本公开实施例提供的一种对第一网络模型进行训练的原理示意图;
77.图4c为本公开实施例提供的另一种对第一网络模型进行训练的原理示意图;
78.图4d为本公开实施例提供的又一种对第一网络模型进行训练的原理示意图;
79.图4e为本公开实施例提供的一种生成器的结构示意图;
80.图5a为本公开实施例提供的又一种图像生成模型训练方法的流程示意图;
81.图5b为本公开实施例提供的一种对第二网络模型进行训练的原理示意图;
82.图5c为本公开实施例提供的一种对第二网络模型和第一目标模型进行训练的原理示意图;
83.图6a为本公开实施例提供的一种图像生成方法的流程示意图;
84.图6b为本公开实施例提供的一种图像生成方法的原理示意图;
85.图6c为本公开实施例提供的另一种图像生成方法的原理示意图;
86.图7a为本公开实施例提供的一种图像生成模型训练装置的结构示意图;
87.图7b是本公开实施例图像生成模型训练装置中第一目标模型确定模块的结构示意图;
88.图7c是本公开实施例图像生成模型训练装置中图像生成模型确定模块的结构示意图;
89.图8为本公开实施例提供的一种图像生成装置的结构示意图;
90.图9是本公开实施例提供的一种计算机设备的结构示意图。
具体实施方式
91.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
92.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施
例,而不是全部的实施例。
93.本公开中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一网络模型和第二网络模型等是用于区别不同的网络模型,而不是用于描述网络模型的特定顺序。
94.随着智能化技术的高速发展以及智能终端的日益普及,语音、语义以及图像等多模态交互成为越来越重要的方式。人们交流和生活中主要的传播载体,如图像和视频等数据也越来越多。在各种形式的人机交互和各种智能终端的体验中,对于图像,特别是人像的处理尤其引人关注。例如,在虚拟数字人的生成过程中,数字人的图像生成是比较重要的一个环节。因此,对于高画质人像生成在现有的相关研究领域中备受关注,但现有技术中存在鲁棒性差和真实感不足等缺点,使得难以在各种智能终端中进行普及体验。因此,对于图像生成方面的深入研究与效果优化非常关键。
95.在图像生成,尤其是人像生成方面,传统方式是基于三角剖分思想,对人像中多处三角点进行拉伸变换以达到目标图像的形态,该方式的优点是速度快,对于处理动漫和卡通等形象效果较好,但是在处理真实人像,特别是人脸区域时,由于人脸是非刚性的,基于拉伸、渲染的方式使得整体效果较差。
96.图1为现有技术中人像变换过程的示意图。如图1所示,其主要的实现流程如下图所示,图a为某用户的当前状态图像,图b为图a的下一个状态图像,首先对图a中的人脸区域分别进行检测,得到原始人脸关键点a,接着对原始人脸关键点a进行三角剖分,得到划分后的多个平面(3点成面)。对目标人脸关键点b也进行三角剖分,得到划分后的多个平面。然后对基于图a得到的不同的平面和基于目标人脸关键点b得到的不同平面分别进行聚类,进而根据图a的聚类情况结合目标人脸关键点b的聚类情况进行相关渲染,得到一个新的图像(图b),即完成一次人像变换。
97.上述人像变换主要是由图a和目标人脸关键点b(landmarksb)通过剖分、聚类、贴片以及渲染等方式生成。
98.针对上述方法中的缺点,本公开实施例通过先对第一网络模型进行训练,得到第一目标模型,再对第二网络模型和第一目标模型进行联合训练,得到图像生成模型,在得到图像生成模型之后,获取待预测人脸图像、待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据,目标人脸关键点数据基于待预测人脸图像和对应的语音信息预测得到,将待预测人脸图像、待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据输入图像生成模型中,得到对应的目标预测图像,基于该图像生成模型进行图像生成使得最终生成的目标预测图像在细节生成方面效果较好。该方案可以应用到人像变换、人像生成和人像精修等多个图像处理领域,还可以应用到数字人的图像生成领域,有利于提高数字人图像的生成效果。
99.本公开实施例提供的图像生成模型训练方法和图像生成方法,可以基于计算机设备,或者计算机设备中的功能模块或者功能实体实现。
100.其中,计算机设备可以为个人计算机(personal computer,pc)、服务器、手机、平板电脑、笔记本电脑、大型计算机等,本公开实施例对此不作具体限定。
101.示例性的,图2为根据本公开一个或多个实施例的计算机设备的软件配置示意图,如图2所示,将系统分为四层,从上至下分别为应用程序(applications)层(简称“应用
层”),应用程序框架(application framework)层(简称“框架层”),安卓运行时(android runtime)和系统库层(简称“系统运行库层”),以及内核层。
102.本技术实施例提供的图像生成模型训练方法和图像生成方法可以基于上述计算机设备实现。
103.为了更加详细的说明图像生成模型训练方案,以下将以示例性的方式结合图3a进行说明,可以理解的是,图3a中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本技术实施例中提供的图像生成模型训练方法为准。
104.图3a为本公开实施例提供的一种图像生成模型训练方法的流程示意图,图3b为本公开实施例提供的一种图像生成模型训练方法的原理示意图。本实施例可适用于对模型进行训练得到图像生成模型的情况。本实施例方法可由图像生成模型训练装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于计算机设备中。
105.如图3a所示,该方法具体包括如下步骤:
106.s310,基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型。
107.其中,第一训练样本包括第一人脸图像、第一人脸图像对应的人脸关键点图像、目标图像、目标图像对应的目标人脸关键点图像以及目标图像的人脸关键点数据。第一训练样本可以为从预先确定的训练数据集中所确定的训练样本。训练数据集可以为从多媒体数据,例如视频片段中截取的多帧连续图像、多帧连续图像分别对应的人脸关键点数据以及对各人脸关键点数据图像化后得到的多个人脸关键点图像等。第一人脸图像可以为从训练数据集中确定的某帧人脸图像。第一人脸图像对应的人脸关键点图像可以理解为对第一人脸图像的人脸关键点数据图像化后得到的图像。目标图像可以理解为与第一人脸图像对应的下一帧人脸图像。目标图像的人脸关键点数据可以理解为从目标图像中提取出的人脸关键点数据。目标图像对应的目标人脸关键点图像可以理解为对目标图像的人脸关键点数据图像化后得到的人脸关键点图像。人脸关键点数据可以为基于人脸的不同细节区域,如眉毛、眼睛、鼻子、口腔以及脸型等所提取的关键点数据。在提取人脸关键点数据时,可以通过人脸关键点检测器提取,本公开对提取方法以及提取的关键点的个数不做限制。第一网络模型可以为生成对抗网络模型或者u-net网络模型等,本公开不做限制。
108.利用第一训练样本对第一网络模型进行训练,能够得到训练后的第一目标模型。具体的为了便于后续基于第二训练样本对第二网络模型和第一目标模型进行训练,在训练第一网络模型时,可以将第一网络模型训练至刚收敛即可,不仅能够节省时间,还可以方便后续对第一目标模型的参数进行调整,以使第一目标模型的参数达到最优。
109.s320,基于第二训练样本对第二网络模型和第一目标模型进行训练,得到训练后的图像生成模型,第二训练样本包括第一目标模型生成的第二人脸图像和目标图像。
110.其中,第二网络模型可以为使用轻量深度可分离卷积实现的生成对抗网络模型,或者u-net网络模型等,本公开不做限制。第二人脸图像为第一目标模型的输出。
111.在得到第一目标模型之后,基于第一样本中的目标图像和第一目标模型的输出:第二人脸图像,得到第二训练样本。利用第二训练样本对第二网络模型和第一目标模型进行联合训练,就得到了训练后的图像生成模型,该图像生成模型包括前端的生成模型和后端的精调模型,其中,前端的生成模型为对第一目标模型进行训练后得到的模型,后端的精
调模型为对第二网络模型进行训练后得到的模型。
112.在本实施例中,首先基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,然后基于第二训练样本对第二网络模型和第一目标模型进行训练,得到训练后的图像生成模型,由于该图像生成模型中包括两部分,且模型的输入中增加了人脸关键点图像,因此在对人脸特征进行提取时更精细,解决了现有技术中图像细节生成效果较差的问题,通过先对第一网络模型进行训练,得到第一目标模型,再对第二网络模型和第一目标模型进行联合训练,使得得到的图像生成模型更为准确,在图像细节生成方面效果较好,且有利于提高数字人图像的生成效果。
113.在一些实施例中,基于现有人脸关键点检测器(人脸关键点的数量可以为68、74、98、106或者212等)进行人脸关键点检测时,其关键点一般为2d(x,y两维坐标)或者3d(x,y,z三维坐标)坐标点信息,空间拓扑结构性较差。而对于人像中的人脸关键属性进行生成和变换时不同区域的拓扑结构性尤为关键,针对人脸关键点(face-landmarks)可以勾勒出人脸中几处关键区域(如眉毛、眼睛、鼻子、口腔以及脸型等)的轮廓信息,从而辅助深度学习的模型训练,有利于人脸中关键区域的生成和变换,使结果能够更精细、更真实。
114.具体的,人脸关键点图像可以通过以下方式得到:
115.由于人脸关键点图像和人脸关键点数据在空间维度上具有一致性,因此可以将人脸关键点的空间坐标信息绘制于等大小的mask图(即0,1黑白图)上,关键点之间根据预定的绘制策略进行勾勒,从而得到基于人脸关键点数据图像化后的人脸关键点图像。
116.绘制策略可以包括:1)使用全包围多边形或者非全包围多边形绘制人脸属性中的不同区域,不同区域可以使用不同颜色线条绘制;2)根据得到的人脸关键点图像与原图像之间的差异调整绘制形式和策略。包括但不限于如下形式:在后续的模型训练过程中,根据人脸的局部轮廓信息,针对眉毛、眼睛、鼻子和口腔等单独构置mask图进行精细回归训练,确保图像生成模型的生成效果更加真实、精细。
117.在一些实施例中,考虑到对第一网络模型进行训练时,通常是使用卷积神经网络对图像进行特征提取与优化,因此基于人脸关键点图像化得到的人脸关键点图像具有红绿蓝(redgreenblue,rgb)三通道信息时能够更好地与卷积神经网络结合。通过该种方式可以更加有效的结合人脸关键点信息,正向促进生成结果的真实性和细节感。此时,可以将第一训练样本中的第一人脸图像和第一人脸图像对应的人脸关键点图像均转化为rgb形式的图像,再输入至第一网络模型中进行训练。
118.可选的,图3c为本实施例中将图像中的关键点进行图像化的过程的示意图,图3c中给出了一种示例性的实现方式。具体的针对关键点进行图像化的过程已经描述过,此处不再赘述。
119.图4a为本公开实施例提供的另一种图像生成模型训练方法的流程示意图。本实施例是在上述实施例的基础上进一步扩展与优化。可选的,本实施例中s310的一种可能的实现方式如下:
120.s3101,将第一训练样本中的第一人脸图像、人脸关键点图像以及目标图像的人脸关键点数据输入第一生成器,得到第一预测图像。
121.当第一网络模型包括第一生成对抗网络模型时,第一生成对抗网络模型包括第一生成器和第一判别器。
122.其中,第一生成器可以采用u-net网络结构,基于全卷积网络设计。该第一生成器能够支持多通道、多分辨率的图像输入。第一判别器可以采用简单的encoder编码器。第一生成对抗网络的本质就是博弈的过程,通过第一判别器来判别第一生成器的输出是否为真实的,两者是相互促进的过程。本公开对第一生成器和第一判别器采用的结构不做限制。
123.将第一训练样本中的第一人脸图像、人脸关键点图像以及目标图像的人脸关键点数据输入第一生成器中,就能够得到第一预测图像。
124.示例性的,若第一生成器采用编码器-解码器(encoder-decoder)结构,则输入的第一人脸图像、人脸关键点图像以及目标图像的人脸关键点数据经过编码器编码和解码器转录,能够得到第一预测图像。
125.在一些实施例中,第一预测图像还可以通过以下方式得到:
126.将第一训练样本中的第一人脸图像、目标人脸关键点图像以及目标图像的人脸关键点数据输入第一生成器,得到第一预测图像。
127.具体的实现方式,与s3101类似,此处不在赘述。
128.需要说明的是:第一生成器的输入还可以包括:第一人脸图像、人脸关键点图像、目标人脸关键点图像以及目标图像的人脸关键点数据,主要是对第一训练样本中包含的数据和图像进行组合,本公开对具体组合方式不做限制。
129.s3102,将第一人脸图像和第一预测图像输入第一判别器,得到第一判别结果。
130.将第一人脸图像和第一预测图像输入第一判别器中,能够得到第一判别结果。具体的,若第一判别结果为0,则为虚假图像;若第一判别结果为1,则为真实图像。第一判别器能够在训练过程中更多的关注生成的真实感,使得第一生成器能够更好的拟合映射关系。
131.s3103,基于预设损失函数,根据第一预测图像、目标图像以及第一判别结果,对第一生成器进行训练,得到第一生成器训练后的第一目标模型。
132.其中,预设损失函数可以包括:l1损失函数(l1 loss)、多尺度结构相似性损失函数(multi-scalestructural similarityloss,简称ms ssimloss)、style loss、vggloss以及生成对抗gan_loss等,本公开不做限制。
133.通过预设损失函数,根据第一预测图像、目标图像以及第一判别结果,对第一生成器进行训练,为了节省时间,可以将第一生成器训练至刚收敛即可,从而得到第一生成器训练后的第一目标模型。
134.在本实施例中,通过上述方法得到第一目标模型简单高效,有利于加快后续的模型训练过程。
135.在一些实施例中,所述基于预设损失函数,根据所述第一预测图像、所述目标图像以及所述第一判别结果,对所述第一生成器进行训练,得到所述第一生成器训练后的第一目标模型,包括:
136.基于第一预设损失函数,根据所述第一预测图像和所述目标图像,确定所述第一生成器对应的第一损失值;
137.基于第二预设损失函数,根据所述第一判别结果,确定所述第一判别器对应的第二损失值;
138.根据所述第一损失值和所述第二损失值,调整所述第一生成器的参数,直至所述第一生成器收敛,得到所述第一生成器训练后的第一目标模型。
139.其中,第一预设损失函数可以采用l1 loss、ms ssim loss、style loss、vggloss以及gan_loss包括的g_gan_loss中的至少一种。第二预设损失函数可以采用gan_loss包括的d_fake_loss和d_real_loss。本公开对第一预设损失函数和第二预设损失函数不做具体限制。
140.具体的,基于第一预设损失函数,根据第一预测图像和目标图像,能够得到第一生成器对应的第一损失值;基于第二预设损失函数,根据第一判别结果,能够得到第一判别器对应的第二损失值;通过第一损失值和第二损失值,对第一生成器的参数进行调整,直至第一生成器收敛,就得到了第一生成器训练后的第一目标模型。
141.本实施例中,通过上述方法,能够使第一生成器达到收敛状态,减少第一生成器预测图像的误差。
142.示例性的,图4b为本公开实施例提供的一种对第一网络模型进行训练的原理示意图。如图4b所示,训练过程如下:
143.第一网络模型包括第一生成器和第一判别器,将第一人脸图像和人脸关键点图像作为输入1,目标图像的人脸关键点数据作为输入2,输入至第一生成器中对第一生成器进行训练;将第一生成器的输出第一预测图像和第一人脸图像输入至第一判别器中对第一判别器进行训练;通过第一判别器损失(即第一判别器对应的第二损失值)和第一生成器损失(即第一生成器对应的第一损失值)对第一生成器的参数进行调整,直至第一生成器收敛,得到第一生成器训练后的第一目标模型。
144.示例性的,图4b中的输入1还可以为第一人脸图像和目标人脸关键点图像,或者对第一训练样本中包含的图像进行的其他组合方式,本公开不做限制。
145.示例性的,图4c为本公开实施例提供的另一种对第一网络模型进行训练的原理示意图。如图4c所示,训练过程如下:
146.第一网络模型包括第三生成器,其中,第三生成器可以采用u-net网络结构,也可以采用其他结构,本公开对此不做限制。将第一人脸图像和人脸关键点图像作为输入1,还可以将第一人脸图像和目标人脸关键点图像作为输入1,本公开对输入1中的图像的组合方式不做限制。目标图像的人脸关键点数据作为输入2,输入至第三生成器中对第三生成器进行训练;通过相应的损失函数,基于第三生成器输出的第三预测图像和目标图像确定第三生成器损失;根据第三生成器损失对第三生成器的参数进行调整,直至第三生成器收敛,得到第一生成器训练后的第一目标模型。
147.示例性的,图4d为本公开实施例提供的又一种对第一网络模型进行训练的原理示意图。如图4d所示:
148.将第一人脸图像和目标人脸关键点图像作为输入1输入至第四生成器中对第四生成器进行训练;其余过程与上述训练过程类似,此处不再赘述。
149.示例性的,图4e为本公开实施例提供的一种生成器的结构示意图。如图4e所示,该生成器包括:encoder和decoder,z可以理解为编码器的输出。具体的,结合图4b和图4c,可以将输入1输入至图4e中的encoder,输入2输入至z,进行模型的训练。
150.需要说明的是:第一生成器、第三生成器和第四生成器均可以采用图4e的生成器结构。
151.图5a为本公开实施例提供的又一种图像生成模型训练方法的流程示意图。本实施
例是在上述实施例的基础上进一步扩展与优化。可选的,本实施例中s320的一种可能的实现方式如下:
152.s3201,将第二训练样本中的第一目标模型生成的第二人脸图像输入第二生成器,得到第二预测图像。
153.第一网络模型包括第一生成对抗网络模型,第二网络模型包括第二生成对抗网络模型,第二生成对抗网络模型包括第二生成器和第二判别器,第二生成对抗网络模型的结构与第一生成对抗网络模型的结构不同。
154.其中,第二生成对抗网络模型的结构与第一生成对抗网络模型的结构的不同之处主要为:
155.1、使用轻量深度可分离卷积实现;
156.2、增加低层次特征层短连接数量,从而增大低层次细节特征在后续模型训练过程的影响。
157.第二生成器可以采用u-net网络结构。第二判别器可以采用简单的encoder编码器。本公开对第二生成器和第二判别器采用的结构不做限制。
158.将第二训练样本中的第一目标模型生成的第二人脸图像输入第二生成器,就能够得到第二预测图像。该第二预测图像经过了第二生成器的精细调节,能够与目标图像更接近。
159.示例性的,若第二生成器采用encoder-decoder结构,则输入的第二人脸图像经过编码器编码和解码器转录,能够得到第二预测图像。
160.需要说明的是:第二生成器也可以采用图4e的生成器结构。
161.s3202,将第二预测图像和目标图像输入第二判别器,得到第二判别结果。
162.将第二预测图像和目标图像输入第二判别器,能够得到第二判别结果。具体的,若第二判别结果为0,则为虚假图像;若第二判别结果为1,则为真实图像。第二判别器能够在训练过程中更多的关注生成的真实感,使得第二生成器能够更好的拟合映射关系。
163.s3203,基于目标损失函数,根据第二预测图像、目标图像以及第二判别结果,对第二生成器和第一目标模型进行训练,得到训练后的图像生成模型。
164.其中,目标损失函数可以包括:l1 loss、ms ssim loss、style loss、vggloss、生成对抗gan_loss以及基于图像领域的质量评价指标ssim,峰值信噪比(peak signal to noise ratio,简称psnr)的近似loss等,本公开不做限制。
165.通过目标损失函数,根据第二预测图像、目标图像以及第二判别结果,对第二生成器进行训练和第一目标模型进行训练,能够得到训练后的图像生成模型。由于第一目标模型此前是基于第一训练样本对第一网络模型进行训练得到的,所以此时对第一目标模型的参数进行调整即可。
166.在本实施例中,通过上述方法得到图像生成模型,能够提高图像细节生成效果,有利于提高最终预测的图像的真实度和细节感。
167.在一些实施例中,所述基于目标损失函数,根据所述第二预测图像、所述目标图像以及所述第二判别结果,对所述第二生成器和所述第一目标模型进行训练,得到训练后的图像生成模型,包括:
168.基于第一目标损失函数,根据所述第二预测图像和所述目标图像,确定所述第二
生成器对应的第三损失值;
169.基于第二目标损失函数,根据所述第二判别结果,确定所述第二判别器对应的第四损失值;
170.基于第三目标损失函数和所述第二预测图像,确定所述第二生成器对应的第五损失值;
171.根据所述第三损失值、所述第四损失值以及所述第五损失值,调整所述第二生成器的参数,直至所述第二生成器收敛,得到所述第二生成器训练后的第二目标模型;
172.基于所述第三损失值、所述第四损失值以及所述第五损失值,对所述第一目标模型的参数进行调整,得到调整后的第一目标模型;
173.根据所述调整后的第一目标模型和所述第二目标模型,构建所述图像生成模型。
174.其中,第一目标损失函数可以采用l1 loss、ms ssim loss、style loss、vggloss以及gan_loss包括的g_gan_loss中的至少一种。第二预设损失函数可以采用gan_loss包括的d_fake_loss和d_real_loss。第三目标损失函数可以采用基于ssim和psnr的近似loss。本公开对第一目标损失函数、第二目标损失函数和第三目标损失函数不做具体限制。
175.具体的,基于第一目标损失函数,根据第二预测图像和目标图像,能够得到第二生成器对应的第三损失值;基于第二目标损失函数,根据第二判别结果,能够得到第二判别器对应的第四损失值;基于第三目标损失函数和第二预测图像,能够得到第二生成器对应的第五损失值;根据第三损失值、第四损失值以及第五损失值,对第二生成器的参数进行调整,直至第二生成器收敛,得到第二生成器训练后的第二目标模型;基于第三损失值、第四损失值以及第五损失值,对第一目标模型的参数进行调整,得到调整后的第一目标模型;在调整后的第一目标模型和第二目标模型的参数都达到最优时,将二者结合,就得到了图像生成模型。
176.本实施例中,通过对第二网络模型和第一目标模型进行联合训练,使二者均达到最优状态,能够减少图像生成模型所预测图像的误差。
177.在一些实施例中,对第一网络模型和第二网络模型的训练策略可以包括:
178.1)分阶段(若模型中包含生成器和判别器则采用生成器优先策略)和分任务(图像的分辨率从低到高)训练,提高生成器相对于判别器的生成质量;
179.2)学习率调整按照训练样本和验证样本的实际评价指标进行优化,提高模型的泛化能力;
180.3)利用图像数据增广方法,进行训练样本的增广,以增强数据的覆盖情况,提高模型的泛化能力与鲁棒性。
181.示例性的,图5b为本公开实施例提供的一种对第二网络模型进行训练的原理示意图。如图5b所示,训练过程如下:
182.第二网络模型包括第二生成器和第二判别器,通过第二判别器损失(即第二判别器对应的第四损失值)和第二生成器损失(即第二生成器对应的第三损失值和第五损失值)对第二生成器的参数进行调整,直至第二生成器收敛,得到第二生成器训练后的第二目标模型。
183.示例性的,图5c为本公开实施例提供的一种对第二网络模型和第一目标模型进行训练的原理示意图。如图5c所示,训练过程如下:
184.在图5b的基础上,通过第二判别器损失和第二生成器损失对第二生成器的参数进行调整,直至第二生成器收敛,得到第二生成器训练后的第二目标模型。通过第二判别器损失和第二生成器损失对第一目标模型的参数进行调整,得到调整后的第一目标模型。
185.为了更加详细的说明图像生成方案,以下将以示例性的方式结合图6a进行说明,可以理解的是,图6a中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本技术实施例中提供的图像生成方法为准。
186.图6a为本公开实施例提供的一种图像生成方法的流程示意图,图6b为本公开实施例提供的一种图像生成方法的原理示意图,图6c为本公开实施例提供的另一种图像生成方法的原理示意图。本实施例可适用于图像生成和人脸变换等情况。本实施例方法可由图像生成装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于计算机设备中。
187.如图6a所示,该方法具体包括如下步骤:
188.s610,获取待预测人脸图像、待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据,目标人脸关键点数据基于待预测人脸图像和对应的语音信息预测得到。
189.其中,待预测人脸图像可以为当前状态的人脸图像。待预测人脸图像对应的人脸关键点图像可以为将待预测人脸图像的人脸关键点数据进行图像化后得到的图像。目标人脸关键点数据可以为基于待预测人脸图像和对应的语音信息预测到的下一状态的人脸变化后的关键点数据。其中,语音信息可以为预先确定好的语音数据。
190.在一些实施例中,还可以获取目标人脸关键点数据对应的图像。
191.s620,将待预测人脸图像、待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据输入图像生成模型中,得到对应的目标预测图像。
192.其中,所述图像生成模型基于任一实施例所述的图像生成模型训练方法训练得到。目标预测图像为图像生成模型的输出结果。
193.将待预测人脸图像、待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据输入至图像生成模型中进行预测,就能够得到对应的目标预测图像。
194.在本实施例中,通过该图像生成方法,能够快速准确的实现图像的生成,尤其是人脸变换,且最终生成的图像在细节生成效果方面较好。
195.在一些实施例中,目标预测图像还可以通过以下方式得到:
196.将待预测人脸图像、目标人脸关键点数据对应的图像以及目标人脸关键点数据输入至图像生成模型中进行预测,得到对应的目标预测图像。
197.或者,将待预测人脸图像、待预测人脸图像对应的人脸关键点图像、目标人脸关键点数据对应的图像以及目标人脸关键点数据输入至图像生成模型中进行预测,得到对应的目标预测图像。
198.需要说明的是:本公开对输入图像生成模型的图像的组合方式不做限制。示例性的,如图6b所示:假设待预测人脸图像为图c,待预测人脸图像对应的人脸关键点图像为图c1,将图c、图c1和目标人脸关键点数据输入图像生成模型中,即可得到目标预测图像。
199.示例性的,如图6c所示:假设待预测人脸图像为图c,假设目标人脸关键点数据对应的图像为图c2,将图c、图c2和目标人脸关键点数据输入图像生成模型中,也可以得到目标预测图像。
200.图7a为本公开实施例提供的一种图像生成模型训练装置的结构示意图;该装置配置于计算机设备中,可实现本技术任意实施例所述的图像生成模型训练方法。该装置具体包括如下:
201.第一目标模型确定模块701,用于基于第一训练样本对第一网络模型进行训练,得到训练后的第一目标模型,所述第一训练样本包括第一人脸图像、所述第一人脸图像对应的人脸关键点图像、目标图像、所述目标图像对应的目标人脸关键点图像以及所述目标图像的人脸关键点数据;
202.图像生成模型确定模块702,用于基于第二训练样本对第二网络模型和所述第一目标模型进行训练,得到训练后的图像生成模型,所述第二训练样本包括所述第一目标模型生成的第二人脸图像和所述目标图像。
203.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第一生成对抗网络模型包括第一生成器和第一判别器;
204.相应的,图7b是本公开实施例图像生成模型训练装置中第一目标模型确定模块701的结构示意图,如图7b所示,第一目标模型确定模块701包括:
205.第一预测单元7011,用于将所述第一训练样本中的第一人脸图像、所述人脸关键点图像以及所述目标图像的人脸关键点数据输入所述第一生成器,得到第一预测图像;
206.第一判别单元7012,用于将所述第一人脸图像和所述第一预测图像输入所述第一判别器,得到第一判别结果;
207.第一模型确定单元7013,用于基于预设损失函数,根据所述第一预测图像、所述目标图像以及所述第一判别结果,对所述第一生成器进行训练,得到所述第一生成器训练后的第一目标模型。
208.作为本公开实施例一种可选的实施方式,所述第一模型确定单元7013,具体用于:
209.基于第一预设损失函数,根据所述第一预测图像和所述目标图像,确定所述第一生成器对应的第一损失值;
210.基于第二预设损失函数,根据所述第一判别结果,确定所述第一判别器对应的第二损失值;
211.根据所述第一损失值和所述第二损失值,调整所述第一生成器的参数,直至所述第一生成器收敛,得到所述第一生成器训练后的第一目标模型。
212.作为本公开实施例一种可选的实施方式,所述第一网络模型包括第一生成对抗网络模型,所述第二网络模型包括第二生成对抗网络模型,所述第二生成对抗网络模型包括第二生成器和第二判别器,所述第二生成对抗网络模型的结构与所述第一生成对抗网络模型的结构不同;
213.相应的,图7c是本公开实施例图像生成模型训练装置中图像生成模型确定模块702的结构示意图,如图7c所示,图像生成模型确定模块702,包括:
214.第二预测单元7021,用于将所述第二训练样本中的第一目标模型生成的第二人脸图像输入所述第二生成器,得到第二预测图像;
215.第二判别单元7022,用于将所述第二预测图像和所述目标图像输入所述第二判别器,得到第二判别结果;
216.图像模型确定单元7023,用于基于目标损失函数,根据所述第二预测图像、所述目
标图像以及所述第二判别结果,对所述第二生成器和所述第一目标模型进行训练,得到训练后的图像生成模型。
217.作为本公开实施例一种可选的实施方式,所述图像模型确定单元7023,具体用于:
218.基于第一目标损失函数,根据所述第二预测图像和所述目标图像,确定所述第二生成器对应的第三损失值;
219.基于第二目标损失函数,根据所述第二判别结果,确定所述第二判别器对应的第四损失值;
220.基于第三目标损失函数和所述第二预测图像,确定所述第二生成器对应的第五损失值;
221.根据所述第三损失值、所述第四损失值以及所述第五损失值,调整所述第二生成器的参数,直至所述第二生成器收敛,得到所述第二生成器训练后的第二目标模型;
222.基于所述第三损失值、所述第四损失值以及所述第五损失值,对所述第一目标模型的参数进行调整,得到调整后的第一目标模型;
223.根据所述调整后的第一目标模型和所述第二目标模型,构建所述图像生成模型。
224.本公开实施例所提供的图像生成模型训练装置可执行本公开任意实施例所提供的图像生成模型训练方法,具备执行方法相应的功能模块和有益效果,为避免重复,这里不再赘述。
225.图8为本公开实施例提供的一种图像生成装置的结构示意图;该装置配置于计算机设备中,可实现本技术任意实施例所述的图像生成方法。该装置具体包括如下:
226.图像获取模块801,用于获取待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及目标人脸关键点数据,所述目标人脸关键点数据基于所述待预测人脸图像和对应的语音信息预测得到;
227.预测图像生成模块802,用于将所述待预测人脸图像、所述待预测人脸图像对应的人脸关键点图像以及所述目标人脸关键点数据输入图像生成模型中,得到对应的目标预测图像;
228.其中,所述图像生成模型基于任一实施例所述的图像生成模型训练方法训练得到。
229.本公开实施例所提供的图像生成装置可执行本公开任意实施例所提供的图像生成方法,具备执行方法相应的功能模块和有益效果,为避免重复,这里不再赘述。
230.本公开实施例提供一种计算机设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例中的任一种所述的图像生成模型训练方法,或者本公开实施例中的任一种所述的图像生成方法。
231.图9是本公开实施例提供的一种计算机设备的结构示意图。如图9所示,该计算机设备包括处理器910和存储装置920;计算机设备中处理器910的数量可以是一个或多个,图9中以一个处理器910为例;计算机设备中的处理器910和存储装置920可以通过总线或其他方式连接,图9中以通过总线连接为例。
232.存储装置920作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的图像生成模型训练方法对应的程序指令/模块;或者本
公开实施例中的图像生成方法对应的程序指令/模块。处理器910通过运行存储在存储装置920中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现本公开实施例所提供的图像生成模型训练方法或者图像生成方法。
233.本实施例提供的一种计算机设备可用于执行上述任意实施例提供的方法,具备相应的功能和有益效果。
234.本公开实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述任意实施例提供的方法执行的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
235.其中,该计算机可读存储介质可以为只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
236.为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述在一些实施例中讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1