人脸图像处理方法、装置、设备及计算机可读存储介质与流程

文档序号:21088514发布日期:2020-06-12 17:03阅读:216来源:国知局
人脸图像处理方法、装置、设备及计算机可读存储介质与流程

本申请涉及图像处理技术领域,具体涉及一种人脸图像处理方法、装置、设备和计算机可读存储介质。



背景技术:

随着智能终端技术的不断发展,人们可以随时随地使用智能终端拍摄。人们总是期望获得更好的拍摄效果,尤其是自拍等对于人像的拍摄,由此衍生出了很多专门针对人像进行处理的应用。

然而,在人像的拍摄过程中,容易由于光线不均匀导致拍摄到的图像中出现人脸的亮度不均衡的问题,图像中人脸部位的高光区域十分影响后续对于人脸的处理,导致无法得到较好人像效果。

为解决此问题,在现有的技术实现中,将亮度高于预设的亮度阈值的图像区域确定为高光区域,然后将此高光区域的亮度调低,从而便于后续进行处理。但是,将高光区域的亮度调低后,容易导致高光区域对应的图像区域与周围的图像区域过渡不自然。

由此,现有技术中仍存在由于拍摄光照不均匀导致无法获得较好的人脸图像效果的问题。



技术实现要素:

为解决上述技术问题,本申请的实施例提供了一种人脸图像处理方法、装置、设备以及计算机可读存储介质,基于本申请实施例进行的人脸图像处理,不会出现图像区域过渡不自然的问题,处理效果更佳。

其中,本申请所采用的技术方案为:

一种人脸图像处理方法,包括:根据人脸图像中各个像素的灰度值,确定用于区分所述人脸图像中背景像素和前景像素的第一灰度阈值;将所述人脸图像中灰度值小于所述第一灰度阈值的像素确定为所述背景像素,以及将灰度值大于所述第一灰度值的像素确定为所述前景像素;根据所述背景像素和前景像素生成所述人脸图像对应的掩膜;将所述掩膜与所述人脸图像进行融合,获得目标人脸图像;在所述目标人脸图像中,对应于所述背景像素的像素点的亮度与所述背景像素的亮度相同,对应于所述前景像素的像素点的亮度低于所述前景像素的亮度。

一种人脸图像处理装置,包括:灰度值获取模块,用于根据人脸图像中各个像素的灰度值,确定用于区分所述人脸图像中背景像素和前景像素的第一灰度阈值;前背景像素确定模块,用于将所述人脸图像中灰度值小于所述第一灰度阈值的像素确定为所述背景像素,以及将灰度值大于所述第一灰度阈值的像素确定为所述前景像素;掩膜生成模块,用于根据所述背景像素和前景像素生成所述人脸图像对应的掩膜;图像融合模块,用于将所述掩膜与所述人脸图像进行融合,获得目标人脸图像;在所述目标人脸图像中,对应于所述背景像素的像素点的亮度与所述背景像素的亮度相同,对应于所述前景像素的像素点的亮度低于所述前景像素的亮度。

一种人脸图像处理设备,包括处理器及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如上所述的人脸图像处理方法。

一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的人脸图像处理方法。

在上述技术方案中,第一灰度值是根据人脸图像中各个像素的灰度值确定的,因此根据第一灰度阈值区分得到的前景像素的分布,能够反映人脸图像中亮度较强的图像区域以及亮度较弱的图像区域的整体分布。并且在通过掩膜与人脸图像融合得到的目标人脸图像中,与背景像素相对应的像素点的亮度与背景像素的亮度相同,并且与前景像素相对应的像素点的亮度低于所述前景像素的亮度,相比于现有技术直接将高光区域的亮度调低,本申请的技术方案是对人脸图像中亮度较强的图像区域的进行亮度降低处理,也即是在人脸图像的整体上降低亮度,使得亮度调节效果更加自然,不会出现人脸图像中的图像区域过渡不自然的问题。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1是根据一示例性实施例示出的一种人脸图像处理方法的流程图;

图2是图1所示实施例中步骤110在一个示例性实施例的流程图;

图3是图1所示实施例中步骤150在一个示例性实施例的流程图;

图4是图1所示实施例中步骤170在一个示例性实施例的流程图;

图5是根据另一示例性实施例示出的一种人脸图像处理方法的流程图;

图6是图5所示实施例中步骤250在一个实施例的流程图;

图7是图5所示实施例中步骤250在另一个实施例的流程图;

图8是图5所示实施例中步骤250在另一个实施例的流程图;

图9是根据一示例性实施例示出的一种人脸图像的示意图;

图10是对图9所示人脸图像进行人脸特征区域保护的示意图;

图11是对图9所示人脸图像进行背景像素和前景像素区分的示意图;

图12是基于图9所示人脸图像生成的一种示例性的掩膜的示意图;

图13是对图9所示人脸图像进行处理得到的目标人脸图像的示意图;

图14是根据一示例性实施例示出的人脸图像处理效果的示意图;

图15是根据一示例性实施例示出的一种人脸图像处理装置的框图;

图16是根据一示例性实施例示出的一种人脸图像处理设备的框图。

具体实施方式

这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

如前所述,在人像拍摄过程中,容易由于光线不均匀导致拍摄到的图像中出现人脸部位的亮度不均衡的问题,十分影响后续对于人脸部位的处理,导致无法得到较好的人像处理效果。

