金字塔监督在人脸反欺骗中的应用
介绍
论文地址: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…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 :滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...
LRU 缓存机制详解与实现(Java版) + 力扣解决
📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...
ZYNQ学习记录FPGA(一)ZYNQ简介
一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...
