APP下载

人脸活体特征检测实验平台设计与实现

2018-06-05于立君毛晓琦王雪莹刘朝达

实验技术与管理 2018年5期
关键词:活体人脸人脸识别

王 辉, 于立君, 毛晓琦, 王雪莹, 刘朝达

(哈尔滨工程大学 自动化学院, 黑龙江 哈尔滨 150001)

在“创新认知与实践”课程的教学中,为了提高学生的自主创新能力,设计了人脸活体特征检测实验平台,解决了虚假人脸攻击的问题。基于Uniform Pattern LBP特征提取的人脸活体特征检测实验平台,提高了实验的检测速率和实验准确率。在不断分析计算与实际编程调试的过程中,深入理解课程的理论知识,并且实现了理论到实践的有效转化。

1 人脸活体特征检测的基本方法

为了应对常见的人脸攻击行为,人们提出了相应的检测人脸活体方法。目前主要有基于人脸图像属性的活体特性检测和基于人脸生理行为活体特性检测[1]。基于人脸图像属性的活体特性检测主要采用傅里叶频谱、多光谱成像和三维深度信息[2]获取等技术,实现分辨活体人脸的目的。此类检测方法原理简单且易于使用,但是检测准确率受光照影响大[3]。基于人脸生理行为的活体特性检测主要是通过眨眼判断、嘴巴运动和人机交互等来判断活体人脸,此类检测方法准确率高但只能在特定环境下实现,有些活体人脸的检测方法还需要添加特定检测设备,如红外线成像仪设备,氖光灯源,窄带滤镜等[4]。

由于伪造人脸图像在其制作过程中存在细节损失,因此本实验提出基于人脸真实图像与欺骗照片之间纹理特征差异的人脸真实性进行判别的方法。该方法中,用于训练分类器的特征是Uniform Pattern LBP特征向量,将该特征应用于活体检测是本实验平台的创新点。

已存至计算机中的图像作为输入图像,分为两种:一种是对真人脸进行拍摄所采集到的图像;二是对人脸照片进行拍摄所采集到的图像[5]。实验将完成对输入图像的鉴别,进而判断输入图像是真人脸还是假人脸。

2 算法原理

人脸活体特征检测的主要过程包括读取图片数据、检测定位人脸区域、提取Uniform Pattern LBP特征和机器学习部分。

2.1 从视频数据库中读入数据

本实验平台所用数据库是REPLAY-ATTACK数据库中的视频样本。要对人脸进行活体检测,需先从视频中提取出图片,即从文件流中读入数据。为了方便后续特征提取与分类,本实验从数据库中提取出大量照片并按照一定规则命名编号[6]。由于数据库视频中,人脸有眨眼、转头等动作和表情,所以并不是视频中人脸及五官所处每一时刻都为理想检测时刻。本实验在批量读入视频文件时,为保证在每个视频中都能获得较理想帧图,对帧图进行编号。由于视频内较理想时间段占大半,确定这些时间所对应帧图编号即可提取出较为理想的图片。

2.2 检测定位人脸区域

本实验选择用OpenCV自带的希尔人脸检测器。将所获取人脸图片的核心部分,即人脸区域放大至1.6倍,得到H-face。根据五官对人脸进行分块,分为左眼、右眼、鼻子、嘴巴、piece5、piece6、piece7、piece8、piece9、piece10、piece11、piece12这12个区域[7]。检测后的人脸图像见图1。

图1 人脸区域定位及分块图像

2.3 提取Uniform Pattern LBP特征。

LBP(local binary pattern)指局部二值模式,它是一种用来描述图像局部特征的算子。LBP特征的显著优点有灰度不变性以及旋转不变性等[8]。因为LBP特征具有计算简单、效果较好的优点,所以广泛地被应用在人脸识别和目标检测中。

(1)

以块图像区域的中心为圆心,R为半径作圆,圆上点p,gp(p=0.1,…,p-1)为像素点灰度值,gc为阈值中心的灰度值,函数S描述领域像素点和中心阈值的关系状态。LBP算子将会产生2p种模式,这么多的二进制模式不利于纹理的提取、分类、识别及存取[9]。因此,需要对原始的LBP模式进行降维。实验采用的是改进后的LBP特征来进行机器学习,即Uniform Pattern LBP特征。

Ojala提出的Uniform Pattern LBP特征又被称为等价模式或均匀模式。Ojala等认为实际图像中,绝大多数LBP模式最多只包含2次从1到0或从0到1的跳变。因此,Ojala将“等价模式”定义为

(2)

当某个LBP所对应的循环二进制数从0到1或从1到0,最多有2次跳变时,该LBP所对应的二进制就称为一个等价模式类。除等价模式类以外的模式都归为混合模式类。表示如下:

(3)

改进后的二进制模式的种类大大减少,而不会丢失任何信息。模式数量从2p种减少为p(p-1)+2种。直方图和特征向量的维数都会减少,从而减少高频噪声带来的影响[10]。等价模式LBP特征处理后256维数组降至59维,再计算跳变次数,即可得到对图片Uniform Pattern LBP处理的结果。将原始LBP与Uniform Pattern LBP处理运算速度进行对比,仿真结果见图2—图3。

图2 Uniform Pattern LBP仿真结果图

图3 原始LBP仿真结果图

对同一张图片,本实验所采用Uniform Pattern LBP特征处理时间为1 235 ms,而原始LBP特征处理时间则为61 906 ms。即改进后的方法可以提高运算速度。

练,就是让学生按课本的要求去进行练习,教师设计形式多样的习题让学生巩固。教师要做到习题要求明白,时间足够,形式多样,结合自检或他检,掌握知识,发挥智力。

