论文部分内容阅读
人脸活体检测技术是在以人脸特征为验证信息的相关认证之前,判定人脸是否为活体,以防止恶意者伪造和窃取他人的生物特征用于身份认证。人脸活体检测作为保障人脸识别安全性的关键技术,被广泛地应用于各种认证及安检场景中。本文设计并实现了一种基于人脸关键点的交互式活体检测系统,系统以随机指令的方式要求用户做出相应的动作(微笑、摇头、眨眼),系统通过相应检测算法识别人脸动作,从而有效地进行活体与非活体的判断。系统采用基于SDM(Supervised Descent Method)检测算法实现人脸关键点检测,该算法通过引入回归分析有效地减少每步迭代运算的耗时,有效提高运算速度。在此基础上,实现摇头、微笑和眨眼三种行为模式的检测。其中摇头模式检测是计算出鼻尖处关键点由2D到3D空间映射的旋转矩阵和平移矩阵,据此判定是否有左右摇头的动作产生;微笑模式检测算法根据左右嘴角关键点间距离变化是否超过规定阈值来进行判定;眨眼模式检测算法则通过计算上下眼皮关键点间距离变化方差,与规定阈值进行比较实现是否眨眼的判定。活体检测系统在Windows系统下基于C/C++编程语言实现。实验结果表明,本系统对活体人脸通过检测的准确率达100%,而非活体人脸(照片中的人脸)则只有1/300(静止情况)和11/900(模拟动作攻击)的通过率。本系统实现三种行为模式检测的平均时长为:微笑为0.28±0.02s,摇头为0.75±0.02s,眨眼为0.81±0.01s。能够满足实际应用中实时性与准确率的要求。本文还将系统移植到Android操作系统,实现了系统的可移动性和便携性。