基于ToF的3D活体检测
3.1 ToF深度相机
ToF全称为Time-of-Flight,直译为飞行时间。飞行时间法通过连续向目标发送光脉冲,用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。测距原理如图3-1所示。
图3-1 ToF测距原理[27]
由于ToF相机不需要像双目相机一样进行匹配,也不需要像结构光相机一样进行编码,ToF相机的计算相对简单,帧率可达上百fps。在测距范围和精度方面,ToF表现非常均衡,解决了结构光相机远距离受限和双目相机近距离精度不足的问题。同时,ToF作为一种采用主动测距方式的3D相机,在黑暗环境中也能正常工作。高频调制的光源使其在强光环境下的抗光干扰表现优异,ToF相机具有明显的优势。
上海数迹智能科技有限公司开发的SmartToF®相机具有精度高、小型化的特点,测距范围可达0.3~8m,同时覆盖了近景和远景,且精度高可实现毫米级测距精度,实时输出深度数据和强度数据,如图3-2所示。本文利用SmartToF®深度相机,消除外部强干扰因素(如人脸遮挡、恶劣光照等)与人脸多姿态变化(如侧脸、表情等)影响,实现高鲁棒、高精度的3D人脸活体检测方案。更多ToF相机相关信息,欢迎访问https://www.smarttof.com 进一步了解。
图3-2 数迹智能ToF相机产品
3.2 3D活体检测算法
3.2.1 算法框架
本算法的主要创新点为:
空间层次上的预注意机制。特征学习专注于人脸区域,消除背景对检测的干扰,提取更高区分度的识别特征。
鲁棒人脸特征提取。PCA网络(PCANet)[23]作为层次化鲁棒特征提取的经典网络,将CNN的卷积层引入经典的“特征图—模式图—柱状图”特征提取框架,通过层次化卷积与编码,逐阶段形成图像的高阶特征表达。
多模态数据融合。本方法融合RGB图、深度图、强度图三种模态数据,不同模态数据在PCANet中学习到的特征互补,可有效地区分活体与非活体。
我们提出3D活体检测算法框架主要基于特征级的多模态融合策略,首先FaceBoxes[24]人脸检测器完成人脸检测。非极大抑制(NMS)算法用于选取候选的人脸区域,根据图像中的像素面积大小得到最终的待检人脸区域。再以多模态PCANet为网络主干,对比分析一层PCANet(PCANet-1)与两层PCANet(PCANet-2)在多模态活体检测任务中融合的效果。具体地,通过PCA滤波器核卷积与编码,学习多模态数据(RGB、IR、Depth)的高阶特征,融合的直方图统计特征送入到SVM等统计学习分类器完成最终检测。算法框架如图3-3所示。
(a) (b)
图3-3 算法方案:(a) 为多模态PCANet主线框架,(b)为直方图统计融合框架
3.2.2 结果与分析
基于CASIA-SURF和数迹ToF活体检测数据集,输入人脸区域像素统一设定为:28×28,所有实验都在Dual-Core Intel Core i5 cpu上完成,除特殊说明外,融合特征均采用支持向量机(SVM)进行分类,惩罚因子C设为20。PCANet-1与PCANet-2参数设置为:所有阶段的PCA滤波器核大小K1×K2=3×3,步长为1。第一阶段PCA滤波器核数目L1=3,第二阶段PCA滤波器核数目L2=3。直方图分块大小为4×4,步长为2。由于测试数据集的正负样本数量大致均匀,本文活体检测性能衡量指标包括:分类正确率(CA)、非活体攻击呈现分类错误率(LAPCER)[26]、真实呈现分类错误率(BPCER)[26]、平均分类错误率(ACER)以及真正率与假正率组合(TPR@FPR = 10-2,指当假正率为10-2时TPR的值)[19]。
首先探究具有一层PCA滤波器核卷积的PCANet-1、具有两层PCA滤波器核卷积的PCANet-2在CASIA-SURF和数迹ToF活体检测数据集上的性能,结果如表3-1所示。
由表3-1可知,PCANet-1在ToF与CASIA-SURF活体检测数据集上的综合表现较好,其中PCANet-1在ToF数据集99.9%的正确率与0.3%的平均分类错误率。在CASIA-SURF数据集则实现98.9%的正确率与0.9%的平均分类错误率。因此本文的算法方案选取以PCANet-1为基础的多流融合算法。
在上述基础上,基于PCANet-1,在CASIA-SURF上完成了模态内组合实验,结果如表3-2所示,实验表明在不同模态组合中,深度模态为活体检测提供了最大区分度的信息,而且三模态融合方案取得最佳效果。
接下来验证了PCANet-1在强干扰因素和人脸多姿态的挑战场景下的泛化和鲁棒性能,使用SmartToF®相机采集的含有遮挡、表情、姿势变化等干扰的活体检测数据集。训练集仍然使用不包括挑战场景下的数迹ToF活体检测数据,将新采集的数据集直接利用PCANet-1网络与SVM分类器结合进行测试,结果如表3-3所示,同时在图3-3. 4中展示了部分测试的结果。
结果表明:挑战场景下的活体检测仍然保持着99.1%的平均准确率以及1.0%的平均分类错误率。基于PCANet-1的3D活体检测算法对于强干扰因素与多姿态变化具有较强的鲁棒性。
(a) 口罩遮挡 (b) 打印欺诈攻击
(c) 表情变化 (d) 侧脸
图3-4 挑战场景下的ToF活体检测结果,在口罩遮挡、侧脸(≤90°)、表情变化等干扰因素下能正确地区分活体与欺骗攻击
进一步我们对本文提出的算法多模态PCANet-1算法与基于CASIA-SURF的基准算法[19][20]进行了比较,算法对比结果如表3-4所示,其中本文提出的多模态PCANet-1融合的ROC曲线如图3-5所示。
算法对比表明,本文提出的多流PCANet活体检测算法,结合SVM分类器下的分类正确率达到98.9%,平均攻击分类错误率为0.9%;结合k-NN分类器,算法的分类正确率达到99.2%,在平均分类错误率上仅为0.8%,显著低于其他算法,这意味着100次欺诈攻击仅有不足1次的检测失败,满足现实场景的应用。同时在ToF活体数据集上也证明了提出算法的有效性。
图3-5基于三流PCANet-1在CASIA数据集的活体检测ROC曲线
最后我们对比分析了本文提出的算法和基准算法的复杂度,以FLOPs(浮点运算次数, floating point of operations)为时间复杂度指标,针对PCANet-1与基准算法ResNet-18[20]网络主线的时间复杂度进行对比。结果如表3-5所示。
* M为输出特征图大小,K为卷积核大小,C为卷积核的通道数,I、O为全连接层的输入输出;m、n为PCANet输入分块大小,L1为滤波器核数目,K1、K2为滤波器核大小。
表3-5的结果表明:本文提出的算法主线基于简化的深度学习模型,其时间复杂度远小于深度学习基准算法主线,FLOPs仅为2.4×104。但需要注意的是,本文提出的基于三流PCANet-1的3D活体检测算法包含以SVM、k-NN为代表的统计机器学习,复杂度较小。但统计机器学习作为内存密集型算法,在样本数据较大时,其运算效率会受到内存的限制。
基于ToF的3D活体检测
3.1 ToF深度相机
ToF全称为Time-of-Flight,直译为飞行时间。飞行时间法通过连续向目标发送光脉冲,用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。测距原理如图3-1所示。
图3-1 ToF测距原理[27]
由于ToF相机不需要像双目相机一样进行匹配,也不需要像结构光相机一样进行编码,ToF相机的计算相对简单,帧率可达上百fps。在测距范围和精度方面,ToF表现非常均衡,解决了结构光相机远距离受限和双目相机近距离精度不足的问题。同时,ToF作为一种采用主动测距方式的3D相机,在黑暗环境中也能正常工作。高频调制的光源使其在强光环境下的抗光干扰表现优异,ToF相机具有明显的优势。
上海数迹智能科技有限公司开发的SmartToF®相机具有精度高、小型化的特点,测距范围可达0.3~8m,同时覆盖了近景和远景,且精度高可实现毫米级测距精度,实时输出深度数据和强度数据,如图3-2所示。本文利用SmartToF®深度相机,消除外部强干扰因素(如人脸遮挡、恶劣光照等)与人脸多姿态变化(如侧脸、表情等)影响,实现高鲁棒、高精度的3D人脸活体检测方案。更多ToF相机相关信息,欢迎访问https://www.smarttof.com 进一步了解。
图3-2 数迹智能ToF相机产品
3.2 3D活体检测算法
3.2.1 算法框架
本算法的主要创新点为:
空间层次上的预注意机制。特征学习专注于人脸区域,消除背景对检测的干扰,提取更高区分度的识别特征。
鲁棒人脸特征提取。PCA网络(PCANet)[23]作为层次化鲁棒特征提取的经典网络,将CNN的卷积层引入经典的“特征图—模式图—柱状图”特征提取框架,通过层次化卷积与编码,逐阶段形成图像的高阶特征表达。
多模态数据融合。本方法融合RGB图、深度图、强度图三种模态数据,不同模态数据在PCANet中学习到的特征互补,可有效地区分活体与非活体。
我们提出3D活体检测算法框架主要基于特征级的多模态融合策略,首先FaceBoxes[24]人脸检测器完成人脸检测。非极大抑制(NMS)算法用于选取候选的人脸区域,根据图像中的像素面积大小得到最终的待检人脸区域。再以多模态PCANet为网络主干,对比分析一层PCANet(PCANet-1)与两层PCANet(PCANet-2)在多模态活体检测任务中融合的效果。具体地,通过PCA滤波器核卷积与编码,学习多模态数据(RGB、IR、Depth)的高阶特征,融合的直方图统计特征送入到SVM等统计学习分类器完成最终检测。算法框架如图3-3所示。
(a) (b)
图3-3 算法方案:(a) 为多模态PCANet主线框架,(b)为直方图统计融合框架
3.2.2 结果与分析
基于CASIA-SURF和数迹ToF活体检测数据集,输入人脸区域像素统一设定为:28×28,所有实验都在Dual-Core Intel Core i5 cpu上完成,除特殊说明外,融合特征均采用支持向量机(SVM)进行分类,惩罚因子C设为20。PCANet-1与PCANet-2参数设置为:所有阶段的PCA滤波器核大小K1×K2=3×3,步长为1。第一阶段PCA滤波器核数目L1=3,第二阶段PCA滤波器核数目L2=3。直方图分块大小为4×4,步长为2。由于测试数据集的正负样本数量大致均匀,本文活体检测性能衡量指标包括:分类正确率(CA)、非活体攻击呈现分类错误率(LAPCER)[26]、真实呈现分类错误率(BPCER)[26]、平均分类错误率(ACER)以及真正率与假正率组合(TPR@FPR = 10-2,指当假正率为10-2时TPR的值)[19]。
首先探究具有一层PCA滤波器核卷积的PCANet-1、具有两层PCA滤波器核卷积的PCANet-2在CASIA-SURF和数迹ToF活体检测数据集上的性能,结果如表3-1所示。
由表3-1可知,PCANet-1在ToF与CASIA-SURF活体检测数据集上的综合表现较好,其中PCANet-1在ToF数据集99.9%的正确率与0.3%的平均分类错误率。在CASIA-SURF数据集则实现98.9%的正确率与0.9%的平均分类错误率。因此本文的算法方案选取以PCANet-1为基础的多流融合算法。
在上述基础上,基于PCANet-1,在CASIA-SURF上完成了模态内组合实验,结果如表3-2所示,实验表明在不同模态组合中,深度模态为活体检测提供了最大区分度的信息,而且三模态融合方案取得最佳效果。
接下来验证了PCANet-1在强干扰因素和人脸多姿态的挑战场景下的泛化和鲁棒性能,使用SmartToF®相机采集的含有遮挡、表情、姿势变化等干扰的活体检测数据集。训练集仍然使用不包括挑战场景下的数迹ToF活体检测数据,将新采集的数据集直接利用PCANet-1网络与SVM分类器结合进行测试,结果如表3-3所示,同时在图3-3. 4中展示了部分测试的结果。
结果表明:挑战场景下的活体检测仍然保持着99.1%的平均准确率以及1.0%的平均分类错误率。基于PCANet-1的3D活体检测算法对于强干扰因素与多姿态变化具有较强的鲁棒性。
(a) 口罩遮挡 (b) 打印欺诈攻击
(c) 表情变化 (d) 侧脸
图3-4 挑战场景下的ToF活体检测结果,在口罩遮挡、侧脸(≤90°)、表情变化等干扰因素下能正确地区分活体与欺骗攻击
进一步我们对本文提出的算法多模态PCANet-1算法与基于CASIA-SURF的基准算法[19][20]进行了比较,算法对比结果如表3-4所示,其中本文提出的多模态PCANet-1融合的ROC曲线如图3-5所示。
算法对比表明,本文提出的多流PCANet活体检测算法,结合SVM分类器下的分类正确率达到98.9%,平均攻击分类错误率为0.9%;结合k-NN分类器,算法的分类正确率达到99.2%,在平均分类错误率上仅为0.8%,显著低于其他算法,这意味着100次欺诈攻击仅有不足1次的检测失败,满足现实场景的应用。同时在ToF活体数据集上也证明了提出算法的有效性。
图3-5基于三流PCANet-1在CASIA数据集的活体检测ROC曲线
最后我们对比分析了本文提出的算法和基准算法的复杂度,以FLOPs(浮点运算次数, floating point of operations)为时间复杂度指标,针对PCANet-1与基准算法ResNet-18[20]网络主线的时间复杂度进行对比。结果如表3-5所示。
* M为输出特征图大小,K为卷积核大小,C为卷积核的通道数,I、O为全连接层的输入输出;m、n为PCANet输入分块大小,L1为滤波器核数目,K1、K2为滤波器核大小。
表3-5的结果表明:本文提出的算法主线基于简化的深度学习模型,其时间复杂度远小于深度学习基准算法主线,FLOPs仅为2.4×104。但需要注意的是,本文提出的基于三流PCANet-1的3D活体检测算法包含以SVM、k-NN为代表的统计机器学习,复杂度较小。但统计机器学习作为内存密集型算法,在样本数据较大时,其运算效率会受到内存的限制。
举报