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

一种人脸图像处理方法及装置与流程

2022-02-19 01:17:00 来源:中国专利 TAG:


1.本说明书涉及计算机技术领域,尤其涉及一种人脸图像处理方法及装置。


背景技术:

2.目前,随着计算机技术的发展,人脸图像被广泛应用于人脸识别、人脸美妆等多个领域,人脸图像处理方法也愈发重要。
3.一般的,人脸图像处理方法被应用于流媒体中,基于人脸图像的姿态数据对人脸图像进行处理。具体的,可首先获取人脸图像。然后,将其输入到预先训练好的姿态估计模型中,确定其对应的姿态数据。最后,判断该姿态数据相较于采集设备的偏移角度是否在预设的处理区间内,若是,则对该人脸图像进行处理。其中,为了避免处理效果在极端姿态处频繁出现或消失,通常会设置双重阈值。如,正脸转向侧脸时,设定处理效果在80度消失,而侧脸转回正脸,处理效果则为60度出现。
4.但是,现有技术在对人脸图像进行处理时,在设置的双重阈值处,仍会出现一次跳变,如,从侧脸转向正脸时,姿态数据的偏移角度为60度时,图像处理效果突然出现,使得对流媒体中的人脸图像进行处理时,得到的图像处理结果不连贯,降低了图像处理效率。


