人脸图像高光分量去除装置和方法、存储介质产品与流程

文档序号:15689941发布日期:2018-10-16 21:52阅读:342来源:国知局

本公开的实施例涉及一种人脸图像高光分量去除装置和方法、存储介质产品。



背景技术:

由于人脸的部分区域(例如,鼻尖、额头、苹果肌等区域,参见图6(a))存在油光,使得所获取的人脸图像的颜色值(例如,rgb值)不仅包括与皮肤颜色相关的漫反射分量,还会包括与在拍摄人脸图像时照射到人脸上的光源的颜色相关的非漫反射分量(也即,镜面反射分量),上述人脸图像的颜色值所包含的非漫反射分量也被称为高光分量或高光噪声。例如,在拍摄人脸图像时照射到人脸上的光源的颜色为白色的情况下,上述非漫反射分量将使得人脸图像的部分区域的颜色相比于皮肤颜色偏白。高光分量或高光噪声会影响人脸的纹理特征,并使得人脸检测或识别的性能下降。去除人脸的高光分量将有助于提升人脸图片质量以及人脸识别准确性。



技术实现要素:

本公开的一个实施例提供了一种人脸图像高光分量去除装置,该人脸图像高光分量去除装置包括全局估计模块、局部修正模块和高光分量去除模块。全局估计模块配置为基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;局部修正模块配置为基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;高光分量去除模块配置为基于修正数值去除人脸图像的高光分量。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述全局估计模块配置为基于所述图像颜色值和所述高光分量颜色值的经验值、使用非负矩阵分解法估计所述粗略数值。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,使用非负矩阵分解法估计所述粗略数值包括:基于所述图像颜色值和所述高光分量颜色值的经验值,通过迭代,最优化由所述人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数,以将所述人脸图像皮肤区域的所述图像颜色值构成的所述图像颜色值矩阵分解为所述系数矩阵和所述基矩阵的乘积,并由此获取所述粗略数值,所述全局估计模块代价函数包括稀疏性惩罚项。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述图像颜色值矩阵an,c与所述系数矩阵bn,m和所述基矩阵cm,c满足以下条件:

an,c=bn,m×cm,c

所述全局估计模块代价函数fg满足以下条件:

fg=||an,c-bn,m×cm,c||2+λ×||bn,m||

其中,λ为稀疏性系数,n为所述人脸图像皮肤区域的像素个数,c为所选用的颜色模式表示颜色值使用的颜色分量个数,m为表示任一所述颜色分量所使用的基的个数,所述m为大于2的整数。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述图像颜色值矩阵an,c与所述系数矩阵bn,m和所述基矩阵cm,c分别满足以下条件:

其中,表示高光分量颜色值的基位于所述基矩阵cm,c的第j行,所述j大于等于1、小于等于m;所述人脸图像皮肤区域的所述高光分量的所述粗略数值hg满足以下条件:

所述粗略数值hg和图像颜色值矩阵an,c的第i行分别表示人脸图像皮肤区域第i个像素的所述高光分量的所述粗略数值和所述图像颜色值,所述i大于等于1、小于等于n。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,根据所述高光分量颜色值的经验值获取所述基矩阵cm,c迭代初值中的表示所述高光分量颜色值的基。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述图像颜色值、所述高光分量颜色值和所述人脸皮肤颜色值使用所述rgb颜色模式表示,表示所述高光分量颜色值的基的设定值满足r:g:b=0.33:0.66:0.66。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,表示任一所述颜色分量所使用的所述基的个数m为5-8个。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述局部修正模块配置为基于最优化局部修正模块代价函数来获得所述高光分量的所述修正数值,所述局部修正模块代价函数包括皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述皮肤颜色值非连续惩罚项flc、所述高光分量漏检惩罚项flm和所述高光分量误报惩罚项flf分别满足如下条件:

flc=||▽(i-h)||,

flm=||w·(h-hg)||,

flf=||(1-w)·h||,

其中,h表示所述高光分量的所述修正数值,hg表示所述高光分量的所述粗略数值,w表示所述高光概率值,i表示所述人脸图像皮肤区域的所述图像颜色值。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述图像的任一像素处的所述高光概率值w满足如下条件:

其中,an,c表示所述人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵,表示对所述图像颜色值矩阵an,c每一列的最大值组成的行向量求和所获得的数值,sum(an,c,2)表示对所述图像颜色值矩阵an,c每一行求和后所获得的列向量。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,所述局部修正模块代价函数fl满足如下条件:

flc=||▽(i-h)||2+||w·(h-hg)||2+||(1-w)·h||2

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,还包括人脸检测模块,所述人脸检测模块配置为获取所述人脸图像的人脸图像皮肤区域。

例如,在本公开的一个实施例提供的人脸图像高光分量去除装置中,还包括高斯滤波模块,其中,所述高斯滤波模块配置为对所述修正数值进行高斯滤波,以获取所述高光分量的所述修正数值的高斯滤波值,并将所述高光分量的所述高斯滤波值传递给所述高光分量去除模块。

本公开的另一个实施例提供了一种人脸图像高光分量去除方法,该人脸图像高光分量去除方法包括:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,基于所述图像颜色值和所述高光分量颜色值的经验值、使用非负矩阵分解法估计所述粗略数值。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,使用非负矩阵分解法估计所述粗略数值包括:基于所述图像颜色值和所述高光分量颜色值的经验值,通过迭代,最优化由所述人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数,以将所述人脸图像皮肤区域的所述图像颜色值构成的所述图像颜色值矩阵分解为所述系数矩阵和所述基矩阵的乘积,并由此获取所述粗略数值,所述全局估计模块代价函数包括稀疏性惩罚项。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述图像颜色值矩阵an,c与所述系数矩阵bn,m和所述基矩阵cm,c满足以下条件:

