分区域特征提取的人脸识别算法

2020-04-29 06:39李云红聂梦瑄苏雪平周小计何琛

李云红 聂梦瑄 苏雪平 周小计 何琛

摘要:针对人脸识别准确率易受人脸表情变化影响的问题,提出了一种分区域特征提取的人脸识别算法。首先,在预处理图像上标记出14个人脸关键点,并将人脸图像划分为表情易变区域和不变区域;然后,分别用Gabor+LBP和Gabor+分块LBP两种特征提取通道对表情不变区域和易变区域进行特征提取;最后,将所得的特征直方图级联,并进行身份验证。经FERET(face recognition technology),LFW(labled faces in the wild)及自制人脸数据库验证,文中算法准确率分别达到了99.14%,98.5%,96.52%。在FERET数据库中,该文算法准确率较DeepID和Gabor+分块LBP算法分别提高了1.88%和3.6%,F1(调和平均数)分别提高了1.8%和2.86%。实验结果表明,分区域特征提取的人脸识别算法对人脸表情变化具有很强的鲁棒性。

关键词:分区域特征;人脸易变区域;人脸不变区域;特征直方图

中图分类号:TP391.4

DOI:10.16152/j.cnki.xdxbzr.2020-05-015

Face recognition algorithm based on regional feature extraction

LI Yunhong, NIE Mengxuan, SU Xueping, ZHOU Xiaoji, HE Chen

(School of Electronics and Information, Xi′an Polytechnic University, Xi′an 710048, China)

Abstract: In order to solve the problem that the accuracy of face recognition is easily affected by the change of facial expression, a face recognition algorithm based on feature extraction by region is proposed. Firstly, on the processing image  14  key points of people face is marked, and the face image is divided into expression variable region and invariable region. And then respectively using Gabor+LBP and Gabor+block LBP  two kinds of feature extraction channel for expression invariant region and mutable region to extract feature. Finally, the feature histogram is cascaded and the authentication is carried out. Verified by FERET(face recognition technology), LFW(labled faces in the wild) and self-made Face database, the accuracy reached 99.14%, 98.5% and 96.52%, respectively. In the FERET database, the accuracy of the algorithm in this paper is 1.88% and 3.6% higher than  DeepID and Gabor+block LBP algorithm, and the F1(harmonic average) is 1.8% and 2.86% higher. Experiments show that the face recognition algorithm based on regional feature extraction is robust to face expression changes.

Key words: subregional features; face variant region; face invariant region; feature histograms

人脸识别由于其方便快捷,且具有非侵犯性等特点,已被广泛应用于安检系统、打卡签到等方面。人脸识别技术发展至今,在刚性条件下识别准确率已经有了大幅度的提升,但是在非刚性条件下,人脸表情不同、噪声干扰、以及光照变化等因素[1-6]对识别结果产生了不可预测的影响。张敦凤等人提出的分块特征提取算法能够提取到人脸的绝大部分特征信息,避免了特征丢失的风险[7]。但没有考虑到表情變化对面部不同区域提取到的特征的影响,进而导致识别准确率无法进一步提高。宿鹏等人提出的Gabor+分块LBP虽然能够提取到表达人脸特征的信息,但未考虑到特征丢失和表情变化对人脸识别精度的影响[8]。Gong等人提出的算法能够识别同一个人不同年龄段的人脸特征,但未考虑光照等因素的变化[9]。Sun等人提出的基于联合识别-验证的深度学习人脸表示方法能够增大类间间距,缩小类内间距[10],但当一个人表情发生变化时识别准确率会有明显的下降。要提高人脸识别的准确率必须同时考虑识别效率[11-13]、光照以及人脸表情变化等因素[14-16]。

针对以上问题,本文提出了一种分区域特征提取的人脸识别算法,算法流程图如图1所示。实验结果表明,该算法可以有效地降低表情变化对识别准确率的影响,并且增强了识别准确率对光照变化的鲁棒性。

1 本文算法

1.1 图像预处理网络

图像预处理采用卷积神经网络,将训练集中每幅人脸图像经过预处理网络进行多次迭代,以获取最佳网络参数来表达人脸关键点位置信息。首先,搜集整理1 000张人脸图像,其中,300张作为测试集,700张作为训练集。手工标注训练集中人脸图片的关键点,包括额头、眉毛、眼睛、鼻尖、脸颊、嘴角、下巴等共14个关键点。然后,用处理后的训练集对预处理网络进行训练,获得能够表达关键点位置信息的最优参数。最后,使用测试集对预处理网络进行验证。

