摘" 要:为保障移动终端中的用户个人信息及财产安全,提出了一种在移动终端并行执行人脸识别和活体检测进行身份认证的方法,在人脸检测后通过并行执行人脸活体检测步骤和人脸识别步骤,当两者同时通过时,认证成功。通过实验发现,该方法的认证准确率达97.7%,且相较于串行活体检测和人脸识别的身份认证方法,其执行时间缩短736 ms,大大提升了移动终端身份认证的效率。
关键词:人脸识别;活体检测;身份认证
中图分类号:TP311" " 文献标识码:A" 文章编号:2096-4706(2024)18-0087-04
Research on Identity Authentication System Based on Parallel Liveness Detection and Face Recognition
XIE Jing1, ZHAI Shubin2
(1.Patent Examination Cooperation (Tianjin) Center of the Patent Office, CNIPA, Tianjin" 300304, China;
2.Tianjin Haihe Media Group, Tianjin" 300304, China)
Abstract: In order to ensure the security of users personal information and property in mobile terminals, a method for identity authentication is proposed by parallel execution of face recognition and liveness detection on mobile terminals. After face detection, the face liveness detection and face recognition steps are executed in parallel. When both pass simultaneously, the authentication is successful. Through experiments, it is found that the authentication accuracy of this method reaches 97.7%. Compared to identity authentication method of serial liveness detection and face recognition, its execution time is shortened by 736 ms, greatly improving the efficiency of mobile terminal identity authentication.
Keywords: face recognition; liveness detection; identity authentication
0" 引" 言
移动终端的应用给用户带来了极大的便利,但是移动终端中存储了大量的用户个人隐私数据,例如个人相册、短信、聊天信息等,尤其是移动支付(免密支付)的诞生,用户终端的支付APP一般会绑定用户的银行卡,如果用户的移动终端被其他用户使用,则其他用户可以查看或使用移动终端中的各种信息,并进行购物、支付等操作,使用户的个人信息安全及财产安全受到威胁。因此,为了保障移动终端中的用户个人信息安全,移动终端往往会设置基于人脸识别的身份认证模块。
人脸识别技术始于20世纪60年代,近年来,人脸识别技术得到了快速发展,即使在光线不好的情况下、不同面部表情、不同方位、甚至部分遮挡的情况下也能识别人脸[1]。而在人脸识别系统中,为了防止图片攻击或视频攻击,保证人脸识别的安全,需要进行活体检测。常用的活体检测方法一般可分为三类:
1)使用挑战和相应方法进行活体检测,例如系统利用眨眼或张嘴等运动来区分真实用户和照片[2]。
2)利用面部纹理(图像质量)进行活体检测,例如利用纹理信息,包括平滑度、粗糙度等来区分真实用户和照片[3]。
3)结合两种或多种生物识别技术的多模态活体检测方法,例如使用语音和面部信息组合进行活体检测[4]。
在人脸身份认证系统中,通常会在身份认证之前进行活体检测,只有人脸图像被判定为活体时,人脸身份认证才有效,否则就会被判定为无效[5]。而活体检测与人脸识别的顺序执行,使得人脸身份认证的整体执行速度较慢,在移动终端的使用体验感不佳。如何提高人脸身份认证整体的执行速度,成为亟待解决的问题。
为此,本文设计的人脸身份认证系统,使用移动终端提取人脸图像特征,并通过模板匹配进行人脸身份认证,与此同时,根据检测到的人脸图像进行活体检测。由于并行执行了人脸识别与活体检测过程,可以减少人脸身份认证需要的整体时间,提升用户体验。
1" 人脸身份认证系统
本文设计的人脸身份认证系统框架如图1所示,主要包括图像采集模块、图像预处理模块、人脸检测模块、活体检测模块和人脸识别模块。图像采集模块采集得到包含人脸的图像序列后,对图像进行预处理,提升图像质量,然后经过人脸检测模块获取人脸区域,并裁剪得到仅包含人脸区域的图像,然后将得到的仅包含人脸区域的图像同时输入到活体检测模块和人脸识别模块,在活体检测模块提取人脸图像的LBP-DCT纹理特征,并通过SVM分类器判断目标是否为真是人脸,在人脸识别模块通过特征提取与特征匹配确定目标是否为经过认证的目标,当活体检测结果与人脸识别结果同时通过时,确定身份认证成功。
1.1" 图像采集模块
当需要进行身份认证时,移动终端开启摄像头采集视频流,获得人脸图像序列,并实时检测人脸图像的亮度是否充足,当用户所处的环境亮度较低时,自动打开闪光灯进行补光处理,提高采集图像的亮度。
人脸图像的亮度值计算如下:
其中,表示采集的人脸图像的平均灰度值,I(i,j)表示人脸图像图像第i行第j列的像素灰度值,M和N分别表示图像的宽和高。
设标准的亮度值为It,当时,需要对图像进行光强补充,需要补充的光照强度Iu为:
其中,K表示比例系数,用于控制光照强度。
1.2" 图像预处理模块
为克服图像采集过程中由于传感器和环境带来的噪声影响,在进行人脸图像处理之前,需对采集的图像进行一些常用的预处理,本文通过直方图均衡化、高斯滤波、灰度拉伸对采集的图像进行预处理[6],滤除图像中不相关的部分,突出图像细节,提高后续人脸检测、活体检测及人脸识别的准确性。
直方图均衡化就是把灰度分布集中在较窄区间的原始图像的直方图进行扩展,使其均匀分布,从而增强图像的动态范围。其处理过程如下:
1)计算原始图像的灰度级r0,r1,…,rL-1,其中L表示图像总的灰度级数。
2)计算各灰度级的概率:p(rk)=n(rk)/N,其中rk表示第k个灰度级,n(rk)表示第k个灰度级的像素数,N表示像素总数。
3)以像素分布累加概率作为像素灰度变换函数,计算图像像素分布累加概率:
4)计算均衡化后的各灰度级的值:
其中,0≤rj≤1。
高斯滤波使用高斯滤波函数计算图像中每个像素的变换。其处理过程为利用确定的卷积核扫描原始图像中的每个像素点,用卷积核确定的邻域内像素的加权平均值替代中心点像素的灰度值,越靠近中心点的像素,其权重值越大,远离中心点的像素,其权重值越小。通过高斯滤波处理使得图像更加平滑,同时更好的保留了边缘效果。
灰度拉伸利用简单的线性分段函数将图像的灰度范围映射到更宽的范围中,从而增加图像的对比度。其处理过程为:对经过高斯滤波处理后的图像进行直方图统计,基于直方图分布确定分段函数的两个转折点,并按照下式进行灰度变换:
1.3" 人脸检测模块
将经过图像预处理的人脸图像数据输入到人脸检测模块,多若干张图像进行检测,得到标记人脸包围框的图像,对图像进行裁剪,得到仅包含人脸的图像,并将所有的脸部区域图像归一化为64×64大小。人脸检测模块可基于MobileNet等轻量级神经网络实现。
1.4" 活体检测模块
活体检测模块的工作流程如图2所示。
基于传统的局部二值模式(LBP)纹理特征[7]的人脸活体检测,可以在图像分辨率较低时取得较好的检测效果,但是其只针对静态纹理特征,更适合基于图片的人脸活体检测。但是人脸视频包含丰富的人脸动态信息,仅提取单一图片的LBP纹理特征进行人脸活体检测,并不适用于进行基于视频的人脸活体检测,因此,为了考虑人脸动态信息,在利用LBP提取得到人脸静态纹理特征信息后,对其进行离散余弦变换以提取人脸的动态信息[6]。
对包含由N帧人脸图像的序列中的每一帧进行8邻域的LBP特征提取。以3×3的方形邻域内的中心像素点的灰度值为阈值,将周围8个像素点的灰度值与中心点像素灰度值进行比较,则邻域像素被编码为:
其中,st(i,j)表示像素点(i,j)的编码,gc表示中心像素点(ic,jc)的灰度值,gp表示中心像素点的3×3邻域的像素灰度值。其表现形式如图2所示。则最终中心像素的LBP纹理特征表示为:
其中,wij表示对应编码位的权重。
对于尺寸为64×64大小的人脸图像,经过LBP纹理特征提取后,图像变为一个1×59维的特征向量[8],综合N帧人脸图像,用于活体检测的图像序列变为了一个N×59维的特征矩阵。
对特征进行离散余弦变换(DCT),可以提取视频中的时间信息。一维离散余弦变换表示为:
其中f(n)表示输入的信号,N表示原始信号的点数,α(k)表示补偿系数:
选择对得到的LBP特征矩阵进行3层DCT处理,在第一层,对LBP特征矩阵的列进行DCT变换,选择其中的C个分量,得到1个59×C的特征矩阵;在第二层,选择前N/2帧和后N/2帧图像的纹理向量组成的矩阵分别进行一次DCT变换,得到2个59×C的特征矩阵;在第三层,将N帧图像平均分为4部分,对每部分图像的纹理向量组成的矩阵分别进行一次DCT变换,得到4个59×C的特征矩阵,最终,获得7×59×C的纹理特征矩阵。
将得到的纹理特征矩阵送入SVM分类器进行判别,根据SVM的输出结果判断输入的图像序列是真实的人脸,还是视频攻击。
1.5" 人脸识别模块
人脸识别模块接收人脸检测模块输出的脸部区域图像,对脸部区域图像划分,得到6个感兴趣区域图像,提取感兴趣区域的SIFT(尺度不变特征变换)特征,然后与数据库中预存的人脸各部分特征信息进行特征匹配,并根据特征匹配的结果判断是否识别到认证的人脸。
SIFT特征是一种十分稳定的局部特征,其对旋转、尺度缩放、亮度等具有鲁棒性[9],同时SIFT算法能够生成大量特征点,在机器视觉领域具有很重要的作用。SIFT算法的基本流程如下:
1)极值点检测:使用尺度空间滤波器搜索不同尺度空间上的图像位置,找到局部最大值和最小值。对于图像中的每一像素点,它需要与自己周围的8邻域,以及尺度空间中上下两层相邻的18个点进行比较,找到其中的局部最大值和最小值作为关键点。
2)关键点筛选:将对比度较低以及边界关键点进行去除,得到感兴趣的关键点。其中,通过将极值点的灰度值与阈值比较,将小于阈值的极值点剔除。如果一个极值点在平行边缘方向上的曲率较大,在垂直边缘方向上的曲率较小,则该极值点为边界点,因此,如果两个曲率的比值r=Chou/Cver,其中,Chou表示平行边缘方向上的曲率,Cver表示垂直边缘方向上的曲率,大于某一阈值r0,则将该极值点作为边界点进行剔除。
3)确定关键点方向:对于每一关键点,采集其所在高斯金字塔图像r半径区域内所有像素的梯度特征:梯度幅值和方向,具体计算方式如下:
计算关键点梯度后,使用直方图统计关键点邻域内像素的梯度幅值和方向,以直方图峰值,即最高柱代表的方向为关键点邻域内图像梯度的主方向。
4)生成关键点特征描述子:以特征点为中心,将图像坐标轴旋转θ角度,使其与特征点主方向相同,接着对每个关键点差生128维的特征描述子。SIFT算法可以在一张500×500大小的图像上生成大约2 000个特征点,其可以为单样本的人脸识别提供丰富的数据,从而适应移动终端的自动人脸识别[10]。
SIFT算法采用高维特征向量描述特征点,在进行特征匹配时,会将每个特征点与模板中的特征点进行交叉向量匹配,使得计算复杂度较高,并不适应移动终端的实现。而人脸图像中,对所有特征点进行交叉向量匹配会生成大量的冗余计算。由于五官信息具有较高的区分度,更能体现人脸的独特性,因此,本文选择提取人脸的五官区域作为感兴趣子区域,共得到左眼、右眼、鼻子、嘴巴、左耳、右耳6个子区域,分别进行SIFT特征提取,由于每个子区域的辨识率不同,为每个子区域设定一个匹配权值,分区域进行特征匹配,从而降低计算复杂度。
分别计算每个子区域之间的相似度:
其中,i=1,2,…,6,表示查询图像的第i个子区域特征向量,表示模板图像的第i个子区域特征向量,表示查询图像第i个子区域特征向量与模板图像的第i个子区域特征向量之间欧氏距离,其倒数可表示两个特征向量之间的相似度,距离越远,相似度越小。
整个人脸区域的相似度为:
其中,wi表示第i个子区域的匹配权值,。
2" 实验结果
测试选择10名对象,其中7名作为合法用户,即在系统中进行注册的用户,3名作为非法用户,对10个对象录制400段视频,其中50段真实人脸视频以及350段伪造人脸视频,每个对象测试5次,分别记录人脸检测执行时间、活体检测模块执行时间、人脸识别模块执行时间,并行执行活体检测和人脸识别的时间以及人脸识别的准确率,结果如表1所示。
确率较高,可以达到97.7%。同时,整个人脸身份认证的流程时间为109+1 154=1 263 ms,而顺序执行活体检测和人脸识别实现身份认证的时间为109+767+1 123=1 999 ms,本文提出的并行活体检测和人脸识别的身份认证方法使得人脸认证的时间明显低于顺序执行活体检测与人脸识别的过程,提高了人脸身份认证的速度,提升了用户体验。
3" 结" 论
为了保证用户个人隐私及信息安全,在移动终端进行活体检测及人脸识别进行人脸身份认证是必要的。通过活体检测过程可以有效地防止假脸攻击,保证人脸识别的安全性。相较于顺序执行人脸活体检测及人脸识别的身份认证过程,并行执行活体检测与人脸识别过程,可以有效提升人脸身份认证的速度,在保证用户信息安全的同时,提高移动终端的运算速度,提升用户体验。
参考文献:
[1] 赵锋,张鹏,张冉.基于Ghostnet轻量级人脸识别算法研究 [J].电子测量技术,2022,45(16):130-136.
[2] 马钰锡,谭励,董旭,等.面向VTM的交互式活体检测算法 [J].计算机工程,2019,45(3):256-261.
[3] 廖迪,黄奥运,李科,等.基于图像色彩纹理的人脸活体检测算法研究 [J].现代计算机,2019(18):59-63.
[4] 魏东,岳许要,章烈剽,等.基于注意力融合的多模态人脸活体检测算法 [J].现代信息科技,2022,6(20):65-70.
[5] 杨巨成,代翔子,韩书杰,等.人脸识别活体检测综述 [J].天津科技大学学报,2020,35(1):1-9+17.
[6] 刘春梅,李辉.煤矿开采用掘进机人员识别系统设计与研究 [J].内蒙古农业大学学报:自然科学版,2020,41(4):76-79.
[7] 徐岩,徐竟泽,曾建行,等.融合HOG与PCA算法的人脸识别 [J].计算机与数字工程,2022,50(11):2544-2547.
[8] 刘伟,章琬苓,项世军.基于LBP-MDCT和CNN的人脸活体检测算法 [J].应用科学学报,2019,37(5):609-617.
[9] 霍春宝,杨闯,佟智波,等.OCR下的改进SIFT人脸识别算法 [J].辽宁工程技术大学学报:自然科学版,2021,40(4):378-382.
[10] 马国峻,周海东.轻量级智能终端人脸识别系统研究与实现 [J].通信学报,2015,36(S1):149-156.
作者简介:谢晶(1988.11—),女,汉族,河北衡水人,知识产权师,硕士研究生,研究方向:人工智能;翟树彬(1990.09—),男,汉族,天津人,维护工程师,本科,研究方向:电力运维。