an,c=bn,m×cm,c

所述全局估计模块代价函数fg满足以下条件:

fg=||an,c-bn,m×cm,c||2+λ×||bn,m||

其中,λ为稀疏性系数,n为所述人脸图像皮肤区域的像素个数,c为所选用的颜色模式表示颜色值使用的颜色分量个数,m为表示任一所述颜色分量所使用的基的个数,所述m为大于2的整数。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述图像颜色值矩阵an,c与所述系数矩阵bn,m和所述基矩阵cm,c分别满足以下条件:

其中,表示高光分量颜色值的基位于所述基矩阵cm,c的第j行,所述j大于等于1、小于等于m;所述人脸图像皮肤区域的所述高光分量的所述粗略数值hg满足以下条件:

所述粗略数值hg和图像颜色值矩阵an,c的第i行分别表示人脸图像皮肤区域第i个像素的所述高光分量的所述粗略数值和所述图像颜色值,所述i大于等于1、小于等于n。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,根据所述高光分量颜色值的经验值获取所述基矩阵cm,c迭代初值中的表示所述高光分量颜色值的基。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述图像颜色值、所述高光分量颜色值和所述人脸皮肤颜色值使用所述rgb颜色模式表示,表示所述高光分量颜色值的基的设定值满足r:g:b=0.33:0.66:0.66。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,表示任一所述颜色分量所使用的所述基的个数m为5-8个。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,基于所述高光概率值和人脸皮肤颜色值的连续特性修正所述粗略数值,以获取所述高光分量的修正数值包括:基于最优化局部修正模块代价函数来获得所述高光分量的所述修正数值,所述局部修正模块代价函数包括皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述皮肤颜色值非连续惩罚项flc、所述高光分量漏检惩罚项flm和所述高光分量误报惩罚项flf分别满足如下条件:

flc=||▽(i-h)||,

flm=||w·(h-hg)||,

flf=||(1-w)·h||,

其中,h表示所述高光分量的所述修正数值,hg表示所述高光分量的所述粗略数值,w表示所述高光概率值,i表示所述人脸图像皮肤区域的所述图像颜色值。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述图像的任一像素处的所述高光概率值w满足如下条件:

其中,an,c表示所述人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵,表示对所述图像颜色值矩阵an,c每一列的最大值组成的行向量求和所获得的数值,sum(an,c,2)表示对所述图像颜色值矩阵an,c每一行求和后所获得的列向量。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,所述局部修正模块代价函数fl满足如下条件:

flc=||▽(i-h)||2+||w·(h-hg)||2+||(1-w)·h||2

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,还包括获取所述人脸图像的人脸图像皮肤区域。

例如,在本公开的另一个实施例提供的人脸图像高光分量去除方法中,在基于所述修正数值去除所述人脸图像的所述高光分量之前,对所述修正数值进行高斯滤波,以获取所述高光分量的所述修正数值的高斯滤波值。

本公开的再一个实施例提供了一种人脸图像高光分量去除装置,该人脸图像高光分量去除装置包括处理器和存储器,存储器中存储有计算机程序指令,计算机程序指令被处理器运行时执行以下步骤:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。

本公开的再一个实施例提供了一种存储介质产品,该存储介质产品存储有计算机程序指令,计算机程序指令被处理器运行时执行以下步骤:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,并非对本公开的限制。

图1是本公开一个实施例提供的一种人脸图像高光分量去除装置的示意性框图;

图2是本公开一个实施例提供的一种将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积的示例性方法;

图3是本公开一个实施例提供的另一种人脸图像高光分量去除装置的示意性框图;

图4是本公开另一个实施例提供的一种人脸图像高光分量去除方法的流程图;

图5是本公开再一个实施例提供的一种人脸图像高光分量去除装置的示意性框图;

图6(a)是去除人脸图像高光分量之前的人脸图像;

图6(b)是去除人脸图像高光分量之后的人脸图像;以及

图7是人脸图像皮肤区域网格化的一种示例性方法。

具体实施方式

下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述参考在附图中示出并在以下描述中详述的非限制性示例实施例,更加全面地说明本公开的示例实施例和它们的多种特征及有利细节。应注意的是,图中示出的特征不是必须按照比例绘制。本公开省略了已知材料、组件和工艺技术的描述,从而不使本公开的示例实施例模糊。所给出的示例仅旨在有利于理解本公开示例实施例的实施,以及进一步使本领域技术人员能够实施示例实施例。因而,这些示例不应被理解为对本公开的实施例的范围的限制。

除非另外特别定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。此外,在本公开各个实施例中,相同或类似的参考标号表示相同或类似的构件。

发明人注意到,现有的去除人脸图像高光分量的方法主要是基于分析人脸的局部颜色来查找高光分量以消除人脸图像的高光分量。例如,现有的去除人脸图像高光分量的方法可以基于人脸图像中的颜色差异(例如,存在高光分量的区域相比于周围区域的颜偏白)获取人脸图像的每个像素存在高光分量的概率,在像素存在高光分量的概率大于某一预先设定的固定阈值的情况下,认为该像素位于高光区域中。然而,现有的去除人脸图像高光分量的方法主要存在以下的两个问题。第一,受限于基于分析人脸的局部颜色来查找高光分量的技术方案的局限性(例如,图像采集设备的非线性响应效应以及图像采集过程中的过曝现象),上述方法查找到的高光区域不准确。第二,由于上述方法基于预先设定的固定阈值判定人脸图像的各个像素是否位于高光区域,而不同人脸的高光分量大小差异较大,由此降低了上述方法的通用性。