现有的技术实现中,只是简单地将人脸图像中亮度高于预设的亮度阈值的图像区域确定为高光区域,然后将此高光区域的亮度调低,得到经由亮度调节后的人脸图像,从而便于后续对于此人脸图像的处理。但是,将高光区域的亮度调低后,容易导致高光区域对应的图像区域与周围的图像区域过渡不自然,仍无法得到较好的人像处理效果。

基于此,为解决由于拍摄光照不均匀导致无法获得较好的人脸图像效果的技术问题,本申请的实施例分别提供了一种人脸图像处理方法、一种人脸图像处理装置、一种人脸图像处理设备和一种计算机可读存储介质,通过对人脸图像进行处理,能够在整体上降低人脸图像的亮度,避免出现人脸图像中的图像区域过渡不自然的问题,能够使得后续对于亮度调节后的人脸图像进行的处理获得较好的效果。

请参阅图1,图1是根据一示例性实施例示出的一种人脸图像处理方法的流程图。如图1所示,在一示例性实施例中,该人脸图像处理方法至少包括以下步骤:

步骤110,根据人脸图像中各个像素的灰度值,确定用于区分人脸图像中背景像素和前景像素的第一灰度阈值。

其中,由于对人脸图像中的高光区域的亮度调暗后,容易出现高光区域对应的图像区域与周围的图像区域过渡不自然的问题,因此在本实施例中,考虑到对人脸图像中亮度偏大的图像区域进行整体性的亮度调节,即可避免出现图像区域过渡不自然的问题,因此首先需要确定人脸图像中亮度偏大的图像区域。

人脸图像的前景像素是指人脸图像中亮度偏大的像素,背景像素是指人脸图像中亮度偏低的像素,因此前景像素构成的图像区域即为人脸图像中亮度偏大的图像区域。

人脸图像中各个像素的灰度值反映了人脸图像中各个像素的亮度分布,因此可以根据人脸图像确定第一灰度阈值,以根据第一灰度阈值区分人脸图像中的背景像素和前景像素。

步骤130,将人脸图像中灰度值小于第一灰度阈值的像素确定为背景像素,以及将灰度值大于第一灰度阈值的像素确定为前景像素。

如前所述,前景像素是指人脸图像中亮度偏大的像素,背景像素是指人脸图像中亮度偏小的像素,根据需将人脸图像中灰度值小于第一灰度阈值的像素确定为背景像素,将人脸图像中灰度值大于第一灰度阈值的像素确定为前景像素。

由此,本实施例将人脸图像中的像素划分为亮度较暗的背景像素,以及亮度较亮的前景像素,相比于现有技术中直接确定的高光区域,本实施例中由前景像素构成的图像区域中,不仅包含了人脸图像中的高光区域,还包含了其它所有亮度偏大的图像区域,例如位于高光区域周围的图像区域,也即是说,本实施例中由前景像素构成的图像区域能够在整体上反映人脸图像中亮度偏大的图像区域。

因此,在后续进行的人脸图像处理中,可以基于所确定的背景像素和前景像素对人脸图像进行整体上的亮度调节,在去除人脸图像中的高光区域的同时,进一步调暗人脸图像中其它亮度较大的图像区域,能够有效避免处理后的高光区域与周围的图像区域出现过渡不自然的问题。

步骤150,根据背景像素和前景像素生成人脸图像对应的掩膜。

其中,掩膜是指用于对待处理的图像进行部分覆盖的特定图像,在数字图像处理领域,掩膜表示为二维矩阵数组,此二维矩阵数组对应于特定图像中每个像素对应的像素值。

在本实施例中,所生成的掩膜用于对人脸图像的全部或者局部进行覆盖,例如可以仅对人脸图像中的人脸区域进行覆盖。

掩膜中含有与背景像素对应的背景掩膜像素,以及与前景像素对应的前景掩膜像素,其中,背景掩膜像素用于覆盖人脸图像中对应的背像像素,前景掩膜像素则用于覆盖人脸图像中对应的前景像素。

步骤170,将掩膜与人脸图像进行融合,获得目标人脸图像,在目标人脸图像中,对应于背景像素的像素点的亮度与相应背景像素的亮度相同,对应于前景像素的像素点的亮度低于相应前景像素的亮度。

其中,将掩膜与人脸图像进行融合是指将掩膜覆盖于人脸图像,从而得到目标人脸图像。因此,目标人脸图像中的每个像素点分别对应于人脸图像中位置相同的每个像素点。

对掩膜和人脸图像中分别对应于同一图像位置的像素点来说,所进行的融合即是对此图像位置对应的两个像素点的像素值进行融合处理。

由于在目标人脸图像中,与背景像素相对应的像素点的亮度与相应背景像素的亮度相同,与前景像素相对应的像素点的亮度低于相应前景像素的亮度,因此本实施例基于掩膜与人脸图像的融合,实质上是将人脸图像中亮度偏大的图像区域进行整体性的亮度调暗处理,能够使得亮度调节的效果更加自然,不会出现人脸图像中的图像区域过渡不自然的问题。

本实施例所得到的目标人脸图像可以应用于后续对于人脸部位的美白、磨皮、人像变脸等修饰处理,由于目标人脸图像中去除了人脸图像中的高光区域,并且还针对亮度较大的其它图像区域的亮度相应降低,在很大程度上避免了亮度不均衡对于人脸图像处理效果的影响,因此能够获得较好的人脸图像效果。

图2是图1所示实施例中步骤110在一个示例性实施例的流程图。如图2所示,在一示例性实施例中,根据人脸图像中各个像素的灰度值,确定用于区分人脸图像中背景像素和前景像素的第一灰度阈值,至少包括以下步骤:

