当前位置: 首页 > news >正文

论文阅读《thanking frequency fordeepfake detection》

项目链接:https://github.com/yyk-wew/F3Net

这篇论文从频域的角度出发,提出了频域感知模型用于deepfake检测的模型

整体架构图:

1.FAD:

频域感知分解,其实就是利用DCT变换,将空间域转换为频域,变换后的图像低频信息在左上角,高频信息在右下角,同时高频表示细粒度的伪造痕迹,因为进过DCT变换后的图像不再具有尺度不变性和局部相关性的RGB图像特性,故需要对其进行IDCT变换为RGB域。

图3(b)展示了DCT功率谱的分布。通过将2D功率谱展平为1D表示,通过对每个频率带的振幅求和。

根据自然图像的DCT功率谱特性,我们观察到大部分能量集中在低频区域。为了在频率感知分解中适应地捕捉到不同频率的信息,我们将频谱分为几个能量相等的频带,并使用基本滤波器来定义这些频带。通过添加可学习滤波器,我们可以更灵活地选择感兴趣的频率范围。在这里,作者选择了3个频带,其中低频带占整个频谱的1/16,中频带占1/16到1/8,高频带占剩下的7/8。

这样的频率划分方式有助于在频率感知图像分解中捕捉到不同频率范围内的信息,特别是对于处理与压缩伪影相关的伪造模式而言。通过将频谱分解为不同的频带,方法可以更好地适应不同频率范围内的信号特性,从而提高对压缩伪影的描述和处理能力。

---------------------------------------------------

与传统手工设置的滤波器不同的是,作者在论文中提出了一个基础滤波器和可学习滤波器相结合的滤波器,使得模型的学习能力更强同时解决传统手工滤波器无法完全覆盖频率域的问题。

a.作者提出了一种新颖的频率感知分解(FAD)方法,根据一组可学习的频率滤波器在频率域上自适应地对输入图像进行分割

b.分解的频率分量可以逆变换到空间域,得到一系列频率感知图像分量。

c.这些分量沿通道轴堆叠,并输入到卷积神经网络中.

DCT的两个特点:

a.DCT被广泛应用于图像压缩、去噪、特征提取等领域,因为它能够将信号分解为频率成分,并且能够以较高的能量集中在较少的系数上。

b.其频率分布的布局使得低频成分主要集中在左上角,而高频成分主要集中在右下角,这种布局有助于对图像中的频率信息进行分析和处理。

2.LFS

频率感知分解(FAD)提供了与卷积神经网络(CNNs)兼容的频率感知表示,但它必须将频率感知线索重新表示到空间域中,因此无法直接利用频率信息。同时,由于直接从频谱表示中提取CNN特征通常是不可行的,作者提出估计局部频率统计(Local Frequency Statistics,LFS),不仅可以明确地呈现频率统计信息,还可以匹配天然RGB图像所具有的平移不变性和局部一致性。然后,将这些特征输入到卷积神经网络(例如Xception [12])中,以发现高级的伪造模式。

如图4(a)所示,我们首先对输入的RGB图像应用滑动窗口离散余弦变换(Sliding Window DCT,SWDCT),即在图像的滑动窗口上密集地进行离散余弦变换,以提取局部的频率响应。然后,在一系列可学习的频率带上计算平均频率响应。这些频率统计信息重新组合成一个多通道的空间映射,与输入图像具有相同的布局。这种局部频率统计提供了一个定位的窗口,用于检测详细的异常频率分布。在一组频率带内计算统计信息可以减少统计表示的复杂性,同时产生一个更平滑的分布,不受异常值的干扰。

简而言之,这段话说明了作者提出的方法。作者建议使用局部频率统计(LFS)来明确地呈现频率统计信息,并且与自然RGB图像所具有的平移不变性和局部一致性相匹配。通过应用滑动窗口离散余弦变换和计算频率统计信息,将频率感知线索重新表示到空间域中,并输入到卷积神经网络中,以发现高级的伪造模式。这种方法可以提供更详细的异常频率分布,并减少统计表示的复杂性。

3.融合

通过交叉注意力模块逐渐融合两个流的FAD和LFS特征。

F3-Net的整个网络架构由两个分支组成,每个分支都配备了Xception块,一个用于由FAD生成的分解图像组件,另一个用于由LFS生成的局部频率统计,如图2所示。