本公开的实施例提供了一种人脸图像高光分量去除装置和方法,提升了人脸图像高光分量去除装置和方法的通用性和精确性。

本公开的至少一个实施例提供了一种人脸图像高光分量去除装置,该人脸图像高光分量去除装置包括全局估计模块、局部修正模块和高光分量去除模块。全局估计模块配置为基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;局部修正模块配置为基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;高光分量去除模块配置为基于修正数值去除人脸图像的高光分量。

例如,图1是本公开一个实施例提供的人脸图像高光分量去除装置100的示意性框图。例如,如图1所示,该人脸图像高光分量去除装置100包括全局估计模块110、局部修正模块120和高光分量去除模块130。全局估计模块110、局部修正模块120和高光分量去除模块130可以通过软件、硬件、固件或它们的任意组合实现,并且可以根据如下的描述实现,而具体实现方式(例如软件编程、fpga编程等)这里不再详述。

例如,全局估计模块110可以配置为基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值。例如,根据实际应用需求,人脸图像皮肤区域可以是人脸图像除眼球、鼻孔之外的图像区域。例如,获取人脸图像皮肤区域的具体方法可以根据经验设置,在此不再赘述。

例如,人脸图像皮肤区域的图像颜色值可以使用rgb颜色模式来描述,也即是使用分别代表红色、绿色和蓝色颜色分量的三个数值表示颜色值。例如,在使用rgb颜色模式来描述颜色值的情况下,可以使用(255,0,0)代表红色,使用(0,0,0)代表黑色,使用(255,255,255)代表白色,使用(160,32,240)代表紫色。例如,本公开将以使用rgb颜色模式为例来具体阐述相关实施例,但本公开的实施例并不限于此。

例如,全局估计模块110的估计人脸图像皮肤区域的高光分量的粗略数值的方法可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。例如,可以基于图像颜色值和高光分量颜色值的经验值、使用非负矩阵分解法估计粗略数值。

例如,可以基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化由人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数,以将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积,并由此获取粗略数值,全局估计模块代价函数例如可以包括稀疏性惩罚项。

例如,在使用非负矩阵分解法的情况下,人脸图像皮肤区域的图像颜色值可以使用图像颜色值矩阵an,c进行表示。n表示人脸图像皮肤区域的像素的个数;c为所选用的颜色模式表示颜色值使用的颜色分量个数,对于rgb颜色模式,c等于3。例如,图像颜色值矩阵an,c满足以下条件:

图像颜色值矩阵an,c的第i行表示人脸图像皮肤区域第i个像素的图像颜色值,i大于等于1、小于等于n。

例如,可以将人脸图像皮肤区域划分为多个像素(例如,n个像素),然后可以基于多个像素对应的皮肤图像的颜色值形成一个图像颜色值矩阵an,c,以作为人脸图像皮肤区域的图像颜色值。例如,将人脸图像皮肤区域划分为多个像素的方法,以及基于多个像素对应的皮肤图像的颜色值形成图像颜色值矩阵的方法可以参见本领域现有的技术方法,本公开的实施例对此不做具体限定。例如,可以将人脸图像皮肤区域网格化成如图7所示的形式,然后基于人脸皮肤区域的多个像素获取图像颜色值矩阵an,c,例如,在获取图像颜色值矩阵an,c的同时,可以记录下图像颜色值矩阵每个像素的位置信息,例如,每个像素的位置信息可以由(x,y)表示,(x,y)例如可以表示该像素位于人脸皮肤区域网格的第几行和第几列,但本公开实施例的获取图像颜色值矩阵的方法和记录像素的位置信息的方法不限于此。

例如,高光分量颜色值的经验值可以根据拍摄人脸图像时照射到人脸的光源颜色以及人脸的皮肤颜色进行设定,本公开的实施例对此不做具体限定。例如,在拍摄人脸图像时照射到人脸上的光源颜色为白色的情况下,高光分量颜色值的经验值可设定为(0.33,0.66,0.66)。

例如,基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化由图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数的具体方法可以根据实际应用需求进行选择,本申请的实施例对此不做具体限定。为便于理解,在此先阐述通过迭代获取的系数矩阵bn,m和基矩阵cm,c,迭代的具体实现方法的示例将在其后阐述。

例如,在基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化全局估计模块代价函数之后,人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵an,c可以分解为系数矩阵bn,m和基矩阵cm,c的乘积。例如,图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c可以满足以下条件:

an,c=bn,m×cm,c。

例如,m为表示任一颜色分量所使用的基的个数,m为大于2的整数。例如,表示任一颜色分量所使用的基的个数m可以为5-8范围内的任一整数,m例如可以设置为5或7。例如,将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵an,c分解为系数矩阵bn,m和基矩阵cm,c的乘积的含义是使得an,c-bn,m×cm,c尽可能的接近零,而不是仅限于an,c-bn,m×cm,c=0情形。

例如,系数矩阵bn,m和基矩阵cm,c可以分别满足以下条件:

例如,基矩阵cm,c中表示高光分量颜色值的基位于第j行,j大于等于1、小于等于m。例如,可以使用基矩阵cm,c的最后一行(也即是第m行)作为表示高光分量颜色值的基。

例如,在表示高光分量颜色值的基位于基矩阵cm,c的第j行的情况下,根据迭代获得的系数矩阵bn,m和基矩阵cm,c,人脸图像皮肤区域的高光分量的粗略数值hg可以表示为如下形式:

其中,粗略数值hg的第i行表示人脸图像皮肤区域第i个像素的高光分量的粗略数值,i大于等于1、小于等于n。

