金字塔监督在人脸反欺骗中的应用
介绍
论文地址:https://arxiv.org/pdf/2011.12032.pdf
近年来,人脸识别技术越来越普及。在智能手机解锁和进出机场时,理所当然地会用到它。人脸识别也有望被用于管理今年奥运会的相关人员。但与此同时,人们对人脸欺骗的关注度也越来越高,而人脸反欺骗(FAS)这一防止人脸欺骗的技术领域也备受关注。
恶搞技术每年都在发展。随着新类型的欺骗变得越来越现实,需要有一种稳健的算法,能够在没有经过现有模型训练的场景下检测欺骗。传统的基于二进制分类的模型(如"0"代表真实,"1"代表欺骗)比较容易建立,性能也比较高,但有一个弱点,就是难以学习到内在的、有辨识度的欺骗模式。
因此,最近在FAS任务中提出了Pixel-Wise Supervision,其目的是学习更细粒度的像素/斑点级特征,对识别更有用。

在本文中,在综合回顾了以往的方法后,如上表所示,他们提出了一个新的框架,称为Pyramid Supervision,它可以从多尺度的空间环境中学习局部细节和全局语义信息。在本文中,他们将介绍该框架及其性能。
在5个FAS基准数据集上进行了大量的实验,发现Pyramid Supervision不仅提高了现有的Pixel-Wise Supervision的性能,而且还能在补丁层面识别欺骗的痕迹,提高了模型的可解释性。可解释性;
新框架"金字塔监督
金字塔 在现有的方法中很容易引入监督,以提高其绩效。在本文中,我们展示了一个在两种典型方法中引入金字塔监督的例子。二进制掩模监督和深度图监督。
首先,金字塔二元掩码监督的图,将金字塔监督应用于二元掩码监督,如下图所示。

从RGB输入图像(3×256×256)中提取多尺度特征(_F__8,_F__4,F__2,F1),提取各特征后采用平均池化法。此外,每个特征(_F__8,_F__4,F__2,F1),用1x1 Conv进行特征到掩模的映射,得到多尺度二元掩模(Θ8、Θ4、Θ2、Θ1)。多尺度二元掩模预测可以表述为: 1.可制定如下:

每一个生成的多尺度二元掩码都要进行变换和并联,最后应用二元分类。对于每个像素的地面真值_(Y_),可以直接使用已经注释的二进制掩码标签,也可以使用生成的粗二进制掩码。转换为与输入图像相同的多尺度掩模标签(Y8、Y4、Y2、Y1)。
预测的多尺度二进制掩码和地面真相大小相同,通过累积每个尺度每个位置的二进制交叉熵(BCE)来计算损失函数(Lpyramid)。

在训练过程中,网络的整体损失函数(Loverall)可以表述如下_Lbinary_将是最后一次二进制分类的BCE。在测试过程中,只使用最终的二进制分数。

接下来,金字塔深度图监督应用于深度图监督,如下图所示。

如图所示,CDCN从输入图像(3×256×256)中提取多级特征,并预测灰度深度图(32×32)。与金字塔二元掩模监督类似,预测的深度图D32(32×32)和生成的Pseduo深度都被下采样并调整为相同的比例(32×32、16×16等)。
金字塔深度损失(LdepthPyramid)可制定如下。
这里,Di代表预测深度图的比例尺_i_。另外,LMSE和LCDL分别代表均方误差(MSE)和对比度深度损失(CDL)。对比深度损失(CDL)是CVPR2020中提出的损失函数,其公式如下。

这是一种新引入的损失,因为常用的使用欧氏距离的Contrasive Loss没有考虑相邻像素信息,细节信息丢失,影响泛化性能。

(出典:深度空间梯度和时间深度学习的人脸防欺骗技术)
在训练过程中,只使用LdepthPyramid,在测试过程中,计算所有尺度预测的深度图的平均值作为最终得分。
实验
如上所述,在基于Pixel-Wise Supervision的FAS中,主流的Backbone可以分为两类。
1)基于二进制掩码监督的网络(如ResNet和DenseNet)。
2)基于伪深度监督的网络(如DepthNet)。
在此,分别以具有代表性的ResNet50和CDCN作为基线,并与金字塔监督的模型进行比较。
数据集内类型测试 (OULU-NPU)
数据库内测试是对特定数据集的性能评估。使用一个代表性的数据集OULU-NPU来评估性能。为了公平的比较,使用原始协议和指标,指标是攻击展示分类错误率(APCER)、展示分类错误率(BPCER)和ACER的平均值计算出来的。使用ACER,其计算方法是APCER是指被误判为真实的欺骗行为的百分比,PCER是指被误判为欺骗行为的百分比。PCER是指被欺骗和误判的真品比例。下表显示了使用OULU-NPU进行Intra-Dataset测试的结果,其中Prot.代表OULU-NPU提供的四种协议。

