一种基于块内相关性的二维线性鉴别分析人脸识别方法

文档序号:6561891阅读:371来源:国知局
专利名称:一种基于块内相关性的二维线性鉴别分析人脸识别方法
技术领域
本发明属模式识别技术领域,具体涉及一种基于块内相关性的二维线性鉴别分析人脸识别方法。
背景技术
人脸识别属于模式识别的范畴,作为图像分析与理解领域中最成功的应用之一,人脸识别在商业应用和研究领域都受到了广泛的重视。现有的人脸识别方法包括基于统计分析的人脸识别方法和基于模板匹配的人脸识别方法。
一幅具体的人脸图像可以用一个n×n的矩阵A表示,也可以用一个n×n维的向量I表示。由于数据空间维的维数很高,造成识别时的比对相当困难,通常需要使用降维的方法来压缩数据。在基于统计分析的人脸识别方法中,PCA(Principal ComponentAnalysis,主元分析)和FDA(Fisher Linear Discriminant Analysis,Fisher线性鉴别分析)就是常用的两种一维降维识别方法。设H表示人脸图像空间,e1,e2,…,eJ为H的一组标准正交向量,span(e1,e2,…,eJ)为这组向量张成的子空间,和φ分别表示两幅人脸图像,和φ在span(e1,e2,…,eJ)的投影分别为 和φ′=ΣJ=1J⟨φ,eJ⟩eJ,]]>其中<·,·>表示内积。一维降维人脸识别方法用′和φ′之间的比对代替和φ之间的比对,也即使用人脸图像在标准正交系上的傅立叶系数代替原始图像数据作为识别特征。通常将e1,e2,…,eJ称为特征脸,PCA和FDA的区别在于如何选择特征脸。
在PCA人脸识别方法中(参考文献[1]M.Turk and A.Pentland,″Face RecognitionUsing Eigenfaces″,Proc.IEEE Conf.on Computer Vision and Pattern Recognition,1991),将人脸图像看作一个随机向量Γ,取用Γ的协方差矩阵Σ的主元作为降维识别方法的特征脸,协方差矩阵为Σ=E(Γ-E[Γ])(Γ-E[Γ]T。所谓的“主元”就是对应于协方差矩阵较大特征值并经过标准正交化的那些特征向量。
尽管PCA方法在最小协方差意义下给出了模式样本的最优表示,但这一表示与模式分类并非直接相关。也就是说,从模式分类的角度,PCA方法所获得的特征并非是最有效的,而FDA人脸识别方法(参考文献[2]Peter N.Belhumeur,Joao P.Hespanha,″Eigenface vs.FisherfaceRecognition Using Class Specific Linear Projection,″IEEETransactions on Pattern Analysis and Machine Intelligence,vol.19,no.7,July 1997)则可以获得样本的最优鉴别特征集,该特征集更利于模式的分类。在FDA人脸识别方法中,用随机向量Γ1,Γ2,…,ΓM表示M个不同的人的人脸图像,分别计算类内散度矩阵Gw和类间散度矩阵Gb如下Gw=1MΣm=1MΣm,]]>Gb=1MΣm=1M(E[Γm]-E[Γ])(E[Γm]-E[Γ])T,]]>并取用矩阵Gw-1Gb的主元作为降维方法的特征脸,这里,Σm=E(Γm-E[Γm])(Γm-E[Γm])T是每一类的协方差矩阵。
在FDA方法中,模式样本在投影后的新空间中有最大的类间离散度和最小的类内离散度,即在该空间中有最佳的可分离性。实验表明,在光照条件变化较大、训练样本数较多的情况下,FDA方法要优于基于PCA方法(参考文献[2])。然而,FDA方法仍然有一些缺陷,其一,由于FDA方法中图像是以向量的形式表示,即使图像的尺寸较小,转化为向量后的维数仍会相当高,这使得矩阵Gw-1Gb的维数过大,造成特征脸的计算非常困难;其二,FDA方法中需要计算类内散度矩阵Gw的逆,而在实际计算的时候是使用样本平均来代替统计平均,由于每一类样本图像的数量往往是很少的,在矩阵维数很高的情况下,Gw的奇异性问题就很突出,这使得FDA方法的应用受到很大的局限。
针对FDA方法的上述缺陷,去年(2005年)出现了一种称为2DFDA的改进方法(参考文献[3]Hui Kong,Eam Khwang Teoh,Jian Gang Wang,Ronda Venkateswarlu,AFramework of 2D Fisher Discriminant AnalysisApplication to Face Recognition with SmallNumber of Training Samples.Computer Vision and Pattern Recognition,2005.CVPR 2005.IEEE Computer Society Conference on.Volume 2,20-25June2005Page(s)1083-1088 vol.2),其基本思想是直接用图像的二维矩阵进行类内和类间散度矩阵的计算,并在此基础上进行鉴别分析。2DFDA不但避免了庞大的计算量,而且在绝大多数情况下解决了小样本类内散度矩阵奇异性的问题。
然而,通过对2DFDA的数学分析可以发现,2DFDA仅仅利用图像矩阵同一行象素之间的相关性来构造类内散度矩阵Gw。这样做有二个缺点首先,2DFDA完全抛弃了行与行之间象素的相关性信息;其次,同一行内相距较远的象素,它们的相关性较弱,对主元的确定帮助不大,徒耗计算资源。在人脸以别中,人脸的识别特征主要表现在局部区域,如人脸的主要器官眼睛、鼻子、嘴巴等,都属于人脸的局部特征,但2DFDA方法使用的区域是图像的同一行内的象素,割裂了人脸局部区域象素的相关性,不利于人脸的正确识别的。
为了解决2DFDA方法的缺陷,本发明提出了一种改进的2DFDA人脸识别方法。