将训练集中的人脸图像输入到预处理网络,得到人脸关键点预测位置。通过欧式距离初步定位每一个预测的关键点坐标,如式(1)所示。其中,Li表示第i个预测关键点定位与真实位置的欧氏距离,yi表示经过预处理网络后得到的第i个人脸关键点预测位置,yi表示手工标记的第i个人脸关键点位置。网络经过多次迭代,直至Li的值小于设定的阈值。

Li=‖yi-yi ‖22。(1)

对14个关键点得到的欧氏距离求和,使每幅人脸图像各自具有整体效果最优的关键点定位。如式(2)所示,ai代表不同关键点所占的权重,表1为不同关键点所占权重,L表示使每幅人脸图像中14个关键点定位整体效果最优的欧氏距离。

L=∑14i=1aiLi。(2)

对测试集中所有人脸图像利用式(3)求平均关键点定位效果最优的欧氏距离,其中,N表示训练集中包含的人脸图像数量。整个预处理过程要使式(3)中Y值最小化,以获取平均效果最优关键点位置信息的预处理网络参数,表2为网络主要参数值。

Y=1N∑Ni=1L。(3)

经过训练后的预处理网络对人脸图像的处理效果如图2所示,在表情和光照变化的情况下预处理网络能够准确地标记出不同表情时的关键点位置信息,但当关键点部位有遮挡时,例如镜片反光,这部分标记出的关键点位置与真实位置略有偏差。

1.2 人脸区域分割

由于人脸不同区域的变化对提取到特征的相似度会产生很大的影响,所以,有必要对面部特征进行分区域提取。通常对于面部区域划分的准确性极大地依赖面部关键点定位的准确程度。经过预处理后的每张人脸图像对眉毛、眼睛、鼻子、嘴巴等关键点进行了标注,可依据关键点位置的差异将人脸分为表情易变区域和不变区域。例如额头、鼻子、脸颊等部位受表情变化的影响较小,可将其归为不变区域,而眉毛、眼睛、嘴巴等部位受表情变化的影响较大,可将其归为易变区域。

由于易变区域和不变区域边界较模糊,无法准确地进行区域分割。因此,本文采用边缘重叠分割法,即将分割线作为模糊带,使其成为两个相邻区域的交集。这种区域分割方法虽然增加了数据的冗余性,但避免了边缘特征丢失的问题,从而有效地解决了边缘区域难划分的问题。

1)水平分割边界的确定:假设对左右眉毛关键点标注的坐标分别为(x1,y1)和(x2,y2),对左右眼睛关键点标注的坐标分别为(m1,n1)和(m2,n2)。分别对左右两边眉毛和眼睛求垂直方向的中间点坐标,如式(4)和(5)所示。把两点的连线作为一条水平分割边界,并且将这条水平分割线作为模糊带处理。

(xa,ya)=(x1+m12,y1+n12),(4)

(xb,yb)=(x2+m22,y2+n22)。(5)

若人脸表情变化较大,致使某两对关键点中心位置的连线不处于同一条水平分割线。可将两个中心的点分开处理,让其纵坐标不变,横坐标变化从而得到两条水平分割线,对应的人脸区域分割图如图3所示,图3中眉毛与眼睛两对关键点对应的中心点虽然不处于同一条水平分割线,但是分开处理两个中心点也能很好的区分表情易变区域和表情不变区域。

若只能确定一个中间点,比如下巴和嘴下角的关键点。设嘴下角关键点坐标为(x3,y3),下巴关键点坐标为(m3,n3)可以得到中间点的位置如公式(6)所示。过中间点作水平线作为水平分割线。

(xc,yc)=(x3+m32,y3+n32) (6)

2)垂直分割边界的确定:垂直分割线是由两个横坐标相邻的关键点得到一个中心点位置,再过中心点做垂线。假设左右眼睛关键点标注的坐标分别为(p1,q1)和(p2,q2),鼻子关键点的坐标为(a1,b1)。分别求左眼和右眼到鼻子的水平中心点,如式(7)和(8)所示。分别经过两个中心点作x轴的垂线,垂线即就是垂直分割边界,把垂直分割边界作为模糊带处理。

