蔡祥云, 王小鹏
(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)
目前人脸识别技术能识别人脸图像的身份,但无法准确辨别输入人脸的真伪,因此,如何自动、高效地辨别真假人脸,确保人脸识别系统安全已成为人脸识别技术中一个迫切需要解决的问题。对于人脸识别系统来说,常见的攻击方式主要有三种[1],包括合法用户的照片、视频以及合成的三维模型。Tirunagari S等人[2]利用动态模式分解(dynamic mode decomposition,DMD)方法捕获视频中诸如眨眼、嘴唇变化和其他面部动态特征,以此进行面部欺骗检测;Jukka K等人[3]率先将面部动态纹理应用于人脸活体检测研究,通过局部二值模式(local binary pattern,LBP)算法学习和检测面部的微纹理结构;Tan X等人[4]利用Lambertian模型,以潜在样本的形式提取关于人脸或者照片的不同面部特征的信息,在此基础上使用稀疏逻辑回归模型分类真假人脸。相较于手工设计特征,深度学习[5]能够提取更高层次的特征描述,很大程度上提升了人脸识别、物体分类等计算机视觉方面的性能。
本文提出基于局部感受野的极限学习机(local receptive fields based extreme learning machine,ELM-LRF)的活体检测算法。实验证明算法在保证了分类性能的同时,极大地缩短了训练时间。
ELM-LRF作为深度学习模型的一种,具有频率选择和平移不变特性,已被广泛应用于计算机视觉和机器学习领域[6]。图1给出了算法的网络结构,该模型仅有一个隐含层,如其训练参数和训练时长较传统的神经网络均大幅下降,同时具有很好的分类能力。
图1 ELM网络结构
图2给出了人脸活体检测算法的框架,算法流程如图3所示。
图2 活体检测算法整体框架
图3 人脸活体检测流程
方法的具体步骤为:
1)人脸图像预处理。首先对摄像头采集到的人脸图像进行预处理,处理后的人脸图像大小为d×d。
3)计算池化图矩阵。池化结构用于形成组合节点,hp,q,k表示第k个池化图中组合节点(p,q),则
(1)
式中e为池化中心到边的距离,池化图与特征图的大小相同。平方运算和求和运算分别将非线性校正和平移不变性引入到网络中。
4)计算输出权重的闭式解。池化层和输出层采用全连接,利用正则化最小二乘法解析计算输出权重β。对输入样例x,计算特征图和池化图的节点值,将所有组合节点连接,形成行向量,然后将N个输入样例的行向量组合,得到组合层矩阵H∈RN×K·(d-r+1)2,则输出权重矩阵为
(2)
ELM-LRF的训练方法有效降低了局部过拟合风险,使网络能够更加充分地对输入提取特征。
为验证ELM-LEF模型在人脸活体检测中的有效性,将该模型与其他先进的人脸活体检测算法进行了HTER(half-total error rate)和检测正确率两方面的比较,HTER计算方法为HTER=(FAR+FRR)/2。其中,FAR为错误接收率,是指将假体人脸错判为真实人脸的概率;FRR为错误拒绝率,表示将真实人脸错判为假体人脸的概率。另外,实验选用CASIA-FASD[7]和NUAA[4]公共人脸欺骗库进行人脸活体检测实验。ELM-LRF模型中局部感受野r=5×5,池化大小e=3,平衡参数C=0.01。实验平台为MATLAB 2017b,2.30 GHz的Intel®CoreTMi5 CPU,16 GB RAM。
2.1.1 CASIA-FASD数据库
CASIA-FASD数据库包含真人脸和假人脸样本类型,该数据库共包含50个样本目标,每个目标对应12个人脸视频序列,包括3个真人脸视频和9个假人脸视频,三个真人脸视频由一个低质量的网络摄像头,一个较高质量的USB摄像头以及型号为Sony NEX—5摄像头采集。数据库中所有的视频都在非限制环境下采集。为了充分考虑不同的攻击方式,数据库的假人脸样本种类较其他数据库更为丰富。首先,每个目标人脸的高清图片被显示在不同的媒介上,包括普通的打印纸,光滑的相片打印纸以及一个高分辨率的显示屏。随后,纸打印的人脸眼睛区域被去除,以模仿眼攻击方式。该数据库被分成训练集和测试集,如表1所示。
表1 CASIA-FASD数据分类
2.1.2 NUAA数据库
NUAA数据库是首个公认的人脸欺骗数据库,数据库是由一个通用的网络摄像头在不同的照明条件和场所下分3次收集得到,共包括15个目标,数据库图片数量如表2所示。该数据库包含了光照变化、性别差异、有无遮挡物等丰富的外观变化。为了模拟假人脸攻击,摄像头收集的假体人脸包含了弯曲、旋转空间位置移动等照片欺诈的多种运动形式。
表2 NUAA数据库图片数量 幅
训练数据集采用NORB数据库[8],该数据集包含24 300幅训练用立体图像,24 300幅测试用立体图像,数据集中的每个样本有两幅图,并且尺寸都经过了归一化,背景也是一致的。在训练ELM-LEF网络之前,首先需要把数据库中的图像数据转化成ELM-LEF网络可以读入的双通道的mat文件,mat文件中的数据为double类型,input_ch为2。
为了训练ELM-LRF网络,将训练集分成4个batch,训练过程如下:1)实验用其中的三个batch进行训练,利用剩余的一个batch进行验证,训练过程无需进行迭代操作;2)利用全部的batch作为训练集,第四个batch作为验证集,对训练后的模型进行验证。
至此,训练过程结束,经过验证可得到该模型在训练集上的准确率接近100 %。图4分别给出了该数据集中前100个图像经过卷积和池化后得到的特征图。
图4 数据集训练得到的可视化特征
1)CASIA-FASD数据库的实验结果
在CASIA-FASD数据库中,将所提算法与MSLBP[9]、DMD-LBP[10]、DoG[11]、CNN[12]和DBN[13]这几种算法进行了比较。表3给出了不同算法在数据库上HTER及检测正确率的实验结果。可以看出,通过ELM-LRF网络对真假人脸进行分类时,其检测正确率最高,性能最好。MSLBP及DoG算法由于使用单一特征进行人脸活体检测,检测性能较低。CNN和DBN网络均采用多层卷积操作,能够得到更高层次的抽象特征,检测性能较高。
2)NUAA数据库的实验结果
由表3中在NUAA数据库上不同算法的实验结果可以看出,在基于手工设计特征的活体检测方法中,MSLBP、DMD-LBP和DoG算法对真假人脸的分类性能较差。基于深度模型的人脸活体检测算法的分类性能较高,其中ELM-LRF模型要比其他微调的深度学习算法的分类精度更高,与CNN和DBN模型相比,ELM-LRF将半错误率(HTER)从12.26 %降到了6.64 %。
表3 CASIA-FASD和NUAA数据库中不同算法的性能 %
本文提出了一种基于LRF-ELM模型的人脸活体检测算法,并在CASIA-FASD及NUAA数据库上与其他先进的人脸活体检测算法进行了实验对比。实验结果表明:相较于手工设计特征和传统的神经网络活体检测方法,LRF-ELM算法检测准确率更高,证明了该模型在分类能力方面具有高效性,提高了人脸识别系统的性能。同时,单隐含层的ELM模型对复杂输入不能提取到更多有效的特征表达,因此,进一步完善ELM模型,使其能够处理更复杂的输入,学习得到更高层次的抽象特征将是本课题下一步的研究内容。