发明内容
本发明的目的在于提出一种基于块内相关性的二维线性鉴别分析人脸识别方法,根据人脸图像所具有的局域特征,即人脸图像一个局部块通常表示一个完整的语义,如鼻子、眼睛、嘴巴等等,采用将人脸图像划分成非重叠小块,然后将每一个小块中的元素按行相接产生相应的行向量,再把行向量按顺序排列成新的二维图像矩阵的方法,最后将分块、重排之后的二维图像矩阵当作输入图像,进行2DFDA人脸识别。这样的做法,充分利用了人脸局部区域各个像素之间的相关性信息,使得估计出图像的二维协方差矩阵更为精确,可以达到更高的人脸识别率。
本发明方法包含建立一个反映人脸特征的人脸数据库和一个通过计算欧式距离比较相似度的识别算法,步骤分为建库和识别两个阶段。下面具体介绍这两个阶段1、建库阶段本阶段的主要目的是建立一个包含人脸特征的数据库。在识别阶段,把待识别人脸图像的特征与库中人脸图像的特征进行比对,取相似度最大的人脸图像作为识别结果。
(1)本阶段使用的人脸图像是标准的正面人脸图像,由于人脸图像的标准化对最终的识别结果有着直接的影响,所以首先对输入图像进行标准化处理,该工作分为两个部分光线归一化和尺寸归一化。
光线归一化将所有输入图像的灰度统一到标准水平,然后进行直方图均衡。统一图像灰度的过程如下首先要选取一张灰度适中的人脸图像,作为灰度归一化的标准图像,计算并记下其灰度平均值W,然后对每一幅输入图像进行灰度调整①计算出该幅图像的灰度平均值w;②计算灰度调整比例Cw=W/w;③将该幅图像所有像素的灰度值乘以Cw进行调整。
尺寸归一化根据第(2)步中算法的需要(即要保证每个子分块所包含像素个数与原图像一行的像素个数相同),将所有输入图像的尺寸调整为合适大小。
(2)对经过标准化的图像进行分块、重排的操作,构造新的二维图像矩阵。
任意一幅标准化图像,都可以用一个m×n的二维矩阵来表示,矩阵元素表示像素的灰度值,将图像矩阵记为A,即 将矩阵A划分为p×q个大小相同的子矩阵,即 其中,每个分块Akl(k=1,2,…,p;l=1,2,…,q)是m′×n′维的矩阵,即有p×m′=m,q×n′=n,并要求每个分块的大小m′×n′=n(需要第(1)步中尺寸归一化的配合)。
于是,每一幅图像就被分为p×q=m个分块,按顺序记为Di,即 对每一分块进行逐行扫描,得到每一分块对应的行向量表示Vi 这里i=1,2,…,m,再将这些行向量按顺序重排,构造出新的二维图像矩阵A′如下A′=V1V2...Vm]]>
新的二维图像矩阵A′由m个n维(m′×n′=n)的行向量组成,尺寸与原图像一样,也是m×n维的,但新矩阵中每一个行向量选取的是原图像处于同一局部块内的像素。
对所有的输入图像都进行上面的图像分块、重排操作,得到对应的二维图像矩阵库。
(3)计算最优投影方向假设总共有C类训练样本,每类样本有Ni幅图像,i=1,2,…,C,则训练样本总数为N=Σi=1CNi.]]>进行图像分块、重排的操作之后,第i类第j个样本Aij对应于m×n维的二维矩阵Ai′j,根据这些二维图像矩阵可以计算出类内和类间散度矩阵,计算公式如下类内散度矩阵Gw=1NΣi=1CΣi=1Ni(Ai′j-Ai′‾)T(Ai′j-Ai′‾)]]>类间散度矩阵Gb=1NΣi=1CNi(Ai′‾-A′‾)T(Ai′‾-A′‾)]]>其中, 为所有训练样本的均值, 为第i类的Ni幅训练样本的均值。由定义可知,Gw和Gb都是n×n维的非负定矩阵,而且通常情况下Gw是可逆的。
由Fisher鉴别准则J(X)=tr(PGb)tr(PGw)=|XTGbX||XTGwX|]]>寻找最优投影矩阵X使J(X)最大化,可通过选取Gw-1Gb最大的前d个特征值所对应的正交特征向量组X1,X2,…,Xd,利用这组最优投影方向构成Fisher最优投影矩阵X=[X1,X2,…,Xd],X是一个n×d维的矩阵。
2DFDA的目标,就是要寻找Fisher最优投影方向X,最大化投影后样本的类间离散度,同时最小化样本的类内离散度。其物理意义是模式样本在这些最优投影方向上投影后,同一类的模式样本相互集中,不同类的模式样本相互分离。
(4)提取输入图像的特征矩阵建立数据库给定的训练样本Aij经过分块、重排后对应于二维矩阵Ai′j,将其投影到Fisher投影矩阵X=[X1,X2,…,Xd]上,即
Yk=Ai′jXk,]]>k=1,2,…,d则可获得一组投影特征向量Y1,Y2,…,Yd,它们构成了训练样本Aij的Fisher特征矩阵Bij=[Y1,Y2,···,Yd]=Ai′j(X1,X2,···,Xd)=Ai′jX,]]>Bij的大小为m×d(d<<n)。
将每一幅训练样本Aij的Fisher特征矩阵Bij都保存在数据库中,待识别阶段使用。在上述步骤中,第(2)步是最重要的,体现了本发明的核心内容。
2、识别阶段对一幅待识别人脸图像T,进行与建库阶段第(1)、(2)步相同的图像标准化与图像分块、重排操作之后,得到经过重排的二维矩阵T′,将T′向最优投影方向投影,得到图像T的Fisher特征矩阵 计算Fisher特征矩阵BT与人脸库中的每一个Fisher特征矩阵Bij(i=1,2,…C,j=1,2,…Ni)之间的欧氏距离d(BT,Bij)。欧氏距离的定义如下对任意两幅图像Ai和Aj,对分别对应于Fisher特征矩阵 和 则有d(Bi,Bj)=Σk=1d||Yk(i)-Yk(j)||2]]>其中,||Yk(i)-Yk(j)||示两个Fisher特征向量Yk(i)和Yk(j)之间的欧式距离。
判别待识别人脸图像T所属分类的过程如下对人脸库中所有图像A1,A2,…,AN(N为训练图像总数),每一幅图像都属于某个确定的类别ωk(k=1,2,…,C),它们的特征矩阵分为B1,B2,…,BN。对于一幅给定的待识别人脸图像T,其对应的Fisher特征矩阵为BT,若有d(BT,Bl)=mindjd(BT,Bj)]]>(j=1,2,…,N),且Bl∈ωk,则分类的结果是B∈ωk。
本发明优点二维线性判别分析(2DFDA)人脸识别方法是去年(2005年)提出的线性判别分析(FDA)人脸识别方法的一种改进方法。时间虽短,但因其性能优良为业界广泛接受和肯定。但是,2DFDA方法在计算人脸特征向量时仅仅利用人脸图像同一行象素之间的相关性,没有考虑人脸图像不同行象素之间的相关性。在人脸识别中,人脸的局部特征(鼻子、眼睛、嘴巴、下巴、额头等等)起着举足轻重的作用,因此,人脸识别方法应该充分利用人脸图像局部区域内各个象素之间的相关性。本发明提出的方法是2DFDA的改进算法。本发明先把人脸图像分块,然后把图像块内的象素按照一定顺序转化为新图像的行元素,最后对新图像进行2DFDA建库和识别。本发明在保持2DFDA优点的同时,以一种简单实用的方式弥补了2DFDA的缺点。


