发明内容
本发明实施例提供一种图像处理方法、装置、电子设备及存储介质,用于解决图像处理人脸交换时,具有图像效果不佳的问题。
本发明实施例第一方面提供一种图像处理方法,包括:
获取输入图像中的第一人脸图像;
提取所述第一人脸图像的人脸特征;
根据所述人脸特征确定所述第一人脸图像的表征向量;
根据所述表征向量从预设人脸图像库中确定目标人脸图像;
根据所述目标人脸图像对所述第一人脸图像进行换脸处理,得到输出图像。结合本发明实施例第一方面,在本发明实施例第一方面的第一种可能的实现方式中,所述表征向量包含N个维度,所述N为大于1的整数;所述根据所述人脸特征确定所述第一人脸图像的表征向量,包括:
估算所述人脸特征得到所述N个维度中每一维度对应的至少1个表征概率值,得到M个表征概率值,所述M大于或等于所述N;
对所述M个表征概率值进行加权处理,得到所述表征向量。
结合本发明实施例第一方面的第一种可能的实现方式,在本发明实施例第一方面的第二种可能的实现方式中,所述估算所述人脸特征得到所述N个维度中每一维度对应的至少1个表征概率值,包括:
将所述人脸特征与目标维度的特征参数进行匹配,得到多个匹配值,所述目标维度为所述表征向量中的任一维度;
将所述多个匹配值中大于或等于预设阈值的匹配值作为所述目标维度对应的表征概率值。
结合本发明实施例第一方面、第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在本发明实施例第一方面的第三种可能的实现方式中,所述根据所述目标人脸图像对所述第一人脸图像进行换脸处理,得到输出图像,包括:
将所述目标人脸图像中的第二人脸图像进行预处理,得到第三人脸图像;
将所述第三人脸图像的人脸特征替换为所述第一人脸图像的人脸特征,得到第四人脸图像;
通过损失函数修正所述第四人脸图像,得到第五人脸图像;
将所述第五人脸图像与所述目标人脸图像中除了所述第二人脸图像之外的图像进行贴合,得到所述输出图像。
结合本发明实施例第一方面的第三种可能的实现方式,在本发明实施例第一方面的第四种可能的实现方式中,所述预处理至少包括脸部对齐处理;在所述得到第四人脸图像之后,所述方法还包括:
将所述第四人脸图像进行反脸部对齐处理,得到第六人脸图像;
通过所述损失函数修正所述第六人脸图像,得到所述第五人脸图像。
本发明实施例第二方面提供一种图像处理装置,包括:
获取单元,用于获取输入图像中的第一人脸图像;
提取单元,用于提取所述第一人脸图像的人脸特征;
第一确定单元,根据所述人脸特征确定所述第一人脸图像的表征向量;
第二确定单元,用于根据所述表征向量从预设人脸图像库中确定目标人脸图像;
换脸单元,用于根据所述目标人脸图像对所述第一人脸图像进行换脸处理,得到输出图像。
结合本发明实施例第二方面,在本发明实施例第二方面的第一种可能的实现方式中,所述表征向量包含N个维度,所述N为大于1的整数;所述装置还包括:
估算单元,用于估算所述人脸特征得到所述N个维度中每一维度对应的至少1个表征概率值,得到M个表征概率值,所述M大于或等于所述N,由第一确定单元对所述M个表征概率值进行加权处理,得到所述表征向量。
结合本发明实施例第二方面的第一种可能的实现方式,在本发明实施例第二方面的第二种可能的实现方式中,所述估算单元具体用于将所述人脸特征与目标维度的特征参数进行匹配,得到多个匹配值,所述目标维度为所述表征向量中的任一维度;将所述多个匹配值中大于或等于预设阈值的匹配值作为所述目标维度对应的表征概率值。
结合本发明实施例第二方面、第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式,在本发明实施例第二方面的第三种可能的实现方式中,所述换脸单元包括:
预处理单元,用于将所述目标人脸图像中的第二人脸图像进行预处理,得到第三人脸图像;
替换单元,用于将所述第三人脸图像的人脸特征替换为所述第一人脸图像的人脸特征,得到第四人脸图像;
修正单元,用于通过损失函数修正所述第四人脸图像,得到第五人脸图像;
贴合单元,用于将所述第五人脸图像与所述目标人脸图像中除了所述第二人脸之外的图像进行贴合,得到所述输出图像。
结合本发明实施例第二方面的第三种可能的实现方式,在本发明实施例第二方面的第四种可能的实现方式中,所述预处理至少包括脸部对齐处理;
所述换脸单元还包括:
反对齐单元,用于将所述第四人脸图像进行反脸部对齐处理,得到第六人脸图像,并由所述贴合单元通过损失函数修正所述第六人脸图像,得到所述第五人脸图像。
本发明实施例第三方面提供了一种电子设备,包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行本发明实施例第一方面提供的一种图像处理方法。
本发明实施例第四方面提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现本发明实施例第一方面提供的一种图像处理方法。
本发明实施例第五方面提供了一种应用程序,其中,该应用程序用于在运行时执行本发明实施例第一方面提供的一种图像处理方法。
本发明实施例中,获取输入图像中的第一人脸图像,提取第一人脸图像的人脸特征,根据人脸特征确定第一人脸图像的表征向量,根据表征向量从预设人脸图像库中确定目标人脸图像,根据目标人脸图像对第一人脸图像进行换脸处理,得到输出图像。由于根据人脸特征获取的表征向量确定目标人脸图像,则目标人脸图像是在预设人脸图像库中与第一人脸图像最匹配的人脸图像,从而提高了换脸后的图像效果,增强了趣味性,且不需手动选择目标人脸图像,提高了操作的便利性。
本发明的说明书和权利要求书及附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明实施例所描述的电子设备可以包括智能手机(如Android手机)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备(MID,Mobile Internet Devices)或穿戴式设备等电子设备,上述设备仅是举例,而非穷举,包含但不限于上述电子设备。
本发明实施例提供一种图像处理方法、装置、电子设备及存储介质,用于解决图像处理人脸交换时,具有图像效果不佳的问题。以下分别进行详细说明。
请参阅图1,图1是本发明实施例提供的一种图像处理方法的流程图,该图像处理方法可以包括以下步骤。
101、获取输入图像中的第一人脸图像。
本发明实施例基于人脸交换的场景,当输入图像中的包含第一人脸图像时,执行步骤102,否则结束,或者向用户发送重新上传输入图像的指令。
本实施例中,可采用HOG(HistogramofOrientedGradient,方向梯度直方图)、LBP(LocalBinaryPattern,局部二值模式)、Gabor小波变换、类哈尔(Haar-like)等特征提取算法进行人脸识别,对于具体的特征提取算法不作限定。
可选的,提取输入图像的特征值,根据特征值对输入图像进行积分处理得到积分图像;采用自适应增强算法区分积分图像中的人脸和非人脸的强分类器;采用瀑布型级联分类器将人脸的强分类器级联起来,得到人脸图像;判断得到的人脸图像是否为第一人脸图像,若是,则确定获取输入图像中的第一人脸图像,执行步骤102。采用本方法,在多种尺度下用相同的时间计算不同的特征,可迅速淘汰大量待检测区域,降低了平均检测开销,从而提高人脸识别的效率。
需要说明的是,输入图像可以上传在服务器端,也可导入本地端。其中,将输入图像上传至服务器端,打破了本地存储的图像库的局限性,扩大了预设人脸图像库中的人脸图像的数量,利于提高换脸图像的准确性。
本实施例中,以第一人脸图像为例,当输入图像中包含多个人脸图像时,如,第二人脸图像和第三人脸图像等等,可依照本发明实施例的方法依序处理即可。
102、提取第一人脸图像的人脸特征。
本发明实施例中,提取第一人脸图像的人脸特征可采用人脸识别的深度学习框架,对于人脸图像的部份提取不同的尺度特征,经过类神经网络的分类器加以分类,最后得到各种不同的人脸图像的特征,这些特征包括性别、情绪、五官状态、与其他图像中的人脸图像的相似程度等。
103、根据人脸特征确定第一人脸图像的表征向量。
本发明实施例中,表征向量包括表情特征、性别特征和五官特征等多个维度。以表征向量中的目标维度为例,目标维度为表征向量中的任一维度。可选的,将人脸特征与目标维度的特征参数进行匹配,得到多个匹配值;将多个匹配值中大于或等于预设阈值的匹配值作为目标维度对应的表征概率值。
其中,对于表征概率值的具体形式不作限定,可为百分数或者小数。也就是说,分别将第一人脸图像的人脸特征与每个维度的特征参数进行匹配得到多个匹配值,选取每个维度中大于或等于预设阈值的匹配值作为该维度对应的表征概率值,且以概率的方式来描述人脸特征,从而提高人脸特征描述的准确率。
举例来说,假设预设阈值为10%,表征向量包括表情特征、性别特征和五官特征。如图2所示的绿巨人洛克的图像中,获取洛克的人脸特征,将洛克的人脸特征分别与表情特征、性别特征和五官特征中的特征参数进行匹配,特征参数如生气、高兴、难过、男性、女性、双眼皮、高鼻梁、没有佩戴眼镜、方脸等等。得到80%的生气表情特征、5%的难过表情特征、98%的男性性别特征、2%的女性性别特征、70%的方脸五官特征,没有眼镜的概率为100%,由于预设阈值为10%,则洛克的表征向量为{生气80%,男性98%,方脸70%,没有眼镜100%}。
再举一个例来说,输入图像中识别出一张稍微难过的人脸图像,获得“难过”和“困惑”两种表情特征,其中难过的表征概率值为80%,困惑的表征概率值为20%,则通过表征概率值来描述人脸特征包括了所以可能的表情信息,从而提高人脸特征描述的准确率。
可选的,估算人脸特征得到N个维度中每一维度对应的至少1个表征概率值,得到M个表征概率值;对M个表征概率值进行加权处理,得到表征向量。其中,M大于或等于N。也就是说,综合考虑各种不同的人脸特征,做出最适配的决策,从而提高判断人脸表情的准确性。
举例来说,表情特征为开心的概率为60%,但动作特征为微笑的概率有80%,则可以提高开心表情特征的权重,将开心表情特征的表征概率值加权得到80%。或者五官特征中表情特征为冷酷的概率为60%,带太阳眼镜的概率为75%,并且有留山羊胡80%的机率值,则可提高冷酷表情特征的权重,将冷酷表情特征的表征概率值加权得到80%。
104、根据表征向量从预设人脸图像库中确定目标人脸图像。
在本实施例中,预设人脸图像库包括多种类型的人脸图像,根据表征向量可从预设人脸图像库中选择至少一个目标人脸图像。当确定多个目标人脸图像时,可接收用户发送的指定换脸图像指令,从而确定最终转换的目标人脸图像,也可全部进行转换后供用户选择。
可选的,将输入图像经过类神经网络训练的图像生成网络,图像生成网络根据输入图像的表征向量和预设人脸图像库输出目标人脸图像。
105、根据目标人脸图像对第一人脸图像进行换脸处理,得到输出图像。
在本实施例中,将目标人脸图像中的第二人脸的人脸特征替换为输入图像中的第一人脸图像的人脸特征得到输出图像。也就是说,输出图像与目标人脸图像区别在于人脸图像。
举例来说,如图2所示的图像处理方法的场景示意图,输入图像中的第一人脸图像为特普朗的图像,获取特普朗的图像的人脸特征,确定特普朗的图像的人脸特征的表征向量{生气80%,男性98%,方脸70%,没有眼镜100%},假设预设人脸图像库中包括绿巨人洛克、女超人和叶问,则经过表征向量与预设人脸图像库中的人脸图像的表征向量确定目标人脸图像为洛克,将特普朗的图像与洛克的图像进行换脸处理,可看出输出图像中洛克的脸换成了特普朗的脸。
可选的,将目标人脸图像中的第二人脸图像进行预处理,得到第三人脸图像;将第三人脸图像的人脸特征替换为第一人脸图像的人脸特征,得到第四人脸图像;通过损失函数修正第四人脸图像,得到第五人脸图像;将第五人脸图像与目标人脸图像中除了第二人脸图像之外的图像进行贴合,得到输出图像。
其中,预处理可以是对脸部对齐处理、图像增强和归一化等工作。对第二人脸图像进行脸部对齐处理,可得到人脸位置端正的人脸图像,对转换后的第二人脸图像进行反对齐处理,可得到与目标人脸图像对应的图像中的第二人脸图像的人脸位置一致的人脸图像,从而增强了图像效果。图像增强是为了改善人脸图像的质量,不仅在视觉上更加清晰图像,而且使图像更利于计算机的处理与识别;归一化工作的目标是取得尺寸一致,灰度取值范围相同的标准化人脸图像,从而进一步提高图像效果。
当预处理为脸部对齐处理时,为了保证输出图像与目标人脸图像中人脸方向一致,还需将第四人脸图像进行反脸部对齐处理。可选的,将第四人脸图像进行反脸部对齐处理,得到第六人脸图像;通过损失函数修正第六人脸图像,得到第五人脸图像,从而提高图像效果。
其中,损失函数为经过类神经网络训练的网络图像,用来修正换脸处理后的图像损耗,从而提高图像效果。
需要说明的是,替换后的第二人脸图像没有清除第二人脸图像的人脸特征,也就是说,转换后的第二人脸图像融合了第一人脸图像的人脸特征和第二人脸图像特征。
举例来说,如图3所示的图像换脸的示意图,第三人脸图像是将目标人脸图像的第二人脸图像进行脸部对齐处理得到的,第四人脸图像是将第三人脸图像的人脸特征替换为输入图像的第一人脸图像的人脸特征得到的,第六人脸图像是将第四人脸图像进行反脸部对齐处理,通过损失函数修正第六人脸图像得到第五人脸图像,可提高图像效果,再将第五人脸图像与目标人脸图像中除了第二人脸图像之外的图像进行贴合得到输出图像,从而提高了换脸后的图像效果,增强了趣味性。
在图1所描述的图像处理方法中,根据人脸特征获取的表征向量确定目标人脸图像,则目标人脸图像是在预设人脸图像库中与第一人脸图像最匹配的人脸图像,从而提高了换脸后的图像效果,增强了趣味性,且不需手动选择目标人脸图像,提高了操作的便利性。
请参阅图4,图4是本发明实施例提供的一种图像处理装置的结构图,该图像处理装置400可以包括:
获取单元401,用于获取输入图像中的第一人脸图像。
提取单元402,用于提取第一人脸图像的人脸特征。
第一确定单元403,用于根据人脸特征确定第一人脸图像的表征向量。
第二确定单元404,用于根据表征向量从预设人脸图像库中确定目标人脸图像。
换脸单元405,用于根据目标人脸图像对第一人脸图像进行换脸处理,得到输出图像。
在图4所描述的图像处理装置中,根据人脸特征获取的表征向量确定目标人脸图像,则目标人脸图像是在预设人脸图像库中与第一人脸图像最匹配的人脸图像,从而提高了换脸后的图像效果,增强了趣味性,且不需手动选择目标人脸图像,提高了操作的便利性。
可选的,表征向量包含N个维度,N为大于1的整数;装置400还包括:
估算单元406,用于估算人脸特征得到N个维度中每一维度对应的至少1个表征概率值,得到M个表征概率值,由第一确定单元403对M个表征概率值进行加权处理,得到表征向量。
其中,M大于或等于N。也就是说,综合考虑各种不同的人脸特征,做出最适配的决策,从而提高判断人脸表情的准确性。
可选的,估算单元406具体用于将人脸特征与目标维度的特征参数进行匹配,得到多个匹配值,目标维度为表征向量中的任一维度;将多个匹配值中大于或等于预设阈值的匹配值作为目标维度对应的表征概率值。
其中,对于表征概率值的具体形式不作限定,可为百分数或者小数。也就是说,分别将第一人脸图像的人脸特征与每个维度的特征参数进行匹配得到多个匹配值,选取每个维度中大于或等于预设阈值的匹配值作为该维度对应的表征概率值,且以概率的方式来描述人脸特征,从而提高人脸特征描述的准确率。
可选的,如图4A所示,换脸单元405包括:
预处理单元415,用于将目标人脸图像中的第二人脸图像进行预处理,得到第三人脸图像;
替换单元425,用于将第三人脸图像的人脸特征替换为第一人脸图像的人脸特征,得到第四人脸图像;
修正单元435,用于通过损失函数修正第四人脸图像,得到第五人脸图像;
贴合单元445,用于将第五人脸图像与目标人脸图像中除了第二人脸之外的图像进行贴合,得到输出图像。
其中,预处理可以是对脸部对齐处理、图像增强和归一化等工作。对第二人脸图像进行脸部对齐处理,可得到人脸位置端正的人脸图像,对转换后的第二人脸图像进行反对齐处理,可得到与目标人脸图像对应的图像中的第二人脸图像的人脸位置一致的人脸图像,从而增强了图像效果。图像增强是为了改善人脸图像的质量,不仅在视觉上更加清晰图像,而且使图像更利于计算机的处理与识别;归一化工作的目标是取得尺寸一致,灰度取值范围相同的标准化人脸图像,从而进一步提高图像效果。
其中,损失函数为经过类神经网络训练的网络图像,用来修正换脸处理后的图像损耗,从而提高图像效果。
可选的,预处理至少包括脸部对齐处理;如图4A所示,换脸单元405还包括:
反对齐单元455,用于将第四人脸图像进行反脸部对齐处理,得到第六人脸图像,并由贴合单元445通过损失函数修正第六人脸图像,得到第五人脸图像。
当预处理为脸部对齐处理时,还需将第四人脸图像进行反脸部对齐处理,从而保证输出图像与目标人脸图像中人脸方向一致,提高图像效果。
请参阅图5,图5是本发明实施例公开的一种电子设备。其中,电子设备可以为手机、平板电脑等。如图5所示,该电子设备可以包括壳体501、处理器502、存储器503、电路板504和电源电路505,其中,电路板504安置在壳体围成的空间内部,处理器502和存储器503设置在电路板504上;电源电路505,用于为电子设备的各个电路或器件供电;存储器503用于存储可执行程序代码;处理器502通过读取存储器503中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:
获取输入图像中的第一人脸图像;
提取第一人脸图像的人脸特征;
根据人脸特征确定第一人脸图像的表征向量;
根据表征向量从预设人脸图像库中确定目标人脸图像;
根据目标人脸图像对第一人脸图像进行换脸处理,得到输出图像。
作为一种可能的实施方式,表征向量包含N个维度,N为大于1的整数;在根据人脸特征确定第一人脸图像的表征向量方面,处理器502具体用于执行以下操作:
估算人脸特征得到N个维度中每一维度对应的至少1个表征概率值,得到M个表征概率值,M大于或等于N;
对M个表征概率值进行加权处理,得到表征向量。
作为一种可能的实施方式,在估算人脸特征得到N个维度中每一维度对应的至少1个表征概率值方面,处理器502具体用于执行以下操作:
将人脸特征与目标维度的特征参数进行匹配,得到多个匹配值,目标维度为表征向量中的任一维度;
将多个匹配值中大于或等于预设阈值的匹配值作为目标维度对应的表征概率值。
作为一种可能的实施方式,在根据目标人脸图像对第一人脸图像进行换脸处理,得到输出图像方面,处理器502具体用于执行以下操作:
将目标人脸图像中的第二人脸图像进行预处理,得到第三人脸图像;
将第三人脸图像的人脸特征替换为第一人脸图像的人脸特征,得到第四人脸图像;
通过损失函数修正第四人脸图像,得到第五人脸图像;
将第五人脸图像与目标人脸图像中除了第二人脸图像之外的图像进行贴合,得到输出图像。
作为一种可能的实施方式,预处理至少包括脸部对齐处理;在得到第四人脸图像之后,处理器502还用于执行以下操作:
将第四人脸图像进行反脸部对齐处理,得到第六人脸图像;
通过损失函数修正第六人脸图像,得到第五人脸图像。
在图5所描述的电子设备中,根据人脸特征获取的表征向量确定目标人脸图像,则目标人脸图像是在预设人脸图像库中与第一人脸图像最匹配的人脸图像,从而提高了换脸后的图像效果,增强了趣味性,且不需手动选择目标人脸图像,提高了操作的便利性。
在一个实施例中提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现实施例一的图像处理方法。
在一个实施例中提供了一种应用程序,该应用程序用于在运行时执行实施例一的图像处理方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。