2.4 机器学习部分

本实验中使用相关机器学习的算法,一种是K-means均值聚类算法来进行编码,另一种算法是SVM支持向量机进行分类训练。K-means算法是聚类分析中使用最广泛的算法之一。它把n个对象根据它们的属性分为k个聚类以便使所得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较低[11]。支持向量机(SVM)的监督学习模型与相关的学习算法可以用于分类和回归分析的数据进行分析。SVM模型是一个用来表示在空间中的点、映射的样本,以便尽可能宽地将不同类别划分出一个明显的间隙。接着处理新的样本时映射到同一空间,并且根据样本之间的差距是否下降来预测和判断属于哪一个类别[12]。

3 实验平台的设计

3.1 实验平台软件介绍

实验平台的编程环境是VS2013+OpenCV2.4.9,对电脑和软件相关环境进行配置后就可以正式开始编程。

3.2 实验平台流程设计

读入从REPLAY-ATTACK数据库中提取出来的人脸图片,使用人脸检测器对人脸进行检测和定位。本实验选用OpenCV自带的希尔人脸检测器。将所获取人脸图片的核心部分,即人脸区域放大至1.6倍得到H-face。再将H-face分为12个区域。随后,对每个小块进行Uniform Pattern LBP特征提取。对每个小块分别提取完成后,将所有特征向量连接在一起,得到LBPH,即机器学习所需要的输入特征。机器学习部分,则是分别读入真假人脸所提取特征之后,通过学习、训练最终达到测试活体检测分类器的目的。基于上述描述人脸活体特征检测程序框图见图4。

图4 人脸活体特征检测框图

4 实验结果分析

将Replay-Attack数据库和实际创建的数据库在本实验平台上进行实验,实验结果表明,该人脸活体特征检测实验平台的准确率及运算速度等方面具有优良的性能。

程序仿真过程中,Testing data为测试数据集,Real+数字为真人脸及编号。True Lable为图片所属类别,真人脸是1,假人脸是0。Predict Value为的是图片经本课题仿真得到的值,与0或1越接近,则代表准确度越高,在反复进行调试后,达到如图5和图6较理想结果。仿真结果统计见表1。V为系统运行后判断被测人脸为真实人脸的概率。

图5 真人脸测试结果图

图6 假造人脸测试结果图

仿真结果V真人测试结果假人测试结果0.1

分析表1后,可以选择将仿真值0.5作为真假人脸分界线。仿真结果大于0.5,认为输入为真人脸,小于0.5则输入为假造人脸。但选择0.5为分界线的结果亦存在误差,90个测试真人脸输入中会出现6个未被检测出来,270个测试假人脸输入中会出现5个未被检测出来的情况。这说明程序仍需改进。

5 结语

基于人脸的活体特征检测是身份认证系统中的重要组成部分,已成为许多高校本科生和研究生的创新实验项目。本文阐述的基于VS2013+OpenCV人脸活体特征检测实验平台,具有对系统读入图像中人脸的真假鉴别功能。该实验平台能够取得较好的检测效果,证明其有效性。

参考文献(References)

[1] 杨健伟. 面向人脸识别的人脸活体检测方法研究[D]. 北京:北京邮电大学, 2014.

[2] 罗浩. 人脸识别中的活体检测方法研究[D]. 长沙:湖南师范大学, 2015.

[3] Wang P, Dong S, Zhang D, et al. Texture Analysis of Vitrinite Macerals Based on the Uniform Pattern of Round LBP[J]. Journal of Anhui University of Technology, 2014(2):147-151.

[4] Chingovska I, Erdogmus N, Anjos A, et al. Face Recognition Systems Under Spoofing Attacks[M]// Face Recognition Across the Imaging Spectrum. Springer International Publishing, 2016.

[5] Peng J, Chan P P K. Face liveness detection for combating the spoofing attack in face recognition[C]//Wavelet Analysis and Pattern Recognition(ICWAPR),2014 International Conference, 2014:176-181.

[6] 孟子健, 马江洪. 一种可选初始聚类中心的改进k均值算法[J]. 统计与决策, 2014(12):12-14.

[7] 朱峰. 一种基于多尺度 LBPH 特征的快速人脸识别算法[J]. 计算机应用与软件, 2015(8):315-319.

[8] Komulainen J, Hadid A, Pietik, et al. Face spoofing detection using dynamic texture[C]// International Conference on Computer Vision. Springer-Verlag, 2014:146-157.

[9] 徐金林,林玉娥. 基于改进的LBP和PCA算法的人脸识别[J]. 电脑知识与技术,2017(17):1-2.

[10] 龚声蓉. 数字图像处理与分析[M]. 北京:清华大学出版社, 2014.

[11] 吴晓平, 周舟, 李洪成. Spark框架下基于无指导学习环境的网络流量异常检测研究与实现[J]. 信息网络安全, 2016(6):1-7.

[12] 刘华成. 人脸活体检测关键技术研究[D]. 宁波:宁波大学, 2014.

[13] 嵇介曲. 基于LBP算法的人脸识别研究[D].淮南:安徽理工大学,2017.

猜你喜欢

活体人脸人脸识别
人脸识别 等
有特点的人脸
一起学画人脸
张帆:肝穿刺活体组织学检查
让活体肝移植研究走上世界前沿
活体器官移植,你怎么看?
揭开人脸识别的神秘面纱
人脸识别技术的基本原理与应用
三国漫——人脸解锁
“汪星人”要打“飞的”——话说活体空运