基于神经网络改进人脸识别算法
2021-12-21胡美姣王谙宇
胡美姣,尚 锐,王谙宇
基于神经网络改进人脸识别算法
胡美姣,尚 锐,王谙宇
(辽宁理工学院 智能工程学院,辽宁 锦州 121001)
传统人脸识别技术需要处理大量的人脸图片,训练时间过长。针对上述问题,设计了一种卷积神经网络算法并采用pix2pix模型实现超分辨率重建。最后在ORL数据库上进行了测试,与传统方法比较,该方法具有更好的识别效果,所需的训练时间减少,在识别准确率和训练时间方面优于大多数传统识别算法。
人脸识别;卷积神经网络;pix2pix模型
人脸识别作为一种生物特征识别技术,具有获取方便、不需要主动配合、精度高等特点。人脸识别技术应用广泛,如安保系统和身份验证系统等领域[1]。传统的人脸识别方法主要有基于主成分分析方法[2]、特征脸方法[3]、基于线性分析方法[4]和基于局部二值模式方法[5]等。
上述方法在提取特征时,往往需要人工去获取较好的特征,具有很大的主观性。目前人脸识别技术的主流方向是卷积神经网络,其可以很好地将数据特征表示出来,减少人为因素影响,提高识别率,并且因其超参数通过传统的梯度下降法和自带的网络模型进行学习,识别率较高,在人脸识别领域得到普遍应用。但是,在小样本应用中识别准确性较差且训练时间较长,如DeepID系列模型[6]和FaceNet模型[7],DeepID系列模型采用了身份信号和鉴定信号相结合的方式作为最终的损失函数,其缺点是识别速度慢且准确率低,而FaceNet模型采用空间距离长度表示人脸相似性,其识别效果较好,但是适用性较差,仅适用于LFW数据库。
针对上述问题,本文以传统的卷积神经网络算法为基础,设计了一种基于神经网络的改进人脸识别算法,并采用pix2pix模型实现超分辨率重建,在提高小样本的人脸数据库识别率的同时减少了训练所需时间。
1 卷积神经网络
本文人脸识别算法流程如图1所示,首先对人脸图像进行采集,然后进行超分辨率重建,将处理后的人脸图像通过卷积神经网络进行身份识别。
图1 人脸识别子系统算法流程图
1.1 卷积神经网络的设计
(1)选择卷积核的数量
通过比较不同的卷积核数量,确定卷积神经网络的卷积核来获取更多特征信息[8]。
(2)使用较小卷积核
本算法采用多个较小卷积核代替较大的卷积核,减少计算量,在一定程度上提升模型效果。
(3)防止卷积神经网络出现过拟合
为避免在卷积神经网络的全连接层出现过拟合,本文采用Dropout技术和L2正则化进行处理。
(4)提升卷积神经网络的泛化能力
选择Relu函数为激活函数,来提高卷积神经网络的泛化能力。
(5)提高模型判别能力
为提高设计的卷积神经网络模型对特征的判别能力,选用Softmax Loss+Center Loss监督训练模型,使得输出的人脸特征类内聚合,类间分散。本文卷积神经网络层次结构如表1所示。
表1 卷积神经网络层次结构
结构数量参数 输入层1个图片尺寸为28*28*1。 卷积层2个C1大小3*3,深度为6,padding为same,步长为1。C2大小5*5,深度为12,padding为same,步长为1。 池化层1个选择平均池化,池化核为2,步长为2。 全连接层(特征提取层)1个输出节点个数160。 输出层1个选择Softmax+Center Loss,输出节点个数为40。
本文卷积神经网络优化函数选择交叉熵函数,其结构图如图2所示。
图2 卷积神经网络结构图
1.2 超分辨率重建
本文采用pix2pix网络实现图像超分辨率重建,过程如下。
(1)将图像裁剪到统一大小。
(2)制作对应要求的图片对,将模糊的图片(先将图片变为原尺寸的1/4,再将图像的尺寸放大回来)和原来清晰的图片构成一个图片对。
(3)将原始图片和模糊后的图片合并起来,进一步划分为训练集和测试集。
(4)用验证集数据和训练好的模型进行验证。
图像超分辨率效果图如图3所示,从左至右依次为模糊的图像、模型超分辨率生成的图像和原图。虽然没有还原所有细节,但是模型抓住了图像中的主要信息对图像进行了重建,相比直接对图像缩放(将图片变为原尺寸的1/4,再将图像的尺寸放大回来)的方法,图片效果得到了提升。
2 分析与验证
2.1 实验数据集
本文选用ORL人脸库,其包含40个不同年龄、性别与种族的人脸图像,每个人脸图像有10张灰度图,尺寸为92﹡112,背景为黑色或灰色,表情、细节和人脸姿态都有变化,人脸深度与平面旋转可达到近20°,尺寸也有近10%的变化。ORL人脸库中部分人脸图像如图4所示。
2.2 改变学习率(learning rate)对网络的影响
学习率是一个最常设定的超参数。学习率设置得越大,训练时间越短,速度越快;而学习率设置得越小,训练的准确度越高,但需要更多的时间收敛。本文选择指数衰减法来自动调整学习率,随着迭代次数的增加,学习率根据式(1)自动调整。
图4 ORL人脸库中部分人脸图像
2.3 改变C1层、C2层卷积核数量、全连接层特征维数对网络识别率的影响
本文通过改变各卷积层卷积核数量来选择合适的卷积核数量与全连接层的特征维数,以探究卷积核数量和全连接层特征维数对卷积神经网络识别率的影响。本文训练迭代次数为10 000次,采用测试集对识别率进行验证。改变C1层卷积核数量时,识别率的变化如表2所示。
表2 C1层卷积核数量对网络识别率的影响
卷积核个数246810 测试集准确率/%93.7595.2196.7593.6888.23 训练集准确率/%97.1496.2597.4796.2593.14
由表2可知C1层卷积核的个数为6时,可以达到较好的识别率。
改变C2层卷积核数量对网络识别率的影响如表3所示。
表3 C2层卷积核数量对网络识别率的影响
卷积核个数68101214 测试集准确率/%91.3793.4396.7898.4396.88 训练集准确率/%94.2393.7498.2598.4497.87
由表3可知C2层卷积核的个数为12时,可以达到较好的识别结果。
改变全连接层特征维数对网络识别率的影响如表4所示。
表4 全连接层特征维数对网络识别率的影响
卷积核个数100120140160180 测试集准确率/%95.8796.8898.4498.7597.23 训练集准确率/%96.3198.4398.7399.4498.12
由表3可知全连接层特征维数为160时,可以达到较好的识别结果。
故本文选择6-12-160为卷积神经网络的最终结构,达到该网络结构的最优识别率,样本的成本函数损失图如图5所示,该网络在ORL数据库识别的准确率如图6所示。由图5、图6可以看出,在经过1000轮的训练之后即可达到稳定状态,降低了训练时间,且达到最优识别率。
图5 成本函数损失图
图6 ORL数据库识别准确率图
2.4 与其他算法比较
为验证识别效果,选择PCA[9]、LBPH[10]、PCA+SVM[11]和CNN[12]这4个人脸识别算法与本文设计的卷积神经网络算法在ORL人脸数据库中进行对比,人脸识别准确率对比如表4所示。
表4 各识别算法在ORL数据库准确率
识别算法准确率/% PCA86.53 LBPH91.25 PCA+SVM95.63 CNN94.4 本文算法98.75
由表4可知本文设计的算法在同等条件下识别准确率更高。
3 结论
本文设计了基于神经网络的改进人脸识别算法,通过ORL人脸数据库测试,得到了较好的识别率。此外,根据实际场景远距离采集人脸,因为低分辨率的人脸图像会导致识别率较差,所以针对该问题,本文采用了pix2pix模型实现了超分辨率重建,使得待识别的人脸图片有较高分辨率,进一步提高了人脸的识别率并减少了训练时间。
[1] 张翠平, 苏光大. 人脸识别技术综述[J]. 中国图象图形学报, 2000(11): 7-16.
[2] Sirovich L, Kirby M. Low-dimensional procedure for the characterization of human faces[J]. Journal of the Optical Society of America. A, Optics and image science, 1987, 4(3): 519-524.
[3] Yang M H. Kernel Eigenfaces vs. Kernel Fisherfaces: Face recognition using kernel methods[C] IEEE International Conference on Automatic Face and Gesture Recognition. IEEE, 2002: 215-220.
[4] Belhumeur P N, Hespanha J P, Kriegman D J. Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1997, 19(7): 711-720.
[5] Elliptical Local Binary Patterns for Face Recognition[C] Asian Conference on Computer Vision. Springer-Verlag, 2012: 85-96.
[6] FU Z Q. Deep learning in target detection[C]. Proceedings of 1st International Conference on Education and Educational Development, Wuhan, 2020: 35-40.
[7] 刘长伟. 基于MTCNN和Facenet的人脸识别[J]. 邮电设计技术, 2020(2): 32-38.
[8] 董洛丞, 陈张平. 基于改进的卷积神经网络的人脸识别算法[J]. 杭州电子科技大学学报:自然科学版, 2018, 38(05): 55-59, 97.
[9] Deng W, Hu J, Lu J, et al. Transform-Invariant PCA: A Unified Approach to Fully Automatic FaceAlignment, Representation, and Recognition[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2014, 36(6): 1275-1284.
[10] 赵远东, 刘振宇, 柯丽, 等. 人脸识别中AlexNet网络设计和改进方法研究[J]. 通信技术, 2019, 52(3): 592-598.
[11] 杨梅芳, 石义龙. 基于2DPCA+PCA与SVM的人脸识别[J]. 信息技术, 2018(2): 32-36.
[12] 顾江鹏, 袁和金. 基于HOG与卷积神经网络的人脸识别研究[J]. 软件导刊, 2019, 18(3): 20-24.
Improved Face Recognition Algorithm Based on Neural Network
HU Mei-jiao, SHANG Rui, WANG An-yu
(School of Intelligent Engineering, Liaoning Institute of Technology, Jinzhou 121001, China)
Traditional face recognition technologies need to process a large number of face images resulting in long training time. To address the problem, a convolutional neural network algorithm is designed and a Pix2Pix model is used to achieve super-resolution reconstruction, and finally experiments are conducted on the ORL database. Compared with traditional methods, the scheme proposed provides better recognition results, requires less training time, and outperforms most traditional recognition algorithms in terms of recognition accuracy and training time.
face recognition; convolutional neural network; pix2pix model
10.15916/j.issn1674-3261.2021.06.010
TM76
A
1674-3261(2021)06-0396-04
2021-02-24
胡美姣(1994-),女,辽宁朝阳人,助教,硕士。
责任编辑:陈 明