技术实现要素:

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.图1为本说明书中提供的人脸图像处理方法的流程示意图;
57.图2为本说明书提供的确定待处理人脸图像的处理强度的示意图;
58.图3为本说明书提供的多任务学习模型的模型结构图;
59.图4为本说明书提供的终端的多任务学习模型的训练过程示意图;
60.图5为本说明书提供的人脸图像处理装置;
61.图6为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
62.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
63.区别于现有技术中设置双重阈值以避免频繁跳变,但在阈值除仍存在跳变,导致处理效果不连贯的问题,本说明书提出一种新的人脸图像处理方法,使得可基于人脸图像的姿态数据,确定处理强度,并基于处理强度对人脸图像进行处理,避免了预设处理阈值导致的图像处理结果不连贯的问题。
64.以下结合附图,详细说明本说明书各实施例提供的技术方案。
65.图1为本说明书中提供的人脸图像处理方法的流程示意图,具体包括以下步骤:
66.s100:确定待处理人脸图像。
67.在本说明书提供的一个或多个实施例中,该人脸图像处理方法针对的是对各人脸图像进行处理的场景,该人脸图像处理方法可由服务器或终端执行,为了方便描述,后续以终端执行该人脸图像处理方法为例进行说明。
68.一般的,人脸图像处理方法被应用于图像处理领域,对各人脸图像进行处理,因此,终端可首先确定待处理人脸图像。其中,该待处理人脸图像可为由终端从流媒体数据中随机确定出的人脸图像,也可为终端从连续帧人脸图像中确定出的还未处理过的人脸图像,待处理人脸图像具体如何确定可根据需要进行设置,本说明书对此不做限制。
69.需要说明的是,上述待处理人脸图像中可能并未包含人脸数据,且当人脸数据不存在时,使该待处理人连图像的处理强度置0即可,也就是说,本说明书中的人脸图像处理方法,可应用于流媒体、多媒体、连续帧图像中,对各帧图像数据进行处理。其中,当图像数据包含人脸数据时,对图像数据进行处理,当图像数据不包含人脸数据时,对图像数据不进行处理。
70.s102:将所述待处理人脸图像作为输入,分别输入到预先训练好的姿态估计模型和关键点预测模型中,以得到所述姿态估计模型输出的所述待处理人脸图像的姿态数据,
以及所述关键点预测模型输出的所述待处理人脸图像的关键点数据。
71.在本说明书提供的一个或多个实施例中,由于图像处理方法是基于姿态数据的偏移角度确定处理强度,进而基于处理强度和关键点数据,对图像进行调整,因此,该终端可获取待处理人脸图像的姿态数据和关键点数据。
72.具体的,该终端可将步骤s100中确定出的待处理人脸图像作为输入,分别输入到预先训练好的姿态估计模型和关键点预测模型中,得到该姿态估计模型输出的该待处理人脸图像的姿态数据,以及关键点预测模型输出的该待处理人脸图像的关键点数据。其中,该姿态数据为该待处理人脸图像的头部姿态数据,关键点数据包括该待处理人脸图像中人脸的轮廓、五官处等可用于描述人脸的关键点。
73.其中,该姿态估计模型和该关键点预测模型具体可由以下方式训练得到:
74.获取若干有标注的人脸图像,作为各姿态训练样本,并将各姿态训练样本输入到待训练的姿态估计模型中,得到各姿态训练样本的姿态数据。以及根据各姿态训练样本的标注和姿态数据,对该姿态估计模型的参数进行调整。
75.获取若干有标注的人脸图像,作为各关键点训练样本,并将各关键点训练样本输入到待训练的关键点预测模型中,得到各关键点训练样本的关键点数据。以及根据各关键点训练样本的标注和关键点数据,对该关键点预测模型的参数进行调整。
76.当然,由于终端上使用的模型的结构不宜太大,而通道较少、结构较小的模型通常需要数量较多的训练样本进行训练,才可得到效果较好的模型。同样的,通道较多,结构较大的模型通常需要较少的训练样本,即可获得效果较高的模型。因此,该服务器还可使用半监督的方式,训练得到适合在终端中使用的姿态估计模型和关键点预测模型。
77.具体的,可首先获取若干有标注的人脸图像,作为各第二训练样本,基于上述确定姿态估计模型的方式,确定结构较大、通道较多的原始姿态估计模型。
78.其次,获取若干无标注的人脸图像,作为各第一训练样本,并将各第一训练样本作为输入,输入到预先训练好的原始姿态估计模型中,确定各第一训练样本的姿态数据,作为各第一训练样本的标注。
79.然后,将各第一训练样本和各第二训练样本作为输入,输入到待训练的通道较少,结构较小的姿态估计模型中,得到各训练样本的姿态数据。其中,各训练样本包括第一训练样本和第二训练样本。
80.最后,根据各第一训练样本的姿态数据和标注、各第二训练样本的姿态数据和标注,调整姿态估计模型的模型参数。
81.同样的,在训练关键点预测模型时,可首先获取若干有标注的人脸图像,作为各第四训练样本,基于上述确定关键点预测模型的方式,确定结构较大、通道较多的原始关键点预测模型。
82.其次,获取若干无标注的人脸图像,作为各第三训练样本,并将各第三训练样本作为输入,输入到预先训练好的原始关键点预测模型中,确定各第三训练样本的关键点数据,作为各第三训练样本的标注。
83.然后,将各第三训练样本和各第四训练样本作为输入,输入到待训练的通道较少,结构较小的关键点预测模型中,得到各训练样本的关键点数据。其中,各训练样本包括第三训练样本和第四训练样本。
84.最后,根据各第三训练样本的关键点数据和标注、各第四训练样本的关键点数据和标注,调整关键点预测模型的模型参数。
85.s104:根据所述姿态数据,确定所述姿态数据对应的偏移角度,并根据所述偏移角度,确定所述待处理人脸图像对应的处理强度,多数处理强度与所述姿态数据的偏移角度负相关。
86.在本说明书提供的一个或多个实施例中,如前所述的,该终端可基于待处理人脸图像的姿态数据的偏移角度,确定处理强度,再基于处理强度,对该待处理人脸图像进行处理。
87.具体的,该终端可首先获取步骤s102中确定出的待处理人脸图像的姿态数据。
88.然后,该终端可确定该姿态数据相较于采集设备的偏移角度,其中,偏移角度为人脸图像中,头部姿态数据相对于直面采集设备时的头部姿态数据的偏移角度,可用人脸欧拉角等进行表示。
89.最后,根据确定出的偏移角度,该终端可确定对于该待处理人脸图像的处理强度。其中,根据偏移角度确定处理强度的方式可如表1所示:
90.偏移角度处理强度0
°
~30
°
130
°
~60
°
1~060
°
~90
°091.表1
92.则根据上述表1,在偏移角度为0
°
~30
°
时,对该待处理人脸图像的处理强度为1,在偏移角度为30
°
~60
°
时,对该待处理人脸图像的处理强度为0~1之间,在偏移角度为60
°
~90
°
时,对该待处理人脸图像的处理强度为0。其中,在偏移角度为30
°
~60
°
时,处理强度会随着偏移角度增大而逐渐变小,如,偏移角度为30
°
时,处理效果为1,偏移角度为45
°
时,处理效果为0.5,偏移角度为60
°
时,处理效果为0等。如图2所示。
93.图2为本说明书提供的确定待处理人脸图像的处理强度的示意图。其中,向左侧偏移为负角度,向右侧偏移为正角度,则在偏移角度的绝对值位于0
°
~30
°
之间时,处理强度恒为1。在偏移角度的绝对值位于30
°
~60
°
之间时,处理强度随着偏移角度的增大而逐渐减小,当偏移角度的绝对值为60
°
时,处理强度刚好为0,也就是处理强度消失。在偏移角度的绝对值位于60
°
~90
°
之间时,处理强度恒为0。
94.当然,上述处理强度为预设的,也可通过处理强度确定函数p=确定。其中,p为处理强度,θ为偏移角度,abs(.)为绝对值。还可为通过预设的线性函数等确定,如,该处理强度确定函数的具体内容和形式等可根据需要进行设置,本说明书对此不做限制。
95.需要说明的是,处理强度为1,表征对于待处理人脸图像的处理强度与直面采集设
备时的人脸图像的处理强度相同。处理强度为0.5,表征对于待处理人脸图像的处理强度为直面采集设备时的人脸图像的处理强度的0.5倍。也就是说,该终端中预设有直面采集设备时的人脸图像的处理内容和处理效果,并以待处理人脸图像与直面采集设备时的人脸图像的偏移程度,确定待处理人脸图像的处理效果。
96.s106:根据所述处理强度,通过所述关键点数据,对所述待处理人脸图像进行调整。
97.在本说明书提供的一个或多个实施例中,如前所述的,在终端中预存有直面采集设备时的人脸图像的处理内容和处理效果,则根据处理强度,可对该待处理人脸图像进行调整。
98.具体的,该终端可根据步骤s104中确定出的处理强度,确定各关键点的调整方向和调整量,并根据各关键点的位置,调整方向和调整量,对该待处理人脸图像进行调整。以处理为扩大眼睛为例,在该终端中预存有直面采集设备时的调整效果。则根据处理强度,可基于预存的处理效果,确定眼睛对应的关键点的调整方向和调整量。并基于该调整方向和调整量进行调整。
99.基于图1的人脸图像处理方法,通过待处理人脸图像的姿态数据和关键点数据,确定待处理人脸图像的姿态数据对应的偏移角度,并根据该偏移角度,确定与该偏移角度负相关的处理强度,作为该待处理人脸图像的处理强度,进而根据该处理强度和确定出的关键点数据,对该待处理人脸图像进行调整。本方法通过确定与偏移角度负相关的处理强度,使得在对各帧人脸图像进行处理时,不会出现处理效果突然出现或消失的情况,图像处理结果较为连贯,图像处理效率更高。
100.另外,由于姿态估计模型和关键点预测模型可能存在误差,导致可能出现流媒体数据的相邻两帧人脸图像数据的处理效果出现误差的情况,如,上一帧待处理人脸图像的姿态数据的偏移角度为60度,但确定出的姿态数据的偏移角度为59度,则其处理强度为59度对应的处理强度,下一帧待处理人脸图像的姿态数据的偏移角度为59度,但确定出的姿态数据为60度,则其对应的处理强度为60度对应的处理强度。而流媒体数据中的人脸图像的姿态数据和关键点数据等,受该人脸图像之前的历史帧图像的姿态数据和关键点数据的影响。因此,在步骤s102中确定待处理人脸图像的姿态数据和关键点数据时,还可基于历史帧人脸图像对该待处理人脸图像的姿态数据和关键点数据等进行平滑,以减小误差。
101.具体的,该服务器可首先确定待处理人脸图像所属的流媒体数据,并确定该流媒体数据中各历史帧人脸图像对应的姿态数据和关键点数据。
102.其次,按照采集顺序,将各历史帧人脸图像和待处理人脸图像作为输入,输入到预先训练完成的姿态平滑模型中,确定各人脸图像分别对应的第一权重,并根据各人脸图像的第一权重,对各人脸图像对应的姿态数据进行加权平均,确定平滑姿态数据。
103.然后,同样的,按照采集顺序,将各历史帧人脸图像和待处理人脸图像作为输入,输入到预先训练完成的关键点平滑模型中,确定各人脸图像分别对应的第二权重,并根据各人脸图像的第二权重,对各人脸图像分别对应的关键点数据进行加权平均,确定平滑关键点数据。其中,对关键点数据进行加权平均,为基于各人脸图像中各关键点的位置,以及移动方向等,确定各关键点在该待处理人脸图像中的位置和移动方向。
104.最后,将确定出的平滑姿态数据和平滑关键点数据,作为该待处理人脸图像的姿
态数据和关键点数据,并基于该姿态数据和关键点数据执行后续步骤。
105.进一步的,由于本说明书中的姿态数据和关键点数据,都为根据待处理人脸图像确定的,且姿态数据越准确,关键点数据越准确,则待处理人脸图像的处理效果与实际所需的处理效果越接近。因此,在步骤s102中,还可使用多任务学习模型确定待处理人脸图像的姿态数据和关键点数据。
106.其中,该多任务学习模型可通过下述方法训练得到:
107.具体的,首先,获取若干人脸图像,作为各多任务训练样本,并确定各多任务训练样本的姿态数据和关键点数据,分别作为第一标注和第二标注。
108.其次,将各多任务训练样本作为输入,输入待训练的多任务学习模型的处理层,确定各多任务训练样本的处理结果。
109.然后,将各多任务训练样本的处理结果作为输入,分别输入到该多任务学习模型的姿态估计分支任务和关键点预测分支任务中,得到该姿态估计分支任务输出的各多任务训练样本的姿态数据,以及该关键点预测分支输出的各多任务训练样本的关键点数据。
110.最后,根据各多任务训练样本的姿态数据和第一标注,以及各多任务训练样本的关键点数据和第二标注,确定损失,调整该多任务学习模型的模型参数。如图3所示。
111.图3为本说明书提供的多任务学习模型的模型结构图。其中,将训练样本作为输入,输入到待训练的多任务学习模型的处理层,确定各训练样本的处理结果,然后将处理结果分别作为输入,输入到该多任务学习模型的姿态估计分支任务和关键点预测分支任务中,得到该训练样本的姿态数据和关键点数据,则基于该训练样本的姿态数据和关键点数据,以及该训练样本的第一标注和第二标注,可对该多任务学习模型进行训练。其中,该训练样本可为预先标注的人脸图像,还可为通过由第一训练样本训练得到的原始姿态估计模型和原始关键点预测模型确定出姿态数据和关键点数据的无标注的人脸图像。
112.更进一步的,原始姿态估计模型和原始关键点预测模型也可为多任务学习模型。但由于终端中使用的模型的通道数应较少,结构应较小,因此,在步骤s102中,还可根据原始的多任务学习模型,训练得到适合终端使用的多任务学习模型。如图4所示。
113.图4为本说明书提供的终端的多任务学习模型的训练过程示意图。图中,训练样本可输入两个分支,上面的分支为原始多任务学习模型的模型结构,其模型结构较大,通道数较多,相应的,下面的分支为适合于终端的多任务学习模型的模型结构,其模型结构较小,通道数较少。其中,a1为原始多任务学习模型的处理层输出的处理结果,b1和c1为将a1分别输入原始多任务学习模型的姿态估计分支任务和关键点预测分支任务,分别得到的姿态数据和关键点数据。a2为适用于终端的多任务学习模型的处理层输出的处理结果,b2和c2为将a2分别输入适用于终端的多任务学习模型的姿态估计分支任务和关键点预测分支任务,分别得到的姿态数据和关键点数据。该训练样本为多任务训练样本。
114.另外,相较于使用单张图像训练模型,基于两两图像确定训练样本对,并基于图像之间的相似度进行训练,得到的模型能够基于图像之间的差异,更准确地确定图像的关键点数据和姿态数据。因此,在步骤s102中,其多任务学习模型还可包括相似度确定分支任务。
115.具体的,可首先获取若干人脸图像,并将各人脸图像两两组合,确定各训练样本对。
116.其次,针对每个训练样本对,确定该训练样本对中包含的各人脸图像的姿态数据,作为该训练样本对的第一标注,以及将各人脸图像的关键点数据,作为该训练样本对的第二标注。对各人脸图像的关键点数据和姿态数据分别进行特征提取并融合,确定各人脸图像对应的融合向量,将各人脸图像对应的融合向量的相似度,作为该训练样本对的第三标注。
117.然后,将该训练样本对作为输入,输入到多任务学习模型的处理层,去的定该训练样本对的处理结果,并将该处理结果分别输入到该多任务学习模型的姿态估计分支任务和关键点预测分支任务中,得到该训练样本对中各人脸图像的姿态数据和关键点数据。然后基于上述确定训练样本对的第三标注的方式,确定该训练样本对的相似度。
118.最后,根据各训练样本对及其第一标注,第二标注和第三标注,确定损失,调整该多任务学习模型的模型参数。
119.当然,上述确定训练样本的相似度的方法,还可为基于各人脸图像的姿态数据,确定各人脸图像之间的姿态相似度,基于各人脸图像的关键点数据,确定各人脸图像之间的关键点相似度,再根据预设的姿态权重和关键点权重,对训练样本中的各人脸图像的相似度进行加权平均,确定训练样本的相似度。
120.需要说明的是,本说明书提供的人脸图像处理方法,不仅可对于流媒体数据、多媒体数据以及连续帧图像数据中的人脸图像进行处理,还可对单帧图像进行处理,也就是说,在可识别出待处理人脸图像的姿态数据和关键点数据的前提下,本说明书提供的人脸图像处理方法即可对该待处理人脸图像进行调整。当然,若识别不出姿态数据或关键点数据,以及待处理人脸图像中并不包含人脸数据的情况下,可对该待处理人脸图像进行处理强度为0的图像处理。
121.以上为本说明书的一个或多个实施例提供的人脸图像处理方法,基于同样的思路,本说明书还提供了相应的人脸图像处理装置,如图5所示。
122.图5为本说明书提供的人脸图像处理装置,包括:
123.获取模块200,用于确定待处理人脸图像.
124.预测模型202,用于将所述待处理人脸图像作为输入,分别输入到预先训练好的姿态估计模型和关键点预测模型中,以得到所述姿态估计模型输出的所述待处理人脸图像的姿态数据,以及所述关键点预测模型输出的所述待处理人脸图像的关键点数据。
125.强度确定模块204,用于根据所述姿态数据,确定所述姿态数据对应的偏移角度,并根据所述偏移角度,确定所述待处理人脸图像对应的处理强度,所述处理强度与所述姿态数据的偏移角度负相关。
126.调整模块206,用于根据所述处理强度,通过所述关键点数据,对所述待处理人脸图像进行调整。
127.所述装置还包括:
128.训练模块208,用于获取若干人脸图像,作为各多任务训练样本,并确定各多任务训练样本对应的姿态数据和关键点数据,分别作为第一标注和第二标注,将各多任务训练样本作为输入,输入待训练的多任务学习模型的处理层,确定各多任务训练样本的处理结果,将各多任务训练样本的处理结果作为输入,分别输入到所述多任务学习模型的姿态估计分支任务和关键点预测分支任务中,得到所述姿态估计分支任务输出的各多任务训练样
本的姿态数据,以及所述关键点预测分支任务输出的各多任务训练样本的关键点数据,根据各多任务训练样本的姿态数据和第一标注,以及关键点数据和第二标注,确定损失,调整所述多任务学习模型的模型参数。
129.可选地,所述预测模型202,用于根据所述待处理人脸图像所属的流媒体数据,确定所述流媒体数据中各历史帧人脸图像对应的姿态数据和关键点数据,按照采集顺序,将各历史帧人脸图像和所述待处理人脸图像的姿态数据作为输入,依次输入到预先训练好的姿态平滑模型,确定各人脸图像分别对应的第一权重,并根据各人脸图像的第一权重,对各姿态数据进行加权平均,确定平滑姿态数据,作为所述待处理人脸图像的姿态数据,按照采集顺序,将各历史帧人脸图像和所述待处理人脸图像的关键点数据作为输入,依次输入到预先训练好的关键点平滑模型中,确定各人脸图像分别对应的第二权重,并根据各人脸图像的第二权重,对各关键点数据进行加权平均,确定所述平滑关键点数据,作为所述待处理人脸图像的关键点数据。
130.可选地,所述训练模块208,用于根据获取到的若干人脸图像,确定各训练样本对,并确定各训练样本对中包含的各人脸图像对应的姿态数据和关键点数据,分别作为各训练样本对的第一标注和第二标注,针对每个训练样本对,根据该训练样本对包含的各人脸图像对应的姿态数据和关键点数据,确定该训练样本对的相似度,作为该训练样本对的第三标注,将该训练样本对作为输入,输入到待训练的多任务学习模型的处理层,确定该训练样本对的处理结果,并将所述处理结果分别输入到所述多任务学习模型的姿态估计分支任务和关键点预测分支任务中,得到该训练样本对的姿态数据和关键点数据,根据该训练样本对的姿态数据和关键点数据,确定该训练样本对的相似度,根据各训练样本对及其第一标注、第二标注和第三标注,调整所述多任务学习模型的模型参数。
131.可选地,所述训练模块208,用于针对该训练样本对中的每张人脸图像,将该人脸图像对应的姿态数据和关键点数据进行特征提取并融合,确定该人脸图像对应的融合向量,确定该训练样本对中包含的各人脸图像的融合向量之间的相似度,作为该训练样本对的相似度。
132.可选地,所述训练模块208,用于获取若干无标注的人脸图像,作为各第一训练样本,获取若干有标注的人脸图像,作为各第二训练样本,将各第一训练样本作为输入,输入到预先根据各第二训练样本训练得到的原始姿态估计模型中,得到所述原始姿态估模型输出的各第一训练样本的姿态数据,作为各第一训练样本的标注,根据各第一训练样本及其标注、各第二训练样本及其标注,调整姿态估计模型的模型参数,所述原始姿态估计模型的网络层数多于所述姿态估计模型的模型参数。
133.可选地,所述训练模块208,用于获取若干无标注的人脸图像,作为各第三训练样本,获取若干有标注的人脸图像,作为各第四训练样本,将各第三训练样本作为输入,输入到预先根据各第四训练样本训练得到的原始关键点预测模型中,得到所述原始关键点模型输出的各第三训练样本的关键点数据,作为各第三训练样本的标注,根据各第三训练样本及其标注、各第四训练样本及其标注,调整关键点预测模型的模型参数,所述原始关键点预测模型的网络层数多于所述关键点预测模型的模型参数。
134.可选地,所述调整模块206,用于根据所述处理强度,确定各关键点对应的调整方向和调整量,根据各关键点的位置、各关键点的调整方向和调整量,对所述待处理人脸图像
进行调整。
135.本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的人脸图像处理方法。
136.本说明书还提供了图6所示的电子设备的示意结构图。如图6述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的人脸图像处理方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
137.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very

high

speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
138.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
139.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
140.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
141.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
142.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
143.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
144.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
145.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
146.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
147.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
148.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
149.本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
150.本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
151.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
152.以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
再多了解一些

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

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

相关文献