APP下载

基于奇异值分解和小波神经网络的人脸识别

2019-06-15王艳花杨静

现代电子技术 2019年12期
关键词:奇异值分解仿真实验人工神经网络

王艳花 杨静

摘  要: 针对人脸识别在有遮挡、表情变化和光照变化引起的鲁棒性变差问题,以及传统人工神经网络用于人脸识别时存在的维数灾难问题,提出一种分块奇异值分解和小波神经网络结合的人脸识别算法。首先,将人脸图像进行分块,获得图片局部的奇异值,并将其按一定顺序排列得到人脸的特征向量;然后,运用加入动量项的改进小波神经网络进行人脸图像分类识别;最后,在Matlab环境下利用ORL和YALE人脸图像数据库进行仿真实验,并且在GUI图形用户界面上进行验证。实验结果表明,该算法实现简单,识别率高,对光照、遮挡、表情等变化有很好的鲁棒性,具有很大的使用价值。

关键词: 人脸识别; 人工神经网络; 奇异值分解; 小波神经网络; 仿真实验; 算法验证

中图分类号: TN911.73?34; TP391              文献标识码: A                    文章编号: 1004?373X(2019)12?0040?05

Abstract: In allusion to the poor robustness problem caused by shielding and variations of face expression and illumination during face recognition, and the dimension disaster problem existing in the traditional artificial neural network used for human face recognition, a human face recognition algorithm combining blocked singular value decomposition with wavelet neural network is proposed. The human face images are blocked to obtain local singular values of images, which are ranked in a certain order to obtain feature vectors of human faces. The human face image classification and recognition are conducted by using the improved wavelet neural network with momentum flux added. The simulation experiment was carried out with the ORL and YALE human face image databases in the Matlab environment. The algorithm was verified on the GUI graphical user interface. The experimental results show that the algorithm is simple to be implemented, and has a high recognition rate and good robustness to variations of illumination, shielding and face expression, which is of great use value.

Keywords: human face recognition; artificial neural network; singular value decomposition; wavelet neural network; simulation experiment; algorithm verification

0  引  言

人臉识别是一个跨学科的、富有挑战性的前沿课题,跨越了生理学、心理学、图像处理、计算机视觉、模式和数学等多个学科。与其他生物特征相比,人脸是一种最自然的特征,因此可广泛应用于安全验证、出入口控制、电子商务等诸多领域。人脸识别已经成为计算机视觉和人工智能研究领域的热点[1]。然而,现有人脸识别方法受环境光照、人脸表情与姿态、遮挡的影响较大,使得人脸识别在客观上存在很大难度[2]。神经网络具有很强的自适应、自学习的特性,国内外学者提出了许多基于神经网络的人脸识别方法,小波神经网络就是其中的一种。

在人脸识别中,算法核心部分就是特征提取和分类器的设计。奇异值分解(Singular Value Decomposition,SVD)是一种提取图像特征的方法[3],对转置、平移、旋转和镜像变换都有很好的稳定性,而且对于噪声变化和光强度变换具有很好的鲁棒性[4?5],因此大量学者开始研究将奇异值分解用于提取人脸特征,以发挥其优势。小波变换具有时频局部特性、多尺度分析特性,而神经网络具有自学习、自适应、鲁棒性、容错性和推广能力。1992年法国著名的信息科学研究机构IRLSA的Zhang qinghu等人将小波理论和神经网络结合起来,提出了小波神经网络(Wavelet Neural Network,WNN),或称小波网络(Wavelet Network,WN)[6]。小波神经网络以小波理论为依据,可以避免BP网络结构[7]设计上的盲目性,在网络训练过程中从根本上避免了局部最优等非线性优化问题,有较强的函数学习能力和推广能力。