(xd,yd)=(p1+a12,q1+b12),(7)

(xe,ye)=(p2+a12,q2+b12)。(8)

若相邻的关键点属于同类特征(比如嘴角的4个关键点同属于嘴部特征),则不对其进行水平分割或垂直分割。属于异类关键点,则分别对每两个相邻的关键点进行水平分割或垂直分割:若是上下相邻的两个关键点,则计算水平分割线;若是左右相邻的两个关键点,则计算垂直分割线。

圖4为针对人脸不同表情进行区域分割的示意图。根据已标注的14个关键点可将人脸图像分为多个区域,将包含眼部、嘴巴、眉毛关键点的区域归为表情易变区域,将包含鼻子、额头、脸颊、下巴关键点的区域归为表情不变区域。还有一部分子区域不包含关键点,经过统计这些区域大部分都落在额头、脸颊、下巴、鼻梁等区域,所以,将这部分区域也划分为表情不变区域。

1.3 Gabor算法

Gabor算法的原理和人类视觉系统中单细胞对光照刺激的反应很类似。它可以有效地提取到输入图像的频域信息和局部空间信息。Gabor算法对输入图像的边缘信息非常敏感,而且该算法具有多尺度和多方向的特性,能够有效地减弱光照变化和噪声干扰对人脸特征提取的影响。由于Gabor算法的优势,使得它被广泛应用于图像特征提取的过程中。

式(9)为二维Gabor核函数的定义式。其中:u和v分别代表选取核函数尺度和方向的数量;z是图像像素坐标点;σ表示标准差;ku,v表示选取的尺度参数和方向参数的乘积。Gabor核函数是复函数,可分为实部和虚部。实部滤波可平滑图像,减少光照敏感度。虚部滤波能有效描述图像边缘信息。

gu,v(z)=

‖ku,v‖2σ2e(-‖ku,v‖2·‖z‖22σ2)eiku,vz-e-σ22。(9)

选取不同尺度和方向的卷积核对输入图像特征提取的效果不同。图5为Gabor卷积核尺度和方向参数的变化与识别准确率的关系图。根据实验结果可知,尺度参数设置为5,方向参数设置为8,可以最大限度提取到图像的特征信息。所以,对输入图像进行特征提取,共得到40张特征提取图。再把提取到的特征进行融合,最终得到图像的多尺度和多方向的特征信息。图5为Gabor卷积核尺度和方向参数的变化与识别准确率关系图。

1.4 分块LBP算法

由上一步可知,Gabor特征提取实部和虚部各有40个滤波器,对输入图像进行处理后的信息量是原来的40倍。因为用Gabor算法提取到的特征包含了大量的冗余信息,所以需要对提取的特征进行降维操作。

传统的LBP算法是将输入的特征信息进行降维后再与数据库中人脸特征作对比,判断是否属于同一人。但是这种方法忽略了提取到的特征的位置信息。其实,特征出现位置的不同代表了不同的含义,比如头发和眉毛经过LBP算法处理产生的十进制数字有很大概率是相同的,但由于它们的位置不同,所以代表了不同的含义。通过使用分块LBP算法可以根据特征出现位置的不同,把相似的特征信息进一步的细化,以区分相似特征之间的不同,很大程度上提高了人脸识别的准确率。

理想情况下,对输入特征越细化(分块数越多),越能表达脸部的精细特征。但随着分块数的增加会成倍地增加计算量,造成识别速度和识别准确率下降等情况。所以,要权衡识别准确率和识别速度两者之间的关系,在保证识别准确率的情况下使分块数尽可能小。实验选取了不同分块数进行识别准确率的测试,与文献[8]的实验结果不同,本文实验数据表明,当分块数为2×2时,在保证识别速度的情况下,可以有效地提高识别准确率。图6为在不同影响因素下分块LBP的分块数量选取与识别准确率的关系图。由于表情易变区域会随表情变化产生较大的改变,因此,本文对该区域采用Gabor+分块LBP进行特征提取,从而细化易变区域的每个部分。对表情不变区域直接采用Gabor+LBP进行特征提取。

Gabor可以从多个方向提取到输入图像不同尺度的特征信息,从而避免光照和噪声等因素的影响,但存在特征冗余问题。而分块LBP算法可以减少数据维度,并区分相似特征。把两种特征提取方法进行级联,使其优势互补,可以减少光照、噪声以及表情变化对人脸识别准确率的影响。