例如,为了便于理解图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c,下面将使用以下的示例对图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c做具体阐述,也即是,使用rgb颜色模式来描述颜色值、表示任一颜色分量所使用的基的个数m为5、且表示高光分量颜色值的基位于基矩阵的最后一行的示例,但本公开的实施例不限于此。例如,在满足上述情况下,图像颜色值矩阵an,3、系数矩阵bn,5和基矩阵c5,3可以具体表示为如下形式:

例如,图像颜色值矩阵an,3第n行表示图像颜色值矩阵an,3中的第n个像素的rgb值;基矩阵c5,3的第一、二、三列分别为用于表示红色、绿色、蓝色颜色分量的基;系数矩阵bn,5中第n行表示第n个像素的基对应的系数,系数矩阵bn,5中最后一列的列向量代表n个像素的高光分量的系数。例如,在通过迭代将图像颜色值矩阵an,3分解为系数矩阵bn,5和基矩阵c5,3之后,图像颜色值矩阵an,3中的第n个像素对应的皮肤图像的颜色值(rn,gn,bn)可以表示为如下形式:

rn=bn1×rc1+bn2×rc2+bn3×rc3+bn4×rc4+bng×rcg

gn=bn1×gc1+bn2×gc2+bn3×gc3+bn4×gc4+bng×gcg

bn=bn1×bc1+bn2×bc2+bn3×bc3+bn4×bc4+bng×bcg

例如,在基矩阵c5,3的第一行(rc1,gc2,bc1)表示皮肤颜色值的基,基矩阵c5,3的最后一行(rcg,gcg,bcg)表示高光分量颜色值的基的情况下,基矩阵c5,3中的第二行至第四行代表自由基。例如,对于红色颜色分量,rc1和rcg可以分别代表皮肤颜色值的基和高光分量颜色值的基,rc2、rc3和rc4可以代表红色颜色分量的自由基。

例如,图像颜色值矩阵an,3中的第n个像素对应的高光分量值可以由以下的表达式表示:

(rn,gn,bn)=(bng×rcg,bng×gcg,bng×bcg)。

由此可以获得人脸图像皮肤区域的高光分量的粗略数值。

下面将详细阐述基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化由人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数、以将人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积的具体方法。例如,如图2所示,将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积可以通过以下的步骤实现:

步骤s101:获取系数矩阵bn,m和基矩阵cm,c的初值;

步骤s102:构建全局估计模块代价函数;

步骤s103:执行迭代以最优化全局估计模块代价函数,并获取优化后的系数矩阵bn,m和基矩阵cm,c。

例如,在步骤s101中,系数矩阵bn,m的初值可以随机产生;基矩阵cm,c的表示高光分量颜色值的基的矩阵分量的初值可以由高光分量颜色值的经验值表示(例如,可以由(0.33,0.66,0.66)表示),基矩阵cm,c的除表示高光分量颜色值的基的矩阵分量的初值可以随机产生。例如,随机产生初值的方法可以参照现有的随机数产生技术,在此不再赘述。

例如,在步骤s102中,使用图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c构成全局估计模块代价函数可以根据实际应用需求进行设定,本公开的实施例对此不做具体限定。例如,全局估计模块代价函数fg可以满足以下条件:

fg=||an,c-bn,m×cm,c||2+λ×||bn,m||,

其中,λ×||bn,m||表示稀疏性惩罚项,λ为稀疏性系数,||||表示矩阵的范数。例如,稀疏性系数λ可以设置为1-10之间的任意数值,稀疏性系数λ例如可以设置为3或7。例如,||bn,m||可以表示系数矩阵bn,m的1-范数。例如,||an,c-bn,m×cm,c||2可以表示矩阵an,c-bn,m×cm,c的2-范数的平方。

例如,步骤s101和步骤s102的执行顺序可以互换,也即是,可以首先构建全局估计模块代价函数,然后再获取系数矩阵bn,m和基矩阵cm,c的初值。

例如,在步骤s103中,可以通过执行迭代以最优化全局估计模块代价函数。例如,迭代方法可以根据实际应用需求进行设定,本公开的实施例对此不做具体限定。例如,可以使用乘性迭代或最速下降法最优化(例如,最小化)全局估计模块代价函数。例如,通过最小化全局估计模块代价函数,可以使得an,c-bn,m×cm,c尽可能的接近零,由此图像颜色值构成的图像颜色值矩阵an,c可以分解为系数矩阵bn,m和基矩阵cm,c的乘积bn,m×cm,c,进而可以基于优化后的系数矩阵bn,m和基矩阵cm,c以及前述的方法获取人脸图像皮肤区域的高光分量的粗略数值。

例如,由于在表示人脸图像皮肤区域颜色值时,除使用了皮肤颜色值的基以及高光分量颜色值的基之外,还使用了自由基,使得全局估计模块110获取的人脸图像皮肤区域的高光分量的粗略数值与表示任一颜色分量所使用的基的个数m以及基矩阵中表示高光分量颜色值的基的矩阵分量的初值(也即是,高光分量颜色值的经验值)弱相关,由此可以提升人脸图像高光分量去除装置100的通用性。

例如,由于全局估计模块代价函数中包含稀疏性惩罚项λ×||bn,m||,在最小化全局估计模块代价函数之后,可以使得系数矩阵bn,m中除表示皮肤颜色值的矩阵分量以及表示高光分量粗略值的矩阵分量之外的矩阵分量(也即是,系数矩阵bn,m中对应于自由基的矩阵分量)接近于零,由此可以提升所获取的人脸图像皮肤区域的高光分量的粗略数值的准确性。

例如,局部修正模块120可以配置为基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值。例如,局部修正模块120的具体实现方式可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。

