一种确定人脸图像的属性的方法和设备转让专利

申请号 : CN201410051532.8

文献号 : CN103810490B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 辛帅王勇进周玉

申请人 : 海信集团有限公司

摘要 :

本发明公开了一种确定人脸图像的属性的方法和设备,用于解决采用现有外观模型方式进行年龄估计的准确度不高的问题。方法包括:将测试图片划分成多个不重叠的子图片,并基于各子图片采用设定的算法进行处理,确定出测试图片对应的纹理特征向量;且将测试图片划分成多个具有重叠区域的分块,并基于各分块采用HOG算法进行处理,得到测试图片对应的边缘形状特征向量;并将该测试图片的纹理特征向量和边缘形状特征向量组合成该测试图片的特征向量;将该测试图片的特征向量与已存储的各特征向量进行匹配,以确定该测试图片中的人脸图像所具有的属性。

权利要求 :

1.一种确定人脸图像的属性的方法,其特征在于,该方法包括:

将测试图片划分成多个不重叠的子图片,并基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量;

将所述测试图片划分成多个具有重叠区域的分块,根据所述分块对确定人脸图像所具有的属性的贡献程度,确定所述分块对应的权重值,将所述分块的方向梯度直方图信息乘以所述分块对应的权重值;根据所述分块加权后的方向梯度直方图信息,确定每个滑动窗对应的边缘形状特征向量;以及,将每个滑动窗对应的边缘形状特征向量中的梯度矢量进行串联,得到所述测试图片对应的边缘形状特征向量,其中,所述滑动窗中包括至少两个所述分块;

将所述纹理特征向量和所述边缘形状特征向量组合后的向量进行降维处理;以及,计算降维处理后的向量的子空间,并对所述降维处理后的向量进行投影处理,得到所述测试图片的特征向量;

将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性。

2.如权利要求1所述的方法,其特征在于,基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量,包括:基于所述子图片采用局部二值模式LBP算法或基于伽柏Gabor特征的人脸识别算法进行处理,确定出所述测试图片对应的纹理特征向量。

3.如权利要求1所述的方法,其特征在于,将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性,包括:分别计算所述测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,分别计算所述测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,分别计算所述测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性。

4.如权利要求1~3任一项所述的方法,其特征在于,根据以下步骤确定已存储的各属性对应的特征向量:对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;

对于每种属性,确定该属性对应的N个样本图片对应的特征向量,计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量。

5.如权利要求1~3任一项所述的方法,其特征在于,若需要确定所述测试图片中的人脸图像所具有的年龄属性,所述方法包括:将所述测试图片进行预处理,所述预处理包括将所述测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸;

将预处理后的测试图片的特征向量与已存储的各年龄的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的年龄属性。

6.一种确定人脸图像的属性的设备,其特征在于,该设备包括:

特征提取模块,用于将测试图片划分成多个不重叠的子图片,并基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量;将所述测试图片划分成多个具有重叠区域的分块,根据所述分块对确定人脸图像所具有的属性的贡献程度,确定所述分块对应的权重值,将所述分块的方向梯度直方图信息乘以所述分块对应的权重值;

根据所述分块加权后的方向梯度直方图信息,确定每个滑动窗对应的边缘形状特征向量;

以及,将每个滑动窗对应的边缘形状特征向量中的梯度矢量进行串联,得到所述测试图片对应的边缘形状特征向量,其中,所述滑动窗中包括至少两个所述分块;并将所述纹理特征向量和所述边缘形状特征向量组合后的向量进行降维处理;以及,计算降维处理后的向量的子空间,并对所述降维处理后的向量进行投影处理,得到所述测试图片的特征向量;

特征匹配模块,用于将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性。

7.如权利要求6所述的设备,其特征在于,所述特征提取模块具体用于:

基于所述子图片采用局部二值模式LBP算法或基于伽柏Gabor特征的人脸识别算法进行处理,确定出所述测试图片对应的纹理特征向量。

8.如权利要求6所述的设备,其特征在于,所述特征匹配模块具体用于:

分别计算所述测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,分别计算所述测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,分别计算所述测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性。

9.如权利要求6~8任一项所述的设备,其特征在于,所述设备还包括:

训练模块,用于对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;

对于每种属性,确定该属性对应的N个样本图片对应的特征向量,计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量;

存储模块,用于存储所述训练模块得到的各属性对应的特征向量。

10.如权利要求6~8任一项所述的设备,其特征在于,若需要确定所述测试图片中的人脸图像所具有的年龄属性,所述设备还包括预处理模块;其中:所述预处理模块用于:将所述测试图片进行预处理,所述预处理包括将所述测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸;

所述特征匹配模块具体用于:将预处理后的测试图片的特征向量与已存储的各年龄的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的年龄属性。

说明书 :

一种确定人脸图像的属性的方法和设备

技术领域