从ACER来看,重点是提出的金字塔监督(PS),可以看到它在四个协议中持续降低和提高性能。换句话说,它在光照、攻击介质和输入摄像机等外部环境方面的泛化性能有所提高。
从模型来看,CDCN-PS在四个协议中实现了比SOTA的模型更好或性能相当。ResNet50-PS显示出非常好的效果,在协议4中表现得比CDCN-PS更好,虽然前三个协议的性能没有那么高,但在协议4中最难达到高性能。这表明,即使在训练数据有限的情况下,金字塔监督也是非常有效的。
数据集内交叉类型测试(SiW-M)
通过SiW-M的跨类型测试验证未知攻击的泛化性能。如下表所示,与传统的Pixel-Wise Supervision相比,ResNet50-PS和CDCN-PS实现了整体更好的EER,分别提高了17%和12%。

跨数据集内类型测试
他们使用四个数据集,OULU-NPU(O),CASIA-MFSD(C),Idiap Replay-Attack(I)和MSU-MFSD(M)。其中,随机选取3个数据集进行训练,剩余1个数据集用于测试。下表显示了结果。

可以看出,金字塔监督的实施显著提高了ResNet50-PS的性能(HTER),尤其是"O&C & I to M"和"I&C & M to O"的性能(HTER)提高了-4.48%和-5.03%。
同样,CDCN-PS在"O & C & I to M"、“O & M & I to C”、"I & C & M to O"的表现(HTER)分别提高了-2.48%、-4.21%、-1.16%。我们表明,金字塔监督也有助于在多源域上提供丰富的多尺度指导。
可视化
下图是SiW-M在Cross-Type测试中预测的真假二元图。