步骤111,按照预设的灰度阈值区分人脸图像中的背景像素和前景像素。

其中,考虑到当第一灰度阈值为最佳时,人脸图像中背景像素和前景像素之间的区别度最大,并且根据前景像素确定的人脸图像中亮度偏大的区域更加准确,因此有必要获取最佳的第一灰度阈值。

在本实施例中,预先设置有初始的灰度阈值,最佳的第一灰度阈值是通过在人脸图像中的背景像素和前景像素之间的区别度最大的条件下,对初始的灰度阈值进行遍历得到的,当区别度最大时,进行遍历时对应的灰度阈值最佳,则将此最佳的灰度阈值确定为第一灰度阈值。

与步骤130中根据第一灰度阈值区别人脸图像中的背景像素和前景像素类似,按照预设的灰度阈值区分人脸图像中的背景像素和前景像素是指,将人脸图像中灰度值小于此预设的灰度阈值的像素确定为前景像素,而将灰度值大于预设的灰度阈值的像素确定为背景像素。

步骤113,根据人脸图像中包含的背景像素的数量和前景像素的数量,以及背景像素的灰度值和前景像素的灰度值,计算人脸图像对应的背景像素占比、前景像素占比、背景像素平均灰度值和前景像素平均灰度值。

其中,人脸图像对应的背景像素占比是指背景像素的数量与人脸图像中像素总数的比值,前景像素占比是指前景像素的数量与像素总数的比值,前背景像素平均灰度值是指人脸图像中所有背景像素所对应灰度值的平均值,前景像素平均灰度值是指所有前景像素所对应灰度值的平均值。

如果用n1表示人脸图像中背景像素的数量,用n2表示人脸图像中前景像素的数量,用sum表示人脸图像中像素的总数,用ω1表示背景像素占比,用ω2表示前景像素占比,用μ1表示背景像素平均灰度值,用μ2表示前景像素平均灰度值,则可以通过公式计算得到人脸图像对应的背景像素占比,通过公式计算得到人脸图像对应的前景像素占比,通过公式计算人脸图像的背景像素平均灰度值,通过公式计算人脸图像对应的前景像素平均灰度值。其中,μ表示人脸图像中所有像素的灰度值之和,μ(t)表示人脸图像中所有的背景像素的灰度值之和。

步骤115,计算背景像素平均灰度值与前景像素平均灰度值之差的平方值,并计算前景像素占比、背景像素占比和平方值之间的积,获得人脸图像的类间方差。

首先需要说明的是,人脸图像的类间方差用于表示人脸图像中背景像素与前景像素之间的区分度,人脸图像对应的类间方差越大,人脸图像中背景像素与前景像素之间的区分度也越大。

如果用g表示人脸图像的类间方差,则通过以下公式计算此类间方差:

g=ω1*ω2*(μ1-μ2)2

步骤117,在最大化类间方差的条件下遍历灰度阈值,将最大类间方差对应的灰度阈值确定为第一灰度阈值。

其中,在最大化类间方差的条件下遍历灰度阈值是指,以得到最大的类间方差为目的,迭代执行步骤111至步骤115的过程,每执行一次步骤111至步骤115的过程即称为灰度阈值的一次遍历。

在每次进行的遍历中,都需要调整步骤111中用于区分人脸图像的背景像素和前景像素的灰度阈值,从而通过多次遍历得到不同灰度阈值分别对应的类间方差,由此可以确定类间方差最大时对应的灰度阈值为第一灰度阈值。

由此,本实施例基于类间方差来确定人脸图像中背景像素与前景像素之间的区别度,能够将背景像素与前景像素之间区别度具体化,并且通过在最大化类间方差的条件下遍历灰度阈值,从而能够在遍历得到的若干灰度阈值和类间方差中,确定最大类间方差对应的灰度阈值为最佳的第一灰度,使得后续通过第一灰度值进行的背景像素和前景像素的区分,能够在最大程度上反映人脸图像中的亮度分布情况,便于后续针对人脸图像进行整体性的亮度调节,获得较好的处理效果。

图3是图1所示实施例中步骤150在一个示例性实施例的流程图。如图3所示,生成人脸图像对应的掩膜,至少包括以下步骤:

步骤151,基于人脸图像生成空白掩膜,空白掩膜中含有与背景像素对应的背景掩膜像素,以及与前景像素对应的前景掩膜像素。

首先需要说明的是,在基于人脸图像所生成的空白掩膜中,空白掩膜的图像大小与人脸图像的图像大小相同,并且每个像素对应的像素值为零。

空白掩膜中含有与背景像素对应的背景掩膜像素,以及与前景像素对应的前景掩膜像素,因此在空白掩膜中,背景掩膜像素与前景掩膜像素的分布对应于人脸图像中背景像素与前景像素的分布。

步骤153,将人脸图像所对应色彩模式下的最高阶通道值的一半确定为背景掩膜像素在各个颜色通道的通道值,并根据前景像素在各个颜色通道的通道值,确定前景掩膜像素在各个颜色通道的通道值,前景掩膜像素在各个颜色通道的通道值低于最高阶通道值的一半。

其中,人脸图像所对应色彩模式包括rgb模式,这是一种通过红、绿、蓝三个颜色通道的亮度变化以及它们相互之间的叠加来得到颜色的颜色标准,各个颜色通道的通道值即反映了各个颜色通道的颜色强度。