[0001] 本发明涉及图像处理技术领域,特别涉及一种确定人脸图像的属性的方法和设备。

背景技术

[0002] 近些年来,在人脸图像研究相关的计算机视觉领域,随着人脸检测和人脸识别技术的不断发展,人脸图像的研究热点,逐渐转向了年龄估计、表情估计等更为先进的研究课题。年龄估计作为生物识别技术的一个重要领域,在身份识别、信息统计、智能化选择、人机交互、智能电视、智能手机以及娱乐应用等方面有着巨大的应用前景,所以也越来越成为研究的一个热点。
[0003] 以年龄估计为例,年龄估计是指根据模式分类的方法,利用人脸图像的特征,对个体的年龄进行估计。目前,比较常用的年龄特征提取方法主要有模拟颅面形状的人体模型、模拟人脸成长老化过程的年龄模式模型、流型模型、外观模型等。由于人在成年以后颅面的变化非常小,所以人体模型只能用于未成年的年龄估计。年龄模式模型的建立需要在很多人的一系列不同年龄阶段的图片的基础上,而大量的人脸图像的收集是一个非常困难的事情,而且该方法只提取了人脸图像的强度信息,提取到的特征精度较低,从而影响年龄估计的准确性。流型模型对训练数据的尺寸要求很高,不适用于推广使用。外观模型融合了形状纹理特征,而且训练数据不需要同一个人的多种不同年龄阶段的图片,所以具有很强的灵活性和应用前景。
[0004] 目前,现有的外观模型方式中,一般基于主动形状模型(Active Shape Model,ASM)算法提取人脸图像的特征点信息,ASM算法提取的是人脸部中各器官的指定位置点的信息,比如嘴、鼻子、眼睛、眉毛、脸部轮廓的位置信息,根据这些位置信息可以计算出人脸部的形状特征。一方面,由于在未成年时人脸部形状特征的变化比较大,到成年以后人脸部形状特征的变化比较小,因此,仅根据人脸部的形状特征对年龄进行估计,难以全面的体现各个年龄的变化,使得年龄估计的准确度较低;另一方面,ASM算法本身对人脸部特征点的定位精度不高,因此,仅根据人脸部的形状特征进行年龄估计的准确度不高。
[0005] 综上所述,采用现有外观模型方式进行年龄估计的准确度不高。

发明内容