我们提出了一个交叉注意力融合模块,用于特征交互和信息传递,每隔几个Xception块进行一次。与先前方法中广泛使用的简单连接不同,作者首先使用来自两个分支的特征图计算交叉注意力权重。

交叉注意力矩阵被用来增强一个流的关注特征到另一个流中。

预训练的Xception网络作为两个分支的基础网络,每个分支都有12个块。根据中等级别和高级别语义,在第7个块和第12个块之后采用MixBlock来融合两种类型的频率感知线索。

---------------------------------------------------------

如何理解经过DCT变换之后,图像不再具有尺度不变性和局部一致性。

2.LFS:局部频域统计

是将图像进行划分成小的patch块,然后使用滑动窗口依次在每个patch快上进行DCT变换

我的理解:

DCT变换是将图像在空间域上的表示转换到频域上的表示,表示每个频域的分布多少,当尺度发生变化时,频域上的表示会有所改变,同时对于局部不变性也会发生改变,因为相邻域在频域上的关系并不是与RGB域是的邻域是对应的关系,总之两者是图像的不同表现形式

官方解答:

DCT(离散余弦变换)是一种常用的图像变换方法,它将图像从空域转换到频域。DCT变换通常用于图像压缩和信号处理领域。

1.DCT变换,通过计算不同频率的分量来表示图像的频域特征。

每个频域分量表示了在图像中特定频率的振幅信息。当图像的尺度发生变化时,图像的频域表示会相应地改变。

较小尺度的细节可能在高频分量中表示,而较大尺度的结构可能在低频分量中表示。

2.此外,DCT变换后的频域表示可能会破坏图像中相邻像素的空间关系。在空域中,相邻像素具有空间上的局部一致性,但在频域中,相邻像素的频域表示可能相差较大,并不直接对应于空域中的邻域关系。

相关文章:

论文阅读《thanking frequency fordeepfake detection》

项目链接:https://github.com/yyk-wew/F3Net 这篇论文从频域的角度出发,提出了频域感知模型用于deepfake检测的模型 整体架构图: 1.FAD: 频域感知分解,其实就是利用DCT变换,将空间域转换为频域&#xff…...

ArcgisForJs快速入门

文章目录 0.引言1.前端代码编辑工具2.使用ArcgisForJs创建一个简单应用3.切片地图服务图层4.动态地图服务图层5.地图事件 0.引言 ArcGIS API for JavaScript是一款由Esri公司开发的用于创建WebGIS应用的JavaScript库。它允许开发者通过调用ArcGIS Server的REST API&#xff0c…...

【解决方法】git pull报错ssh: connect to host github.com port 22: Connection timed out

问题 git pull ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repository.解决方法 在C:\Users\username.ssh文件夹下新建config文件,填入以下文本(如有则直接在文件最后一行新增)&am…...

30天精通Nodejs--第三十天:项目实战-物联网应用

目录 引言架构设计编码创建项目数据服务模拟设备消息接收并保存设备数据后端接口项目启动及接口测试项目启动测试源码地址结语引言 在之前的一系列文章中,我们已系统性地探讨了诸多Node.js相关的技术要点与理论背景。随着知识体系的铺垫到位,我们现在步入了实战环节。接下来…...

java 社区资源管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web社区资源管系统是一套完善的java web信息管理系统 ,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.…...

网络编程套接字(Socket)

为什么需要网络编程??? -丰富的网络资源 每天你在b站上刷着喜欢的up主的视频,实质是通过网络,获取到网络上的一个视频资源 与本地打开文件类似,只是视频文件这个资源来源是网络 所谓的网络编程,其实就是从网络上获取各种数据资源 什么是网络编程?? 网络编程,指的是网络…...

C语言第十一弹---函数(下)

​ ✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 函数 1、嵌套调用和链式访问 1.1、嵌套调用 1.2、链式访问 2、函数的声明和定义 2.1、单个文件 2.2、多个文件 2.3、static 和 extern 2.3.1、static…...

Unity读书系列《Unity3D游戏开发》——拓展编辑器(一)

文章目录 前言一、扩展Project视图1、右键扩展菜单(Asset)2、监听事件3、拓展布局 二、扩展Hierarchy视图1、拓展菜单(GameObject)2、拓展布局3、重写菜单 三、扩展Inspector视图1、扩展原生组件2、扩展继承组件 四、扩展Scene视图…...