1.5 線性判别法

选取的判别方法不同,得到的识别准确率也有所不同。为了能够尽量区分同类和异类特征之间的差异,以提高识别准确率,本文选取经典的LDA(linear discriminant analysis)算法。该算法对空间中分布的特征具有最佳可分离性,使用此方法得到的新空间中样本的类间散布矩阵最大,并且类内散布矩阵最小。因此,LDA算法是一种有效的特征提取方法。

LDA算法的核心是将高维数据映射到子分类空间。新的分类空间既要保证类内间距足够小,又要保证类间间距足够大。假设模式1为X1=(x1,x2,…,xk),模式2为X2=(xk+1,xk+2,…,xn),Ni为各模式中所含的样本数量,各模式样本均值为i。经过映射矩阵H后变换为z=(z1,z2,…,zn)。即就是z=HTx。其映射的具体步骤如下:

1) 设样本数据中xi的均值为Xi,xi为一维列向量,则中心点为xi,其中Ni为xi样本的数目。

xi=1Ni∑x∈Xix,i=1,2。(10)

2) 中心点经过H变换得到zi,zi就是样本集Xi的中心点的投影。其中,类内间距JH是由样本各点到中心点距离的平方和来表示,Si表示类内散度。

zi=HTxi=1Ni ∑x∈XiHTx=1Ni ∑z∈Ziz,i=1,2,(11)

JH=HTSHH=HT∑ci=1SiH,(12)

Si=∑x∈Xi(x-xi)(x-xi)T,i=1,2。(13)

类间距离JB主要是由两个不同类中心点之间的距离来衡量,与类内距离计算方式类似。

JB=|zi-zj|2=HT(xi-xj)(xi-xj)TH,(14)

SB=(xi-xj)(xi-xj)T,(15)

JB=HT∑ci=1SBH。(16)

其中,SB表示类间散度。

设目标函数为J(H),通过求导使目标函数J(H)取最大值。最后得到的人脸特征信息具有最佳类内间距和类间间距,

J(H)=JBJH=HTSBHHTSHH。(17)

2 实验结果与分析

选用LBP+SVM,HOG+HFA,LF-CNN,DeepID,Gabor+分块LBP作为对比算法与本文算法分别在FERET和LFW数据库上进行对比实验。在测试集样本数量为600时,观察每种算法识别准确率、查准率、召回率、F1(调和平均数)的差异,进而判断本文提出算法的优劣,实验结果如表3、表4所示。

从表3中可以得出本文算法的准确率均高于对比算法。Gabor+分块LBP算法准确率与本文算法相差3.6%。本文算法的召回率相较于LF-CNN算法低1.64%,但从整体来看,本文算法的调和平均数最高,超出LF-CNN算法3.94%,且本文算法的识别耗时在对比算法中最低。

从表4中可以得出本文算法的准确率均高于对比算法。DeepID算法准确率与本文算法相差0.89%。本文算法的召回率相较于DeepID算法低0.81%,但从整体来看,本文算法的调和平均数最高,超出DeepID算法2.54%,且本文算法的识别耗时在对比算法中最低。

本文算法主要针对光照和表情变化时人脸识别准确率的变化,由于FERET和LFW数据库光照变化不大,因此,本文自制了一个表情和光照变化比较大的数据集进行验证,此数据集包含50个人共300幅人脸图像,实验结果如表5所示。图7~9为使用本文算法输入人脸图像的识别结果。

从表5可以得出本文算法的准确率均高于对比算法。 对比算法中表现最好的Gabor+分块LBP算法准确率与本文算法相差2.87%。 本文算法的召回率相较于Gabor+分块LBP算法低0.78%, 但从整体来看, 本文算法的调和平均数最高, 超出Gabor+分块LBP算法0.85%。 本文算法的识别耗时也比Gabor+分块LBP算法低0.22 s。

由图7和图8可以看出,当输入人脸图像在光照、表情变化较大时仍能精确匹配到对应的人脸图像。由图9可以看出,输入人脸图像丢失了某个关键点时,例如闭眼丢失掉眼部关键点,也能得到正确的匹配结果。

3 结 语