在rgb模式下,人脸图像的每个像素含有三个颜色通道,通过各个颜色通道的通道值进行叠加得到各个像素对应的颜色,并且将各个颜色通道对应的通道值大小设定为0~255个阶层,阶层越高,相应颜色通道的颜色强度也越大。因此,人脸图像所对应色彩模式下的最高阶通道值为255。

为使得目标人脸图像中背景像素的亮度相对人脸图像中对应的背景像素的亮度不发生变化,则需要保证掩膜中背景掩膜像素与人脸图像中对应的背景像素融合所得的像素值与人脸图像中对应的背景像素的像素值相同。应当理解,掩膜和人脸图像中各个像素对应的像素值即为各个像素在各个颜色通道的通道值。

示例性的,在掩膜与人脸图像的融合过程中,需要对背景掩膜像素与对应的背景像素分别在各个颜色通道的通道值进行融合计算,当背景掩膜像素在各个颜色通道的通道值为最高阶通道值255的一半时,融合计算所得各个颜色通道的通道值与人脸图像中对应的背景像素在相应颜色通道的通道值是相同的。因此,在本实施例中,需要将人脸图像所对应色彩模式下的最高阶通道值的一半确定为背景掩膜像素在各个颜色通道的通道值。

在对前景掩膜像素与对应的前景像素分别在各个颜色通道的通道值进行融合计算的过程中,当前景掩膜像素在各个颜色通道的通道值低于最高阶通道值的一半时,融合计算所得各个颜色通道的通道值将小于人脸图像中对应的背景像素在相应颜色通道的通道值,从而能够起到降低亮度的作用。

在本实施例中,针对人脸图像中不同亮度的前景像素进行亮度降低的强度各不相同,以获得更加自然的亮度调暗效果,因此需要根据人脸图像中前景像素在各个颜色通道的通道值,确定掩膜中相应前景掩膜像素在各个颜色通道的通道值。

在一个实施例中,需要根据前景掩膜像素在各个颜色通道的通道值、前景掩膜像素对应的前景像素的灰度值、最高阶通道值以及第一灰度阈值计算前景掩膜像素在各个颜色通道的通道值。

如果用b表示掩膜中任意一个前景掩膜像素在某个颜色通道的通道值与最高阶通道值的比值,用gary表示前景掩膜像素对应前景像素的灰度值,用于gary′表示第一灰度阈值,则有如下计算公式:

b=0.5-(log2(1+(gary-gary′)/(255-gary′)))*0.5

在根据此公式计算得到b的值之后,通过计算b与最高阶通道值的乘积,即可以相应确定前景掩膜像素在相应颜色通道的通道值。

由此可知,本实施例所计算得到的前景掩膜像素在各个颜色通道的通道值与最高阶通道值的比值小于0.5,也即前景掩膜像素在各个颜色通道的通道值低于最高阶通道值的一半。

步骤155,将背景掩膜像素和前景掩膜像素在各个颜色通道的通道值相应填充至空白掩膜中,获得人脸图像对应的掩膜。

其中,将背景掩膜像素和前景掩膜像素在各个颜色通道的通道值相应填充至空白掩膜中是指,按照步骤153所确定的背景掩膜像素和前景掩膜像素在各个颜色通道的通道值,将相应通道值赋予至空白掩膜中对应像素的各个颜色通道,以使得空白掩膜中对应像素上色。

由此,本实施例基于人脸图像生成空白掩膜,并分别确定空白掩膜中各个背景掩膜像素在各个颜色通道的通道值,以及各个前景掩膜像素在各个颜色通道的通道值,并将确定的背景掩膜像素和前景掩膜像素在各个颜色通道的通道值相应填充至空白掩膜中,所获得的掩膜在与人脸图像进行融合后,可以有效地保证目标人脸图像中与背景像素相对应的像素的亮度与人脸图像中对应的背景像素的亮度相同,与前景像素相对应的像素的亮度低于人脸图像中对应的前景像素的亮度,从而达到整体性降低亮度的目的。

图4是图1所示步骤170在一个示例性实施例的流程图。如图4所示,在一示例性实施例中,将掩膜与人脸图像进行融合,获得目标人脸图像,至少包括以下步骤:

步骤171,分别获取人脸图像和掩膜中的每个像素在不同颜色通道的归一化通道值,归一化通道值为通道值与最高阶通道值的比值。

在本实施例中,需要分别获取人脸图像和掩膜中各个像素在不同颜色通道的通道值,然后计算每个通通道值与最高阶通道值的比值,得到获取人脸图像和掩膜中的每个像素在不同颜色通道的归一化通道值。

在后续对于人脸图像和掩膜的融合中,通过对人脸图像和掩膜中的每个像素在不同颜色通道的归一化通道值进行融合计算,能够使得融合计算的过程更加便捷。

并且由前述内容可知,掩膜中各个背景掩膜像素在不同颜色通道的归一化通道值为0.5。

步骤173,针对人脸图像和掩膜中处于相同位置的目标像素,融合计算每个颜色通道的归一化通道值,获得目标像素在每个颜色通道的融合通道值。

首先需要说明的是,人脸图像和掩膜中分别处于相同位置的目标像素,实质上为一像素对,并且该像素对中的各个像素分别在人脸图像和掩膜中的像素位置相对应,各个像素分别具有每个颜色通道对应的通道值。

示例性的,融合计算目标像素在每个颜色通道的归一化通道值的公式为:

其中,f(a,b)表示目标像素在单个颜色通道的融合通道值,a表示目标像素在人脸图像中的相应颜色通道的归一化通道值,b表示目标像素在掩膜中的相应颜色通道的归一化通道值,并且a和b都是0~1之间的值。

当b<0.5时,表示目标像素是人脸图像中的前景像素,而当b=0.5时,目标像素是人脸图像中的背景像素。

可以看出,当b<0.5时,所计算得到的融合通道值小于a,也即是说,融合通道值所反映的颜色通道的通道值低于人脸图像中的背景像素在相应颜色通道的通道值,基于各个颜色通道的通道值叠加,所得亮度应当低于人脸图像中的背景像素的亮度。

而当b=0.5时,所计算得到的融合通道值等于a,也即是说,融合通道值所反映的颜色通道的通道值与人脸图像中的背景像素在相应颜色通道的通道值相同,基于各个颜色通道的通道值叠加,所得亮度与人脸图像中的背景像素的亮度保持一致。

步骤175,根据目标像素在每个颜色通道的融合通道值,对目标像素在人脸图像中的每个颜色通道的通道值进行更新,获得目标人脸图像。

在本实施例中,通过目标像素在每个颜色通道的融合通道值对目标像素在人脸图像中的每个颜色通道的通道值进行更新,也即是将每个颜色通道的融合通道值确定为目标人脸图像中相应像素在每个颜色通道的通道值。

因此,在本实施例中,目标图像中与背景像素相对应的像素的亮度应当与相应背景像素的亮度相同,与前景像素相对应的像素的亮度则低于对应前景像素的亮度,从而实现将人脸图像中亮度偏大的图像区域进行整体性的亮度调暗处理,使得亮度调节的效果更加自然。

如图5所示,在另一示例性实施例中,在步骤110之前,该人脸图像处理方法还包括以下步骤:

步骤210,将人脸图像转换为人脸灰度图。

其中,基于上述目标像素在单个颜色通道的融合通道值的计算公式可知,如果人脸图像中像素在某个颜色通道的通道值很大,a的值则会很接近于1,无论如何调节对应的b值,最终得到的融合通道值也会很接近于1,将导致目标人脸图像中对应像素的亮度降低效果不太明显。

因此,针对人脸图像的人脸区域中的高光区域,在执行掩膜与人脸图像的融合过程中,无论如何调整掩膜中与人脸区域中的高光区域相对应的掩膜像素在各个颜色通道的通道值,在最终所得目标人脸图像中,人脸区域中的高光区域的亮度无法有效降低。

为解决此问题,本实施例通过预先消除人脸区域的高光区域,然后再对人脸图像进行整体性的亮度降低处理,以获得更好的亮度降低效果。因此在本实施例中,需要将人脸图像转换为人脸灰度图,以根据人脸灰度图确定人脸区域中的高光区域。

步骤230,在人脸灰度图的人脸区域中确定灰度值大于预设的第二灰度阈值的目标区域,并确定人脸图像中与所述目标区域相对应的高光区域。

首先需要说明的是,可以预先对人脸图像进行人脸识别,得到人脸图像中的人脸区域,在将人脸图像转换为人脸灰度图后,即可相应确定人脸灰度图中的人脸区域。

第二灰度阈值是预先设定的高光区域的最低边界值,例如可以为220,在确定人脸灰度图的人脸区域中灰度值大于第二灰度阈值的目标区域之后,即可相应确定人脸图像中与目标区域相应的高光区域。

步骤250,使用所述高光区域的周围像素填充所述高光区域。

其中,对于人脸区域中的高光区域,位于其周围的各个像素的亮度低于高光区域,并且也不会过低。因此,本实施例使用该高光区域的周围像素填充高光区域能够有效较低高光区域的亮度,同时保证填充后的高光区域的亮度不会与周围的图像区域出现过渡不自然的问题。

在一个示例性实施例中,如图6所示,使用高光区域的周围像素填充高光区域,可以包括以下步骤:

步骤2511,确定高光区域的边界对应的等照度线;

步骤2513,将高光区域的周围像素沿等照度线的方向传输至高光区域,以填充高光区域。

在本实施例中,是采用navier-stokes(纳维叶-斯托克斯,是流体力学中描述不可压缩流体动量守恒的运动方程)方法对高光区域进行填充,其本质是梯度过渡的方法,用高光区域的周围像素填充高光区域。

等照度线是指被照面上将相同照度的所有点利用适当坐标绘成的曲线,在本实施例中,照面为高光区域的边界上。

在navier-stokes方法中,将在等照度线方向上向待修复区域(本实施例中是指高光区域)传输周围的像素信息,由此填充待修复区域。示例性的,通过在整个待修复区域上求解navier-stokes方程,即可相应得到待修复区域进行修复后的图像函数,详细的计算过程本处不进行赘述。

在另一个示例性实施例中,如图7所示,使用高光区域的周围像素填充高光区域,可以包括以下步骤:

步骤2521,分别以高光区域内的每个像素为中心点,确定位于每个中心点的预设半径内的像素集合对应的权重矩阵;

步骤2523,根据像素集合对应的像素值集合和权重矩阵,计算中心点的像素值;

步骤2525,将像素值填充至中心点。

在本实施例中,采用高斯模糊的方法将高光区域的周围像素填充至高光区域。

分别将高光区域内的每个像素作为中心点,确定位于每个中心点的预设半径内的像素集合,此预设半径也称为中心点的模糊半径,像素集合中含有位于每个中心点的预设半径内的各个像素的像素值。预设半径越大,像素集合中含有的像素数量也越多,对于中心点的模糊效果更好。