例如,可以基于高光概率值和人脸皮肤颜色值的连续特性构建局部修正模块代价函数来修正粗略数值。例如,局部修正模块120可以配置为基于最优化局部修正模块代价函数来获得高光分量的修正数值,局部修正模块代价函数包括皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项。例如,皮肤颜色值非连续惩罚项、高光分量漏检惩罚项以及高光分量误报惩罚项的具体实现方式可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。

例如,皮肤颜色值非连续惩罚项flc、高光分量漏检惩罚项flm和高光分量误报惩罚项flf可以分别满足以下条件:

flc=||▽(i-h)||,

flm=||w·(h-hg)||,

flf=||(1-w)·h||。

例如,h表示高光分量的修正数值,也即是局部修正模块120在最优化局部修正模块代价函数后输出的数值。i表示人脸图像皮肤区域的图像颜色值,例如,i可以由图像颜色值矩阵an,c表示。i-h可以表示人脸皮肤的颜色值,例如,i-h可以使用m表示。例如,||▽(i-h)||2可以表示矩阵▽(i-h)的2-范数的平方。▽表示不连续惩罚函数,例如▽对矩阵(i-h)操作可以表示使用一个像素的皮肤颜色值的4倍减去与该像素相邻的上下左右位置处的四个像素的颜色值,也即是▽(i-h)可以表示为以下形式:

▽(i-h)=▽m(x,y)=4×m(x,y)-m(x,y+1)-m(x+1,y)-m(x-1,y)。

例如,在迭代中,可以根据图像颜色值矩阵an,c、图像颜色值矩阵an,c中每个像素的位置信息以及高光分量的修正数值计算获得矩阵▽(i-h)。例如,如果一个像素的皮肤颜色值与该像素相邻的上下左右位置处的四个像素的皮肤颜色值差值较小的情况下,▽(i-h)的绝对值较小,因此,非连续惩罚项flc的数值也较小。由此,局部修正模块120可以通过最小化局部修正模块代价函数可以使得去除高光分量之后的人脸图像的颜色值具有连贯性。

例如,hg表示高光分量的粗略数值,也即是全局估计模块110输出的数值。例如,高光分量漏检惩罚项和高光分量误报惩罚项中的范数可以均表示2-范数,但本公开的实施例不限于此。

例如,w表示高光概率值,高光概率值w的具体实现方式可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。例如,图像的任一像素处的高光概率值w可以满足如下条件:

表示对图像颜色值矩阵an,c每一列的最大值组成的行向量求和所获得的数值,sum(an,c,2)表示对图像颜色值矩阵an,c每一行求和后所获得的列向量。

例如,在使用rgb颜色模式表示人脸图像皮肤区域的图像颜色值的情况下,第n列像素的高光概率值可以表示为以下形式:

rn,gn和bn分别代表第n个像素皮肤图像的红色、绿色和蓝色颜色分量值。rmax,gmax和bmax分别代表图像颜色值矩阵中代表红色、绿色和蓝色颜色值分量的列矩阵中的最大值。例如,如果一个像素的皮肤图像的红色、绿色和蓝色颜色分量值之和越大,代表该像素有更大可能性包含更大的高光分量值,也即是高光概率值w越大。