传统的小波神经网络应用于人脸识别时,都是将待识别图像的每个像素点直接对应于神经网络的输入,这样会导致神经元个数增多,计算量大,训练时间延长。本文基于小波神经网络,提出一种利用分块奇异值分解提取人脸的特征信息,并运用加入动量项的改进小波神经网络进行人脸图像分类识别的方法,把ORL和YALE人脸图像数据库分为不同的训练数据和测试数据,利用Matlab对小波神经网络进行训练并测试,并且将其与本文相关的算法进行比较,实验表明,该方法有较高的人脸识别率。

1  基于SVD的人脸特征提取

SVD把图像看成是一个矩阵,是一种代数特征提取方法,对于图像内容分析来说是一种非常有效的处理工具,它善于捕捉图像结构信息,可以将任何种类的阵列分解为较低维的矩阵。人脸图像是一个高维向量,直接用其进行计算比较困难,通过SVD可对其进行降维处理,并且能保留其图片的主要特征[8]。近年来,图像的奇异值已经作为特征向量被成功地应用于人脸识别领域。奇异值分解定理如下:

式(1)中, [p=minm,n],式(2)为矩阵[A]的奇异值分解公式,其中[σ1≥σ2≥…≥σp≥0],[σii=0,1,2,…,p]为[A矩阵]的奇异值,它是[AAT]和[ATA]的特征值[λi]的平方根,即[σi=λi]。将奇异值从大到小的顺序排列得到的向量[σ1,σ2…,σp]就是矩阵[A]的奇异值向量。对于任意一个是实矩阵[A],它的奇异值分解是唯一的,因此每一个人脸图像也对应一个唯一的奇异值向量。而且奇异值特征向量具有良好的稳定性,对图像因噪声和光照条件引起的灰度变化有很好的鲁棒性。

传统的奇异值算法在特征提取阶段把人脸图像的奇异值向量作为识别特征,文献[9]证明图像的大量信息体现在奇异值分解后的前K个最大的奇异值中。由于取整幅人脸图像的奇异值不能很好地表达人脸的细节信息,本文将图片进行分块,对每一块图片进行奇异值分解,选取得到的前3个最大的奇异值,并按从左到右,从上到下的顺序将每块图片得到的前3个奇异值进行排列,得到新的奇异值向量,即为人脸特征向量。本文将人脸图形分为4块、8块、12块、16块、20块,对应的特征向量维数为12维、24维、36维、48维、60维。分块的多少按照实际情况可进行调整,如图1所示,本文最后将人脸图像分为12块。

圖1  图像分块

2  小波神经网络

2.1  小波神经网络理论

在一个神经网络中,如果网络的传递函数是由一个小波函数系构成,则该神经网络称为小波神经网络。其综合了小波分析良好的时频分析能力和神经网络强大的自学习能力,拥有强大的非线性拟合能力和模式识别能力[10]。小波神经网络由输入层、隐含层、输出层组成,相应的小波函数的伸缩系数以及平移系数分别对应着小波神经网络中从输入层到隐含层的权值系数和隐含层的阈值,其结构如图2所示。

图2  小波神经网络结构图

图3  Morlet小波基函数时域图

本文中小波神经网络的输入节点[M]取决于SVD特征提取的维数。输出层的节点数就是人脸的类别数,由训练的人脸数据库决定。隐含层的节点数目至今没有明确的公式,本文采用试凑法,计算方法如下:

式中:M为输入层的节点数;N为输出层节点数;[a]为1~10的数;k为隐含层的节点数。在实际训练过程中,具体的数目还需要根据网络的训练次数和误差进行调整,选择在误差最小的情况下的隐含层节点数为最终结果。

2.2  小波神经网络训练方法

文中小波神经网络的学习算法选用随机梯度法,不断调整网络的权值参数和小波基函数的参数,使其接近网络的期望输出。在训练过程中引入动量项,可以使权值产生平滑的变化,减少小波神经网络的收敛时间,改进小波神经网络的动态特性。小波神经网络修正过程如下:

1) 计算网络预测误差