[0006] 本发明实施例提供了一种确定人脸图像的属性的方法和设备,用于解决采用现有外观模型方式进行年龄估计的准确度不高的问题。
[0007] 一种确定人脸图像的属性的方法,该方法包括:
[0008] 将测试图片划分成多个不重叠的子图片,并基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量;且将所述测试图片划分成多个具有重叠区域的分块,并基于所述分块采用方向梯度直方图HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量;并将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量;
[0009] 将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性。
[0010] 由于本发明实施例通过对测试图片划分后的多个不重叠的子图片进行处理得到纹理特征向量,以及对测试图片划分后的多个重叠的分块进行HOG处理得到边缘形状特征向量,从而得到该测试图片的特征向量,能够提高人脸图像的属性估计的准确度,提高人脸图像的属性估计的处理效率。
[0011] 在实施中,基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量,包括:
[0012] 基于所述子图片采用局部二值模式LBP算法或基于伽柏Gabor特征的人脸识别算法进行处理,确定出所述测试图片对应的纹理特征向量。
[0013] 在实施中,将所述测试图片划分成多个具有重叠区域的分块,并基于所述分块采用HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量,包括:
[0014] 计算所述测试图片中每个像素点的梯度方向值;
[0015] 根据每个分块所包含的各像素点的梯度方向值,确定每个分块对应的方向梯度直方图信息,以形成每个分块对应的边缘形状特征向量;
[0016] 确定划分后的测试图片的多个滑动窗,将每个滑动窗内包含的分块的边缘形状特征向量进行串联,得到每个滑动窗对应的边缘形状特征向量,其中,每个滑动窗覆盖至少两个所述分块;
[0017] 将每个滑动窗的边缘形状特征向量进行串联,得到所述测试图片对应的边缘形状特征向量。
[0018] 基于上述任一实施例,将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量,具体包括:
[0019] 将所述纹理特征向量和所述边缘形状特征向量组合后的向量进行降维处理;以及,
[0020] 计算降维处理后的向量的子空间,并对所述降维处理后的向量进行投影处理,得到所述测试图片的特征向量。
[0021] 基于上述任一实施例,将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性,包括:
[0022] 分别计算所述测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0023] 分别计算所述测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0024] 分别计算所述测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性。
[0025] 基于上述任一实施例,根据以下步骤确定已存储的各特征向量:
[0026] 对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;
[0027] 对于每种属性,确定该属性对应的N个样本图片对应的特征向量,计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量。
[0028] 基于上述任一实施例,若需要确定所述测试图片中的人脸图像所具有的年龄属性,所述方法包括:
[0029] 将所述测试图片进行预处理,所述预处理包括将所述测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸;
[0030] 将预处理后的测试图片的特征向量与已存储的各年龄的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的年龄属性。
[0031] 一种确定人脸图像的属性的设备,该设备包括:
[0032] 特征提取模块,用于将测试图片划分成多个不重叠的子图片,并基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量;且,将所述测试图片划分成多个具有重叠区域的分块,并基于所述分块采用方向梯度直方图HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量;并将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量;
[0033] 特征匹配模块,用于将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性。
[0034] 由于本发明实施例提供的设备通过对测试图片划分后的多个不重叠的子图片进行处理得到纹理特征向量,以及对测试图片划分后的多个重叠的分块进行HOG处理得到边缘形状特征向量,从而得到该测试图片的特征向量,从而能够提高人脸属性估计的准确度,提高人脸属性估计的处理效率。
[0035] 在实施中,所述特征提取模块具体用于:
[0036] 基于所述子图片采用局部二值模式LBP算法或基于伽柏Gabor特征的人脸识别算法进行处理,确定出所述测试图片对应的纹理特征向量。
[0037] 在实施中,所述特征提取模块将所述测试图片划分成多个具有重叠区域的分块,并基于所述分块采用HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量,包括:
[0038] 计算所述测试图片中每个像素点的梯度方向值;根据每个分块所包含的各像素点的梯度方向值,确定每个分块对应的方向梯度直方图信息,以形成每个分块对应的边缘形状特征向量;确定划分后的测试图片的多个滑动窗,将每个滑动窗内包含的分块的边缘形状特征向量进行串联,得到每个滑动窗对应的边缘形状特征向量,其中,每个滑动窗覆盖至少两个所述分块;将每个滑动窗的边缘形状特征向量进行串联,得到所述测试图片对应的边缘形状特征向量。
[0039] 基于上述任一实施例,所述特征提取模块将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量,包括:
[0040] 将所述纹理特征向量和所述边缘形状特征向量组合后的向量进行降维处理;以及,计算降维处理后的向量的子空间,并对所述降维处理后的向量进行投影处理,得到所述测试图片的特征向量。
[0041] 基于上述任一实施例,所述特征匹配模块具体用于:
[0042] 分别计算所述测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0043] 分别计算所述测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0044] 分别计算所述测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性。
[0045] 基于上述任一实施例,该设备还包括:
[0046] 训练模块,用于对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;对于每种属性,确定该特征对应的N个样本图片对应的特征向量,计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量;
[0047] 存储模块,用于存储所述训练模块得到的各属性对应的特征向量。
[0048] 基于上述任一实施例,若需要确定所述测试图片中的人脸图像所具有的年龄属性,所述设备还包括预处理模块;其中:
[0049] 预处理模块用于:将所述测试图片进行预处理,所述预处理包括将所述测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸;
[0050] 特征匹配模块具体用于:将预处理后的测试图片的特征向量与已存储的各年龄的特征向量进行匹配,确定该测试图片中的人脸图像所具有的年龄属性。

附图说明

[0051] 图1为本发明提供的确定人脸图像的属性的方法的流程示意图;
[0052] 图2为本发明实施例提供的确定人脸图像的属性的方法中的预处理前后的效果示意图;
[0053] 图3为本发明实施例提供的确定人脸图像的属性的方法中得到的子图片的示意图;
[0054] 图4A为本发明实施例提供的第一种滑动窗的示意图;
[0055] 图4B为本发明实施例提供的第二种滑动窗的示意图;
[0056] 图5为本发明提供的确定人脸图像的属性的设备的示意图。

具体实施方式