并且因为图像中像素是连续的,越靠近中心点的像素与中心点的关联越密切,因此还需要确定像素集合中各个像素对应的权重,以得到像素集合对应的权重矩阵。在一个实施例中,像素集合中各个像素对应的权重基于各个像素与中心点的距离呈正态分布。

由此,通过将像素集合中各个像素的像素值和各个像素对应的权重进行加权和运算,即可得到中心点的像素值。通过将此像素值填充至相应的中心点,从而实现高光区域的填充。

在另一个示例性实施例中,如图8所示,使用高光区域的周围像素填充高光区域,还可以包括以下步骤:

步骤2531,在高光区域的边界上确定待修复像素;

步骤2533,通过计算待修复像素与人脸图像中各个像素的像素值平方误差,将最小像素值平方误差对应的像素确定为与待修复像素相匹配的采样像素;

步骤2535,将采样像素的像素值填充至待修复像素中,并将待修复像素从高光区域的边界中去除,重新确定高光区域的边界;

步骤2537,迭代执行高光区域的边界中的待修复像素的像素值填充,以及高光区域的边界的更新,直至高光区域内中全部像素填充完成。

在本实施例中,是采用采样填充的方法,通过在高光区域的边界上选取某一点,确定为待修复像素,然后在人脸图像中搜索与待修复像素相匹配的采样像素,以将采样像素拷贝至待修复像素,完成对此待修复区域的像素值填充。

其中,待修复像素可以是高光区域的边界上的任意一个像素,也可以是根据边界中每个像素对应的优先级,将最高优先级对应的像素确定为待修复像素。

通过计算待修复像素与人脸图像中各个像素之间的像素值平方误差,并在人脸图像中搜索最小像素值平方误差对应的像素,将最小像素值平方误差对应的像素确定为采样像素。其中,像素值平方误差可以是二者像素之间在相应色彩空间上的空间距离。

在完成待修复像素的像素值填充之后,对高光区域的边界进行更新,也即将待修复像素从高光区域的边界中去除,得到更新的边界。重新此修复过程,直至高光区域修复完毕。

由此,本实施例通过使用高光区域的周围像素填充高光区域,能够有效较低高光区域的亮度,同时保证填充后的高光区域的亮度不会与周围的图像区域出现过渡不自然的问题。

在另一示例性实施例中,在将人脸图像转换为人脸灰度图之前,还需对人脸图像进行人脸识别,获得人脸图像中的人脸区域和人脸特征区域,人脸特征区域至少包括眼睛区域、眉毛区域和嘴巴区域,人脸图像中的人脸区域对应于人脸灰度图中的人脸区域。

考虑到如果高光区域中含有人脸特征区域,利用高光区域的周围像素对高光区域填充后,容易导致人脸图像中人像的容貌发生较大变化,十分影响人脸图像的处理效果,因此有必要对人脸图像中的人脸特征区域进行保护。

其中,对人脸图像中的人脸特征区域进行保护是指,在人脸灰度图的人脸区域中确定灰度值大于第二灰度阈值的目标区域的过程中,先根据人脸图像中的人脸区域和人脸特征区域,确定人脸灰度图的人脸区域中对应的人脸特征区域,然后针对人脸灰度图的人脸区域中除五官区域之外的图像区域,确定灰度值大于第二灰度阈值的目标区域。

因此,本实施例通过人脸图像中的人脸特征区域进行保护,可以最大程度地减小人脸图像处理对于人像容貌的影响。

在一个示例性的应用场景中,对于人脸图像处理的过程如下:

如图9所示,图9为待处理的人脸图像,其中人脸区域的额头、鼻翼和脸颊等区域的亮度较大,如果直接对人脸区域美白、磨皮、人像变脸等修饰处理,这些亮度较大的区域将十分影响修饰效果,因此需要预先对人脸图像进行整体上的亮度调暗处理。

对于人脸区域中的人脸特征区域,例如眉毛、眼睛和嘴巴等区域,使用周围像素对相应区域进行填充后对人像的容貌影响较大,进而影响人脸图像的处理效果,因此有必要对人脸图像进行人脸特征区域的保护。也即,在对后续对于人脸区域中的高光区域进行处理时,将不会对受保护的人脸特征区域进行处理。如图10所示,白色区域之外的黑色区域表示人脸图像中除人脸区域之外的图像区域,白色区域内的黑色区域表示受保护的人脸特征区域。

由于人脸区域中的高光区域在执行掩膜与人脸图像的融合过程中,无论如何调整掩膜中与高光区域相对应的掩膜像素在各个颜色通道的通道值,最终所得目标人脸图像中,人脸区域中的高光区域的亮度仍无法有效降低。因此,接下来需要对人脸区域中的高光区域进行修复,示例性的,使用高光区域的周围像素填充高光区域,以有效降低高光区域的亮度,避免高光区域对应后续进行整体性的亮度调节的影响。

接下来,需要确定人脸图像中待进行整体性亮度调节的图像区域,示例性的,在人脸图像对应的人脸灰度图中,根据第一灰度阈值进行前景像素和背景像素的区分,即可将由前景像素构成的图像区域作为待进行整体性亮度降低的图像区域。如图11所示,对人脸灰度图进行前景像素和背景像素的区分后,确定白色区域为待调节区域。

然后,需要生成人脸图像对应的掩膜,掩膜中含有与人脸图像中的背景像素相对应的背景掩膜像素,以及与人脸图像中的前景像素相对应的前景掩膜像素,也即是说,掩膜中的各个像素与人脸图像中的各个像素是相对应的。图12为一示例性实施例示出的一种掩膜的示意图。

