邓茜文,冯子亮,邱晨鹏. 基于近红外与可见光双目视觉的活体人脸检测方法[J]. 计算机应用,2020,40(7):2096-2103. DOI:10.11772/j.issn.1001-9081.2019122184.
文章目录
1、摘要
首先,采用近红外与可见光双目装置同步获取人脸图像,提取两图像的人脸特征点,利用双目关系实现特征点的匹配并获取其深度信息,再利用深度信息进行三维点云重建;然后,将全部人脸特征点划分为四个区域,计算各区域内人脸特征点在深度方向的平均方差;接着,选取人脸关键特征点,以鼻尖点为参照点,计算鼻尖点到人脸关键特征点之间的空间距离;最后,利用人脸特征点的深度值方差和空间距离来构造特征向量,使用支持向量机(SVM)实现活体人脸判断。
2、背景知识
红外光对表面光滑的物体如镜面、油纸面的反射微弱,近红外图像几无信息,无法检测出人脸,可防止电子屏及视频中的人脸的伪造攻击
相机标定
3、难点
异源双目预测深度
近红外与可见光双目视觉的异源匹配误差可能较大,也是难点所在
4、相关工作
1)近红外与可见光双目装置
2)人脸特征点检测方法
5、本文的方法
5.1、人脸特征点检测
68个人脸关键点,调用的是 DLIB 库
5.2、人脸特征点校正和匹配
经立体校正后,近红外与可见光图像已实现共面和行对准(这个也可以直接调库)
共面指的是双目相机的两个摄像头(通常称为左摄像头和右摄像头)的光轴处于同一平面内。这意味着两个摄像头在水平方向上对齐,且它们的成像平面也位于同一平面上。
行对准指的是双目相机的两个摄像头的成像平面的行(即水平扫描线)是对齐的。这意味着两个摄像头捕捉到的图像在垂直方向上具有相同的分辨率和扫描方式,且每一行像素都对应于相同的空间位置。
可以按照双目视觉逐点匹配方法进行匹配计算,但是直接匹配会出现两个问题:
- 一是因为异源图像成像原理差异造成匹配不正确而效果差;
- 二是耗时过长。
特征点由于人脸关键点检测算法的精度问题,特别是脸颊区域,不太准,作者经验性的对特征点进行了校正
校正前:
圆形的点是近红外人脸图像的特征点,形状为三角形的点是可见光人脸图像的特征点。
校正后
校正的策略
这样再进行特征匹配和根据视差图计算深度误差会小一些
个人感觉,可以不用脸颊作为特征点,这样就不用校正了,不过脸颊有时候也是区分真假的线索区域之一
5.3、人脸特征点三维坐标获取
计算深度,原理就是双目产生的视差图来预测深度的原理
5.4、人脸特征点三维特征提取方案
有了深度信息后,还需要分类器来判别真假
作者用的是 SVM,不过输入不是深度图,而是从深度信息中提取特征
(1)方差特征提取方案
计算关键点深度的方差,真人方差大,假体方差小
作者把人脸分成四个区域,提取四个区域的人脸关键点深度信息的方差
四个区域
- 整个人脸
- 五官区域
- 眼睛鼻子
- 鼻子嘴巴
这样计算出来的特征维度为 4
(2)距离特征提取方案
以鼻子为基准,计算鼻子到其它关键点的距离,作为特征
距离计算的方法如下
鼻子到另外 13 个点,特征维度为 13
整体流程
6、实验
(1)数据集
数据是自己采集的,涵盖不同姿态、表情、戴眼镜、不戴眼镜
(2)三维特征点点云重建结果
真人
假体
(3)三维点云深度特征提取和分类
平面完全 ok,弯曲照片有小概率攻击成功
作者的解释是
基于距离的效果没有基于方差的稳,虽然特征维度高,但是特征提取时输入的特征点少
和其它方法对比
还是不错的,文献6用的特征是鼻尖和鼻根