从"Live"、"Replay"和"Transp.Mask"的预测结果来看,ResNet50 8x8和ResNet50-PS的表现都不错,表现出较高的识别可信度。另一方面,对于未知攻击方法的预测,如部分打印和半掩模,显示出信心的下降。
从ResNet50 8x8的结果中,可以看到,在第3行第2列中,除了眼睛区域的Print区域外,其他面部区域的预测置信度都很低。另一方面,金字塔监督的使用显著提高了欺骗定位方面的可解释性。预测的8x8和4x4地图分别揭示了面部皮肤区域和冒充媒介的高(真)和低(假)分数位置。
随着欺骗攻击的发展,网络的可解释性将在欺骗的定位和理解上变得越来越重要。
总结
在本文中,他们提出了一种新的金字塔监督,为精细化学习提供了更丰富的多尺度空间背景。
它可以很容易地引入传统方法。实验结果也表明其在泛化和解释性能上都有很高的有效性。要实现安全可靠的人脸识别系统,高泛化性能和高可解释性是不可缺少的。
未来,我们期望通过将其纳入更先进的架构和基于像素的标签,进一步提高系统的性能。
相关文章:
金字塔监督在人脸反欺骗中的应用
介绍 论文地址:https://arxiv.org/pdf/2011.12032.pdf 近年来,人脸识别技术越来越普及。在智能手机解锁和进出机场时,理所当然地会用到它。人脸识别也有望被用于管理今年奥运会的相关人员。但与此同时,人们对人脸欺骗的关注度也…...
vue3——两种利用自定义指令实现防止按钮重复点击的方法
方法一:利用定时器设置时间,下方代码设置时间为1秒 但是有个缺点:请求如果很慢,1秒钟还没有好,那么该方法就没用了 // 利用定时器:1秒之后才能再次点击app.directive(preventReClick, {mounted: (el, bind…...
Chrome谷歌浏览器Console(控制台)显示文件名及行数
有没有这样的困扰?Chrome谷歌浏览器console(控制台)不显示编译文件名及行数? 设置(Settings)- > 忽略列表(lgnore List)-> 自定义排除规则(Custom exclusion rules) 将自定义排除规则…...
Vue3+Element Plus 实现table表格中input的验证
实现效果 html部分 <template><div class"table"><el-form ref"tableFormRef" :model"form"><el-table :data"form.detailList"><el-table-column type"selection" width"55" align&…...
安宝特方案|解放双手,解决死角,AR带来质量监督新体验
AR质量监督 解放双手,解决死角 在当今制造业快速发展的背景下,质量监督成为确保产品高质量和完善的管理制度的关键环节。然而,传统的质量监督方式存在诸多挑战,如人工操作带来的效率低下、查岗不及时、摄像头死角等问题。 为了解…...
Django教程(005):基于ORM操作数据库的部门管理系统
文章目录 1、功能介绍2、新建项目3、创建app4、 表结构创建6、生成表7、静态文件管理8、部门管理8.1、部门列表8.2、添加部门8.3、删除部门8.4、编辑部门9、员工管理9.1、员工列表9.2、使用ModelForm添加员工9.3、编辑员工9.4、删除员工10、完整代码下载地址1、功能介绍 部门添…...
git等常用工具以及cmake
一、将git中的代码克隆进电脑以及常用工具介绍 1.安装git 首先需要安装git sudo apt install git 注意一定要加--recursive,因为文件中有很多“引用文件“,即第三方文件(库),加入该选项会将文件中包含的子模…...
Mybatis(四)特殊SQL的查询:模糊查询、批量删除、动态设置表明、添加功能获取自增的主键
实体类: 数据库: 1、模糊查询 方案一: 不适用#{ },’%?%‘ 问号是属于字符串的一部分 不会被解析成占位符,会被当作是我们字符串的一部分来解析,所以我们执行的语句中找不到占位符,但是我们却…...
JS原型与原型链
JS原型与原型链 JavaScript中一切引用类型都是对象,对象就是属性的集合。 Array类型、Function类型、Object类型、Date类型、RegExp类型等都是引用类型。 原型是什么 总计一句话就是(继承里的父亲,你可以使用你的原型里的函数)…...
Python编程学习第一篇——Python零基础快速入门(六)(4)异常处理
我们已经了解了Python的基本数据类型、变量和基本的逻辑控制语句,基于这些基础知识可以编写一些小程序了,但是在写程序的时候我们会发现,有时候程序并不是按我们预期的方向执行,有的直接报错,有的没有报错,…...
GraphHopper-map-navi_路径规划、导航(web前端页面版)
文章目录 一、项目地址二、踩坑环境三、问题记录3.1、graphhopper中地图问题3.1.1. getOpacity不存在的问题3.1.2. dispatchEvent不存在的问题3.1.3. vectorLayer.set(background-maplibre-layer, true)不存在set方法3.1.4. maplibre-gl.js.map不存在的问题3.1.5. Uncaught Ref…...
2-46 基于matlab的声音信号的短时能量、短时过零率、端点检测
基于matlab的声音信号的短时能量、短时过零率、端点检测。通过计算计算短时能量、调整能量门限,然后开始端点检测。输出可视化结果。程序已调通,可直接运行。 2-46 短时能量 短时过零率 端点检测 - 小红书 (xiaohongshu.com)...
力扣630.课程表 II
力扣630.课程表 II 反悔堆 将课程按照结束时间从大到小排序每次取一个判断当前是否能学完该课程如果能学完就将持续时间加入堆 更新答案如果学不完就判断该课程持续时间是否比之前学过的最大的还大 用时更短的话就将旧的弹出 class Solution {public:int scheduleCourse(ve…...
数字IC后端流程简述
1. 设计输入 目标:接收前端设计(如RTL代码和约束文件)的输出。 工具:前端设计工具(如Synopsys Design Compiler或Cadence Genus)。 步骤: 确保前端设计的RTL代码经过综合并生成了门级网表(Netlist)。 收集约束文件(Constraints),如时序约束(SDC文件)、功率约束等…...
数学建模--整数规划和非线性规划
目录 整数规划 非线性规划 总结 整数规划中分支定界法的具体步骤和实现细节是什么? 初始化: 分支: 定界: 剪枝: 终止条件: 非线性规划中的梯度法、牛顿法和拟牛顿法的比较分析有哪些?…...
Linux-查看dd命令进度
查看dd命令进度 一、概述1. 在一个终端执行拷贝任务2. 在另一终端执行进度命令 一、概述 系统:Ubuntu 22.04 在使用 dd 命令做拷贝大量数据的时候,因为并没有输出,所以比较难判断当前进度,因此可以使用下面的命令作为进度查看 …...
高效微调 100 多种大语言模型:先计算法,急速推理!
hiyouga/LLaMA-Factoryhttps://github.com/hiyouga/LLaMA-Factory Stars: 26.9k License: Apache-2.0 LLaMA-Factory 是一个用于高效微调 100 多个大型语言模型(ACL 2024)的 WebUI。 多种模型:LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Y…...
opencv grabCut前景后景分割去除背景
参考: https://zhuanlan.zhihu.com/p/523954762 https://docs.opencv.org/3.4/d8/d83/tutorial_py_grabcut.html 环境本次: python 3.10 提取前景: 1、需要先把前景物体框出来 需要坐标信息,可以用windows自带的画图简单提取像素…...
qt--电子相册
一、项目要求 设计一个电子相册,点击上一张,切换到上一张图片,点击下一张,切换到下一张图片。 要求:图片的展示可以循环(QList<QString>) 要求:界面美观 二、项目代码 本质是通…...
【MSP430】MSP430F5529几个定时器
MSP430F5529共有四个定时器,其中三个是Timer_A定时器,一个是Timer_B定时器。 这些定时器在MSP430F5529微控制器中发挥着重要的作用,不仅支持多重捕获/比较、PWM输出和内部定时功能,还具有丰富的中断处理能力。这些特性使得MSP430…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...
