可以通过其瞳孔判断AI生成的人脸数据是否可靠

概述

我们都知道,GANs的发展使得生成相互之间无法区分的人脸图像成为可能。虽然这项技术在发展,但也有弊端,比如出现了用生成的人脸作为资料图片的虚假社交媒体账户。因此,随着GANs的发展,使用深度学习模型检测生成的人脸图像的方法已经被开发出来。然而,这些方法存在两个严重的挑战:缺乏可解释性,以及由于过拟合问题,不同生成方法之间的概括性差。例如,通过检测GAN生成模型在表示人脸和物理世界之间的互动方面的不足之处,已经取得了改进。作为一个例子,有人提议利用两只生成的眼睛之间的角膜镜面亮点的差异。然而,在严格的人像环境下,所提出的方法不能以这种方式使用,即光源和反射器对两只眼睛都是可见的,而且眼睛与光源和反射器是分开的。为了克服这些限制并探索更稳健的模型,我们提出了一种基于瞳孔形状的新物理方法。
论文地址:https://arxiv.org/pdf/2109.00162.pdf

方法

这个方法很简单。为了检测瞳孔形状的假象,如下图所示,并确定GAN生成的人脸,该方法首先自动提取两只眼睛的瞳孔面具,并评估它们是否是椭圆形的。

为此,还包括瞳孔裁剪技术,但我们将跳过大部分技术。

实验

数据集

我们使用FlickrFaces-HQ(FFHQ)数据集来获取真实的人脸图像,以及由StyleGAN22创建的GAN生成的人脸。我们有1000张分辨率为1024x1024的每一类的图片。

结果

下图是对真实人脸和由GAN生成的人脸的眼睛分析结果的一个例子。

真正的人的眼睛有强烈的椭圆形,这在他们的眼睛中得到了高度体现

BIoU得分

在预测的瞳孔遮盖物和椭圆拟合的瞳孔遮盖物之间,它是比较高的。然而,不规则形状的瞳孔伪影会大大降低BIoU的得分。真实面孔和GAN生成的面孔的学生的BIoU分数的分布也显示在下图中。两种分布之间有明显的区别,表明不规则的瞳孔形状是区分真实和GAN生成的脸的有效手段。

限制条件

该方法也有一些局限性:它使用瞳孔的不规则几何形状来检测GAN生成的面。如果在瞳孔或虹膜区域有疾病或其他问题,这种方法的效果并不好。此外,瞳孔闭塞或瞳孔分割的失败也会导致错误的预测。换句话说,就是假定瞳孔被干净地捕获。

总结

我们提出,由GAN生成的人脸可以通过其瞳孔的不规则形状进行判断。在未来,我们将考虑GAN生成的人脸的两个瞳孔之间的其他类型的不一致,例如不同的几何形状和两个眼睛的瞳孔的相对位置。仍有一些几何特征需要确定,我们相信会提出一种更方便的检测方法。

随着GAN技术的发展,我相信会产生人们难以分辨的图像。考虑到这种技术的滥用,我们肯定会需要这种技术,所以我们会一直关注它。

運営 avatar

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

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

相关文章

python中有时使用pip安装库而有时又使用conda安装库,到底应该使用哪个管理工具进行库的安装呀?

决定使用conda还是pip来安装Python库主要基于以下几个因素: 库的可用性: Conda:如果你要安装的库在Anaconda的默认频道或conda-forge等其他Conda频道中存在,优先使用conda install。Conda不仅管理Python包,还能管理非…

Java Web学习笔记5——基础标签和样式

<!DOCTYPE html> html有很多版本&#xff0c;那我们应该告诉用户和浏览器我们现在使用的是HMTL哪个版本。 声明为HTML5文档。 字符集&#xff1a; UTF-8&#xff1a;现在最常用的字符编码方式。 GB2312&#xff1a;简体中文 BIG5&#xff1a;繁体中文、港澳台等方式…

Ubuntu的基本使用(ROS)

Ubuntu的基本使用&#xff08;ROS&#xff09; 终端常用指令 1. ls - 列出目录内容 用途&#xff1a;显示当前目录下的文件和文件夹。示例&#xff1a; ls&#xff1a;列出当前目录下的所有文件和文件夹。ls -l&#xff1a;以列表形式显示更详细的信息&#xff08;如权限、所…

ARM32开发——串口输出

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 需求串口数据发送串口打印实现复用功能串口发送流程&#xff08;了解&#xff09;串口的标志位关心的内容 需求 串口循环输出内容到…

大数据基础问题:在Hive中如何实现全增量统一的UDTF、内置函数、聚合、Join等计算引擎常见算子?

仁者见仁智者见智&#xff0c;每个程序员的方法都不一样&#xff0c;老的程序员和新的程序员之间的思维差距很大&#xff0c;新入公司的和老员工的代码差距也很大。 在Apache Hive中&#xff0c;实现全增量统一的用户定义表生成函数&#xff08;UDTF&#xff09;、内置函数、聚…

pdf文件怎么合并成一个文件

在现代办公环境中&#xff0c;PDF文件的使用已变得非常普遍。它们具有跨平台、易读性强的特点&#xff0c;因此被广泛应用于各种场合。然而&#xff0c;当需要处理大量的PDF文件时&#xff0c;如何有效地将它们合并成一个文件&#xff0c;成为了一个需要解决的问题。本文将详细…

【越界写null字节】ACTF2023 easy-netlink