例如,在一个像素具有较大的高光概率值w、且高光分量的修正数值漏检了该像素的高光分量(例如,该像素处的高光分量的修正数值小于该像素处的高光分量的真实值),高光分量漏检惩罚项flm的数值将较大。因此,局部修正模块120可以通过最小化局部修正模块代价函数可以填补未检测出的高光分量(例如,将该像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,在一个像素具有较小的高光概率值w、且高光分量的修正数值误报了该像素的高光分量(例如,该像素处的高光分量的修正数值大于该像素处的高光分量的真实值),高光分量误报惩罚项flf的数值将较大。因此,局部修正模块120可以通过最小化局部修正模块代价函数可以抑制过高的高光分量(例如,将像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,局部修正模块代价函数fl可以满足如下条件:

flc=||▽(i-h)||2+||w·(h-hg)||2+||(1-w)·h||2

也即是,皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项的数值之和。显然,本公开的实施例不限于此,例如,在高光分量的修正数值h的误报现象比较严重的情况下,可以将局部修正模块代价函数中的高光分量误报惩罚项前乘以一个大于1的系数,该系数值例如可以为5,由此局部修正模块代价函数可以更好的修正人脸图像皮肤区域的高光分量的粗略数值,以获得更加接近高光分量真实值的高光分量修正数值。

例如,如图1所示,高光分量去除模块130可以配置为基于修正数值去除人脸图像的高光分量。例如,可以使用人脸图像的颜色值(例如,包括眼睛和鼻孔位置的人脸图像)直接减去局部修正模块120获取的高光分量的修正数值来去除人脸图像的高光分量。例如,使用人脸图像的颜色值直接减去局部修正模块120获取的高光分量的修正数值时,可以将人脸图像中的眼睛、鼻孔等部位的高光分量假定为零。

例如,如图3所示,人脸图像高光分量去除装置100还可以包括高斯滤波模块150。高斯滤波模块150可以通过软件、硬件、固件或它们的任意组合实现,并且可以根据如下的描述实现,而具体实现方式(例如软件编程、fpga编程等)这里不再详述。例如,高斯滤波模块150可以配置为对高光分量的修正数值进行高斯滤波,以获取高光分量的修正数值的高斯滤波值,并将高光分量的高斯滤波值传递给高光分量去除模块130。由此,得到的高光分量的修正数值将更加平滑,对应地,高光分量去除模块130输出的去除了高光分量后的人脸图像的颜色值的连续性可以得到进一步的提升。

例如,如图3所示,人脸图像高光分量去除装置100还可以包括人脸检测模块140,人脸检测模块140可以配置为获取人脸图像的人脸图像皮肤区域。例如,人脸检测模块140可以包括人脸位置确定单元、关键点定位单元和皮肤区域确定单元。例如,人脸位置确定单元可以确定人脸在图像中的位置;关键点定位单元可以得到人脸图像中人脸的各个关键点(例如,眼角、嘴角、鼻翼、颧骨最高点、外轮廓点等)的精确位置;皮肤区域确定单元可以通过连接关键点确定眼睛、鼻孔的位置,然后在将眼睛鼻孔去除后获取人脸图像皮肤区域。人脸检测模块140(包括人脸位置确定单元、关键点定位单元和皮肤区域确定单元等)可以通过软件、硬件、固件或它们的任意组合实现,并且可以根据如下的描述实现,而具体实现方式(例如软件编程、fpga编程等)这里不再详述。例如,该人脸检测模块140接收输入的图像,该图像例如来自图像输入装置或来自网络接口程序等,该图像输入装置例如为摄像头(例如cmos或ccd摄像头)。

例如,人脸位置确定单元和关键点定位单元可以使用现有的人脸位置确定算法和人脸关键点定位算法来实现。例如,可以预先搜集大量(例如,10000张或更多)人脸图像,人工在每张图像中标注出人脸的眼角、嘴角、鼻翼、颧骨最高点、外轮廓点等一系列关键点,然后使用机器学习算法(如深度学习,或者基于局部特征的回归算法)进行训练,从而得到人脸位置确定单元和关键点定位单元。

本公开的至少一个实施例提供了一种人脸图像高光分量去除方法,该人脸图像高光分量去除方法包括:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。

例如,图4是本公开另一个实施例提供的人脸图像高光分量去除方法的流程图。例如,如图4所示,该人脸图像高光分量去除方法可以包括以下的步骤:

步骤s10:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;

步骤s20:基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;

步骤s30:基于修正数值去除人脸图像的高光分量。

例如,在步骤s10中,根据实际应用需求,人脸图像皮肤区域可以是人脸图像除眼球、鼻孔之外的图像区域,人脸图像皮肤区域的图像颜色值可以使用rgb颜色模式来描述。例如,人脸图像皮肤区域的图像颜色值可以使用图像颜色值矩阵an,c进行表示,n表示人脸图像皮肤区域的像素的个数,c为所选用的颜色模式表示颜色值使用的颜色分量个数。例如,图像颜色值矩阵an,c满足以下条件:

图像颜色值矩阵an,c的第i行表示人脸图像皮肤区域第i个像素的图像颜色值,i大于等于1、小于等于n。例如,获取人脸图像皮肤区域的具体方法、人脸图像皮肤区域的图像颜色值的表示方法以及高光分量颜色值的经验值的设定方法可以参见本公开一个实施例提供的人脸图像高光分量去除装置,在此不再赘述。

例如,基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值的方法可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。例如,可以基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化由人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数,以将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积,并由此获取粗略数值,全局估计模块代价函数例如可以包括稀疏性惩罚项。

例如,通过迭代,最优化全局估计模块代价函数之后,人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵an,c可以分解为系数矩阵bn,m和基矩阵cm,c的乘积,具体地,图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c可以满足以下条件:

an,c=bn,m×cm,c。

例如,m为表示任一颜色分量所使用的基的个数,m为大于2的整数。由于表示颜色所使用的基的个数m大于2,因此在表示人脸图像皮肤区域的颜色值时,除了使用皮肤颜色值的基以及高光分量颜色值的基,还使用了自由基。

例如,将人脸图像皮肤区域的图像颜色值构成的图像颜色值矩阵an,c分解为系数矩阵bn,m和基矩阵cm,c的乘积的含义是使得an,c-bn,m×cm,c尽可能的接近零,而不是仅限于an,c-bn,m×cm,c=0情形。

例如,系数矩阵bn,m和基矩阵cm,c可以分别满足以下条件:

例如,表示高光分量颜色值的基位于基矩阵cm,c的第j行,j大于等于1、小于等于m。例如,在表示高光分量颜色值的基位于基矩阵cm,c的第j行的情况下,根据迭代获得的系数矩阵bn,m和基矩阵cm,c,人脸图像皮肤区域的高光分量的粗略数值hg可以表示为如下形式:

其中,粗略数值hg的第i行表示人脸图像皮肤区域第i个像素的高光分量的粗略数值,i大于等于1、小于等于n。

例如,基于图像颜色值和高光分量颜色值的经验值,通过迭代,最优化由图像颜色值矩阵、系数矩阵和基矩阵构成的全局估计模块代价函数、以将人脸图像皮肤区域的所述图像颜色值构成的图像颜色值矩阵分解为系数矩阵和基矩阵的乘积可以通过图2所示的步骤实现,也即是,获取系数矩阵bn,m和基矩阵cm,c的初值以及构建全局估计模块代价函数之后,执行迭代以最优化全局估计模块代价函数,并获取优化后的系数矩阵bn,m和基矩阵cm,c。

例如,在步骤s101中,基矩阵cm,c的表示高光分量颜色值的基的矩阵分量的初值可以由高光分量颜色值的经验值表示,基矩阵的除表示高光分量颜色值的基的矩阵分量的初值以及系数矩阵bn,m的初值可以随机产生。

例如,在步骤s102中,使用图像颜色值矩阵an,c、系数矩阵bn,m和基矩阵cm,c构成全局估计模块代价函数可以根据实际应用需求进行设定,本公开的实施例对此不做具体限定。例如,全局估计模块代价函数fg可以满足以下条件:

fg=||an,c-bn,m×cm,c||2+λ×||bn,m||,

其中,λ×||bn,m||表示稀疏性惩罚项,λ为稀疏性系数,||||表示矩阵的范数。

例如,在步骤s103中,可以通过执行迭代以最优化全局估计模块代价函数。例如,迭代方法的可以根据实际应用需求进行设定,本公开的实施例对此不做具体限定。例如,可以使用乘性迭代或最速下降法最优化(例如,最小化)全局估计模块代价函数。例如,通过最小化全局估计模块代价函数,可以使得an,c-bn,m×cm,c尽可能的接近零,由此图像颜色值构成的图像颜色值矩阵an,c可以分解为系数矩阵bn,m和基矩阵cm,c的乘积bn,m×cm,c,进而可以基于优化后的系数矩阵bn,m和基矩阵cm,c以及前述的方法获取人脸图像皮肤区域的高光分量的粗略数值。

例如,由于在表示人脸皮肤区域的颜色值时,除使用了皮肤颜色值的基以及高光分量颜色值的基之外,还使用了自由基,使得获取的人脸图像皮肤区域的高光分量的粗略数值与表示任一颜色分量所使用的基的个数m以及基矩阵中表示高光分量颜色值的基的矩阵分量的初值(也即是,高光分量颜色值的经验值)弱相关,由此可以提升人脸图像高光分量去除方法的通用性。

例如,由于全局估计模块代价函数中包含稀疏性惩罚项λ×||bn,m||,在最小化全局估计模块代价函数之后,可以使得系数矩阵bn,m中除表示皮肤颜色值的矩阵分量以及表示高光分量粗略值的矩阵分量之外的矩阵分量(也即是,系数矩阵bn,m中对应于自由基的矩阵分量)接近于零,由此可以提升所获取的人脸图像皮肤区域的高光分量的粗略数值的准确性。

例如,在步骤s20中,基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值的具体实现方法可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。

例如,可以基于高光概率值和人脸皮肤颜色值的连续特性构建局部修正模块代价函数来修正粗略数值。例如,可以基于最优化局部修正模块代价函数来获得高光分量的修正数值,局部修正模块代价函数包括皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项。例如,皮肤颜色值非连续惩罚项、高光分量漏检惩罚项以及高光分量误报惩罚项的具体实现方式可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。

例如,皮肤颜色值非连续惩罚项flc、高光分量漏检惩罚项flm和高光分量误报惩罚项flf可以分别满足以下条件:

flc=||▽(i-h)||,

flm=||w·(h-hg)||,

flf=||(1-w)·h||。

例如,h表示高光分量的修正数值。i表示人脸图像皮肤区域的图像颜色值,例如,i可以由图像颜色值矩阵an,c表示。i-h可以表示人脸皮肤的颜色值,例如,i-h可以使用m表示。例如,||▽(i-h)||2可以表示矩阵▽(i-h)的2-范数的平方。▽表示不连续惩罚函数,例如▽(i-h)可以表示使用一个像素的皮肤颜色值的4倍减去与该像素相邻的上下左右位置处的四个像素的颜色值,也即是▽(i-h)可以表示为以下形式:

▽(i-h)=▽m(x,y)=4×m(x,y)-m(x,y+1)-m(x+1,y)-m(x-1,y)。

此时,如果一个像素的皮肤颜色值与该像素相邻的上下左右位置处的四个像素的皮肤颜色值差值较小的情况下,▽(i-h)的绝对值较小,因此,非连续惩罚项flc的数值也较小。由此可以通过最小化局部修正模块代价函数可以使得去除高光分量之后的人脸图像的颜色值具有连贯性。

例如,hg表示高光分量的粗略数值。例如,w表示高光概率值,高光概率值w的具体实现方式可以根据实际应用需求进行选择,本公开的实施例对此不做具体限定。例如,图像的任一像素处的高光概率值w可以满足如下条件:

表示对图像颜色值矩阵an,c每一列的最大值组成的行向量求和所获得的数值,sum(an,c,2)表示对图像颜色值矩阵an,c每一行求和后所获得的列向量。

例如,在一个像素具有较大的高光概率值w、且高光分量的修正数值漏检了该像素的高光分量(例如,该像素处的高光分量的修正数值小于该像素处的高光分量的真实值),高光分量漏检惩罚项flm的数值将较大。因此,局部修正模块可以通过最小化局部修正模块代价函数可以填补未检测出的高光分量(例如,将像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,在一个像素具有较小的高光概率值w、且高光分量的修正数值误报了该像素的高光分量(例如,该像素处的高光分量的修正数值大于该像素处的高光分量的真实值),高光分量误报惩罚项flf的数值将较大。因此,局部修正模块可以通过最小化局部修正模块代价函数可以抑制过高的高光分量(例如,将像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,局部修正模块代价函数fl可以满足如下条件:

flc=||▽(i-h)||2+||w·(h-hg)||2+||(1-w)·h||2

也即是,皮肤颜色值非连续惩罚项、高光分量漏检惩罚项和高光分量误报惩罚项的数值之和。显然,本申请的实施例不限于此。

例如,在步骤s30中,可以基于修正数值去除人脸图像的高光分量。例如,可以使用人脸图像的颜色值直接减去局部修正模块获取的高光分量的修正数值来去除人脸图像的高光分量。例如,使用人脸图像的颜色值直接减去局部修正模块获取的高光分量的修正数值时,可以将人脸图像中的眼睛、鼻孔等部位的高光分量假定为零。

例如,在步骤s10之前,还可以获取人脸图像的人脸图像皮肤区域,获取人脸图像的人脸图像皮肤区域的方法可以参见本公开一个实施例提供的人脸图像高光分量去除装置,在此不再赘述。

例如,在步骤s20之后、步骤s30之前,还可以包括对修正数值进行高斯滤波,以获取高光分量的修正数值的高斯滤波值,然后基于高光分量的修正数值的高斯滤波值去除人脸图像的高光分量。由于高斯滤波后的高光分量的修正数值的更加平滑,去除人脸图像的高光分量后得到的人脸图像的颜色值的连续性可以得到进一步的提升。

本公开的至少一个实施例提供了一种人脸图像高光分量去除装置,该人脸图像高光分量去除装置包括处理器和存储器,存储器中存储有计算机程序指令,计算机程序指令被处理器运行时执行以下步骤:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。

例如,图5是本公开再一个实施例提供的人脸图像高光分量去除装置200的示意性框图。例如,如图5所示,该人脸图像高光分量去除装置200包括处理器210和存储器220,存储器220中存储有计算机程序指令,计算机程序指令被处理器210运行时执行以下步骤:

s201:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;

s202:基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;

s203:基于修正数值去除人脸图像的高光分量。

例如,该处理器210可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,可以x86架构或arm架构实现,例如,该处理器210可以为通用处理器,并且也可以为单片机、微处理器、数字信号处理器、专用的图像处理芯片(例如gpu)、或现场可编程逻辑阵列等。例如,该处理器210可以为单核处理器,也可以为多核处理器;该处理器210可以为单个处理器,也可以为多个处理器的组合,并且这些处理器可以布置同一地理位置,也可以布置在不同地理位置。

例如,该存储器220例如可以包括易失性存储器和/或非易失性存储器,例如可以包括只读存储器(rom)、硬盘、闪存等多种类型的存储装置或存储介质。相应地,该存储器220可以实现为一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,在所述计算机可读存储介质上可以存储一个或多个计算机程序指令。该存储器220可以为多个存储器的组合,这些存储器可以布置同一地理位置,也可以布置在不同地理位置。

例如,该处理器210可以运行所述程序指令,以实现下文所述的本公开至少一个实施例中人脸图像高光分量去除装置200的功能以及/或者其它期望的功能,例如可以估计人脸图像皮肤区域的高光分量的粗略数值、获取高光分量的修正数值等。

例如,该存储器220还可以存储其他各种应用程序和各种数据,例如,人脸图像皮肤区域的图像颜色值、高光分量颜色值的经验值以及所述应用程序使用和/或产生的各种数据等。

例如,在步骤s201中,由于在表示人脸图像皮肤区域颜色值时,除使用了皮肤颜色值的基以及高光分量颜色值的基之外,还使用了自由基,使得全局估计模块获取的人脸图像皮肤区域的高光分量的粗略数值与表示任一颜色分量所使用的基的个数以及基矩阵中表示高光分量颜色值的基的矩阵分量的初值(也即是,高光分量颜色值的经验值)弱相关,由此可以提升人脸图像高光分量去除装置200的通用性。

例如,在步骤s201中,由于全局估计模块代价函数中包含稀疏性惩罚项,在最小化全局估计模块代价函数之后,可以使得系数矩阵中除表示皮肤颜色值的矩阵分量以及表示高光分量粗略值的矩阵分量之外的矩阵分量(也即是系数矩阵中对应于自由基的矩阵分量)接近于零,由此可以提升所获取的人脸图像皮肤区域的高光分量的粗略数值的准确性。

例如,在步骤s202中,如果一个像素的皮肤颜色值与该像素相邻的上下左右位置处的四个像素的皮肤颜色值差值较小的情况下,非连续惩罚项的数值也较小。由此,局部修正模块可以通过最小化局部修正模块代价函数可以使得去除高光分量之后的人脸图像的颜色值具有连贯性。

例如,在步骤s202中,在一个像素具有较大的高光概率值w、且高光分量的修正数值漏检了该像素的高光分量(例如,该像素处的高光分量的修正数值小于该像素处的高光分量的真实值),高光分量漏检惩罚项的数值将较大。因此,局部修正模块可以通过最小化局部修正模块代价函数可以填补未检测出的高光分量(例如,将像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,在步骤s202中,在一个像素具有较小的高光概率值w、且高光分量的修正数值误报了该像素的高光分量(例如,该像素处的高光分量的修正数值大于该像素处的高光分量的真实值),高光分量误报惩罚项的数值将较大。因此,局部修正模块可以通过最小化局部修正模块代价函数可以抑制过高的高光分量(例如,将像素处的高光分量值修正为更接近高光分量真实值的数值)。

例如,步骤s201-步骤s203的具体内容可以参见本公开另一个实施例提供的人脸图像高光分量去除方法中的步骤s10-s30,在此不再赘述。

本公开的再一个实施例提供了一种存储介质产品,该存储介质产品存储有计算机程序指令,计算机程序指令被处理器运行时执行以下步骤:基于人脸图像皮肤区域的图像颜色值和高光分量颜色值的经验值估计人脸图像皮肤区域的高光分量的粗略数值;基于图像颜色值获取人脸图像皮肤区域的高光概率值,并基于高光概率值和人脸皮肤颜色值的连续特性修正粗略数值,以获取高光分量的修正数值;基于修正数值去除人脸图像的高光分量。该存储介质产品例如可以包括易失性存储器和/或非易失性存储器,例如可以包括只读存储器(rom)、硬盘、闪存等多种类型的存储装置或存储介质。

本公开的实施例提供了一种人脸图像高光分量去除装置和方法,提升了人脸图像高光分量去除装置和方法的通用性和精确性。

虽然上文中已经用一般性说明及具体实施方式,对本公开作了详尽的描述,但在本公开实施例基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本公开精神的基础上所做的这些修改或改进,均属于本公开要求保护的范围。

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