如果有[L]个训练样本,期望有[N]个分类,[tnl]为期望输出,[ynl]为实际输出,利用LMS能量函数[11],则训练过程的总误差为:

2) 权值修正

3  实验结果和分析

本文使用ORL(Oliver Research Laboratory)和YALE两个常用的人脸数据库,其中ORL人脸数据库,共40个人,每人10幅,分辨率大小为112×92,灰度级为256,主要包括不同光照条件下人脸角度、人脸姿态、人脸面部表情和人脸面部细节的变化,部分人脸图片如图4所示。YALE人脸库包括15个人的165幅人脸图像,分辨率大小为[100×100],人脸库主要包含姿态、光照、表情以及遮挡(戴不戴眼镜)等变化,部分人脸图片如图5所示。

图4  ORL人脸库部分图片

图5  YALE人脸库部分图片

本文按照SVD分塊的不同,即提取特征维数的不同和训练集的大小不同对算法进行分组实验,提取特征维数分别为12维,24维,36维,48维,60维,随机选取ORL和YALE人脸库的每人3幅、5幅、7幅图像作为训练集,剩余部分作为测试集,训练集和测试集图片互不重合,利用Matlab软件编制相应的程序,对算法识别率进行分析,重复试验20次取平均识别率为最终识别率。实验结果如表1和表2所示。

根据表1和表2,可以看出在ORL人脸库和YALE人脸库中,对于相同的训练样本数,识别率随着特征向量维数的增加而增加,当向量维数大于36维之后识别率又开始下降,可见对于本文算法,识别率的大小和特征向量维数并不成正比,当人脸图像分块数过多时,反而会破坏人脸细节信息,因此当图片取36维特征向量最为合适,也就是将人脸图像分成12块再进行奇异值分解时,该算法识别率最高。对于相同的特征维数,随着每个人训练样本数目的增多,人脸识别的准确率也会越来越高。综上所述,本文中将人脸图像分为12块,训练样本数为7时,该算法的识别率最高,并且对光照、姿态、表情等变化有很好的鲁棒性。

表1  本文算法在ORL人脸库的识别率

表2  本文算法在YALE人脸库的识别率

为了验证本文算法的性能,将其与相关算法进行比较,其中,文献[10]是基于小波神经网络的算法,文献[5,9,12]是基于SVD的算法,这4种方法只利用了脸部的全局信息,而本文方法很好地利用了人脸的局部信息,可以避免表情和光照变化带来的干扰。比较结果如表3所示,可以看到本文方法的识别率明显高于其他4种方法。

表3  本文算法与相关算法比较

4  GUI界面设计

为了使操作更加方便直观,将用Matlab图形用户界面GUI对本文方法进行了验证试验。其中GUI界面包括两个模块:一个是输入人脸图像模块;另一个是识别模块。输入人脸图像模块主要是选择人脸库中的任意一张照片,以便于识别;而识别模块是当输入图像后,可以根据本文算法,匹配相应的人脸,并显示人脸对应的相关身份信息,以便于之后用于人脸签到等场所。GUI图形用户界面如图 6所示,输入人脸图像是第4个人的第10张图片,未戴眼镜,并且头部有很明显的旋转角度,利用本文算法仍然能很好地识别出来,并且能显示出人脸的身份信息。

图6  GUI图形用户界面

5  结  语

本文提出一种基于分块SVD和小波神经网络结合的人脸识别算法。首先分析了该算法的实现过程,然后用Matlab对此算法在ORL和YALE人脸数据库中进行了验证,并用GUI界面实现。通过实验表明,本文算法在光照、背景、姿态、遮挡等综合因素影响下依然能取得较高的识别率,并且避免了维数灾难问题,降低了计算量,具有很好的鲁棒性和实用价值。但本文算法并没有很好地利用人脸的局部信息,下一步的研究内容就是在人脸图像分块时将人脸的眼睛、嘴巴、鼻子等部位单独分开并进行特征提取,再进行人脸识别和分类。