前言 最近在矩阵杯遇到了一道 generic netlink 相关的内核题&#xff0c;然后就简单学习了一下 generic netlink 相关概念&#xff0c;然后又找了一到与 generic netlink 相关的题目。简单来说 generic netlink 相关的题目仅仅是将用户态与内核态的交互方式从传统的 ioctl 变成…

盘点学习Python常犯一些错误,你中了几个

对于刚入门的 Pythonista 在学习过程中运行代码是或多或少会遇到一些错误&#xff0c;刚开始可能看起来比较费劲。随着代码量的积累&#xff0c;熟能生巧当遇到一些运行时错误时能够很快的定位问题原题。下面整理了一些常见的 17 个错误&#xff0c;等你写出的代码不怎么出现这…

测试工具链

缺陷管理 bug管理工具 devops---项目管理--缺陷管理 bug管理地址 https://devsecops.mychery.com:8443/chery/project?filterROLE&statusACTIVE bug管理环境 采用公司的devops平台&#xff0c;对每个项目的bug进行管理。目前在使用 接口测试和服务端性能测试 工具…

HBase数据库面试知识点:第一部分 - 基础概念与特点(持续更新中)

目录 一、HBase基础概念 1. HBase定义 2. 核心组件 3. HBase的特点 二、HBase与传统RDBMS的区别 1. 数据类型 2. 数据操作 3. 存储方式 4. 伸缩性 5. 事务性 三、HBase数据模型 四、HBase的特点 五、HBase与Hadoop生态系统的关系 一、HBase基础概念 1. HBase定义 …

C++对CSV文件进行读,写,追加操作

1.读取CSV文件 // 读取csv文件 void read_csv(const std::string& file_path) {std::cout<<"文件路径: "<< file_path<<"\n";std::ifstream csv_data(file_path, std::ios::in);std::string line;if (!csv_data.is_open()) {std::c…

斯坦福抄袭清华、面壁智能大模型,当事人已道歉、删项目

6月4日&#xff0c;两名斯坦福大学生Aksh Garg和Siddharth Sharma&#xff0c;承认抄袭清华和面壁智能联合开发的MiniCPM-Llama3-V2.5&#xff08;以下简称V2.5&#xff09;多模态大模型事件&#xff0c;并在社交平台公开道歉、删掉开源项目。 该抄袭事件也得到了斯坦福大学AI…

阿里云计算之linux入门命令学习笔记(二)

Linux 提供了丰富的命令行工具&#xff0c;用于系统管理、文件操作、网络管理、进程控制等。以下是一些常用的 Linux 命令及其简要说明&#xff1a; 切换用户 su 命令 su (substitute user) 命令用于切换用户。 su - username # 切换到指定用户&#xff0c;并加载…

【python】成功解决“ImportError: cannot import name ‘triu’ from ‘scipy.linalg’”错误的全面指南

成功解决“ImportError: cannot import name ‘triu’ from ‘scipy.linalg’”错误的全面指南 在Python编程中&#xff0c;尤其是在使用scipy这个科学计算库时&#xff0c;可能会遇到ImportError错误&#xff0c;提示无法从scipy.linalg模块中导入名为triu的函数。这个错误通…

程序员职业生涯中的重要职业素养

程序员应该有什么职业素养&#xff1f; 作为一名程序员&#xff0c;职业素养在日常工作中至关重要。这不仅关系到个人职业发展的成功&#xff0c;也影响团队的整体效率和项目的成功。以下是几项对程序员而言尤为重要的职业素养&#xff1a; 1. 技术能力与学习能力 持续学习&…

浏览器原理---进程与线程

1、进程与线程的概念 从本质上说&#xff0c;进程和线程都是 CPU 工作时间片的一个描述&#xff1a; 进程描述了 CPU 在运行指令及加载和保存上下文所需的时间&#xff0c;放在应用上来说就代表了一个程序。线程是进程中的更小单位&#xff0c;描述了执行一段指令所需的时间。…

过滤器:Vue.js允许你自定义过滤器,可用于常见的文本格式化。过滤器可以用在两个地方:mustache插值和v-bind表达式

简介 Vue.js过滤器的概念 在Vue.js中,过滤器是一些用于处理和转换文本的函数。它们可以用在模板中的两个地方:mustache插值和v-bind表达式。过滤器应该被添加在JavaScript表达式的尾部,由“管道”符号表示。 过滤器的作用和优点 过滤器的主要作用是在不改变原始数据的…

Unity3D Delaunay德罗内三角算法详解

Unity3D是一款强大的游戏开发引擎&#xff0c;它提供了丰富的功能和工具&#xff0c;使开发者能够轻松创建出色的游戏和应用程序。其中&#xff0c;Delaunay德罗内三角算法是一种常用的计算几何算法&#xff0c;用于生成三角形网格&#xff0c;其在Unity3D中的应用也非常广泛。…

探索Linux中的rename命令:强大的文件名重命名工具

探索Linux中的rename命令&#xff1a;强大的文件名重命名工具 在Linux系统中&#xff0c;处理文件和目录时&#xff0c;经常需要对文件或目录进行重命名。虽然基本的mv命令可以用于此目的&#xff0c;但在面对需要按照特定模式进行批量重命名时&#xff0c;mv命令就显得有些力…

ROS系列rqt的安装以及使用方法介绍

目录 1. 安装 2. 部分工具的功能介绍及使用方法 1&#xff09;rqt_gui 2&#xff09;rqt_topic 3&#xff09;rqt_graph 4&#xff09;qt_plot 5&#xff09;rqt_service_caller 6&#xff09;rqt_bag 1. 安装 安装极其简单&#xff0c;不多介绍&#xff0c;直接上命令…