【Git】项目管理笔记

文章目录 本地电脑初始化docker报错.gitignoregit loggit resetgit statusgit ls-filesgit rm -r -f --cached拉取仓库文件更新本地的项目报错处理! [rejected] master -> master (fetch first)gitgitee.com: Permission denied (publickey).error: remote origin already e…...

中文词性标注工具pkuseg例子(运行结果,不太好)

pkuseg_demo.md pkuseg 预训练模型 预训练模型science 安装 pip3 install pkuseg cd /rot/pkuseg_home/model/wget https://github.com/lancopku/pkuseg-python/releases/download/v0.0.25/science.zip uzip science.zip -d ./science/ ls /rot/pkuseg_home/model/science/…...

获取URL参数:split方法、URLSearchParams方法示例

在JavaScript中,可以使用多种方法来获取URL参数,其中常用的方法有split()和URLSearchParams()。 使用split()方法获取URL参数: split()方法将字符串分割成数组。可以使用split()方法将URL分割成协议、主机、路径和查询字符串等部分。然后可…...

SparkSql---用户自定义函数UDFUDAF

文章目录 1.UDF2.UDAF2.1 UDF函数实现原理2.2需求:计算用户平均年龄2.2.1 使用RDD实现2.2.2 使用UDAF弱类型实现2.2.3 使用UDAF强类型实现 1.UDF 用户可以通过 spark.udf 功能添加自定义函数,实现自定义功能。 如:实现需求在用户name前加上"Name:…...

系统架构15 - 软件工程(3)

软件过程模型 瀑布模型特点缺点 原型化模型特点两个阶段不同类型注意 螺旋模型V 模型特点 增量模型特点 喷泉模型基于构件的开发模型(CBSD)形式化方法模型敏捷模型特点“适应性” (adaptive) 而非“预设性” (predictive)“面向人的” (People-oriented) 而非“面向过程的” (P…...

两个近期的计算机领域国际学术会议(软件工程、计算机安全):欢迎投稿

近期,受邀担任两个国际学术会议的Special session共同主席及程序委员会成员(TPC member),欢迎广大学界同行踊跃投稿,分享最新研究成果。期待这个夏天能够在夏威夷檀香山或者加利福尼亚圣荷西与各位学者深入交流。 SERA…...

(二十一)Flask之上下文管理第二篇(细细扣一遍源码)

每篇前言: 🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者 🔥🔥本文已收录于Flask框架从入门到实战专栏:《Flask框架从入…...

Java项目:基于SSM框架实现的企业员工岗前培训管理系统(ssm+B/S架构+源码+数据库+毕业论文)

一、项目简介 本项目是一套ssm821基于ssm框架实现的企业员工岗前培训管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格…...

深入了解Redis:选择适用于你的场景的持久化方案

自然语言处理的发展 文章目录 自然语言处理的发展强烈推荐前言:Redis提供了几种主要的持久化方案:RDB快照持久化:工作原理: AOF日志文件持久化:混合持久化: 总结强烈推荐专栏集锦写在最后 强烈推荐 前些天…...

【Git配置代理】Failed to connect to github.com port 443 问题解决方法

前言: 在学习代码审计时,有时会需要使用git去拉取代码,然后就出现了如下错误 看过网上很多解决方法,觉得问题的关键还是因为命令行在拉取/推送代码时并没有使用VPN进行代理。 解决办法 : 配置http代理:…...

python提取word文档内容的示例

一、微软Word历史、背景: Word 的特异功能就是把那些应该写成简单的 TXT 或 PDF 格式的文件,变成了既大又慢且难以打开的怪兽,它们经常在系统切换和版本切换中出现格式不兼容,而且因为某些原因在文件内容已经定稿后仍处于可编辑的…...

MarkDown快速入门-以Obsidian编辑器为例

直接上图,左右对应。 首先是基础语法。 # 标题,几个就代表几级标题;* 单个是序号,两个在一起就是斜体;- [ ] 代表任务,注意其中的空格; 然后是表格按钮代码 | 使用中竖线代表表格&#xff0c…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

Golang——9、反射和文件操作

反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...

day36-多路IO复用

一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...

MySQL:分区的基本使用

目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区(Partitioning)是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分(分区)可以独立存储、管理和优化,…...