基于镜像奇异值分解的单样本人脸识别
扫描二维码
随时随地手机看文章
自20世纪90年代以来,人脸识别技术已成为计算机视觉、模式识别和信息技术等领域研究的热点课题之一,并且在此基础上提出了主成分分析PCA(Principal Component Analysis)[1,2]、二维主成分分析2DPCA(Two-Dimensional Principal Component Analysis)[3]、双方向的二维主成分分析[4]和线性鉴别分析LDA(Linear Discriminant Analysis)[5]等有效的识别方法。但是,现有的正面人脸图像的识别方法,仅当有充分数量的有代表性的人脸图像样本时才能取得较好的识别效果。然而在一些特殊场合,如法律实施、海关护照验证和身份证验证等,每类(人)只能得到一幅图像,此时就只能用这些数目有限的图像去训练人脸识别系统。若用前面提到的那些方法处理这种训练样本数目有限的人脸识别系统,识别率会明显下降,甚至变得不再适用。参考文献[6]首先对原始人脸图像利用奇异值分解,然后运用分解得到的较大的几个奇异值对原始人脸图像近似重构,并且将重构人脸图像和原始图像一起作为训练样本,从而对原训练样本个数进行扩展,再对增加了训练样本后的样本集运用2DPCA方法进行特征抽取,该方法可取得较好的识别效果。但是由于人脸图像存在姿态、表情等变化,而且这个变化越大,算法的识别误差也越大。基于此,本文提出了一种基于图像镜像和奇异值分解的镜像奇异值分解方法。该方法首先对人脸图像做镜像变换,然后对原始人脸图像和镜像图像分别做奇异值分解,接着用较大的几个奇异值分别对原人脸图像重构,将这些重构图像、原图像以及镜像图像一起作为训练样本运用(2D)2PCA方法对其进行特征抽取,最后使用基于最小欧氏距离的分类方法对样本集进行分类识别。由于考虑了人脸图像的旋转等姿态变化,在ORL人脸数据库上的实验结果表明,该方法比参考文献[6]中的方法有更好的识别性能。
1 方法的思想与实现
1.1 镜像人脸图像生成
增加镜像图像可以部分消除由于头部的旋转对人脸识别造成的影响,而且人脸图像是基本对称的[7],则此时可以考虑将原始人脸图像A以其垂直中心轴由式(1)作镜像变换,从而对原始训练人脸图像的个数进行扩展。
A1=A×M (1)
其中,M为反对角线元素为1、其余元素为0的方阵。
1.2 基于奇异值分解的人脸表示
1.3 基于(2D)2PCA的特征提取
训练时,将每张训练人脸图像Ak(k=1,2,…,M)分别向Z和X投影,得到训练样本的投影特征矩阵Ck(k=1,2,…,M);同时,在测试时,对于任一测试人脸图像A,首先使用式(5)得到特征矩阵C,然后使用基于最小欧氏距离的最近邻分类器对测试人脸图像进行分类识别。本文算法的结构流程图如图1所示。
2 实验结果及分析
2.1 实验所用人脸库
本实验所用人脸数据库为ORL人脸库,该人脸数据库由40人、每人分别由10幅大小均为112×92的256灰度级的正面人脸图像组成,这些图像是在不同时间、不同光照、不同表情和不同姿态下拍摄的。图2给出了ORL人脸数据库中的部分标准人脸图像及其镜像图像。
2.2 实验方法及结果
为了对各方法的识别效果进行对比,本文分别对单样本PCA算法、SVD+PCA算法、参考文献[6]中提出的SVD+2DPCA算法、SVD+(2D)2PCA以及本文提出的方法在ORL人脸数据库上进行10组实验,即分别将每个人的第1,2,3,...,10幅共40幅人脸图像作为训练样本,而其余的360幅图像作为测试样本进行分类识别,然后取其平均识别率,测试结果如表1所示。以下(2D)2PCA方法中行方向降维维数为10,即只对其列方向维数做变化。
不同的特征提取方法的确会对系统识别率的提高有一定的影响,为了验证本文方法识别率的提高不仅仅依赖于(2D)2PCA特征提取方法的选择,而是由于镜像人脸图像样本的增加,实验中分别对单样本PCA算法、SVD+PCA算法、SVD+2DPCA算法、SVD+(2D)2PCA算法以及本文算法在ORL人脸库上,同样分别将每个人的第1,2,3,...,10幅图像作为训练人脸图像,而将其余的360幅作为测试样本,取同一特征向量维数下的10组实验的平均识别率作为其最终识别率,测试结果如图3所示。
同时,为了比较各参考文献方法和本文方法在不同测试样本数目情况下的稳定性[9],做如下的测试实验:在ORL人脸库上分别取每个人的第1,2,3,...,10张图像作为训练样本,分10组实验,同时在每组实验中分别以除训练样本以外的前2,3,4,...,9张图像作为测试样本,计算每组实验的平均识别率,实验结果如图4所示。
2.3 实验结果分析
由表1可以看出,在不同的训练样本条件下,本文提出的方法的识别效果明显高于参考文献中提出的其他几种方法,这主要是由于加入镜像信息后可以减小由于姿态变化对人脸识别的影响。从图3中的实验数据也可以看出SVD+2DPCA和SVD+(2D)2PCA方法在特征维数增大时,两种方法的识别效果差不多,但是都不如本文所提方法,而且由SVD+(2D)2PCA方法和本文方法的比较曲线可以得知,本文方法识别率的提高主要是依赖于人脸图像镜像信息的加入,而不是仅仅由于(2D)2PCA特征提取方法的选择。由图4可知,随着测试样本个数的增加,特别是PCA方法的识别率较低而且其稳定性较弱,与SVD+2DPCA以及SVD+(2D)2PCA方法相比,本文所提方法在保证识别率高于其他方法的同时,也表现出了较强的稳定性。
通过对原始人脸图像增加镜像图像来扩充训练人脸样本数,提出了一种基于镜像奇异值分解的新方法。实验表明,与其他单样本人脸识别方法相比,本文所提出的方法具有较高的识别率,在一定程度上克服了由于人脸姿态的变化对识别结果的影响,并取得了较好的识别效果。但是,现有的基于单样本人脸识别的方法其识别率一般都不高,有效算法的提出还有待进一步的研究。
参考文献
[1] ZHAO W, CHELLAPPA R, ROSENFELD A, et al. Face recgnition: a literature survey[J]. ACM Computing Surveys, 2003,35(4):399-458.
[1] TURK M, PENTLAND A. Eigenfaces for recognition[J].Journal of Cognitive Neuroscience, 1991,3(1):71-86.
[2] TURK M, PENTLAND A. Face recognition using eigenfaces[A]. Proceedings of IEEE Computer Vision and Pattern Recognition[C]. Hawaii, USA: IEEE CS Press, 1991: 586-591.
[3] YANG J, ZHANG D. Two_dimensional PCA: a new approach to appearance-based face representation and Recognition[J]. IEEE Transaction on Pattern Analysis and Machine Intelligence, 2004,26(1):131-137.
[4] ZHANG Dao Qiang, ZHOU Zhi Hua. (2D)2PCA:Two-directional two-dimensional PCA for efficient face representation and recognition[J]. Neurocomputing,2005(69): 224-231.
[5] BELHUMEUR V, HESPANHA J, KRIEGMAN D. Eigenfaces vs fisherfaces: recognition using class specific linear projection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1997,19(7):711-720.
[6] LU Chong, LIU Wan Quan, SEN Jian. An face recognition with only one training sample[J]. Proceedings of the 25th Chinese Control Conference 7-11 August, 2006
[7] 杨琼,丁晓青.对称主分量分析及其在人脸识别中的应用[J].计算机学报,2003,26(9):1146-1151.
[8] ZHANG D, CHEN S, ZHOU Z H. A new face recognition method based on SVD perturbation for single example image per person[J].Applied Mathematics and computation, 2005,163(2):895-907.
[9] 吴朋.基于虚拟信息的单样本分块人脸识别[J].计算机工程与应用,2009,45(19):146-149.