[0057] 本发明通过对测试图片划分后的多个不重叠的子图片进行LBP处理得到该测试图片的纹理特征向量,以及对测试图片划分后的多个重叠的分块进行HOG处理得到该测试图片的边缘形状特征向量,从而得到该测试图片的特征向量,并根据测试图片的特征向量进行属性估计,提高了属性估计的准确度。
[0058] 下面结合说明书附图对本发明实施例作进一步详细描述。应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。
[0059] 参见图1所示,本发明实施例提供的一种确定人脸图像的属性的方法,该方法包括以下步骤:
[0060] 步骤11、将测试图片划分成多个不重叠的子图片,并基于子图片采用设定的算法进行处理,确定出测试图片对应的纹理特征向量;且,将测试图片划分成多个具有重叠区域的分块,并基于分块采用方向梯度直方图(Histogram Of Gradient,HOG)算法进行处理,得到测试图片对应的边缘形状特征向量;以及将测试图片的纹理特征向量和边缘形状特征向量组合成该测试图片的特征向量。
[0061] 本步骤中,优选的,该设定的算法为局部二值模式(Local Binary Pattern,LBP)算法或基于伽柏Gabor特征的人脸识别算法。
[0062] 本步骤中包括两种对测试图片的处理:一是采用设定的算法(如LBP算法或基于Gabor特征的人脸识别算法)确定出测试图片对应的纹理特征向量,二是采用HOG算法进行的处理,本步骤不对上述两个处理过程的顺序进行限定,可以先采用设定的算法确定出测试图片对应的纹理特征向量,再采用HOG算法对测试图片进行处理,得到测试图片对应的边缘形状特征向量;也可以先采用HOG算法对测试图片进行处理,得到测试图片对应的边缘形状特征向量,再采用设定的算法确定出测试图片对应的纹理特征向量。
[0063] 本步骤中,将测试图片的纹理特征向量和边缘形状特征向量组合成该测试图片的特征向量的方式有很多种,最简单的方式就是将测试图片的纹理特征向量中的元素和边缘形状特征向量中的元素串联在一起,形成新的向量即为该测试图片的特征向量。当然,本发明实施例也可以采用其他方式将测试图片的纹理特征向量和边缘形状特征向量进行组合。
[0064] 步骤12、将该测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定该测试图片中的人脸图像所具有的属性。
[0065] 本步骤中,将该测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定该测试图片中的人脸图像所具有的属性,其中,已存储的各属性对应的特征向量的确定过程与测试图片的特征向量的确定过程类似,每个特征对应一个特征向量,将测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,就可以确定出该测试图片中的人脸图像所具有的属性。
[0066] 本发明实施例适用于确定测试图片中的人脸图像所具有的年龄、表情、性别等属性。
[0067] 本发明实施例中,将测试图片划分成多个不重叠的子图片,并基于设定的算法进行处理,确定出测试图片对应的纹理特征向量;且,将测试图片划分成多个具有重叠区域的分块,并基于分块采用HOG算法进行处理,得到测试图片对应的边缘形状特征向量;将测试图片的纹理特征向量和边缘形状特征向量组合成该测试图片的特征向量;以及将该测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定测试图片中的人脸图像所具有的属性,由于本发明实施例通过对测试图片划分后的多个不重叠的子图片进行处理得到该测试图片的纹理特征向量,以及对测试图片划分后的多个重叠的分块进行HOG处理得到该测试图片的边缘形状特征向量,从而得到该测试图片的特征向量,从而能够提高人脸属性估计的准确度,提高人脸属性估计的处理效率。
[0068] 现有技术中,对于年龄估计来说,一般是基于主动形状模型提取到的特征点(如鼻子、眼睛、嘴巴、眉毛等五官)的位置信息的关系来粗略的判断目标属于成人还是儿童,但是如果人脸的角度发生变化,形状特征也会发生变化,采用现有技术,对估计年龄不够准确。本发明不仅提取基于子图片的人脸图像的纹理特征,还提取基于分块的方向梯度直方图特征来提取边缘形状信息,不仅快速而且能提取局部信息,对人脸没有对齐的情况也有很好的鲁棒性。
[0069] 在实施中,若需要确定测试图片中的人脸图像所具有的年龄属性,则该方法在步骤11之前,还包括:
[0070] 步骤10、对测试图片进行预处理,该预处理包括将测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸。
[0071] 本发明通过实验测试发现,对于人脸图像来说,纯脸部的区域对确定人脸图像所具有的年龄属性是有贡献的,而其余的区域(如发型、装饰等)会对确定人脸图像所具有的年龄属性产生负面影响,因此,步骤10中在获取到测试图片后,先对测试图片进行预处理,按照检测出的人脸的比例和位置裁剪出纯脸部区域,如图2所示,获取到的测试图片为A,经预处理后,裁剪出纯脸部区域为B。
[0072] 本发明实施例中,在步骤10之前,该方法还包括:将测试图片转换成灰度图;或者,在步骤10之后,该方法还包括:将裁剪后的测试图片转换成灰度图。
[0073] 本步骤中,测试图片可以是用户发送的图片(用户可以通过网络或直接输入的方式提供测试图片),也可以是通过自身的图像采集装置采集到的人脸图像。
[0074] 本步骤中,将裁剪后的测试图片设置成设定的尺寸,以使该剪裁后的测试图片的大小能与已存储的各特征向量对应的样本图片的大小相匹配,以提高属性估计的精度。
[0075] 相应的,步骤11中对测试图片的特征提取过程都是基于上述预处理后的测试图片进行的。
[0076] 基于上述任一实施例,以LBP算法为例,本发明实施例中,将测试图片划分成多个不重叠的子图片,并基于子图片采用设定的算法进行处理,确定出测试图片对应的纹理特征向量,具体过程如下:
[0077] 先将测试图片划分成多个不重叠的子图片,如图3所示,优选的,所划分的每个子图片均包含人脸的一个特征(如眉毛、眼睛、鼻子、嘴巴等);然后,基于所划分的子图片,采用LBP算法进行处理,得到各子图片所包含的各像素点的LBP值,将该子图片所包含的各像素点的LBP值进行串联,得到该子图片的纹理特征向量;再将各子图片的纹理特征向量进行串联,得到测试图片对应的纹理特征向量,即该纹理特征向量包含每个子图片的每个像素点对应的LBP值。
[0078] 其中,LBP算法的主要思想是:对于每个子图片中的像素点来说,我们根据与该像素点相邻的8个像素点的灰度值以及该像素点的灰度值,确定该像素点对应的LBP值,从而确定每个子图片中各像素点的LBP值。举例说明,以某一个像素点为例进行说明,假设该像素点与该像素点相邻的8个像素点的灰度值如表1所示:
[0079] 表1
[0080]6 5 2
7 6 1
9 8 7
[0081] 表1为一个3*3的窗口,每个窗口内的值代表相应的像素点的灰度值,中心像素点的灰度值为6,将该中心像素点的灰度值与其周围的8个像素点的像素值进行比较,即将7、9、8、7、1、2、5、6分别与6做比较,若大于6,则将相应的窗口对应的值记为1,若小于6,则将相应的窗口对应的值记为0,从而得到表2所示的窗口:
[0082] 表2
[0083]1 0 0
1   0
1 1 1
[0084] 然后,按一定的方向(如逆时针方向,此处不对所选的方向及起始点进行限定,只要保证每次的处理(包括对测试图片的处理以及对样本图片的处理)都选择同样的方向及起始点即可)把这些1和0连起来就得到了二进制码:11110001,最后将这个二进制码转换为十进制,即241,该十进制的值即为中心像素点对应的LBP值;按照上述方法得到每个子图片内的每个像素点对应的LBP值。
[0085] 在实施中,由于人脸中不同特征(如眼睛、鼻子、嘴巴、下巴等)对确定人脸图像所具有的属性的贡献程度是不同的,优选的,步骤12中,将测试图片划分成多个不重叠的子图片,并基于各子图片采用设定的算法进行处理,确定出该测试图片对应的纹理特征向量,包括:
[0086] 根据各子图片对确定人脸图像所具有的属性的贡献程度,确定各子图片对应的权重值,将各子图片的纹理特征向量中各元素乘以该子图片对应的权重值,并将各子图片加权后的纹理特征向量进行串联,得到该测试图片对应的纹理特征向量。
[0087] 具体的,上述加权过程中,为每个子图片设置权重的方法:计算每一子图片的属性的识别率,其中,识别率越高说明该子图片中所包含的人脸区域对确定人脸图像所具有的属性的贡献越大,则相应的权重值越高。比如,眼睛这一块的识别率为60%,那么可将其权重设为0.6,而下巴这一块的识别率为40%,那么可将其权重设置为0.4,等等。
[0088] 上述处理过程中,不对所划分的子图片的数量进行限定,可以根据测试图片的大小和人脸各特征的分布确定所划分的子图片的数量;也不对所划分的子图片的大小进行限定,所划分出的所有子图片的大小可以都相同,也可以部分相同,也可以都不相同;但是需要保证所有的测试图片和样本图片采用相同的划分方式(即划分的子图片的数量和大小)划分子图片。
[0089] 本发明实施例中,在采用设定的算法(如LBP算法或基于Gabor特征的人脸识别算法)进行处理时,基于所划分的子图片进行处理,由于每一子图片均是脸部的一个区域,如果人脸稍微歪斜,每个子图片中的特征都不会发生很大的变化,从而能够对人脸的形变和未对齐情况有很好的鲁棒性。
[0090] 在实施中,步骤11中,将测试图片划分成多个具有重叠区域的分块,并基于分块采用HOG算法进行处理,得到测试图片对应的边缘形状特征向量,包括以下过程:
[0091] 计算测试图片中每个像素点的梯度方向值;
[0092] 根据每个分块所包含的各像素点的梯度方向值,确定每个分块对应的方向梯度直方图信息,以形成每个分块对应的边缘形状特征向量;
[0093] 确定划分后的测试图片的多个滑动窗,将每个滑动窗内包含的分块的边缘形状特征向量进行串联,得到每个滑动窗对应的边缘形状特征向量,其中,每个滑动窗覆盖至少两个分块;
[0094] 将每个滑动窗的边缘形状特征向量进行串联,得到测试图片对应的边缘形状特征向量。
[0095] 上述HOG处理过程中,将测试图片划分成多个具有重叠区域的分块,其中,任一分块与至少一个其他分块具有重叠区域,且任意两个分块不完全覆盖。
[0096] 上述HOG处理过程中,计算预处理后的测试图片中每个像素点的梯度方向值,目的是为了捕获测试图片的轮廓信息,同时也可以进一步弱化光照的干扰。优选的,可以采用以下公式计算预处理后的测试图片中每个像素点的梯度方向值:
[0097]
[0098] 其中,α(x,y)是该子图片中坐标(x,y)处的像素点的梯度矢量的方向角;公式中的Gx(x,y)=H(x+1,y)-H(x-1,y),Gy(x,y)=H(x,y+1)-H(x,y-1),H(x,y)为坐标(x,y)处的像素点的像素值,Gx(x,y),Gy(x,y)分别是坐标(x,y)处的像素点在水平方向、垂直方向的梯度大小。
[0099] 当然,本发明实施例并不限于采用上述公式计算处理后的测试图片中每个像素点的梯度方向值,只要能够计算出处理后的测试图片中每个像素点的梯度方向值的HOG算法中的公式都可以应用于本发明。
[0100] 上述HOG处理过程中,优选的,在进行分块处理之前,该方法还包括:对测试图片进行颜色空间的标准化,以调节测试图片的对比度,降低图像局部的阴影和光照变化所造成的影响,同时还可以抑制噪音的干扰。优选的,可以采用Gamma校正法对测试图片进行颜色空间的标准化。当然,本发明实施例不对颜色空间的标准化所采用的方法进行限定,也可以采用其他方式对测试图片进行颜色空间的标准化。
[0101] 上述HOG处理过程中,将测试图片划分成多个具有重叠区域的分块,从而使获取到的测试图片的边缘形状特征向量所包含的元素更多,进而提高了鲁棒性。其中,在进行分块时,包括以下三种不同的划分方式:
[0102] 方式1、同一行所包含的各相邻的分块之间具有重叠区域,而各列所包含的分块之间不重叠。
[0103] 方式2、同一列所包含的各相邻的分块之间具有重叠区域,而各行所包含的分块之间不重叠。
[0104] 方式3、同一行所包含的各相邻的分块之间具有重叠区域,且同一列所包含的各相邻的分块之间也具有重叠区域。
[0105] 上述HOG处理过程中,将每至少两个分块组成一个滑动窗,每个滑动窗内所包含的分块的数量相等,从而将划分成的多个分块进一步又划分成多个滑动窗,其中,相邻滑动窗之间也具有重叠区域,从而进一步增加了测试图片的边缘形状特征向量所包含的元素的数量,提高了鲁棒性。
[0106] 优选的,在确定滑动窗时,可以采用以下任一方式:
[0107] 方式一、相邻的滑动窗不包含相同且完整的分块;
[0108] 举例说明,以采用方式1划分分块为例,如图4A所示,假设每行划分为四个分块,相邻的分块具有一定的重叠区域,一共划分为三行;假设每个滑动窗包含两个相邻的分块,则第一行的第一个滑动窗(即滑动窗1)包含分块1和分块2,第一行的第二个滑动窗(即滑动窗2)包含分块3和分块4,依次类推,即相邻的滑动窗不包含相同且完整的分块。
[0109] 方式二、相邻的滑动窗包含至少一个相同且完整的分块;
[0110] 举例说明,仍以采用方式1划分分块为例,如图4B所示,假设每行划分为四个分块,相邻的分块具有一定的重叠区域,一共划分为三行;假设每个滑动窗包含两个相邻的分块,则第一行的第一个滑动窗(即滑动窗1)包含分块1和分块2,第一行的第二个滑动窗(即滑动窗2)包含分块2和分块3,第一行的第三个滑动窗(即滑动窗3)包含分块3和分块4,依次类推,可以看出,滑动窗1和滑动窗2均包含完整的分块2,而滑动窗2和滑动窗3均包含完整的分块3。
[0111] 在实施中,由于人脸中不同特征(如眼睛、鼻子、嘴巴、下巴等)对确定人脸图像所具有的属性的贡献程度是不同的,优选的,步骤12中,将测试图片划分成多个具有重叠区域的分块,并基于各分块采用HOG算法进行处理,得到测试图片对应的边缘形状特征向量,包括:
[0112] 根据各分块对确定人脸图像所具有的属性的贡献程度,确定各分块对应的权重值,将各分块的方向梯度直方图信息乘以该分块对应的权重值;根据各分块加权后的方向梯度直方图信息,形成每个滑动窗对应的边缘形状特征向量;以及,将每个滑动窗对应的边缘形状特征向量中的梯度矢量进行串联,形成测试图片对应的边缘形状特征向量。
[0113] 具体的,上述加权过程中,为每个分块设置权重的方法:计算每一分块的属性的识别率,其中,识别率越高说明该分块中所包含的人脸区域对确定人脸图像所具有的属性的贡献越大,则相应的权重值越高。比如,眼睛这一块的识别率为60%,那么可将其权重设为0.6,而下巴这一块的识别率为40%,那么可将其权重设置为0.4,等等。
[0114] 上述HOG处理过程中,不对所划分的分块的数量进行限定,可以根据测试图片的大小和人脸各特征的分布确定所划分的分块的数量;也不对所划分的分块的大小进行限定,所划分出的所有分块的大小可以都相同,也可以部分相同,也可以都不相同;但是需要保证所有的测试图片和样本图片采用相同的划分方式(即划分的分块的数量和大小)划分分块。
[0115] 基于上述任一实施例,由于提取的特征向量基于子图片和滑动窗,两个特征向量(即纹理特征向量和边缘形状特征向量)组合后的向量的维数比较大,优选的,将该测试图片的纹理特征向量和边缘形状特征向量组合成该测试图片的特征向量,具体包括:
[0116] 将得到的该测试图片的纹理特征向量和边缘形状特征向量组合后的向量进行降维处理;以及,
[0117] 计算降维处理后的向量的子空间,并对该降维处理后的向量进行投影处理,得到该测试图片的特征向量。
[0118] 上述处理过程中,本发明实施例不对降维处理所使用的算法进行限定,只要保证每次降维处理均采用相同的算法即可,常用的降维处理算法包括线性降维算法(Principal Component Analysis,PCA)等;本发明实施例也不对计算向量的子空间的算法进行限定,只要保证每次处理时采用相同的算法即可,常用的计算向量的子空间的算法包括线性决策分析(Linear Discriminate Analysis,LDA)算法等。
[0119] 基于上述任一实施例,本发明实施例中,已存储的各属性对应的特征向量中,每个属性对应一个特征向量,根据以下步骤确定各特征向量:
[0120] 对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;
[0121] 对于每个属性,确定该属性对应的N个样本图片对应的特征向量(每个样本图片对应的特征向量的确定过程与上述确定测试图片对应的特征向量的处理过程相似,此处不再赘述),计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量。
[0122] 本发明实施例中已存储的各属性对应的特征向量确定过程中,可以通过网络渠道收集大量的样本图片,每个属性的范围都有覆盖,每个属性对应的样本图片数量相同,从而能够避免由于数据分布不均而影响属性估计结果。并且,由于得到的各属性对应的特征向量是该属性对应的N个样本图片对应的特征向量的平均向量,从而能有效避免长相相似的样本图片对属性估计结果的影响。另外,由于本发明实施例中已存储的各属性对应的特征向量中,每个属性对应一个特征向量,从而有效降低了数据库的存储量,使样本数据的收集简单可行。
[0123] 以年龄估计为例,由于同一个人在不同年龄的样本图片收集比较困难,因此,有效的年龄特征提取是采用多个人的相同年龄的图片来提取该年龄对应的特征,本发明实施例融合了基于子图片的局部二值模式LBP和基于滑动窗的方向梯度直方图HOG特征提取样本图片的特征向量,能够反映出该年龄对应的样本图片的纹理特征和边缘形状信息,而且该特征向量的计算速度比较快,能够适应实时的要求。
[0124] 举例说明,若为确定人脸图像所具有的年龄属性,则每个年龄属性对应一个特征向量;若为确定人脸图像所具有的表情属性,则每个表情(如笑脸、哭脸等)属性对应一个特征向量;若为确定人脸图像所具有的性别属性,则每个性别属性对应一个特征向量,等等。
[0125] 基于上述任一实施例,在实施中,步骤12中,将测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定测试图片中的人脸图像所具有的属性,可以按照以下两种方式中的任一方式进行处理:
[0126] 方式A、分别计算测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为该测试图片中的人脸图像所具有的属性。
[0127] 该方式下,需要计算该测试图片的特征向量与数据库中已存储的每个特征向量的距离,将计算出的最小距离值对应的数据库中的特征向量对应的属性作为该测试图片中的人脸图像所具有的属性。
[0128] 该方式还可以采用:按照设定的顺序,依次计算测试图片对应的特征向量与已存储的各特征向量的距离,直至计算出的距离值小于设定的阈值,并将小于阈值的距离值对应的已存储的特征向量对应的属性确定为该测试图片中的人脸图像所具有的属性。
[0129] 方式B、分别计算测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为该测试图片中的人脸图像所具有的属性。
[0130] 方式C、分别计算测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为该测试图片中的人脸图像所具有的属性。
[0131] 上述方法处理流程可以用软件程序实现,该软件程序可以存储在存储介质中,当存储的软件程序被调用时,执行上述方法步骤。
[0132] 基于同一发明构思,本发明实施例中还提供了一种确定人脸图像的属性的设备,由于该设备解决问题的原理与上述确定人脸图像的属性的方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
[0133] 参见图5所示,本发明实施例提供了一种确定人脸图像的属性的设备,该设备包括:
[0134] 特征提取模块51,用于将测试图片划分成多个不重叠的子图片,并基于所述子图片采用设定的算法进行处理,确定出所述测试图片对应的纹理特征向量;且,将所述测试图片划分成多个具有重叠区域的分块,并基于所述分块采用方向梯度直方图HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量;并将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量;
[0135] 特征匹配模块52,用于将所述测试图片的特征向量与已存储的各属性对应的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的属性。
[0136] 在实施中,特征提取模块51具体用于:基于所述子图片采用LBP算法或基于Gabor特征的人脸识别算法进行处理,确定出所述测试图片对应的纹理特征向量。
[0137] 在实施中,由于人脸中不同特征(如眼睛、鼻子、嘴巴、下巴等)对确定人脸图像所具有的属性的贡献程度是不同的,优选的,特征提取模块51中,将测试图片划分成多个不重叠的子图片,并基于各子图片采用设定的算法进行处理,确定出该测试图片对应的纹理特征向量,包括:
[0138] 根据各子图片对确定人脸图像所具有的属性的贡献程度,确定各子图片对应的权重值,将各子图片的纹理特征向量中各元素乘以该子图片对应的权重值,并将各子图片加权后的纹理特征向量进行串联,得到该测试图片对应的纹理特征向量。
[0139] 在实施中,特征提取模块51将测试图片划分成多个具有重叠区域的分块,并基于所述分块采用HOG算法进行处理,得到所述测试图片对应的边缘形状特征向量,包括:
[0140] 计算所述测试图片中每个像素点的梯度方向值;根据每个分块所包含的各像素点的梯度方向值,确定每个分块对应的方向梯度直方图信息,以形成每个分块对应的边缘形状特征向量;确定划分后的测试图片的多个滑动窗,将每个滑动窗内包含的分块的边缘形状特征向量进行串联,得到每个滑动窗对应的边缘形状特征向量,其中,每个滑动窗覆盖至少两个所述分块;将每个滑动窗的边缘形状特征向量进行串联,得到所述测试图片对应的边缘形状特征向量。
[0141] 基于上述任一实施例,由于人脸中不同特征(如眼睛、鼻子、嘴巴、下巴等)对确定人脸图像所具有的属性的贡献程度是不同的,优选的,特征提取模块51中将测试图片划分成多个具有重叠区域的分块,并基于各分块采用HOG算法进行处理,得到该测试图片对应的边缘形状特征向量,包括:
[0142] 根据各分块对确定人脸图像所具有的属性的贡献程度,确定各分块对应的权重值,将各分块的梯度直方图特征向量中各元素乘以该分块对应的权重值;根据各分块加权后的梯度直方图特征向量,形成每个滑动窗对应的方向梯度直方图特征向量;以及,将每个滑动窗对应的方向梯度直方图特征向量中的梯度矢量进行串联,形成所述测试图片对应的边缘形状特征向量。
[0143] 基于上述任一实施例,特征提取模块51中将所述纹理特征向量和所述边缘形状特征向量组合成所述测试图片的特征向量,包括:
[0144] 将所述纹理特征向量和所述边缘形状特征向量组合后的向量进行降维处理;以及,计算降维处理后的向量的子空间,并对所述降维处理后的向量进行投影处理,得到所述测试图片的特征向量。
[0145] 基于上述任一实施例,特征匹配模块52具体用于:
[0146] 分别计算所述测试图片的特征向量与已存储的各特征向量的距离,将最小距离值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0147] 分别计算所述测试图片的特征向量与已存储的各特征向量的相关系数,将最大相关系数值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性;或者,
[0148] 分别计算所述测试图片的特征向量与已存储的各特征向量的余弦夹角,将最大夹角值对应的已存储的特征向量对应的属性确定为所述测试图片中的人脸图像所具有的属性。
[0149] 基于上述任一实施例,该设备还包括:
[0150] 训练模块53,用于对于不同的属性,均选取N个不同的样本图片,N为大于等于2的正整数;对于每种属性,确定该属性对应的N个样本图片对应的特征向量,计算该N个样本图片对应的特征向量的平均向量,将得到的平均向量作为该属性对应的特征向量;
[0151] 存储模块54,用于存储训练模块53得到的各属性对应的特征向量。
[0152] 其中,对于每个特征,训练模块53确定每个属性对应的N个样本图片对应的特征向量的过程与上述特征提取模块51对测试图片的特征向量的确定过程相似,此处不再赘述。
[0153] 基于上述任一实施例,若需要确定所述测试图片中的人脸图像所具有的年龄属性,所述设备还包括预处理模块50;其中:
[0154] 预处理模块50用于:将测试图片进行预处理,该预处理包括将所述测试图片裁剪为仅包含人脸部区域,并将裁剪后的测试图片设置成设定的尺寸;
[0155] 特征匹配模块52具体用于:将预处理后的测试图片的特征向量与已存储的各年龄的特征向量进行匹配,以确定所述测试图片中的人脸图像所具有的年龄属性。
[0156] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0157] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0158] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0159] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0160] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0161] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。