参考文献

[1] BECKER B C, ORTIZ E G. Evaluating open?universe face identification on the Web [C]// Proceedings of IEEE Conference on Computer Vision and Pattern Recognition Workshops. Portland: IEEE, 2013: 904?911.

[2] 孔令美,汤庸.基于小波变换和小波神经网络的3D遮挡人脸识别方法[J].湘潭大学自然科学学报,2015,37(4):82?86.

KONG Lingmei, TANG Yong. A method for 3D occlusion face recognition based on wavelet transform and wavelet neural network [J]. Natural science journal of Xiangtan University, 2015, 37(4): 82?86.

[3] CAO D, YANG B. An improved face recognition algorithm based on SVD [C]// Proceedings of 2nd International Conference on Computer and Automation Engineering. Singapore: IEEE, 2010: 109?112.

[4] 马园园,张登银.基于SVD的两步人脸识别方法[J].计算机技术与发展,2018,28(1):95?99.

MA Yuanyuan, ZHANG Dengyin. A two?step face recognition method based on SVD [J]. Computer technology and development, 2018, 28(1): 95?99.

[5] 董超,徐寧,Kim Batselier,等.基于TTr1SVD的张量奇异值分解及其在人脸识别上的应用[J].计算机应用研究,2018,35(1):287?291.

DONG Chao, XU Ning, BATSELIER K, et al. Tensor singular value decompositions based on TTr1SVD and their applications to face recognition problem [J]. Application research of computers, 2018, 35(1): 287?291.

[6] ZHANG Q, BENVENISTE A. Wavelet networks [J]. IEEE transactions on neural networks, 1992, 3(6): 889?898.

[7] YU M, WANG H, LAN Ting. The BP neural network for improvement of classification accuracy in remote sensing image [J]. International journal of environmental protection and policy, 2016, 4(3): 93?97.

[8] ZHANG Guiying, ZOU Wenbin, ZHANG Xianjie, et al. Singular value decomposition based sample diversity and adaptive weighted fusion for face recognition [J]. Digital signal processing, 2017, 62: 150?156.

[9] 张慈祥,刘辉,强振平.基于稀疏表示和奇异值分解的人脸识别[J].计算机应用,2013,33(z1):233?235.

ZHANG Cixiang, LIU Hui, QIANG Zhenping. Face recognition based on image sparse representation and singular value decomposition [J]. Journal of computer applications, 2013, 33(S1): 233?235.

[10] 姜友谊.小波神经网络在人脸识别中的应用[J].西安科技大学学报,2012,32(5):652?657.

JIANG Youyi. Face recognition based on wavelet neural network [J]. Journal of Xian University of Science and Technology, 2012, 32(5): 652?657.

[11] GUI G, MEHBODNIYA A, ADACHI F. Sparse LMS/F algorithms with application to adaptive system identification [J]. Wireless communications & mobile computing, 2015, 15(12): 1649?1658.

[12] 何正风,孙亚民.基于奇异值分解和径向基函数神经网络的人脸识别算法研究[J].计算机科学,2012,39(z1):566?569.

HE Zhengfeng, SUN Yamin. Research on face recognition algorithm based on SVD and RBF neural network [J]. Computer science, 2012, 39(S1): 566?569.

猜你喜欢

奇异值分解仿真实验人工神经网络
利用人工神经网络快速计算木星系磁坐标
人工神经网络实现简单字母的识别
结合PCA及字典学习的高光谱图像自适应去噪方法
开展体验式教学创新研究 提高化学课堂有效性
基于分块DWT和SVD的鲁棒性数字水印算法
一种基于奇异值分解的鲁棒水印算法
基于多重视阈下的《电子控制技术》课程的教学探讨
基于ETAP的电气设计仿真实验
协同过滤算法改进及研究
基于声发射和人工神经网络的混凝土损伤程度识别