金字塔监督在人脸反欺骗中的应用

news2024/9/21 17:35:38

介绍

论文地址: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_),可以直接使用已经注释的二进制掩码标签,也可以使用生成的粗二进制掩码。转换为与输入图像相同的多尺度掩模标签(Y8Y4Y2Y1)。
预测的多尺度二进制掩码和地面真相大小相同,通过累积每个尺度每个位置的二进制交叉熵(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地图分别揭示了面部皮肤区域和冒充媒介的高(真)和低(假)分数位置。
随着欺骗攻击的发展,网络的可解释性将在欺骗的定位和理解上变得越来越重要。

总结

在本文中,他们提出了一种新的金字塔监督,为精细化学习提供了更丰富的多尺度空间背景。
它可以很容易地引入传统方法。实验结果也表明其在泛化和解释性能上都有很高的有效性。要实现安全可靠的人脸识别系统,高泛化性能和高可解释性是不可缺少的。
未来,我们期望通过将其纳入更先进的架构和基于像素的标签,进一步提高系统的性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1953126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

醒醒,别睡了...讲《数据分析pandas库》了—/—<3>

直接上知识点 一、 1、新建数据框时建立索引 所有的数据框默认都已经使用从 0 开始的自然数索引,因此这里的"建立”索引指的是自定 df pd.DataFrame( {varl : 1.0, var2 :[1,2,3,4], var3 :[test,python,test,hello] , var4 : cons} , index [0,1,2,3]) …

【ESP32 IDF SPI硬件驱动W25Q64】

目录 SPISPI介绍idf配置初始化配置通信 驱动代码 SPI SPI介绍 详细SPI介绍内容参考我之前写的内容【ESP32 IDF 软件模拟SPI驱动 W25Q64存储与读取数组】 idf配置 初始化配置 spi_bus_initialize() 参数1 :spi几,例如spi2,spi3 参数2:…

MySQL体系结构与查询执行流程详解

MySQL 体系结构与查询执行过程详解 MySQL 是一个采用单进程多线程架构模式的关系型数据库管理系统。本文将详细介绍 MySQL 的体系结构及其查询语句的执行过程,并探讨性能优化的关键点。 MySQL 体系结构 MySQL 的架构为 Client-Server 架构。总体上,我们可以将 MySQL 的体系…

python—pandas基础(2)

文章目录 列操作修改变量列筛选变量列使用.loc[](基于标签)使用.iloc[](基于整数位置)使用.filter()方法 删除变量列添加变量列 变量类型的转换Pandas 支持的数据类型在不同数据类型间转换 建立索引新建数据框时建立索引读入数据时建立索引指…

如何在宝塔面板给域名配置 SSL 证书

首先需要有证书 这里以阿里云为例 1. 首先进入到 SSL 证书管理控制台 选择个人测试证书,并点击购买 免费的可以使用三个月。 购买完成之后回到控制台。 点击创建证书,将标红的地方填写,其他默认就好。 然后提交审核就行。 这里需要对域名…

JS逆向高级爬虫

JS逆向高级爬虫 JS逆向的目的是通过运行本地JS的文件或者代码,以实现脱离他的网站和浏览器,并且还能拿到和浏览器加密一样的效果。 10.1、编码算法 【1】摘要算法:一切从MD5开始 MD5是一个非常常见的摘要(hash)逻辑. 其特点就是小巧. 速度快. 极难被破解. 所以,…

图像生成中图像质量评估指标—FID介绍

文章目录 1. 背景介绍2. 实际应用3. 总结和讨论 1. 背景介绍 Frchet Inception Distance(\textbf{FID})是一种衡量生成模型性能的指标,它基于Inception网络提取的特征来计算模型生成的图像与真实图像集合之间的距离。 FID利用了Inception模…

repo中的default.xml文件project name为什么一样?

文章目录 default.xml文件介绍为什么 name 是一样的,path 不一样?总结 default.xml文件介绍 在 repo 工具的 default.xml 文件中,定义了多个 project 元素,每个元素都代表一个 Git 仓库。 XML 定义了多个不同的 project 元素&…

64.隐藏指定模块

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:易道云信息技术研究院 上一个内容:63.利用PEB获取模块列表 效果图: 隐藏模块简单实现: #include …

苍穹外卖浏览器前端界面修改

背景: 客户原始方案是期望做一个Spring Boot Vue的饿了么系统,但时间上太仓促,所以建议选择开源的苍穹外码目作为作业提交。 客户接受了建议的方案后,期望对前端页面做一些个性化的定制修改。 过程: 苍穹外卖简单介…

【C++进阶】C++11特性(上)

1、统一列表初始化 1.1 {}初始化 C98的特性用{}统一初始化数组或结构体。 //{}初始化 struct Point {int _x;int _y; }; int main() {int array1[] { 1, 2, 3, 4, 5 };int array2[5] { 0 };Point p { 1, 2 };return 0; } C11则扩大其特性,可以不带进行初始化&…

【SQL 新手教程 2/20】关系模型 -- 主键

💗 关系数据库建立在关系模型上⭐ 关系模型本质上就是若干个存储数据的二维表 记录 (Record): 表的每一行称为记录(Record),记录是一个逻辑意义上的数据 字段 (Column):表的每一列称为字段(Colu…

基于STM32F103的FreeRTOS系列(四)·FreeRTOS资料获取以及简介

目录 1. FreeRTOS简介 1.1 FreeRTOS介绍 1.2 为何选择FreeRTOS 1.3 FreeRTOS资料获取 1.3.1 官网下载 1.3.2 Github下载 1.3.3 托管网站下载 1.4 FreeRTOS的编程风格 1.4.1 数据类型 1.4.2 变量名 1.4.3 函数名 1.4.4 宏 1. FreeRTOS简介 1.1 Free…

IEC104转BACnet网关:实现电力监控与楼宇自动化的无缝对接

在电力监控和楼宇自控领域,IEC104和BACnet作为两种重要的通信协议扮演着重要的角色。随着不同系统之间的数据交换与集成需求的不断增长,深圳市钡铼技术有限公司推出IEC104转BACnet网关来实现这两种协议之间的无缝转换,助力电力监控和楼宇自控…

如何知道一个字段在selenium中是否可编辑?

这篇文章将检查我们如何使用Java检查selenium webdriver中的字段是否可编辑。 我们如何知道我们是否可以编辑字段?“readonly”属性控制字段的可编辑性。如果元素上存在“readonly”属性,则无法编辑或操作该元素或字段。 因此,如果我们找到一…

3.5-RNN文本生成

1语言模型生成文本的顺序 前面我们已经能够实现使用下图的LSTM网络进行语言建模; 对于一个已经在语料库上学习好的LSTM模型;如果语料库就只是you say goobye and i say hello;那么当把单词i输入到模型中,Time xxx层的第一个LSTM…

⌈ 传知代码 ⌋ 深度学习革新音乐转录

💛前情提要💛 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间,对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

SpringBoot上传文件大小超出范围捕获异常

文件上传中,可以限定文件大小,防止用户上传过大的文件,但是出现异常会报错,不够优雅 这里做异常捕获,然后自定义提示文字,可以更加优雅的解决文件上传超出限制报异常 /*** 上传文件超出大小限制异常 适用于…

微信公众号获取用户openid(PHP版,snsapi_base模式)

微信公众号获取用户openid的接口有2个:snsapi_base、snsapi_userinfo 详情见微信公众号开发文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html 本文介绍用PHP方式调用snsapi_base接口获取微信用户…

Godot入门 02玩家1.0版

添加Node2D节点,重命名Game 创建玩家场景,添加CharacterBody2D节点 添加AnimatedSprite2D节点 从精灵表中添加帧 选择文件 设置成8*8 图片边缘模糊改为清晰 设置加载后自动播放,动画循环 。动画速度10FPS,修改动画名称idle。 拖动…