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

图像处理方法、装置、设备及存储介质与流程

2022-09-04 07:23:32 来源:中国专利 TAG:


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.本技术的有益效果是:
71.本技术实施例提供一种图像处理方法、装置、设备及存储介质,主要是采用基于生成对抗网络的眼球位置编辑方案,只需要获取待处理的单张人脸图像及人脸图像中眼球待移动到的目标位置;再根据这单张人脸图像和人脸图像中眼球待移动到的目标位置,确定人脸图像中的原始眼部区域图像、原始眼部区域图像中的眼球处于目标位置的掩膜图像;然后,将人脸图像中的原始眼部区域图像、以及原始眼部区域图像中的眼球处于目标位置的掩膜图像一同输入至预先训练的目标图像生成器模型,得到目标图像生成器模型输出的一张目标眼部区域图像;最后,将得到的目标眼部区域图像融合至人脸图像中,得到处理后的目标图像;相比于现有技术,本技术提出的方案仅依赖单张人脸图像,就能够实现对人脸图像中眼球位置在合理范围内任意位置的编辑,有效解决了现有技术中存在的无法适应单张图片输入的编辑场景的技术问题;同时本技术提出的方案聚焦于眼部区域图像生成,从而保持除眼部之外其他区域与原图的一致性,进而使得在对眼部细节进行调整的同时,最大程度保留原始图像特征,使得对人脸图像中眼球位置的编辑处理效果更加真实。
附图说明
72.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
73.图1为本技术实施例提供的一种电子设备的结构示意图;
74.图2为本技术实施例提供的一种图像处理方法的流程示意图;
75.图3为本技术实施例提供的另一种图像处理方法的流程示意图;
76.图4为本技术实施例提供的又一种图像处理方法的流程示意图;
77.图5为本技术实施例提供的初始图像生成器模型的网络结构示意图;
78.图6为本技术实施例提供的图像处理方法的流程框架图一;
79.图7为本技术实施例提供的另一种图像处理方法的流程示意图;
80.图8为本技术实施例提供的图像判别器的网络结构示意图;
81.图9为本技术实施例提供的图像处理方法的流程框架图二;
82.图10为本技术实施例提供的又一种图像处理方法的流程示意图;
83.图11为本技术实施例提供的一种图像处理方法中掩膜图像的示意图;
84.图12为本技术实施例提供的另一种图像处理方法的流程示意图;
85.图13为本技术实施例提供的一种图像处理装置的结构示意图。
具体实施方式
86.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操
作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
87.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
88.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
89.首先,在对本技术所提供的技术方案展开具体说明之前,先对本技术所涉及的相关背景进行简单说明。
90.目前,在现有的人脸图像中眼球位置编辑方案中,主要是利用眼球追踪技术,预先记录眼球的运动轨迹及不同位置下的眼球状态,在实际编辑时,将相应位置的眼球状态取出并粘贴到当前眼球位置,得到眼球位置编辑后的目标图像。
91.但是,现有的这种眼球位置编辑方案为了能够保证眼球位置编辑效果接近真实状态,需要预先得到不同位置下的眼球状态,进而导致无法适应单张图片输入的编辑场景。
92.为了解决上述现有技术中存在的技术问题,本技术提出一种图像处理方法,该方法主要是采用基于生成对抗网络的眼球位置编辑方案,只需要获取待处理的单张人脸图像及人脸图像中眼球待移动到的目标位置;再根据这单张人脸图像和人脸图像中眼球待移动到的目标位置,确定人脸图像中的原始眼部区域图像、原始眼部区域图像中的眼球处于目标位置的掩膜图像;然后,将人脸图像中的原始眼部区域图像、以及原始眼部区域图像中的眼球处于目标位置的掩膜图像一同输入至预先训练的目标图像生成器模型,得到目标图像生成器模型输出的一张目标眼部区域图像;最后,将得到的目标眼部区域图像融合至人脸图像中,得到处理后的目标图像。相比于现有技术,本技术提出的方案仅依赖单张人脸图像,就能够实现对人脸图像中眼球位置在合理范围内任意位置的编辑,有效解决了现有技术中存在的无法适应单张图片输入的编辑场景的技术问题。
93.同时,本技术提出的方案聚焦于眼部区域图像生成,从而保持除眼部之外其他区域与原图的一致性,进而使得在对眼部细节进行调整的同时,最大程度保留原始图像特征,使得对人脸图像中眼球位置的编辑处理效果更加真实。
94.图1为本技术实施例提供的一种电子设备的结构示意图;该电子设备如可以是计算机或者服务器等处理设备,以用于实现本技术提供的图像处理方法。如图1所示,电子设备包括:处理器101、存储器102。
95.处理器101、存储器102之间直接或间接地电性连接,以实现数据的传输或交互。例如,可通过一条或多条通信总线或信号线实现电性连接。
96.其中,处理器101可以是一种集成电路芯片,具有信号的处理能力。上述的处理器101可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
97.存储器102可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
98.可以理解,图1所述的结构仅为示意,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
99.存储器102用于存储程序,处理器101调用存储器102存储的程序,以执行下面实施例提供的图像处理方法。
100.如下将通过多个实施例对本技术提供的图像处理方法和对应产生的有益效果进行说明。
101.图2为本技术实施例提供的一种图像处理方法的流程示意图,可选地,该方法的执行主体可以是服务器、计算机等电子设备,具有数据处理功能。
102.应当理解,在其它实施例中图像处理方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。如图2所示,该方法包括:
103.s201、获取待处理的人脸图像以及用户输入的目标位置。
104.其中,目标位置为人脸图像中眼球待移动到的位置。
105.在本实施例中,待处理的人脸图像为一张包含完整人脸信息的图像,且需要对人脸图像中的眼球所处的当前位置进行调整。例如,人脸图像中的眼球所处的当前位置为a点,待移动到的目标位置为b点,即需要将人脸图像中的眼球从a点移动至b点,以实现对人脸图像中的眼球所处位置的编辑处理。
106.s202、根据人脸图像以及目标位置,确定第一图像、第二图像。
107.其中,第一图像为人脸图像中的原始眼部区域图像,第二图像为原始眼部区域图像中的眼球处于目标位置的掩膜图像。
108.应理解,在本实施例中,第一图像为从一张完整的人脸图像中提取到的原始眼部区域图像,即只对人脸图像中的眼部区域进行针对性处理,这样,可以保持除眼部之外其他区域与原图的一致性。
109.在本实施例中,例如,可以根据人脸图像中的眼部特征,从人脸图像中裁剪得到眼睛局部图,即第一图像。
110.可选地,可以结合用户输入的目标位置及第一图像,得到原始眼部区域图像中的眼球处于目标位置的掩膜图像,即第三图像。其中,第三图像为原始眼部区域图像中的眼球处于目标位置的掩膜图像。
111.s203、将第一图像、第二图像输入预先训练的目标图像生成器模型,得到第三图像。
112.其中,第三图像为目标眼部区域图像,第三图像中眼球位于目标位置上。
113.示例性地,例如,预先训练的目标图像生成器模型可以是通过深度神经网络模型对预先采集的原始样本图像进行训练,得到的一个网络模型。
114.在本实施例中,具体的,将第一图像、第二图像输入至预先训练的目标图像生成器模型,对人脸图像中的眼球所处的当前位置进行调整,即将眼球从所处的当前位置移动至
目标位置,并得到目标图像生成器模型输出的第三图像。其中,第三图像为目标眼部区域图像(即第三图像与第一图像均为眼睛局部图),且在第三图像中眼球位于目标位置上,实现了对人脸图像中的眼球所处位置的编辑处理。
115.s204、根据人脸图像及第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像。
116.在本实施例中,为了得到一张完整的眼球位置编辑处理后的图像,还需要将上述得到的第三图像融合至人脸图像中。具体的,可以结合人脸图像及第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像,即可得到眼球位置编辑后的最终效果。
117.综上所述,本技术实施例提供一种图像处理方法,主要是采用基于生成对抗网络的眼球位置编辑方案,只需要获取待处理的单张人脸图像及人脸图像中眼球待移动到的目标位置;再根据这单张人脸图像和人脸图像中眼球待移动到的目标位置,确定人脸图像中的原始眼部区域图像、原始眼部区域图像中的眼球处于目标位置的掩膜图像;然后,将人脸图像中的原始眼部区域图像、以及原始眼部区域图像中的眼球处于目标位置的掩膜图像一同输入至预先训练的目标图像生成器模型,得到目标图像生成器模型输出的一张目标眼部区域图像;最后,将得到的目标眼部区域图像融合至人脸图像中,得到处理后的目标图像;相比于现有技术,本技术提出的方案仅依赖单张人脸图像,就能够实现对人脸图像中眼球在合理范围内任意位置的编辑,有效解决了现有技术中存在的无法适应单张图片输入的编辑场景的技术问题;同时本技术提出的方案聚焦于眼部区域图像生成,从而保持除眼部之外其他区域与原图的一致性,进而使得在对眼部细节进行调整的同时,最大程度保留原始图像特征,使得对人脸图像中眼球位置的编辑处理效果更加真实。
118.将通过如下实施例,具体讲解如何训练得到目标图像生成器模型。
119.可选地,参考图3所示,上述预先训练得到的目标图像生成器模型可以采用如下方式训练得到:
120.s301、获取多个人脸样本的原始输入图像与原始掩膜图像。
121.其中,原始输入图像为人脸图像中的原始眼部区域图像,原始掩膜图像为人脸图像中眼球实际所处位置的掩膜图像。
122.举例说明,例如,人脸样本包括:第一人脸样本a、第二人脸样本b,第一人脸样本的原始输入图像为input_imagea、原始掩膜图像为guided_maska,第二人脸样本的原始输入图像为input_imageb、原始掩膜图像为guided_maskb。
123.例如,第一人脸样本的人脸图像为imagea,其中,第一人脸样本的原始输入图像为input_imagea为第一人脸图像中的眼部区域图像,第一人脸样本的原始掩膜图像为guided_maska为第一人脸图像中眼球实际所处位置的图像。
124.s302、基于多个人脸样本的原始输入图像与原始掩膜图像,对初始图像生成器模型进行迭代训练,得到目标图像生成器模型。
125.需要注意的是,对初始图像生成器模型进行迭代训练时,每批次随机采样两组原始输入图像input_image、原始掩膜图像guided_mask,将两组原始掩膜图像guided_mask互换后,再与原始输入图像input_image重组作为初始图像生成器模型的输入。
126.例如,将第一人脸样本的原始输入图像为input_imagea、第二人脸样本的原始掩
膜图像为guided_maskb作为一组配对数据,并输入至初始图像生成器模型;以及将第二人脸样本的原始输入图像为input_imageb、第二人脸样本的原始输入图像为guided_maska作为另一组配对数据,输入至初始图像生成器模型,对初始图像生成器模型进行迭代训练,并基于初始图像生成器模型的输出结果,计算得到初始图像生成器模型的损失值,根据初始图像生成器模型的损失值不断的对初始图像生成器模型的参数进行修正,得到目标图像生成器模型。
127.上述计算初始图像生成器模型的损失值的过程为迭代执行的,直到一步步的将初始图像生成器模型修正得到目标图像生成器模型。
128.将通过如下实施例,具体讲解如何基于多个人脸样本的原始输入图像与原始掩膜图像,对初始图像生成器模型进行迭代训练,得到目标图像生成器模型。
129.可选地,参考图4、图5和图6所示,上述步骤s302包括:
130.s401、将第一人脸样本的原始输入图像、第二人脸样本的原始掩膜图像输入至初始图像生成器模型中,得到初始图像生成器模型输出的第二人脸样本的生成图像。
131.其中,第二人脸样本的生成图像记作gen_imageb。
132.在对初始图像生成器模型进行训练之前,先结合图5对初始图像生成器模型的网络结构进行介绍。
133.参考图5所示,在本实施例中,图像生成器模型中包括二十层网络层,其中,第一网络层和第二网络层的通道为64、步长为2,第一网络层是卷积核尺寸为默认3*3的卷积层;第二网络层为激活层,激活函数选用leaky_relu激活函数;第三网络层、第四网络层及第五网络层的通道为128、步长为2,其中,第三网络层是卷积核尺寸为默认3*3的卷积层;第四网络层为批归一化层,采用的是沿batch维度的批归一化操作bn;第五网络层为激活层,激活函数选用leaky_relu激活函数;第六网络层、第七网络层及第八网络层的通道为256、步长为2,第六网络层为卷积核尺寸为默认3*3的卷积层;第七层为批归一化层;第八网络层为激活层,激活函数选用leaky_relu激活函数;第九网络层、第十网络层、第十一网络层、第十二网络层及第十三网络层的通道为128、步长为1,第九网络层为卷积核尺寸为默认3*3的卷积层,第十层为批归一化层,第十一网络层为激活层,激活函数选用relu激活函数;第十二网络层为卷积核尺寸为默认3*3的卷积层,第十三网络层为批归一化层;第十四网络层、第十五网络层、第十六网络层的通道为128、步长为2,第十四网络层是卷积核尺寸为默认3*3的反卷积层,第十五层为批归一化层,第十六网络层为激活层,激活函数选用relu激活函数;第十七网络层、第十八网络层及第十九网络层的通道为64、步长为2,第十六网络层是卷积核尺寸为默认3*3的反卷积层,第十七层为批归一化层,第十八网络层为激活层,激活函数选用relu激活函数;第二十网络层的通道为3、步长为1,第二十网络层是卷积核尺寸为默认3*3的反卷积层;第二十一网络层为激活函数为tanh的激活层。
134.此外,整个网络输入特征图的尺寸大小为6*128*128,第二网络层输出特征图的尺寸大小为64*128*128,第五网络层输出特征图的尺寸大小为128*64*64,第八网络层输出特征图的尺寸大小为256*32*32,第十三网络层输出特征图的尺寸大小为256*32*32,第十六网络层输出特征图的尺寸大小为128*128*128;第十九网络层输出特征图的尺寸大小为3*128*128,以及整个网络输出特征图的尺寸大小为3*128*128。
135.同理,掩膜生成器模型的网络结构与图像生成器模型的网络结构一致,在此不做
过多赘述。
136.参考图6所示,在图像至图像循环中,初始图像生成器模型gi与传统的编码-解码(即encoder-decoder)模式不同,初始图像生成器模型gi采用了对称的unet结构,并在unet的上采样阶段的每个卷积层前都将输入对应层下采样的输出进行拼接,即加入横向跳跃连接结构,有利于捕捉不同尺度下的图像特征。
137.继续参考图6所示,可以将第一人脸样本的原始输入图像为input_imagea、第二人脸样本的原始掩膜图像为guided_maskb拼接得到6通道的初始图像生成器模型输入inputgi,并输入至初始图像生成器模型中,得到由初始图像生成器模型输出的第二人脸样本的生成图像gen_imageb。
138.s402、将第二人脸样本的生成图像、第一人脸样本的原始掩膜图像输入至初始图像生成器模型中,得到初始图像生成器模型输出的第一人脸样本的复原图像。
139.其中,第一人脸样本的复原图像记作recover_imagea。
140.同时,再将第二人脸样本的生成图像gen_imageb与第一人脸样本的原始掩膜图像guided_maska拼接后组成输入至初始图像生成器模型中,得到由初始图像生成器模型输出的第一人脸样本的复原图像recover_imagea。
141.s403、根据第一人脸样本的原始输入图像与第一人脸样本的复原图像,计算初始图像生成器模型的损失值,并根据初始图像生成器模型的损失值修正初始图像生成器模型的参数,得到新的初始图像生成器模型。
142.其中,初始图像生成器模型的损失值主要利用了l1-loss来评估生成结果和目标图之间的差异,l1-loss计算方式比较简单,对应位置像素值做差取绝对值得到。
143.可选地,可以根据第一人脸样本的原始输入图像input_imagea与第一人脸样本的复原图像recover_imagea,计算得到初始图像生成器模型的损失值(即初始图像生成器模型的循环一致性损失值,记作ic)。或者,也可以根据第二人脸样本的生成图像gen_imageb和第二人脸样本的原始输入图像input_imageb,计算初始图像生成器模型的损失值。
144.然后,再根据初始图像生成器模型的损失值,对初始图像生成器模型的损失值的参数进行修正,得到新的初始图像生成器模型。
145.s404、分别将第二人脸样本的生成图像、以及第一人脸样本的复原图像输入至初始掩膜生成器模型,得到第二人脸样本的复原掩膜图像、第一人脸样本的生成掩膜图像。
146.需要注意的是,在对人脸图像中的眼球位置进行编辑处理过程中,只用到最终训练得到的目标图像生成器模型,而在对初始图像生成器模型gi进行训练过程中,初始掩膜生成器模型gm是为了让目标图像生成器模型更好地学习到原始输入图像image和掩膜图像mask之间的关联性,能够更好的学习到掩膜图像mask中的指导信息,使训练过程更加稳定。
147.在本实施例中,初始掩膜生成器模型gm和初始图像生成器模型gi结构类似,由于初始掩膜生成器模型gm输入的是3通道的眼睛局部图,因此首层卷积输入通道参数为3,将第二人脸样本的生成图像gen_imageb及第一人脸样本的复原图像recover_imagea分别输入至初始掩膜生成器模型gm中,得到第二人脸样本的复原掩膜图像recover_maskb、第一人脸样本的生成掩膜图像gen_maska。
148.s405、根据第二人脸样本的复原掩膜图像与第二人脸样本的原始掩膜图像,计算初始掩膜生成器模型的损失值,并根据初始掩膜生成器模型的损失值修正初始掩膜生成器
模型的参数,得到新的初始掩膜生成器模型。
149.可选地,根据第二人脸样本的复原掩膜图像recover_maskb与第二人脸样本的原始掩膜图像guided_maskb,计算得到初始掩膜生成器模型的损失值(即初始掩膜生成器模型的循环一致性损失值,记作mc)。或者,也可以根据第一人脸样本的原始掩膜图像guided_maska和第一人脸样本的生成掩膜图像gen_maska,计算得到得到初始掩膜生成器模型的损失值。
150.然后,再根据初始掩膜生成器模型的损失值,对初始掩膜生成器模型的参数进行修正,得到新的初始掩膜生成器模型。
151.s406、直至初始图像生成器模型的损失值满足预设的第一损失阈值,以及初始掩膜生成器模型的损失值满足预设的第二损失阈值,将满足第一损失阈值的初始图像生成器模型作为目标图像生成器模型、以及将满足第二损失阈值的初始掩膜生成器模型作为目标掩膜生成器模型。
152.其中,第一损失阈值、第二损失阈值分别为预设的经验值,例如,当初始掩膜生成器模型的损失值小于第二损失阈值时,则说明此时得到的新的初始掩膜生成器模型的准确率已经无法得到明显提升。
153.可选地,通过不断迭代执行步骤s401-s405,可不断的调整初始图像生成器模型以及初始掩膜图像生成器模型的参数,当更新后得到的新的初始图像生成器模型的损失值小于第一损失阈值、以及更新后得到的新的初始掩膜图像生成器模型的损失值小于第二损失阈值时,则可结束对初始图像生成器模型及初始掩膜图像生成器模型的修正,此时,将初始掩膜图像生成器模型则作为目标掩膜生成器模型。
154.将通过如下实施例,具体讲解如何初始图像生成器模型的损失值满足预设的第一损失阈值,以及初始掩膜生成器模型的损失值满足预设的第二损失阈值,将满足第一损失阈值的初始图像生成器模型作为目标图像生成器模型、以及将满足第二损失阈值的初始掩膜生成器模型作为目标掩膜生成器模型。
155.可选地,参考图7所示,上述步骤s406包括:
156.s701、若初始图像生成器模型的损失值满足第一损失阈值,以及初始掩膜生成器模型的损失值满足第二损失阈值时,则将第一人脸样本的原始输入图像与第二人脸样本的生成图像输入至图像判别器,确定图像判别器输出结果是否为假。
157.在本实施例中,为了确保最终训练得到的目标图像生成器模型输出结果的准确性,还需要采用图像判别器来鉴别目标图像生成器输出的生成结果的真伪,和一般的判别器仅对图像全局评估且直接输出全局的真/假判别结果不同。本技术采用的图像判别器di输出的是一个n*n的判别矩阵,通过卷积层之后的特征图并不会送入到全连接层中直接进行分类,而是直接映射为一个n*n的矩阵,矩阵中的每个元素为不同的真/假,实际上代表着原图中的一个比较大的感受野,即对应原图的一个图块。采用本技术提出的这种判别方式更能够关注到图像局部的生成效果。
158.参考图8所示,结合图8对图像判别器的网络结构进行介绍。
159.在本实施例中,图像判别器模型中包括十四层网络层,其中,第一网络层和第二网络层的通道为64、步长为2,第一网络层是卷积核尺寸为默认3*3的卷积层;第二网络层为激活层,激活函数选用leaky_relu激活函数;第三网络层、第四网络层及第五网络层的通道为
128、步长为2,其中,第三网络层是卷积核尺寸为默认3*3的卷积层,第四层为批归一化层,采用的是沿batch维度的批归一化操作bn,第五网络层为激活层,激活函数选用leaky_relu激活函数;第六网络层、第七网络层及第八网络层的通道为256、步长为2,第六网络层为卷积核尺寸为默认3*3的卷积层,第七层为批归一化层,第八网络层为激活层,激活函数选用leaky_relu激活函数;第九网络层、第十网络层及第十一网络层的通道为512、步长为2,第九网络层为卷积核尺寸为默认3*3的卷积层,第十层为批归一化层,第十一网络层为激活层,激活函数选用leaky_relu激活函数;第十二网络层、第十三网络层及第十四网络层的通道为512、步长为1,第十二网络层为卷积核尺寸为默认3*3的卷积层,第十三层为批归一化层,第十四网络层为激活层,激活函数选用leaky_relu激活函数。
160.此外,第二网络层输出特征图的尺寸大小为64*128*128,第五网络层输出特征图的尺寸大小为128*64*64,第八网络层输出特征图的尺寸大小为256*32*32,第十一网络层输出特征图的尺寸大小为521*32*32,第十四网络层输出特征图的尺寸大小为1*32*32。
161.同理,掩膜判别器的网络结构与图像判别器的网络结构一致,在此不做过多赘述。
162.需要说明的是,对于判别器的标签,当输入与生成结果组合时,对应的输出结果为假,当输入与真实图像组合时,对应的输出结果为真。通过初始图像生成器模型gi与图像判别器di交替训练,来提高初始图像生成器模型gi生成结果的真实性。
163.s702、若是,则将初始图像生成器模型作为目标图像生成器模型。
164.在本实施例中,参考图9所示,在初始图像生成器模型的损失值满足第一损失阈值,且初始掩膜生成器模型的损失值满足第二损失阈值时,将第一人脸样本的原始输入图像input_imagea与第二人脸样本的生成图像gen_imageb输入至图像判别器di,确定图像判别器di输出结果是否为假;若图像判别器di输出结果为假,则将初始图像生成器模型作为目标图像生成器模型;若图像判别器di输出结果为真,则还需要继续初始图像生成器模型进行迭代训练,直至满足条件为止。
165.s703、将第二人脸样本的生成图像与第二人脸样本的原始掩膜图像输入至掩膜判别器,确定掩膜判别器输出结果是否为假。
166.s704、若是,则将初始掩膜生成器模型作为目标掩膜生成器模型。
167.其中,对于掩膜判别器dm,其结构和图像判别器di类似,用来鉴别初始掩膜生成器模型gm生成结果的真伪,由于掩膜判别器dm接收的输入图像拼接后为6通道,因此首层卷积的输入通道参数为6,与图像判别器di训练过程类似,当输入与生成结果组合时,对应的输出结果为假;当输入与真实图像组合时,对应的输出结果为真。通过初始掩膜生成器模型gm与掩膜判别器dm交替训练,来提高初始掩膜生成器模型gm生成结果的真实性。
168.在本实施例中,继续参考图9所示,在初始图像生成器模型的损失值满足第一损失阈值,且初始掩膜生成器模型的损失值满足第二损失阈值时,将第二人脸样本的生成图像gen_imageb与第二人脸样本的原始掩膜图像mask_imageb输入至掩膜判别器dm,确定掩膜判别器dm输出结果是否为假;若掩膜判别器dm输出结果为假,则将初始掩膜生成器模型作为目标掩膜生成器模型;若掩膜判别器dm输出结果为真,则还需要继续初始掩膜生成器模型型进行迭代训练,直至满足条件为止。
169.此外,在本实施例中,还将进一步介绍本方案训练过程中用到的损失函数。
170.如下所示的损失函数中的imga,imgb,maska,maskb为训练阶段模型的输入,分别对
应每个批次模型输入数据中第一人脸样本的原始输入图像input_imagea、第二人脸样本的原始输入图像input_imageb、第一人脸样本的原始掩膜图像guided_maska、以及第二人脸样本的原始掩膜图像guided_maskb组成的集合。
171.其中,imga,imgb,maska,maskb共有两种配对方式:imga,imgb,maskb和imga,imgb,maska。
172.对于组合imga,imgb,maskb的损失函数为如下公式(1):
[0173][0174]
对于另一种组合imga,imgb,maska的损失函数为如下公式(2):
[0175]
因此,图像生成器模型gi和图像判别模型di的损失值gan-loss为如下公式(3)所示:
[0176][0177]
下面用现有的数学理论对上述公式(1)-(3)进行解释:
[0178]
假设,训练过程中每批次送入网络的数据量为n,则输入集合可以表示为如下公式(4):
[0179]
imga,imgb,maskb={img
a1
,img
b1
,mask
b1
,img
a2
,img
b2
,mask
b2

,img
an
,img
bn
,mask
bn
} (4)
[0180]
对于上述输入,可以看作是一个离散分布,而对于每组输入,也会得到对应的判别器输出,输出同样也是一个离散分布。在概率论中交叉熵可以用来描述两个分布之间的差异。根据如下交叉熵的计算公式(5)所示:
[0181]
h(p|q)=-(plog q (1-p)log(1-q))
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0182]
在gan中,公式(5)中的p为判别器的输入全部从真实数据集中采样的概率,而输入组合只有两种,一种为全采样于真实数据集,此时p为1,另一种则包含生成器的生成样本,此时p为0。
[0183]
以公式(1)例,对于公式(1)中的前半部分,组合imga,imgb,maskb为真实样本,此时p为1,交叉熵值为如下公式(6)所示:
[0184]
h1(p|q)=-log q=-logdi([imga,imgb,maskb])
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0185]
对于公式(1)中的后半部分,判别器输入包含生成结果,p为0,交叉熵值为如下公式(7)所示:
[0186]
h2(p|q)=-log(1-q)=-log(1-di([imga,maskb,gi(imga,maskb)])
ꢀꢀ
(7)
[0187]
因此,对于公式(1)中单个批次的数据输入与输出分布的交叉熵为如下公式(8)所示:
[0188]
h(p|q)=-(log q log(1-q))=-(logdi([imga,imgb,maskb]) logdi([imga,imgb,maskb]))
ꢀꢀ
(8)
[0189]
在整个数据集中,输入与输出分布的交叉熵则是对单批次数据交叉熵值求期望,即公式(1)中结果。公式(2)中imga,imgb,maska组合同理。
[0190]
对于上述公式(3)分两个阶段进行,第一阶段,图像判别器di希望尽可能放大上述损失,拉大输入分布与输出分布之间的差异,来分辨生成结果和真实标签。而在第二阶段,图像生成器模型gi的目标是最小化上述让生成结果接近标签来骗过图像判别器di。
[0191]
同时,为了进一步提升生成器的生成效果,对图像生成器模型gi的生成结果还额外采用循环一致性损失ic,利用对应标签对其进行监督,如下公式(9)-(11)所示:
[0192][0193][0194][0195]
循环一致性损失中则主要利用了l
1-loss来评估生成结果和目标图之间的差异,l
1-loss计算方式比较简单,对应位置像素值做差取绝对值得到。
[0196]
对于掩膜生成器模型gm和掩膜判别器dm与上述图像生成器模型gi和图像判别器di中的loss类似,由gan-loss与循环一致性损失mc组成,这里不再赘述。
[0197]
将通过如下实施例,具体讲解上述步骤s203中如何根据人脸图像,确定第一图像、第二图像。
[0198]
可选地,参考图10所示,上述步骤s203包括:
[0199]
s1001、提取人脸图像中眼部特征信息。
[0200]
其中,眼部特征信息包括:眼球中心点、眼睛区域宽高、上下眼睑点、眼球上下顶点、眼球半径。
[0201]
在本实施例中,例如,可以利用现有的人脸关键点定位模型,对输入的人脸图像中的人脸关键点进行定位,并从人脸关键点中取出眼球中心点、眼睛区域宽高、上下眼睑点。
[0202]
仿射变换可以用来描述两幅图之间的映射关系,仿射变换矩阵为2x3的矩阵,如公式(12)-(13)中的m2能够对图像进行平移,而m1中的对角线决定图像的缩放,反对角线决定图像的旋转。
[0203][0204][0205]
原图像素点坐标(x,y),经过仿射变换得到点(u,v),下面是具体转换如下公式(14)-(15)所示:
[0206][0207]
即,
[0208]
s1002、根据眼球中心点及眼睛区域宽高,计算眼睛包围框的顶点坐标。
[0209]
其中,眼睛包围框的顶点坐标为眼部区域在人脸图像中的各顶点的位置信息。
[0210]
s1003、根据眼睛包围框的顶点坐标、以及预设的裁剪后眼部图像,计算第一仿射变换矩阵。
[0211]
其中,第一仿射变换矩阵为原图像至局部图像的仿射变换矩阵,裁剪后眼部图像的图像尺寸为预设值。
[0212]
示例性地,例如,预设的裁剪后眼部图像的尺寸大小为128*128。
[0213]
s1004、根据第一仿射变换矩阵对人脸图像进行仿射变换,得到包含眼睛区域的初始图像。
[0214]
在本实施例中,可以根据眼部特征信息中的眼球中心点及眼睛区域宽高,计算眼睛包围框的顶点坐标,根据眼睛包围框的顶点坐标(即眼部区域在人脸图像上的位置信息)及裁剪后图像四个顶点坐标,计算得到第一仿射变换矩阵,利用第一仿射变换矩阵对人脸图像进行相应的仿射变换,将眼部区域提取出来,即得到包含眼睛区域的初始图像。
[0215]
s1005、根据上下眼睑点、以及包含眼睛区域的初始图像,得到第一图像。
[0216]
在本实施例中,可以对人脸关键点中的上下眼睑点进行二次曲线拟合,得到拟合曲线,对拟合曲线进行上下眼睑点密集采样,将采样得到的点集连接形成平滑的眼部封闭区域掩膜,即如图11中所示的掩膜图像guided_mask中第一区域。对于包含眼睛区域的初始图像,利用眼部封闭区域掩膜(即图11中所示的掩膜图像guided_mask中第一区域),将掩膜外的无关信息置零,即可得到第一图像input_image。
[0217]
s1006、根据目标位置、以及目标位置与眼部特征信息中的眼球上下顶点的位置映射关系,得到第二图像。
[0218]
其中,目标位置为用户输入得到的信息。
[0219]
在一种可实现的方式中,例如,用户输入的信息为眼球左右程度值,即可以将眼球左右程度值映射为眼球中心点坐标(即人脸图像中眼球待移动到的目标位置)。
[0220]
在本实施例中,由于人脸图像中眼球待移动到的目标位置需要根据用户输入得到。因此,先根据眼部关键点中的上下眼睑关键点,对眼球左右运动中眼球中心点坐标可能
的活动轨迹进行函数拟合,并提前建立眼球中心点坐标与眼球上下顶点的位置映射关系;在得到人脸图像中眼球待移动到的目标位置后,再结合人脸图像中眼部关键点中的眼球半径、及目标位置与眼部关键点中的眼球上下顶点的位置映射关系,对眼球所处区域进行近似拟合,即可得到图11中所示的掩膜图像guided_mask中第二区域,结合上述得到的图11中所示的掩膜图像guided_mask中第一区域,并得到最终的第二图像guided_mask,即原始眼部区域图像中的眼球处于目标位置的掩膜图像。
[0221]
将通过如下实施例,具体讲解上述步骤s204中如何根据人脸图像、以及第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像。
[0222]
可选地,参考图12所示,上述步骤s204包括:
[0223]
s1201、采用眼部分割模型分别对第一图像、第三图像进行眼部分割,得到第一图像中的原始眼球区域、及第三图像中眼球区域。
[0224]
s1202、将第一图像中的原始眼球区域、及第三图像中眼球区域进行泊松融合,得到处理后的第三图像。
[0225]
在本实施例中,为了进一步还原原始眼球中的高光及瞳色,本技术提出可以利用现有的眼部分割模型,分别对第一图像、第三图像进行眼部分割,得到眼部分割结果,即第一图像中的原始眼球区域、及第三图像中眼球区域,然后,再将第一图像中的原始眼球区域与第三图像gen_image的眼球区域进行泊松融合,得到处理后的第三图像。
[0226]
s1203、根据人脸图像以及处理后的第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像。
[0227]
在本实施例中,在完成了新状态下眼睛局部图像的生成后,在融合阶段,需要将生成的第三图像(即眼睛局部图像)与人脸图像中原始眼部区域进行融合处理。具体的,需要先根据人脸图像及第三图像,计算第二仿射变换矩阵,其中,第二仿射变换矩阵为局部图像至原图像的仿射变换矩阵;然后,再根据第二仿射变换矩阵,确定第三图像在人脸图像中坐标点;最后,根据第三图像在人脸图像中坐标点及第三图像,对人脸图像中的眼部区域图像进行融合处理,然后同样对人脸图像及仿射变换后的眼睛局部图进行泊松融合,得到处理后的目标图像,即可得到眼球位置编辑后的最终效果。
[0228]
基于同一发明构思,本技术实施例中还提供了与图像处理方法对应的图像处理装置,由于本技术实施例中的装置解决问题的原理与本技术实施例上述图像处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
[0229]
可选地,参考图13所示,本技术实施例还提供了一种图像处理装置,该装置包括:
[0230]
获取模块1301,用于获取待处理的人脸图像以及用户输入的目标位置,目标位置为人脸图像中眼球待移动到的位置;
[0231]
处理模块1302,用于根据人脸图像以及目标位置,确定第一图像、第二图像,其中,第一图像为人脸图像中的原始眼部区域图像,第二图像为原始眼部区域图像中的眼球处于目标位置的掩膜图像;将第一图像、第二图像输入预先训练的目标图像生成器模型,得到第三图像,第三图像为目标眼部区域图像,第三图像中眼球位于目标位置上;
[0232]
融合模块1303,用于根据人脸图像及第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像。
[0233]
可选地,该装置还包括:
[0234]
获取模块,用于获取多个人脸样本的原始输入图像与原始掩膜图像,其中,原始输入图像为人脸图像中的原始眼部区域图像,原始掩膜图像为人脸图像中眼球实际所处位置的掩膜图像;
[0235]
训练模块,用于基于多个人脸样本的原始输入图像与原始掩膜图像,对初始图像生成器模型进行迭代训练,得到目标图像生成器模型。
[0236]
可选地,训练模块,还用于:
[0237]
将第一人脸样本的原始输入图像、第二人脸样本的原始掩膜图像输入至初始图像生成器模型中,得到初始图像生成器模型输出的第二人脸样本的生成图像;
[0238]
将第二人脸样本的生成图像、第一人脸样本的原始掩膜图像输入至初始图像生成器模型中,得到初始图像生成器模型输出的第一人脸样本的复原图像;
[0239]
根据第一人脸样本的原始输入图像与第一人脸样本的复原图像,计算初始图像生成器模型的损失值,并根据初始图像生成器模型的损失值修正初始图像生成器模型的参数,得到新的初始图像生成器模型;
[0240]
分别将第二人脸样本的生成图像、以及第一人脸样本的复原图像输入至初始掩膜生成器模型,得到第二人脸样本的复原掩膜图像、第一人脸样本的生成掩膜图像;
[0241]
根据第二人脸样本的复原掩膜图像与第二人脸样本的原始掩膜图像,计算初始掩膜生成器模型的损失值,并根据初始掩膜生成器模型的损失值修正初始掩膜生成器模型的参数,得到新的初始掩膜生成器模型;
[0242]
循环执行上述步骤,直至初始图像生成器模型的损失值满足预设的第一损失阈值,以及初始掩膜生成器模型的损失值满足预设的第二损失阈值,将满足第一损失阈值的初始图像生成器模型作为目标图像生成器模型、以及将满足第二损失阈值的初始掩膜生成器模型作为目标掩膜生成器模型。
[0243]
可选地,训练模块,还用于:
[0244]
若初始图像生成器模型的损失值满足第一损失阈值,以及初始掩膜生成器模型的损失值满足第二损失阈值时,则将第一人脸样本的原始输入图像与第二人脸样本的生成图像输入至图像判别器,确定图像判别器输出结果是否为假;
[0245]
若是,则将初始图像生成器模型作为目标图像生成器模型;
[0246]
将第二人脸样本的生成图像与第二人脸样本的原始掩膜图像输入至掩膜判别器,确定掩膜判别器输出结果是否为假;
[0247]
若是,则将初始掩膜生成器模型作为目标掩膜生成器模型。
[0248]
可选地,处理模块1302,还用于:
[0249]
提取人脸图像中眼部特征信息,其中,眼部特征信息包括:眼球中心点、眼睛区域宽高、上下眼睑点、眼球上下顶点、眼球半径;
[0250]
根据眼球中心点及眼睛区域宽高,计算眼睛包围框的顶点坐标;
[0251]
根据眼睛包围框的顶点坐标、以及预设的裁剪后眼部图像,计算第一仿射变换矩阵,其中,第一仿射变换矩阵为原图像至局部图像的仿射变换矩阵,裁剪后眼部图像的图像尺寸为预设值;
[0252]
根据第一仿射变换矩阵对人脸图像进行仿射变换,得到包含眼睛区域的初始图像;
[0253]
根据上下眼睑关键点、以及包含眼睛区域的初始图像,得到第一图像;
[0254]
根据目标位置、以及目标位置与眼部关键点中的眼球上下顶点的位置映射关系,得到第二图像。
[0255]
可选地,融合模块1303,还用于:
[0256]
采用眼部分割模型分别对第一图像、第三图像进行眼部分割,得到第一图像中的原始眼球区域、及第三图像中眼球区域;
[0257]
将第一图像中的原始眼球区域、及第三图像中眼球区域进行泊松融合,得到处理后的第三图像;
[0258]
根据人脸图像以及处理后的第三图像,对人脸图像中的眼部区域图像进行融合处理,得到处理后的目标图像。
[0259]
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
[0260]
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,简称asic),或,一个或多个微处理器(digital singnal processor,简称dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。
[0261]
可选地,本技术还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
[0262]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0263]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0264]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0265]
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本技术各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-only memory,简称:rom)、随机存取存储器(英文:random access memory,简
称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献