结合形状特征的稀疏表示人脸识别方法
技术领域
本发明属于图像处理、计算机视觉、模式识别技术领域,特别涉及人脸识别方法。
背景技术
生物特征识别技术是身份识别的有效技术,近来发展最快的是人脸识别技术以及与人脸识别技术相融合的生物特征识别技术。
目前已有的人脸识别方法主要是对整个人脸进行识别的,而在诸多的识别方法中,主要采用主分量分析(PCA-Principal Component Analysis)、弹性匹配、神经网络、几何特征等方法。
同时,人脸识别的难点还在于:
(1)表情引起的人脸塑性变形
(2)姿态引起的人脸多样性
(3)年龄引起的人脸变化
(4)发型、胡须、眼镜、化装等因素引起的人脸模式的多重性
(5)光照的角度、强度以及传感器特性等因素引起的人脸图像的差异性
诸多的因素使得人脸识别成为一项棘手而富挑战性的课题,也因此在近年成为科研的热点。
目前已有的一种基于稀疏表示的人脸识别方法:其主要特点是将稀疏信号表示这一新理论应用于人脸识别。该方法首先假设待识别的人脸可以由训练集中该类别的人脸线性表示,利用这一假设,通过计算L1范数最小值求得稀疏表达。该方法具体包括以下步骤:
1)对于训练集中每一幅人脸图像进行处理,提取特征向量,将训练集的所有特征向量排列形成特征矩阵A,将特征矩阵中的一行或多行作为训练集的一个类别,一个类别对应训练集的一个人的多幅人脸图像;
2)对于待识别的人脸图像按照同样的方法提取特征向量y;
3)将待识别人脸图像的特征向量用训练集图像的特征向量线性表示,求出线性表示的系数;(由于这种线性表示的系数具有多样性)计算如下L1范数最小值问题,选择其中L1范数最小的系数作为线性表示的系数
满足||y-Ax||2≤ε (1)
其中ε为预设的误差,||y-Ax||2为向量y-Ax的L2范数;
4)对于训练集的每一类别i=1,…,k(k为训练集的类别数),根据步骤3)得到的系数按照公式(2)计算对应于该类别的残差ri(y);
其中,
对于第i类,δ
i(x)=x;对于其他类,δ
i(x)=0;
5)比较步骤4)求出每一类的对应残差,残差的最小值对应的训练集的类别作为待识别人的识别结果。
该方法对人脸光照和表情的变化具有鲁棒性,但是对图像的配准有较高的要求。当图像之间的配准有几个像素的偏差时,它的性能就会受到很大的影响。
与本发明相关的已有技术说明如下:
人脸检测:利用Real Adaboost方法与新的特征定义形式以及构造方式得到层次型检测器,并选择计算次数少的特征作为候选特征以提高检测速度。
人脸关键特征点的提取:其主要特点是利用SUSAN算子提取边缘,并与方向积分投影方法结合,获得眼球、鼻尖、下巴四个关键特征点位置。实验结果表明,该方法平均定位准确率在95%以上。
主动形状模型(ASM):它是一种基于模型的特征点匹配方法,它既可以灵活的改变模型的形状,以适应目标形状不确定的特性,又将形状的变化限制在模型允许的范围之内,从而保证模型改变时,不会受各种因素影响而出现不合理的形状。ASM方法首先针对特定目标建立形状模型,形状模型采用一系列的特征点来描述,称为PDM模型(PointDistribution Model)。然后对形状模型中的每个特征点,建立特征点附近的灰度模型。ASM方法利用灰度模型在目标图像中的当前人脸形状点附近搜索特征点的最佳位置,然后根据搜索结果调整形状模型的参数以保证新形状还是人脸形状,如此循环直到人脸形状收敛。
主动表观模型(AAM):它不仅利用了对象的形状信息而且利用了对象的纹理信息,将形状与纹理结合起来建模。AAM方法由人脸动态表观建模和拟合算法两部分组成。在训练阶段,对一组已标记特征点的人脸图像,根据这些点采用Delaunay三角化,建立纹理采样的三角网格,然后将形状与纹理联合起来建立PCA参数模型,并用线性回归建立参数变化与表观向量变化的关系。在拟合过程中,通过调整模型参数使AAM重建的人脸表观逼近输入的人脸,从而实现了对输入人脸图像特征点的定位。
加权和规则:对于不同的特征,识别性能都不尽相同,加权和规则就是对不同的特征采用不同的权值进行融合。每个特征的权值是由该特征本身的特性(可分性,识别率等)所决定的,不同的融合特征对应不同的融合权值。对识别性能好的特征赋予较大的权值,而识别性能差的特征赋予较小的权值。
发明内容
本发明的目的是为了提高人脸识别算法的鲁棒性,利用人脸特征点的精确定位结果,提出一种结合形状特征的稀疏表示人脸识别方法,该方法具有更高的人脸识别率。
本发明提出的结合形状特征的稀疏表示人脸识别方法,其特征在于,该方法包括以下步骤:
1)对训练集中所有人脸图像进行纹理特征提取,得到训练集所有人脸图像的纹理特征向量,将训练集的所有人脸图像的纹理特征向量排列形成纹理特征矩阵,将纹理特征矩阵中的一行或多行作为训练集的一个类别,一个类别对应训练集的一个人的多幅人脸图像;
2)对训练集中所有人脸图像进行形状特征提取,得到训练集中所有人脸图像的形状特征向量,将训练集中所有人脸图像的形状特征向量排列形成形状特征矩阵,将该形状特征矩阵中的一行或多行作为训练集的一个类别,一个类别对应训练集的一个人的多幅人脸图像;
3)对待识别人的人脸图像进行纹理特征提取,得到待识别图像的纹理特征向量;
4)对待识别人的人脸图像进行形状特征提取,得到待识别图像的形状特征向量;
5)将待识别的纹理特征向量用训练集的纹理特征向量线性表示,求出线性表示的系数;选择其中L1范数最小的系数作为线性表示的系数;
6)对于训练集中的每一类别,根据步骤5)得到的线性表示的系数计算对应于该训练类别的纹理残差;
7)将待识别图像的形状特征向量用训练集的形状特征向量线性表示,求出线性表示的系数;选择其中L1范数最小的系数作为线性表示的系数;
8)对于训练集中的每一类别,根据步骤7)得到的线性表示的系数计算对应于该训练类别的形状残差;
9)根据步骤6)求出每一类对应的纹理残差求出待识别人脸图像对应于该类的相似度R1;
10)根据步骤8)求出每一类对应的形状残差求出待识别人脸图像对应于该类的相似度R2;
11)将相似度R1、R2按照加权和规则进行融合,得到待识别的人脸对应于该类的综合相似度R0,综合相似度R0最大值对应的训练集的类别作为待识别人的识别结果;
所述步骤1)或步骤3)中的进行纹理特征提取,具体包括:
(a1)对于给定的一幅人脸图像,通过人脸检测定位其人脸区域;定位两个眼球点,将图像尺度归一化,并进行旋转,使两眼呈水平状;
(a2)选取人脸区域中的双眼球、下巴三个关键特征点进行定位;
(a3)利用双眼球、下巴三个关键特征点的位置划定人脸区域,并对该人脸区域进行下采样,得到确定的分辨率的人脸图像;
(a4)将步骤(a3)得到的确定的分辨率的人脸图像排列成向量,并进行L2范数归一化,得到人脸图像的纹理特征向量;
所述步骤2)或4)中的进行形状特征提取,具体包括:
(b1)对于给定的一幅人脸图像,通过人脸检测定位其人脸区域;定位两个眼球点,将图像尺度归一化,并进行旋转,使两眼呈水平状;
(b2)选取人脸区域中的双眼球、下巴三个关键特征点进行定位;
(b3)利用步骤(b2)中双眼球、下巴三个关键特征点的位置信息初始化人脸形状,作为ASM和AAM迭代的起始条件;
(b4)用ASM+AAM模型定位人脸图像105个特征点,得到特征点的坐标值;
(b5)将105个特征点进行标准化,使左右眼外眼角距离为10(像素);
(b6)将105个特征点的横、纵坐标排列成向量,得到人脸图像的形状特征向量。
本发明的特点及效果
本发明根据人眼、下巴三个关键特征点,确定人脸区域并提取灰度特征。同时利用这三个关键特征点和ASM+AAM模型标定出人脸105个特征点,得到人脸的形状特征。接着根据稀疏表示的理论分别进行纹理和形状识别的矩阵运算,再通过纹理和形状结果的融合,具有更高的人脸识别率。
附图说明
图1为本发明采用的105点正面人脸形状表征示意图;
图2为本发明建立ASM形状模型选取的特征点示意图;
图3为本发明建立AAM形状模型选取的特征点示意图。
具体实施方式
本发明提出的结合形状特征的稀疏表示人脸识别方法结合附图及实施例详细说明如下,包括以下步骤:
1)对训练集中所有人脸图像进行纹理特征提取,得到训练集中所有人脸图像的纹理特征向量,将训练集的所有人脸图像的纹理特征向量排列形成纹理特征矩阵A1,将纹理特征矩阵中的一行或多行作为训练集的一个类别,一个类别对应训练集的一个人的多幅人脸图像;
2)对训练集中所有人脸图像进行形状特征提取,得到训练集中所有人脸图像的形状特征向量,将训练集中所有人脸图像的形状特征向量排列形成形状特征矩阵A2,将该形状特征矩阵中的一行或多行作为训练集的一个类别,一个类别对应训练集的一个人的多幅人脸图像;
3)对待识别人的人脸图像进行纹理特征提取,得到待识别图像的纹理特征向量y1;
4)对待识别人的人脸图像进行形状特征提取,得到待识别图像的形状特征向量y2;
5)将待识别的纹理特征向量y1用训练集的纹理特征向量线性表示,求出线性表示的系数。选择其中L1范数最小的系数作为线性表示的系数;
6)对于训练集中的每一类别,根据5)得到的线性表示的系数计算对应于该类别的纹理残差r1i;
对于训练集中的每一类别i=1,…,k(k为训练集的类别数),提取出对应于该类的系数,与该类的特征向量线性组合,再与待识别的特征向量比较,分别计算其残差r1i:
其中,
对于第i类,δ
1i(x)=x
1;对于其他类,δ
1i(x)=0。
7)将待识别的形状特征向量y2用训练集的形状特征向量线性表示,求出线性表示的系数。选择其中L1范数最小的系数作为线性表示的系数;
8)对于训练集中的每一类别i=1,…,k(k为训练集的类别数),根据步骤7)得到的线性表示的系数,用与步骤6)同样的方法计算对应于该类别的形状残差r2i;
9)根据步骤6)求出每一类i=1,…,k(k为训练集的类别数)对应的纹理残差r1i求出待识别人脸对应于此类的相似度R1i;
定义相似度R1i为:
10)根据步骤8)求出每一类对应的形状残差r2i求出待识别人脸对应于此类的相似度R2i;
11)将相似度R1i、R2i按照加权和规则进行融合,本实施例的融合系数分别取作0.7:0.3(融合系数:k:1-k,0≤k≤1),得到待识别的人脸对应于该类的综合相似度Ri(i=1,…,k),综合相似度Ri最大值对应的训练集的类别作为待识别人的识别结果;
Ri=0.7×R1i+0.3×R2i (5)
所述步骤1)或步骤3)中的进行纹理特征提取,具体包括:
(a1)对于储存在计算机的人脸图像,根据人脸检测定位其人脸区域;定位两眼球点,并将图像尺度归一化到360×480像素,使人脸位于图像中间,且下颌点到两眼中心连线的距离大约为200个像素(该尺度只作为举例说明,并不对图像大小进行约束),通过旋转,使双眼在同一水平线上;
(a2)选取人脸区域双眼球、下巴三个关键特征点进行定位;
其主要特点是利用SUSAN算子提取边缘,并与方向积分投影方法结合,获得眼球、下巴三个关键特征点位置。
(a3)利用双眼球、下巴三个关键特征点的位置划定人脸区域,并进行下采样,得到特定分辨率的人脸图像;
具体的做法是:
用LeftEye_x,LeftEye_y分别表示左眼球的横、纵坐标值;RightEye_x,RightEye_y分别表示右眼球的横、纵坐标值;Chin_x、Chin_y分别表示下颌点的横、纵坐标值。定义EyeDistance为双眼距离:
EyeDistance=RightEye_x-LeftEye_x (6)
则人脸区域ImgFace定义一个矩形区域,它表示为:
ImgFace=LeftEye_x-a1×EyeDistance,LeftEye_y-a2×EyeDistance
(7)
RightEye_x+a1×EyeDistance,Chin_y
其中等式右边分别为矩形区域左上角横坐标,纵坐标,右下角的横坐标,纵坐标;参数a1的取值范围为[0.45,0.55],a2取值范围为[0.35,0.45];
接着根据预设的采样间隔r(r≥1),对划定的人脸区域进行下采样,得到人脸图像的纹理特征(属于常规技术)。
(a4)将步骤(a3)得到的特定分辨率的人脸图像排列成向量,并进行L2范数归一化,得到人脸图像的纹理特征向量;
向量x的L2范数||x||2定义为:
其中xj(j=1,2,...,n)为向量x的一个分量,n为向量x的维数。
所述步骤2)或4)中的进行形状特征提取,具体包括:
(b1)对于储存在计算机的人脸图像,根据人脸检测定位其人脸区域;定位两眼球点,并将图像尺度归一化到360×480像素,使人脸位于图像中间,且下颌点到两眼中心连线的距离大约为200个像素(该尺度只作为举例说明,并不对图像大小进行约束),通过旋转,使双眼在同一水平线上;
(b2)选取人脸区域双眼球、下巴三个关键特征点进行定位;
其主要特点是利用SUSAN算子提取边缘,并与方向积分投影方法结合,获得眼球、下巴三个关键特征点位置。
(b3)利用步骤(b2)中双眼球、下巴三个关键特征点的位置信息来初始化人脸形状,作为ASM和AAM迭代的起始条件;
(b4)用ASM+AAM模型定位人脸图像105个特征点,得到特征点的坐标值;
具体的做法是:
人脸图像配准的基础是选择一组人脸特征点来表征人脸形状。本发明选择了105个特征点来描述正面人脸形状(属于已有技术),如图1所示,图1为一幅人脸图像,图中的数字表示105个特征点的序号及位置。
本发明只为最外部的51个点(人脸的眉毛以及外轮廓)建立ASM模型,如图2所示,图2中的黑点表示建立ASM形状模型的51个外部特征点;并且建立多尺度的ASM(共四层),训练出每个尺度上的灰度模型和形状模型。最底层(分辨率最高)要求人脸形状的宽度为180个像素,在对人脸形状进行初始化以后,就按照这个初始形状的宽度与指定宽度的比例对形状与输入的图像进行缩放。
由于ASM模型能较好的配准人脸的外轮廓,而AAM算法的内部点配准精度较高,因而只对内部点(包括眉毛,眼睛,鼻子,嘴巴区域的点)建立AAM形状模型,如图3所示,图3中的黑点表示AAM形状模型的78个内部特征点。对于AAM纹理模型,仍然是按照105个特征点的Delaunay三角化结果进行采样和归一化。也即在模型训练阶段,读入的人脸形状为105点,但是在进行PCA形状建模的时候只取图3所示的78个特征点;纹理采样时则是在整个人脸区域进行。AAM的搜索速度较慢,因而建立单尺度的AAM,不过单尺度AAM对初始形状的准确性就有较高的要求。
通过训练建立了配准的模型之后,配准的流程如下:
1.载入105点平均形状,并根据眼睛、鼻尖与嘴巴的定位信息调整该形状;
2.以上述51个特征点作为初始形状,利用51点的ASM模型搜索并得到配准后的形状;
3.根据上述51点的人脸形状信息,更新105点形状的眉毛部分;并进一步确定眉毛,鼻子与嘴巴部位的特征点需要平移或者缩放的参数值,作相应调整;
4.取上述78个特征点作为初始形状,利用78点AAM模型搜索并得到内部特征点的位置。
5.将ASM与AAM定位的结果相融合:对眉毛部分的特征点位置采取加权求和,然后取各自不相重叠的其余特征点,合并得到完整的人脸形状。
(b5)将105个特征点进行标准化,通过缩放使左右眼外眼角距离为10像素(属于常规技术);
(b6)将105个特征点的横、纵坐标排列成向量,人脸图像的形状特征向量。
结合形状特征的稀疏表示人脸识别方法在AR库以及中科院人脸表情库进行测试。AR库选取90个不同类别的人脸,其中每一类包含14张不同光照和表情的正面图像,实验中7张训练另外7张用来测试,所达到的识别率为:98.73%,(特征维数为432);中科院人脸库选取202类不同人脸,其中每一类包含6张不同表情的正面图像,实验中任意选择4张训练,另外2张用来测试,所达到识别率为:99.01%(特征维数432)。