本文提出了一种分区域特征提取的人脸识别算法,通过预处理网络得到人脸14个关键点位置信息,把预处理后的人脸图像划分为易变区域和不变区域,并用Gabor+分块LBP和Gabor+LBP算法分别提取表情易变区域和不变区域的特征信息,最后把得到的级联特征直方图利用线性判别法进行人脸识别。并在光照和人脸姿态变化的数据库中进行识别率验证,实验结果表明,分区域特征提取的人脸识别算法对人脸不同表情具有很好的辨识度,同时能够有效地减少光照和噪声对输入图像的干扰,提高了非刚性条件下的识别准确率,是一种有效的人脸识别算法。分区域特征提取的人脸识别算法也面临着由于遮挡影响了关键点的定位,导致对人脸的区域分割产生误差,使识别率下降的问题。在接下来的工作中,将主要针对预处理网络中因遮挡导致关键点定位不准确的问题展开研究。

参考文献:

[1] 郭梦丽,达飞鹏,邓星,等.基于关键点和局部特征的三维人脸识别[J].浙江大学学报(工学版),2017,51(3):584-589.

GUO M L, DA F P, DENG X, et al. Three-dimensional face recognition based on key points and local features[J].Journal of Zhejiang University (Engineering Science),2017,51(3):584-589.

[2] 阮凯,邱卫根.多信息融合的深度学习人脸表情识别算法研究[J].计算机工程与应用,2019,55(5):192-196.

RUAN K, QIU W G. Study on deep learning facial expression recognition algorithm based on multi-information fusion[J].Computer Engineering and Applications,2019,55(5):192-196.

[3] HE L X, LI H Q, ZHANG Q, et al. Dynamic feature matching for partial face recognition[J].IEEE Transactions on Image Processing, 2019, 28(2):791-802.

[4] WANG L P,LUO A W.A joint matrix minimization approach for multi-image face recognition[J].Science China Mathematics,2018,61(7):1337-1352.

[5] ZHAO J,ZHANG C,ZHANG S L, et al.Pre-detection and dual-dictionary sparse representation based face recognition algorithm in non-sufficient training samples[J].Journal of Systems Engineering and Electronics,2018,29(1):196-202.

[6] ZHANG C,GU Y Z,HU K L,et al.Face recognition using SIFT features under 3D meshes[J].Journal of Central South University,2015,22(5):1817-1825.

[7] 張敦凤,高宁化,王姮,等.基于分块LBP融合特征和SVM的人脸识别算法[J].传感器与微系统,2019,38(5):154-156.

ZHANG D F, GAO N H, WANG H, et al. Face recognition algorithm based on segmented LBP fusion feature and SVM[J].Sensors and Microsystems,2019,38(5):154-156.

[8] 宿鹏. 基于LBP的人脸识别算法研究[D].哈尔滨:哈尔滨理工大学,2019.

[9] GONG D H, LI Z F, LIN D H, et al. Hidden factor analysis for age invariant face recognition[C]∥2013 IEEE International Conference on Computer Vision. Sydney:IEEE, 2013:2872-2879.

[10]SUN Y, WANG X G, TANG X O.Deeplearning face representation by joint identification-verification[EB/OL].2014:arXiv:1406.4773[cs.CV].https://arxiv.org/abs/1406.4773.

[11]ZHANG K P, ZHANG Z P, LI Z F, et al. Joint face detection and alignment using multitask cascaded convolutional networks[J].IEEE Signal Processing Letters, 2016, 23(10):1499-1503.

[12]HAMESTER D, BARROS P, WERMTER S. Face expression recognition with a 2-channel convolutional neural network[C]∥2015 International Joint Conference on Neural Networks(IJCNN). Killarney:IEEE, 2015:1-8.

[13]CHENG J C,LI Y L,WANG J L, et al.Exploiting effective facial patches for robust gender recognition[J].Tsinghua Science and Technology,2019,24(3):333-345.

[14]BONG K, CHOI S, KIM C, et al. Low-power convolutional neural network processor for a face-recognition system[J].IEEE Micro, 2017, 37(6):30-38.

[15]LIU J,JING X J,LIAN Z F, et al.Local Gabor dominant direction pattern for face recognition[J].Chinese Journal of Electronics,2015,24(2):245-250.

[16]WANG Q C, WANG B B, HAO X J, et al. Face recognition by decision fusion of two-dimensional linear discriminant analysis and local binary pattern[J]. Frontiers of Computer Science, 2016, 10(6):1118-1129.

(編 辑 李 静)