活体识别3:论文笔记之《FACE ANTI-SPOOFING BASED ON COLOR TEXTURE ANALYSIS》

说明

本文是我对论文《FACE ANTI-SPOOFING BASED ON COLOR TEXTURE ANALYSIS》做的一个简单笔记。
这个论文是芬兰奥卢大学(Oulu)课题组的一篇很有代表性的论文,写于2015年,使用的是“LBP特征+SVM分类器”这种比较传统的方案,方案不复杂,效果还不错。也适合改造后在嵌入式端做部署。
其基本原理就是在RGB色彩空间分辨真假脸有困难,但是发现在YCbCr和HSV色彩空间用LBP特征则相对容易区分。后来该课题组还将这个思路在2016年的论文里发扬光大,增加了另外的色彩空间和特征提取手段,融合后的分类效果更好,有兴趣可以看看《Face Spoofing Detection Using Colour Texture Analysis》这篇论文。

我在github上看到一个该论文的matlab开源项目,不确定是否为课题组官方的::https://github.com/zboulkenafet/Face-anti-spoofing-based-on-color-texture-analysis

论文内容

以往的方案往往使用灰度图像来进行活体识别,只利用了图像的亮度信息,忽略了色彩的纹理信息。当图像分辨率很高(或图片质量很好)时,真假人脸的区分度还比较高,但是如果是裁剪的人脸小图,则看不出明显的纹理差异(如图1)。但是色彩的某些分量可以看出较明显的差异。
在这里插入图片描述
受上述观察的启发 ,我们在这项工作中提出了一种新的基于颜色纹理分析的人脸活体防伪方法。主要思路就是使用一篇参考文献里描述的LBP特征来提取人脸的color-texture信息,该文献中最终的LBP直方图是由各个色彩通道的LBP直方图组合起来形成的。为了探究哪种颜色空间更能区分真实人脸,我们考虑了 3 种颜色空间,即RGB、HSV和YCbCr。

与真实的人脸相比,照片、视频播放和面具能够展现的色域是有限的。所以活体攻击的假脸呈现的颜色是受攻击手段(媒介)限制的。相比真实的人脸,假的人脸多了一次成像和复现的过程,这个过程本身会引入颜色的色域特征的改变和局部噪声。我们从不同的颜色空间中提取LBP特征,研究哪些颜色模型最能反映微观纹理特征。

本文的活体检测方法如图 2 所示。 先生成每个颜色通道的的LBP直方图,合并后给SVM分类器进行分类。
在这里插入图片描述
该论文选择了两个数据集进行测试:CASIA FA和Replay-Attack database。
下面两个表格可以看出,使用彩色纹理特征的结果明显好于灰度图片的结果。而且各个色彩空间比较下来,YCbCr性能最好。跟灰度图的效果比,YCbCr在两个数据集上分别有64.1%和81.4%的性能改进。而且从表1上来看,HSV色彩空间貌似对视频攻击更有效。所以论文作者设计了将YCbCr和HSV色彩空间的特征做拼接,然后再分类的方案,效果比单独的色彩空间更好。

(表1中不同的method是CASIA FA数据集包含的7个场景的测试集对应的测试)
在这里插入图片描述
表格3是跟别的论文方案进行对比。总之在这俩个数据集上也很有竞争力,虽然没拿到所有的最佳。
在这里插入图片描述
论文中还涉及了对SVM类型及核函数的讨论。由于我不打算用SVM,就不细说了。
LBP使用的是半径为1的8像素圆形算子,对64x64大小的人脸提取纹理特征。作者说为了同时捕捉人脸图像的外观和运动变化,他们是在一个几秒视频上对每一帧提取特征后再求平均(我也没看人家的代码实现,我理解应该是对LBP直方图求平均)。

在这里插入图片描述
作者在论文里说,HSV和YCbCr两个色彩空间的特征合并后得到的直方图尺寸是59x3x2,所以可以推测,作何使用的直方图灰阶的数量是59,而不是256。猜测这么做是为了减少计算量。如果对59这个数字再敏感一点,可以从网上查到,等价灰度不变模式的LBP的维度刚好是59,opencv中刚好也支持。

参考资料

《FACE ANTI-SPOOFING BASED ON COLOR TEXTURE ANALYSIS》论文链接

《Face Spoofing Detection Using Colour Texture Analysis》论文地址

目前局部纹理特征分析常用的算子:https://zhuanlan.zhihu.com/p/393873880

【CV】图像特征提取:LBP:https://zhuanlan.zhihu.com/p/556382573

猜你喜欢

转载自blog.csdn.net/yuanlulu/article/details/128828033
今日推荐