一般使用双摄像头做活体检测的,都是非配合式活体检测,不需要根据提示做一些诸如眨眼、点头之类的动作,对算法要求更高,但是速度更快, 对用户体验也更友好。
非配合式活体根据成像源的不同,一般分为红外图像、3D 结构光和 RGB 图像三种技术路线,这三种路线又根据应用场景不同而各有优劣。
一、红外图像活体检测
基于红外图像的活体检测,需要用到红外摄像头。红外图像滤除了特定波段的光线,天生抵御基于屏幕的假脸攻击。
不管是可见光还是红外光,本质都是电磁波。物体成像与其表面材质的反射特性有关。真实人脸和纸片、屏幕、立体面具等攻击媒介的反射特性都是不同的,所以成像效果也不同。
这种表面材质差异在红外波反射方面会更加明显。当屏幕上的人脸出现在红外摄像头前,红外成像的画面里只有白花花一片,连人脸都无法显示,攻击也就无法得逞。
特点:红外图像活体检测成本中等,对屏幕和纸张类攻击防御能力优秀,对面具类攻击防御能力中良好。
二、3D结构光活体检测
3D结构光活体检测采用结构光/TOF深度摄像头,引入了“深度信息”概念,能够很容易地辨别纸质照片、屏幕等2D媒介的假脸攻击。文章开头提到丰巢快递柜之所以能被A4纸上的人脸照片欺骗,就是因为人脸识别设备没有3D结构光功能。
3D结构光需要采用3D摄像头,这样在拍摄人脸时,可以得到人脸区域的3D数据,并基于这些数据做进一步分析, 最终判断出人脸是来自活体还是非活体。
3D结构光可检测的非活体范围比较广泛的,包括电子屏幕上的照片和视频、印刷在不同材质上的照片(包含弯曲、折叠、剪裁、挖洞等情形)等。该检测路径的关键在于,基于活体和非活体的3D人脸数据,如何选择最具有区分度的特征来训练分类器,利用训练好的分类器来区分活体和非活体。
特点:3D结构光活体检测成本最高,效果最好,对屏幕、纸张和面具类攻击的防御能力都很优秀。
三、RGB图像
RGB单目活体检测采用普通RGB摄像头即可,通过分析采集摩尔纹、成像畸形、反射率等人像破绽,从而获得活体检测所需要的识别信息,通过多维度的识别依据保证了识别的准确性。
特点:RGB活体检测应用历史较久,成本较低,对屏幕和纸张类攻击防御性良好,对面具类攻击防御性一般。