通过人脸图像中的前景像素与掩膜中的前景掩膜像素的融合,将使得人脸图像中的前景像素的亮度值有所降低,而通过人脸图像中的背景像素与掩膜中的背景掩膜像素的融合,将不会改变人脸图像中的背景像素的亮度值,因此在人脸图像的整体上对人脸区域的亮度进行了调暗处理,能够满足后续对于人脸图像进行修饰处理的需求。

图13是根据以上内容对图9所示人脸图像进行处理得到的目标人脸图像的示意图。可以看出,在图13所示人脸图像的人脸区域中,额头、鼻翼和脸颊部位的亮度明显降低,并且不会出现与周围的图像区域过渡不自然的问题,也没有改变人像的容貌,从而能够有效解决人脸图像中亮度不均衡的问题。

还需要提及的是,本申请的实施例对于2k分辨率的人脸图像进行亮度处理的速度可以在0.5秒以内,处理耗时较短。

在另一个示例性的应用场景中,如图14所示,其中图14a为待处理的人脸图像,图14b为基于图14a生成的掩膜,图14c是对图14a和14b进行融合所得到的目标人脸图像。

在此应用场景中,基于人脸图像所生成的掩膜对应于人脸图像中的人脸区域,通过掩膜对人脸区域的覆盖,以对人脸区域进行整体性的亮度调节。从图14c可以看出,目标人脸图像中的人脸区域的亮度得到了整体性的降低,从而有利于后续对于目标人脸图像进行的修饰处理。

图15是根据一示例性实施例示出的一种人脸图像处理装置的框图。如图15所示,在一示例性实施例中,该装置包括灰度值获取模块310、前背景像素确定模块330、掩膜生成模块350和图像融合模块370。

灰度值获取模块310用于根据人脸图像中各个像素的灰度值,确定用于区分人脸图像中背景像素和前景像素的第一灰度阈值。

前背景像素确定模块330用于将人脸图像中灰度值小于第一灰度阈值的像素确定为背景像素,以及将灰度值大于第一灰度阈值的像素确定为前景像素。

掩膜生成模块350用于根据背景像素和前景像素生成人脸图像对应的掩膜。

图像融合模块370用于将掩膜与人脸图像进行融合,获得目标人脸图像,在目标人脸图像中,对应于背景像素的像素点的亮度与相应背景像素的亮度相同,对应于前景像素的像素点的亮度低于相应前景像素的亮度。

在另一示例性实施例中,掩膜生成模块350包括空白掩膜生成单元、掩膜像素值确定单元和掩膜像素值填充单元。

空白掩膜生成单元用于基于人脸图像生成空白掩膜,空白掩膜中含有与背景像素对应的背景掩膜像素,以及与前景像素对应的前景掩膜像素。

掩膜像素值确定单元用于确定背景掩膜像素在各个颜色通道的通道值,并根据前景像素在各个颜色通道的通道值,确定前景掩膜像素在各个颜色通道的通道值。

掩膜像素值填充单元用于将背景掩膜像素和前景掩膜像素在各个颜色通道的通道值相应填充至空白掩膜中,获得人脸图像对应的掩膜。

在另一示例性实施例中,背景掩膜像素在各个颜色通道的通道值为人脸图像所对应色彩模式下的最高阶通道值的一半,前景掩膜像素在各个颜色通道的通道值低于最高阶通道值的一半。

在另一示例性实施例中,掩膜像素值确定单元包括前景掩膜像素确定子单元,用于根据前景掩膜像素在各个颜色通道的通道值、前景掩膜像素对应的前景像素的灰度值、最高阶通道值以及第一灰度阈值,计算前景掩膜像素在各个颜色通道的通道值。

在另一示例性实施例中,图像融合模块370包括归一化处理单元、融合计算单元和通道值更新单元。

归一化处理单元用于分别获取人脸图像和掩膜中的每个像素在不同颜色通道的归一化通道值,归一化通道值为通道值与最高阶通道值的比值。

融合计算单元用于针对人脸图像和掩膜中分别处于相同位置的目标像素,融合计算每个颜色通道的归一化通道值,获得目标像素在每个颜色通道的融合通道值。

通道值更新单元用于根据目标像素在每个颜色通道的融合通道值,对目标像素在人脸图像中的每个颜色通道的通道值进行更新,获得目标人脸图像。

在另一示例性实施例中,灰度值获取模块310包括像素区分单元、信息计算单元、类间方法计算单元和遍历单元。

像素区分单元用于按照预设的灰度阈值区分人脸图像中的背景像素和前景像素。

信息计算单元用于根据人脸图像中包含的背景像素的数量和前景像素的数量,以及背景像素的灰度值和前景像素的灰度值,计算人脸图像对应的背景像素占比、前景像素占比、背景像素平均灰度值和前景像素平均灰度值。

类间方法计算单元用于计算背景像素平均灰度值与前景像素平均灰度值之差的平方值,并计算前景像素占比、背景像素占比和平方值之间的积,获得人脸图像的类间方差。

遍历单元用于遍历灰度阈值,将最大类间方差对应的灰度阈值确定为对所述第一灰度阈值

在另一示例性实施例中,人脸图像处理装置还包括灰度图转换模块、高光区域确定模块和高光区域填充模块。

灰度图转换模块用于将人脸图像转换为人脸灰度图。

