背景
随着智能设备的越来越普及,越来越多的视觉算法需要应用于移动端,比如iPhone的刷脸解锁,支付宝的刷脸支付,人脸识别系统逐渐开始商用,并向着自动化、无人监督化的趋势发展。然而目前人脸识别技术能识别人脸图像的身份但无法准确辨别所输入人脸是否为真人,人脸极易用照片、视频等方式进行复制,因此对合法用户人脸的假冒是人脸识别与认证系统安全的重要威胁。因此在人脸识别中活体检测成为一个关键环节。一般生物特征的活体检测技术利用的是人们的生理特征,例如活体指纹检测可以基于手指的温度、排汗、导电性能等信息,活体人脸检测可以基于头部的移动、呼吸、红眼效应等信息,活体虹膜检测可以基于虹膜振颤特性、睫毛和眼皮的运动信息、瞳孔对可见光源强度的收缩扩张反应特性等。
目前移动端通用的活体检测技术一般采用指令动作配合的方式,指令配合错误则认为是伪造欺骗。通过人类自然的眨眼、张嘴等动作,精准判断用户的真实性,有效鉴别照片、视频、模型等欺骗行为。加强了防护等级,准确的区分出真人与照片视频区别,突破的传统模式,极大的提高了系统的安全性。
技术实现
首先是前端人脸活体检测技术,需要支持 Android、iOS 平台,在客户端通过前端指令,通过眨眼、张嘴、摇头、点头等组合动作,确保操作的为真实活体人脸。提取人脸的多处特征点,分别代表眼睛、耳朵、鼻子、脸颊和嘴巴等主要人脸五官,监测眨眼、微笑、张嘴、左转、右转、抬头、低头、左摆、右摆等几个动作。比如摇头模式检测是计算出鼻尖处关键点由 2D 到 3D 空间映射的旋转矩阵和平移矩阵,据此判定是否有左右摇头的动作产生;微笑模式检测算法根据左右嘴角关键点间距离变化是否超过规定阈值来进行判定;眨眼模式检测算法则通过计算上下眼皮关键点间距离变化方差,与规定阈值进行比较实现是否眨眼的判定。<