图1、基于块内相关性的人脸识别方法建库阶段的算法流程2、基于块内相关性的人脸识别方法识别阶段的算法流程3、人脸图像分块、重排的操作示意图。其中,图(a)表示对原图像进行分块,每一个小方块代表一个分块矩阵;图(b)表示原图像中的一个分块矩阵,每一个小方块代表一个像素;图(c)表示将分块矩阵逐行扫描排列成的行向量,每一个小方块代表一个像素;图(d)表示将所有行向量按顺序重排产生的新的二维图像矩阵,每一行表示一个行向量。
图4、实施案例的结果人脸识别率比较(FERET数据集)图5、实施案例的结果最佳人脸识别率比较(FERET数据集)图6、实施案例的结果相同识别率下Fisher特征向量数目比较(FERET数据集)具体实施方式
下面以FERET人脸库为例,说明本方法的实施过程。
选择FERET库中的60人,每人6幅图像,共360幅图像组成训练和测试人脸库,包括了在不同表情、光线、遮挡等情况下的人脸,图像尺寸为112×92。
随机选取库中3幅图像/人用于训练,余下的3幅图像/人用于测试。随机抽取实验重复30次,取识别率的平均值作为最终识别率。具体实施流程如下1、建库阶段(1)图像标准化对图像进行预处理,包括光线归一化和尺寸归一化。经过预处理之后,所有图像的灰度统一到标准水平,且灰度层次比较分明(因为经过了直方图均衡化)。预处理后的图像尺寸变为96×80。
(2)图像的分块、重排分块每个块的大小为8×10,一共包含80个像素,和标准化后图像一行的像素个数相同。每一幅图像被分为96块,块数与标准化后图像的行数相同。
重排按行扫描每个分块得到对应的行向量,将一幅图像的96个行向量按顺序排列得到一个96×80的矩阵,即重排之后的二维图像矩阵。
(3)计算最优投影向量组为了找出最合适的主元数目,本案例中对最优投影向量组中向量(即主元)个数为1~10的情况都做实验,即得到10种不同的最优投影向量组。
(4)提取图像的特征矩阵建立数据库将分块、重排后的二维图像矩阵向最优投影向量组投影,由于所取主元数目共20种情况,因此需要重复本步骤,每次实验的过程类似,但由于最优投影向量组不相同,所以得到的特征矩阵库也不相同,最终产生10组特征矩阵库。
2、识别阶段对每一幅测试图像,依次进行图像标准化,图像的分块、重排,提取特征矩阵三个步骤,由于主元数目的不同,会产生10组特征矩阵。然后计算特征矩阵与对应的特征矩阵库中每一个特征矩阵的距离,判别距离最近的为匹配人脸,这里所说的对应关系是指产生本步骤中特征矩阵与产生特征矩阵库所使用的主元数目是相同的。
统计匹配正确和错误的人脸图像数目,计算不同主元数目下的人脸识别率,然后重复进行随机实验,取30次实验的人脸识别率平均值作为最终识别率。
主元构成图像空间的子空间,随着主元数目的增加,主元构成的子空间会向相邻图像空间扩张,各种降维识别方法(包括2DFDA方法)的识别效果也将逐渐趋同,因此,各种降维识别方法的识别性能,主要是指在低维子空间上获得高的判别率。由本案例的实验结果可以看出,在主元数目较少的时候,人脸识别率随着主元数目的增加迅速上升,在主元数目为10的时候得到了最优识别结果。
图4显示了利用了块内相关性的算法和没有利用块内相关性的算法的在人脸识别率上的差别,上面那条曲线是利用了块内相关性的算法所得到的结果,在主元数目较少的情况下,明显优于没有利用块内相关性的算法。实验条件与前述相同,使用FERET人脸库中的部分图像,取60×3幅为训练样本,60×3幅为测试样本。
图5显示了不同训练样本数目的情况下,利用了块内相关性的算法和没有利用块内相关性的算法的最佳人脸识别率的差别,上面那条曲线是利用了块内相关性的算法所得到的结果。实验条件是取训练k个训练样本数/类(2≤k≤4),即60×k幅作为训练样本,60×(6-k)幅为测试样本。
图6显示了在相同识别率的情况下,利用了块内相关性的算法和没有利用块内相关性的算法的对应的Fisher特征向量数目的比较。实验条件是取训练k个训练样本数/类(2≤k≤4),即60×k幅作为训练样本,60×(6-k)幅为测试样本。
权利要求
1.一种基于块内相关性的人脸识别方法,其特征在于一个将人脸图像分块重排的算法、一个基于二维线性鉴别分析(简称2DFDA)的最优投影方向计算方法和一个通过计算欧式距离比较相似度的识别算法。具体步骤分建库和识别两个阶段(1)建库阶段①对训练样本图像进行标准化,包括光线归一化和尺寸归一化;②对经过标准化的训练样本图像进行分块、重排的操作,构造新的二维图像矩阵;③将上一步骤得到的二维图像矩阵作为输入图像,选择一定的特征值数目,使用2DFDA方法计算出Fisher最优投影向量组X1,X2,…,Xd;④将新构造出的二维图像矩阵向Fisher最优投影方向上投影,抽取出反映人脸特征的数据,即Fisher特征矩阵,并将其全部保存在数据库中,待识别阶段使用。(2)识别阶段①对测试图像进行标准化,包括光线归一化和尺寸归一化;②对经过标准化的测试图像进行分块、重排的操作,构造新的二维图像矩阵;③将新构造出的二维图像矩阵向最优投影方向上投影,获得相应的Fisher特征矩阵;④计算测试图像的特征矩阵与数据库中各特征矩阵之间的欧式距离,将距离最近的特征矩阵对应的人脸图像判别为匹配图像,匹配图像对应的分类即为识别结果。
2.根据权利要求1所述的人脸识别方法,其特征在于所述的将人脸图像分块重排的算法如下任意一幅标准化图像,都可以用一个m×n的二维矩阵来表示,矩阵元素表示像素的灰度值,将图像矩阵记为A,即 将矩阵车A划分为p×q个大小相同的子矩阵,即 其中,每个分块Ak1(=1,2,…,p;l=1,2,…,q)是m′×n′维的矩阵,即有p×m′=m,q×n′=n,并要求每个分块的大小m′×n′=n。于是,每一幅图像就被分为,p×q=m个分块,按顺序记为Di(i=1,2,…m),即 对每一分块进行逐行扫描,得到每一分块对应的行向量表示V1(i=1,2,…m)Vi=[d11id12i···d1n'id21id22i···d2n'i···dm'1idm'2i···dm'n'i]]]>再将这些行向量按顺序重排,构造出新的二维图像矩阵A′如下A'=V1V2...Vm]]>新的二维图像矩阵A′由m个n维(m′×n′=n)的行向量组成,尺寸与原图像一样,也是m×n维的,但新矩阵中每一个行向量选取的是原图像处于同一局部块内的像素。
3.根据权利要求1所述的人脸识别方法,其特征在于所述的基于二维线性鉴别分析(简称2DFDA)的最优投影方向计算方法如下假设总共有C类训练样本,每类样本有Ni(i=1,2,…C)幅图像,则训练样本总数为N=Σi=1CNi]]>。进行图像分块、重排的操作之后,第i类第j个样本Aij对应于m×n维的二维矩阵Ai′j,根据这些二维图像矩阵可以计算出类内和类间散度矩阵,计算公式如下类内散度矩阵Gw=1NΣi=1CΣj=1Ni(Ai′j-Ai′‾)T(Ai′j-Ai′‾)]]>类间散度矩阵Gb=1NΣi=1CNi(Ai'‾-A'‾)T(Ai'‾-A'‾)]]>其中, 为所有训练样本的均值, 为第i类的Ni幅训练样本的均值。由定义可知,Gw和Gb都是n×n维的非负定矩阵,而且通常情况下Gw是可逆的。由Fisher鉴别准则J(X)=tr(PGb)tr(PGw)=|XTGbX||XTGwX|]]>寻找最优投影矩阵X使J(X)最大化,可通过选取Gw-1Gb最大的前d个特征值所对应的正交特征向量组X1,X2,…,Xd,利用这组最优投影方向构成Fisher最优投影矩阵X=[X1,X2,…,Xd],X是一个n×d维的矩阵。
4.根据权利要求1所述的人脸识别方法,其特征在于所述的通过计算欧式距离比较相似度的识别算法如下对任意两幅图像Ai和Aj,对分别对应于Fisher特征矩阵 和Bj=[Y1(j),Y2(j),···,Yd(j)],]]>则有d(Bi,Bj)=Σk=1d||Yk(i)-Yk(j)||2]]>其中,‖Yk(i)-Yk(j)‖2示两个Fisher特征向量Yk(i)和Yk(j)之间的欧式距离。对人脸库中所有图像A1,A2,…,AN(N为训练图像总数),每一幅图像都属于某个确定的类别ωk(k=1,2,…,C),它们的特征矩阵分为B1,B2,…,BN。对于一幅给定的待识别人脸图像T,其对应的Fisher特征矩阵为BT,若有d(BT,Bl)=mindj(BT,Bj)]]>(j=1,2,…,N),且Bl∈ωk,则分类的结果是B∈ωk。
全文摘要
本发明属模式识别技术领域,具体涉及一种基于块内相关性的二维线性鉴别分析(简称2DFDA)人脸识别方法。本方法根据人脸图像所具有的局域特征,将人脸图像划分成非重叠小块,然后将每一个小块中的元素按行相接产生相应的行向量,再把行向量按顺序排列成新的二维图像矩阵,最后将分块、重排之后的二维图像矩阵当作输入图像,进行2DFDA人脸识别。本方法的优点在于充分利用了局部区域里行与列像素之间的相关性信息,能够较好地保留人脸的局域特征信息,可以达到较高的人脸识别率,而且计算复杂度较低。
文档编号G06K9/00GK101021897SQ20061013234
公开日2007年8月22日 申请日期2006年12月27日 优先权日2006年12月27日
发明者马争鸣, 胡海峰, 李莹, 张成言 申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1