高光区域确定模块用于在人脸灰度图的人脸区域中确定灰度值大于预设的第二灰度阈值的目标区域,并确定人脸图像中与目标区域相对应的高光区域。

高光区域填充模块用于根据高光区域的周围像素填充高光区域。

在另一示例性实施例中,高光区域填充模块包括等照度线确定单元和周围像素传输单元。

等照度线确定单元用于确定高光区域的边界对应的等照度线。

周围像素传输单元用于将高光区域的周围像素沿等照度线的方向传输至高光区域,以填充高光区域。

在另一示例性实施例中,高光区域填充模块包括像素集合获取单元、模糊像素值计算单元和模糊像素值填充单元。

像素集合获取单元用于分别以高光区域内的每个像素为中心点,确定位于每个中心点的预设半径内的像素集合,以及像素集合对应的权重矩阵。

像素值计算单元用于根据像素集合对应的像素值集合和权重矩阵,计算中心点的像素值。

像素值填充单元用于将此像素值填充至中心点。

在另一示例性实施例中,高光区域填充模块包括待修复像素确定单元、采样像素确定单元、边界更新单元和迭代执行单元。

待修复像素确定单元用于在高光区域的边界上确定待修复像素。

采样像素确定单元用于通过计算待修复像素与人脸图像中各个像素的像素值平方误差,将最小像素值平方误差对应的像素确定为与待修复像素相匹配的采样像素。

边界更新单元用于将采样像素的像素值填充至待修复像素中,并将待修复像素从边界中去除,重新确定高光区域的边界。

迭代执行单元用于迭代执行高光区域的边界中的待修复像素的像素值填充,以及高光区域的边界的更新,直至高光区域内中全部像素填充完成。

在另一示例性实施例中,人脸图像处理装置还包括人脸识别模块,用于对人脸图像进行人脸识别,获得人脸图像中的人脸区域和人脸特征区域,人脸特征区域至少包括眼睛区域、眉毛区域和嘴巴区域,人脸图像中的人脸区域对应于人脸灰度图中的人脸区域。

在另一示例性实施例中,高光区域确定模块包括人脸特征区域确定单元和目标区域确定单元。

人脸特征区域确定单元用于根据人脸图像中的人脸区域和人脸特征区域,确定人脸灰度图的人脸区域中对应的人脸特征区域。

目标区域确定单元用于针对人脸灰度图的人脸区域中除人脸特征区域之外的图像区域,确定灰度值大于第二灰度阈值的目标区域。

需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。

本申请的另一方面还提供了一种人脸图像处理设备,包括处理器和存储器,其中,存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时实现如前所述的人脸图像处理方法。

图16是根据一示例性实施例示出的一种人脸图像处理设备的结构示意图。

需要说明的是,该人脸图像处理设备只是一个适配于本申请的示例,不能认为是提供了对本申请的使用范围的任何限制。该人脸图像处理设备也不能解释为需要依赖于或者必须具有图16中示出的示例性的人脸图像处理设备中的一个或者多个组件。

如图16所示,在一示例性实施例中,人脸图像处理设备包括处理组件401、存储器402、电源组件403、多媒体组件404、音频组件405、传感器组件407和通信组件408。其中,上述组件并不全是必须的,人脸图像处理设备可以根据自身功能需求增加其他组件或减少某些组件,本实施例不作限定。

处理组件401通常控制人脸图像处理设备的整体操作,诸如与显示、数据通信以及日志数据处理相关联的操作等。处理组件401可以包括一个或多个处理器409来执行指令,以完成上述操作的全部或部分步骤。此外,处理组件401可以包括一个或多个模块,便于处理组件401和其他组件之间的交互。例如,处理组件401可以包括多媒体模块,以方便多媒体组件404和处理组件401之间的交互。

存储器402被配置为存储各种类型的数据以支持在人脸图像处理设备的操作,这些数据的示例包括用于在人脸图像处理设备上操作的任何应用程序或方法的指令。存储器402中存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器409执行,以完成上述实施例中所描述的人脸图像处理方法中的全部或者部分步骤。

电源组件403为人脸图像处理设备的各种组件提供电力。电源组件403可以包括电源管理系统,一个或多个电源,及其他与为人脸图像处理设备生成、管理和分配电力相关联的组件。

多媒体组件404包括在人脸图像处理设备和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括tp(touchpanel,触摸面板)和lcd(liquidcrystaldisplay,液晶显示器)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。

音频组件405被配置为输出和/或输入音频信号。例如,音频组件405包括一个麦克风,当人脸图像处理设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。在一些实施例中,音频组件405还包括一个扬声器,用于输出音频信号。

传感器组件407包括一个或多个传感器,用于为人脸图像处理设备提供各个方面的状态评估。例如,传感器组件407可以检测到人脸图像处理设备的打开/关闭状态,还可以检测人脸图像处理设备的温度变化。

通信组件408被配置为便于人脸图像处理设备和其他设备之间有线或无线方式的通信。人脸图像处理设备可以接入基于通信标准的无线网络,例如wi-fi(wireless-fidelity,无线网络)。

可以理解,图16所示的结构仅为示意,人脸图像处理设备该可以包括比图16中所示更多或更少的组件,或者具有与图16所示不同的组件。图16中所示的各组件均可以采用硬件、软件或者其组合来实现。

本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的人脸图像处理方法。该计算机可读存储介质可以是上述实施例中描述的人脸图像处理设备中所包含的,也可以是单独存在,而未装配入该人脸图像处理设备中。

上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1