deepfake入门

date
Oct 2, 2022
Last edited time
Oct 2, 2022 03:43 PM
status
Published
slug
deepfake入门
tags
DL
summary
DeepFake尝试入门 基本只读了Abstract 和 Introduce
type
Post
Field
Plat
Deepfake detection文章总结第一弹(经典文章)
本文是论文 DeepFakes and Beyond: A Survey of Face Manipulation and Fake Detection 的一些小节与总结。这篇综述写的挺不错的,也算比较新的综述了,大家对deepfake检测有兴趣的可以看一下。 此外,很多内容还参考了 Me WTwo大佬的专栏 写的非常好,建议大家去看看 也可关注系列其他文章: 一、四种伪造假脸类型,如figure1所示 Entire face synthesis(全脸合成,类似于直接用GAN或者其他生成模型生成的人脸,没有明确的target) Face indentify swap(也就是现在最火的deepfake,有target) Face attributs manipulation(面部属性操作,包括更改人的发型,是否戴眼镜等等,个人认为有点像ps,没有target) Face expression manipulation(面部表情交换,就是将target的表情移植到被攻击者的面部,有target) 二、Entire face synthesis(人脸合成) 人脸合成常用数据集如figure2所示(基本都是不同种GAN生成的数据): 2.Entire face synthesis dectetion常用方法如figure3所示: 简单介绍一下: 【28】使用简单的颜色特征和svm分类器Detecting GAN-Generated Imagery Using Color Cues,arXiv preprint arXiv【29】使用GAN 留下特殊的"fingerprint",其实"fingerprint"就是一个二分类网络最后层的权重,图片的fingerprint就是网络分类层的前一层个人感觉本文可视化做的比较有创意,用了一个autoencoder去重建出真正图像指纹的样子。 Attributing Fake Images to GANs:Analyzing Fingerprints in Generated Images,International Conference on Computer Vision, 2019 【30】使用神经网络中间层的激活作为判断依据(使用vgg-face等网络的中间层作为特征进行svm分类),如figure4所示: *FakeSpotter: A Simple Baseline for Spotting AI-Synthesized Fake Faces,arXiv preprint*【7】使用cnn+attention来检测,Xiaoming Liu的文章,通过构建特征图的PCA作为attention map作为另一监督信息,可以方便的嵌在现有的网络中,具体pipeline如figure5所示: * On the Detection of Digital Face Manipulation 【31】文[31]提出了一种基于隐写分析和自然图像统计的检测系统。特别是,他们的方法是基于像素共生矩阵和CNNs的组合,还提出了一种鲁棒性分析的方法分析不同gan的鲁棒性*Detecting GAN Generated Fake Images Using Co-Occurrence Matrices,arXiv preprint arXiv*【11】他们提出的基于XceptionNet模型的检测方法,能够正确地检测出新的GANs生成的网络图像。简单看了一下,本文主要提出一种可以将fingerprint去除的基于autoencoder的方法,以欺骗检测系统。 "Real or Fake?
Deepfake detection文章总结第一弹(经典文章)

参考综述

Reference

A literature review of deepfakes(二) 深度学习换脸检测发展调研
【2020.03.03更新】 关于深度学习换脸与检测,文章太长,分三部分介绍,第一、三部分见: 3 Deepfake Detection 3.1 Fake Image Detection 3.2 Fake Video Detection 3.2.1 Temporal Features Across Frames 3.2.2 Visual Artifacts within Frame 3.2.2.1 Deep Classifiers 3.2.2.2 Shallow Classifiers Deepfakes检测方法根据文章可分为假图像检测和假视频检测,这是因为大多数的图像检测算法不能直接用于视频检测,因为视频压缩带来的强烈degradation。而且,视频具有随着不同帧变化的时间特性,因此很难被静态的图片检测到。下面分别讨论假图像检测和假视频检测算法。 17年的这篇文章是第一篇利用经典机器学习方法解决换脸图片检测问题的论文。作者用栅格划分或者SURF提取关键点描述子,用K-means方法生成bag of words特征,得到codebook直方图,再通过SVM、随机森林(RF)、MLP等分类器进行2分类。在自己建立的基于LFW的假脸数据集中最好的实验结果达到了92%的准确率。 为了避免专注于特定的篡改取证,实现鲁棒的篡改检测,作者提出了一种双流网络结构来捕获篡改伪迹证据和局部噪声残差证据,其中一个stream是一个基于CNN的人脸分类stream,另一个是基于隐藏特征的triplet stream 。第一个基于GoogleNet的人脸分类stream,通过真实的和篡改的图像训练作为一个二分类器,第二个基于patch level隐藏特征的patch triplet stream可以捕捉到像CFA模式和局部噪声残差这样的low-level的相机特征。作者没有直接利用隐写分析特征,而是在提取隐写分析特征后训练一个triplet 网络,使模型能够refine隐写分析特征。将这两种stream结合起来,既可以发现high-level的篡改伪迹的证据,又可以发现low-level的噪声残差特征,为人脸篡改检测提供了很好的性能。作者最后通过两个换脸App自己创建新的数据集来训练和测试。 从实验结果来看,通过融合两个stream的检测分数,作者方法获得了比single stream更好的性能。 也可用于假视频检测。 基于帧间时间特性的方法(temporal features across frames) ,通常使用递归分类方法。 基于帧内人为视觉效果的方法(visual artifacts within frame ),通常提取特定特征后用深层或浅层的分类器完成检测。 对伪造视频的检测可以分为: 提出了一个end-to-end系统。给一段视频序列,前面的CNN网络是直接用ImageNet预训练的InceptionV3模型,只是把最后的全连接层去掉来生成每一帧的2048维特征向量,特征向量输入到LSTM网络中,紧跟着一个512维的全连接层,最后用softmax计算真伪概率。 作者从网站上收集了300个deepfakes视频,试验了不同帧长度的视频,从结果中可以看出,在不到2秒的视频(以每秒24帧的速度采样40帧的视频)的情况下,这个系统可以准确地预测所分析的片段是否来自一个深度伪造的视频,准确率高达97%。 缺点 :需要真实和伪造图片作为训练数据,低效。 基于deepfakes合成视频的训练样本很少闭眼的数据,通过视频人脸的检测眨眼频率来判别。首先 , 检测每一帧的人脸,定位人脸区域,提取人脸关键点,比如眼睛的尖端,鼻子,嘴巴和脸颊的轮廓;抵抗视频帧中的头部运动和面部朝向的变化引起的干扰,使用基于landmarks的人脸对齐算法将人脸区域对齐到一个统一的坐标空间;然后定位提取人眼形成一个稳定的序列送入LRCN网络 LRCN网络: 判断眼睛的状态,首先通过VGG16提取人眼特征,输入RNN结合LSTM单元,将输出送到全连接层判断睁眼闭眼的状态概率,最后用二分类的交叉熵损失函数分别训练CNN网络,LSTM-RNN和全连接层。 作者同时实验了将LRCN方法替换成VGG16的二分类网络和 the eye aspect ratio (EAR) based method ,结果 LRCN show the best performance 0:99 compared to CNN 0:98 and EAR 0.79 in terms of the area under ROC (AUC).
A literature review of deepfakes(二) 深度学习换脸检测发展调研
Deepfake detection文章总结第一弹(经典文章)
本文是论文 DeepFakes and Beyond: A Survey of Face Manipulation and Fake Detection 的一些小节与总结。这篇综述写的挺不错的,也算比较新的综述了,大家对deepfake检测有兴趣的可以看一下。 此外,很多内容还参考了 Me WTwo大佬的专栏 写的非常好,建议大家去看看 也可关注系列其他文章: 一、四种伪造假脸类型,如figure1所示 Entire face synthesis(全脸合成,类似于直接用GAN或者其他生成模型生成的人脸,没有明确的target) Face indentify swap(也就是现在最火的deepfake,有target) Face attributs manipulation(面部属性操作,包括更改人的发型,是否戴眼镜等等,个人认为有点像ps,没有target) Face expression manipulation(面部表情交换,就是将target的表情移植到被攻击者的面部,有target) 二、Entire face synthesis(人脸合成) 人脸合成常用数据集如figure2所示(基本都是不同种GAN生成的数据): 2.Entire face synthesis dectetion常用方法如figure3所示: 简单介绍一下: 【28】使用简单的颜色特征和svm分类器Detecting GAN-Generated Imagery Using Color Cues,arXiv preprint arXiv【29】使用GAN 留下特殊的"fingerprint",其实"fingerprint"就是一个二分类网络最后层的权重,图片的fingerprint就是网络分类层的前一层个人感觉本文可视化做的比较有创意,用了一个autoencoder去重建出真正图像指纹的样子。 Attributing Fake Images to GANs:Analyzing Fingerprints in Generated Images,International Conference on Computer Vision, 2019 【30】使用神经网络中间层的激活作为判断依据(使用vgg-face等网络的中间层作为特征进行svm分类),如figure4所示: *FakeSpotter: A Simple Baseline for Spotting AI-Synthesized Fake Faces,arXiv preprint*【7】使用cnn+attention来检测,Xiaoming Liu的文章,通过构建特征图的PCA作为attention map作为另一监督信息,可以方便的嵌在现有的网络中,具体pipeline如figure5所示: * On the Detection of Digital Face Manipulation 【31】文[31]提出了一种基于隐写分析和自然图像统计的检测系统。特别是,他们的方法是基于像素共生矩阵和CNNs的组合,还提出了一种鲁棒性分析的方法分析不同gan的鲁棒性*Detecting GAN Generated Fake Images Using Co-Occurrence Matrices,arXiv preprint arXiv*【11】他们提出的基于XceptionNet模型的检测方法,能够正确地检测出新的GANs生成的网络图像。简单看了一下,本文主要提出一种可以将fingerprint去除的基于autoencoder的方法,以欺骗检测系统。 "Real or Fake?
Deepfake detection文章总结第一弹(经典文章)

面部伪造的分类

  1. Entire Face Synthesis(全脸合成,类似于直接用GAN或者其他生成模型生成的人脸,没有明确的target)
  1. Attributes Manipulation(面部属性操作,包括更改人的发型,是否戴眼镜等等,个人认为有点像ps,没有target)
  1. Identity Swap(换脸,也就是deepfake,有target)
  1. Expression Manipulation(面部表情交换,就是将target的表情移植到被攻击者的面部,有target)
notion image

Face Manipulation Pipeline

notion image
在第一阶段,假人脸由复杂的深度网络生成或基于模型模板渲染。不同的操作方法总是采用不同的算法,从而产生不同的纹理图案。在第二阶段,生成的人脸被进一步细化并变形回原始图像。这个阶段通常包括一些后期处理操作,例如颜色校正和图像混合。

Entire Face Synthesis

常见数据集

notion image

常见方法

notion image
这些方法使用生成图像中的颜色特征、GAN生成器在图像上留下的 fingerprint 特征、VGG-Face网络的中间层激活值特征这些特征进行判断图像真假。使用的方法有SVM、XceptionNet、CNN+Attention等方式。

Identity Swap

常用数据集

notion image

基础检测方法

Two-Stream Neural Networks for Tampered Face Detection(Low Level + High Level)
第一部分提取脸部特征直接进去二分类。第一个stream是基于GoogleNet的人脸分类,通过真实的和篡改的图像训练作为一个二分类器。
第二部分提取基于patch level的隐藏特征。该结构期望网络捕捉到类似CFA模式或者局部噪声残差之类的low-level的相机特征(隐写术相关)。作者没有直接利用隐写分析特征,而是在提取隐写分析特征后训练一个triplet 网络,使模型能够refine隐写分析特征。
将这两种stream结合起来,既可以发现high-level的篡改伪迹的证据,又可以发现low-level的噪声残差特征,为人脸篡改检测提供了很好的性能。作者最后通过两个换脸App自己创建新的数据集来训练和测试。
notion image
MesoNet: a Compact Facial Video Forgery Detection Network
事实上,基于图像噪声的微观分析不能应用于图像噪声被强降噪的压缩视频环境中。同样,在更高的语义水平上,特别是当图像描绘的是人脸时,人眼很难分辨出伪造的图像。因此作者建议采用一种中间方法,使用具有少量层的深层神经网络。
实验:作者在自己创建的deepfake数据集和FaceForensics的Face2Face数据集上实验,为了提高泛化和鲁棒性,输入patches进行了几个轻微的随机转换,包括缩放、旋转、水平翻转、亮度和色调变化。
notion image
FakeSpotter: A Simple yet Robust Baseline for Spotting AI-Synthesized Fake Faces
Exposing Deep Fakes Using Inconsistent Head Poses (面部朝向估计)
该方法是基于这样的观察:将合成的面部区域拼接到原始图像中来创建deepfakes会在从2D面部图像估计三维头部姿态(比如头的方向和位置)时引入误差。作者进行实验来证明了这一现象并且将这种特征用SVM分类器进行分类。
具体来说,作者比较用所有面部(whole face)坐标点估计的头部姿态和只用中心区域(central face region)估计的头部姿态,发现在真实脸里面它们会很相近,但是对于假脸,因为中间的人脸区域是来自合成脸,这两者的误差就会比较大。
notion image
Exposing DeepFake Videos By Detecting Face Warping Artifacts (仿射变换带来的伪影)
该方法基于DeepFake视频的这样一个属性:
由于计算资源和制作时间的限制,DeepFake算法只能合成有限分辨率的人脸图像,并且必须对其进行仿射变换以匹配源人脸的配置。由于扭曲面区域和周围环境的分辨率不一致,这种扭曲在生成的Deepfales视频中留下了独特的伪影(artifacts),这些伪影可以被经典的深度神经网络模型(如VGG,ResNet等)有效捕获。
notion image
特点:获得负样本训练数据时,考虑到deepfakes算法耗时和耗资源,另一方面,由于本文的目的是检测Deepfakes pipeline中仿射脸翘曲步骤引入的伪影,作者通过直接模拟仿射面翘曲步骤来简化负样本生成过程。
notion image
经典的深度学习模型可以有效的检测到这些伪影的存在,这些伪影可以用来判断这些视频是否使用DeepFakes算法合成。
FaceForensics++: Learning to Detect Manipulated Facial Images
Exploiting Visual Artifacts to Expose Deepfakes and Face Manipulations (人为视觉特征)
基于现有的生成视频方法会产生特有的人为视觉特征(visual artifacts ),通过检测眼睛,牙齿,脸部轮廓发现可以简单地检测出这些特性。作者将这些人为视觉特征(visual artifacts )分为以下几类:
  1. 全局一致性(Global Consistency):包括左右眼虹膜颜色不一致。在现实中虹膜异色症相当稀少,但是这种现象在生成脸中出现的严重程度有很大方差。
  1. 光照估计(Illumination Estimation):在用Face2face的方法中,几何估计、光照估计和渲染是显式建模的,但用深度学习生成的人脸中,对入射光的错误或不精确的估计容易导致相关的伪影。这种伪影通常出现在鼻子周围的区域,比如一侧渲染得过黑。同样,人眼里面的镜面反射在深度学习生成的人脸中不是缺失就是出现简化的白斑。
  1. 几何估计(Geometry Estimation):对人脸不精确的几何估计导致明显的边界和高对比度的人工伪影出现在mask和人脸的边界上,此外,部分遮挡的面部部分,如头发建模不正确,会导致出现“空洞”。而且牙齿通常根本没有建模。这一点在很多视频中都很明显,在这些视频中,牙齿看起来是一个白色的小点,而不是单个的牙齿。
Deepfake Video Detection Using Recurrent Neural Networks (Video)
notion image
提出了一个end-to-end系统。给一段视频序列,前面的CNN网络是直接用ImageNet预训练的InceptionV3模型,只是把最后的全连接层去掉来生成每一帧的2048维特征向量,特征向量输入到LSTM网络中,紧跟着一个512维的全连接层,最后用softmax计算真伪概率。
作者从网站上收集了300个deepfakes视频,试验了不同帧长度的视频,从结果中可以看出,在不到2秒的视频(以每秒24帧的速度采样40帧的视频)的情况下,这个系统可以准确地预测所分析的片段是否来自一个深度伪造的视频,准确率高达97%。
缺点:需要真实和伪造图片作为训练数据,低效。
Protecting World Leaders Against Deep Fakes(Video)
给定一段视频片段,用OpenFace2开源工具追踪人脸和头部运动,面部肌肉的运动可以被编码成特定的运动单元(AU),OpenFace2提供了17个AU,作者去掉了眨眼的AU,因为眨眼影响不大,这些AU根据头部关于x,z轴旋转,嘴角的3D水平距离,上下嘴唇的3D垂直距离生成20个特征向量,然后用Pearson相关性系数测量这20个特征的两两向量相似度,因此可以产生  对特征,因此每个10s的视频片段被压缩为一个190维的特征向量,然后用SVM来分类区分视频的真假。
Recurrent Convolutional Strategies for Face Manipulation Detection in Videos(Video)
notion image
论文借鉴了行为识别领域有很多利用时间信息处理视频的方法,首先进行人脸crop和alignment,把ResNet或DenseNet作为backbone,后面接一个RNN网络进行end-to-end的训练。作者实验了ResNet/DenseNet+单向RNN/双向RNN的组合,在FaceForensics++ 数据集上测试发现双向RNN+DenseNet的结构达到state-of-the-art.
以上方法在全脸合成或DeepFake检测部分,使用的特征有: 1️⃣ 图像的噪声特征(图像颜色, GAN留下的指纹特征, 仿射变换留下的伪影) 2️⃣ 合成假数据算法缺陷导致的特征(面部朝向, 一些人为视觉特征不一致) 3️⃣ 视频中表情的模式特征分布 使用的这些在图像空域存在的底层特征, 在经过图片或者视频压缩之后, 特征难以得到保留. 如这些噪声, 指纹, 并且伪影在文章 FakePolisher: Making DeepFakes More Detection-Evasive by Shallow Reconstruction 中也得到了去除的方法. 总而言之, 这些特征不够稳定与可靠. 使用的方法有: 1️⃣ SVM 2️⃣CNN 3️⃣XceptionNet 4️⃣视频使用 CNN+LSTM, RNN

CVPR2020-AAAI2021

On the Detection of Digital Face Manipulation (修改区域Attention+监督)
notion image
由于人脸可以被篡改部分或者整体,所以作者认为被篡改的空间信息非常重要。以往的工作都忽略了这一点。所以其文章目标不仅是检测被操纵的人脸,而且还通过估计特定图像的注意力图来自动定位被操纵的区域。
该模块以特征图为输入,输出为伪造区域的attention map,最后与原有的feature map逐元素相乘即可得到输出的特征图. attention map 直接用逐像素MSE回归得到.
Face X-Ray for More General Face Forgery Detection (边界Loss+前背景分布不一致假设)
文章基于两个先验:
  1. 几乎所有的人脸伪造技术都符合下图这个流程(Figure 3),伪造的人脸由一个作为背景的人脸图片和一个作为前景的伪造人脸图片进行融合而成。
    1. Exposing DeepFake Videos By Detecting Face Warping Artifacts 文章中提出这个方法会生成伪影, 不过伪影生成的条件大概是图像翘曲变化比较大的时候, 也就是说只针对GAN生成数据集质量不高的情况下
      notion image
  1. 这样形成的伪造人脸图片中,前景和背景在统计意义上(Noise Analysis, Error Level Analysis, etc. )存在着一些不一致性。这种不一致可能来自于硬件原因(相机的参数不同,镜头光照等),算法原因(运算过程中对于图像的压缩和运算操作等)。
    1. notion image
作者使用一种简单的融合方式构造出伪造人脸的训练数据,具体过程如下图所示
notion image
有数据集中的真实人脸 得到 landmarks,一方面通过landmarks 的欧氏距离在数据集中寻找最相似的人脸 , 另一方面通过landmarks 的凸包做变形并模糊处理后得到融合的mask M, 并计算边界 B。计算过程如下:
其中M和B 都是 0 - 1 范围内的连续值,从Intial mask 到 final mask 中模糊化,使得binary 的 M 变成了连续值。
notion image
训练过程如下:
  1. 数据分为(I,B,c),分别是图像,边界,类别。
  1. 模型第一部分是一个全卷积神经网络(如HRnet),输入图像I,输出预测的边界图像B', B和B' 比较得到第一个loss。
  1. 模型的第二部分是一个有pool层,fc层,softmax 组成的小网络,输入之前预测的边界图像B',输出预测的类别c',并得到第二个loss
Global Texture Enhancement for Fake Face Detection In the Wild (全脸合成检测, 长距纹理)
  1. 提出CNN靠纹理来区分真假脸。 实验方法是使用L0滤波(一种可以破坏图片纹理的滤波)对图像进行处理,发现性能下降明显,从而证明CNN十分依赖纹理信息。
  1. 提出真假脸的纹理有区别(由GAN生成的假脸) 实验方法是使用灰度共生矩阵:gray-level co-occurrence matrix (GLCM)来表征真假脸的纹理,可以看到真脸的灰度共生矩阵的值远大于假的。从而证明真假脸的纹理信息有差异。
  1. 提出长距纹理对图像篡改更加健壮 实验方法是计算对应真假脸灰度共生矩阵中纹理距离d和皮尔逊相关系数的关系(标准化的相关系数),看上图可以的出,当纹理距离越大时候(这里距离指灰度共生矩阵计算共现时的范围,具体可以参考维基百科或者原文公式),真假脸的纹理越相关,可以推出长距纹理对图像篡改更加健壮。
基于以上的三个实验, 作者认为识别的关键是要增强对长距纹理信息的捕捉,很遗憾CNN没有这个能力,所以作者就使用格拉姆矩阵辅助捕捉这种信息。
notion image
 
Leveraging Frequency Analysis for Deep Fake Image Recognition (频域)
作者认为所有的生成模型都必须经过上采样过程,而上采样之后的图像的频域上和自然图像会出现明显的差异, 所以在频域上直接识别会取得非常好的效果。
将真假图分别做2D DCT变换:
notion image
可以看出GAN生成的频率会有栅格化(grid-like pattern)的问题,为了进一步证明普适性,作者做了更多的频谱实验:
notion image
可以看出明显的栅格化。
之后文章猜测栅格化的原因是由于上采样导致的,作者使用三种上采样方式并观察频谱图:
notion image
三种上采样方式采用不同大小的核大小(直观理解为从左到右上采样质量越来越好),可以看出随着上采样方式的改变,栅格化效果也越来越弱,从侧面证明了栅格化是由上采样引起的。
notion image
采用相同的条件,在pixel域和frequency分别训练,对比效果。结果发现频域训练能高20个点, 并且频域训练鲁棒性更强。
 
Thinking in Frequency: Face Forgery Detection by Mining Frequency-aware Clues(频域)
F3-Net 商汤Deepfake检测模型
这篇论文是商汤团队在ECCV2020的一个工作:Thinking in Frequency: Face Forgery Detection by Mining Frequency-aware Clues ,通过引入两种提取频域特征的方法 FAD (Frequency-Aware Decomposition) 和LFS (Local Frequency Statistics) ,并设计了一个 MixBlock 来融合双路网络的特征,从而在频域内实现对Deepfake的检测 随着Deepfake技术不断迭代,检测合成人脸的挑战也越来越多。虽然已有的基于RGB色彩空间的检测技术准确率不错, 但是实际中,这些视频随着流媒体传播,视频通常会被多次压缩,而在较低质量的视频中,要想进行检测就比较困难,这也一定程度上启发我们去 挖掘频域 内的信息。 那么问题来了, 我们如何才能把频域信息引入到CNN中?传统的FFT和DCT 不满足平移不变性和局部一致性,因此直接放在CNN 可能是不可行的 。 我们提出了两种频率特征,从一个角度来看, 我们可以根据分离的频率分量重组回原来的图片,因此第一种频率特征也就可以被设计出来,我们可以对 分离的频率分量经过一定处理,再重组回图片,最终的结果也适合输入进CNN当中。这个角度本质上是在RGB空间上描述了频率信息,而不是直接给CNN输入频率信息。这也启发了我们的第二种频率特征, 在每个局部空间(patch)内,统计频率信息,并计算其平均频率响应。这些统计量可以重组成 多通道特征图,通道数目取决于频带数目 如上图,在低质量(Low Quality)图片中,两种图片都很真实,但是在局部的频率统计量(LFS)中,呈现出明显的差异,这也就很自然能被检测出来。 基于上述两种特征,我们设计了 Frequency in Face Forgery Network(F^3Net),第一个频率特征为 FAD(Frequency-aware Image Decomposition),第二个频率特征为 LFS(Local Frequency Statistics)。因为这两个特征是相辅相成的,我们还设计了一种融合模块 MixBlock
F3-Net 商汤Deepfake检测模型
文章提出了两种频率特征,从一个角度来看,我们可以根据分离的频率分量重组回原来的图片,因此第一种频率特征也就可以被设计出来,我们可以对分离的频率分量经过一定处理,再重组回图片,最终的结果也适合输入进CNN当中。这个角度本质上是在RGB空间上描述了频率信息,而不是直接给CNN输入频率信息。这也启发了我们的第二种频率特征,在每个局部空间(patch)内,统计频率信息,并计算其平均频率响应。这些统计量可以重组成多通道特征图,通道数目取决于频带数目.
notion image
如上图,在低质量(Low Quality)图片中,两种图片都很真实,但是在局部的频率统计量(LFS)中,呈现出明显的差异,这也就很自然能被检测出来。
notion image
 
Two-branch Recurrent Network for Isolating Deepfakes in Videos (RGB+LoG+ICC)
  1. 提出一种新颖的双流网络,一路走普通的RGB,一路采用LoG算子(高斯拉普拉斯算子)后的图像,用于抑制RGB图像的内容信息。
    1. notion image
  1. 提出一种新颖的基于one-class-classification的loss,让正样本拉近,同时推开负样本。
网络结构
notion image
整个网络框架如上图所示,整体分两部分,第一部分是普通的RGB分支,第二部分把原来的图像用LoG算子过一遍,用于提取高频信号(可以理解为边缘信息)。两个branch都用dense net结构。之后用一个融合模块把两个信息结合起来,然后经过几个dense block之后过一个lstm抽取帧间的信息最后经行分类。
损失函数
借用了Deep SVVD的思想(一种异常检测的常用的损失),作者把正类聚集,同时推开负样本(但没解释原因)。具体来说,首先先给正样本定计算几个聚类中心,然后使用如下公式计算:
What makes fake images detectable? Understanding properties that generalize (Patch Based CNN)
这篇文章主要关注在forgery face detection泛化性可解释性上.
实验设置
在模型选择上,作者认为假脸检测和普通的人脸识别不一样,人脸识别需要很多content信息,但是假脸检测更多需要细节信息。所以一方面为了减少content信息,另一方面为了可解释性,作者提出了一种patch-based CNN:
notion image
具体来说,就是把完整网络的CNN中某一层的像素接一个1*1卷积进行预测,最后的预测 结果是所有patch的平均值。网络所用的loss:
结果表示patchbased CNN确实比普通的分类器更具有泛化性:
notion image
在数据处理上,作者认为现在的假图片都是用生成器生成的,所以我们可以自由选择图片的保存格式(比如JPG或者PNG等),但是真实图片的编码格式往往是数据集给定的,如果这两者有差异,那神经网络很容易拟合这一保存编码不同而造成的差异,造成表面效果好,而并没有提取到真正的伪造信息。
notion image
Domain General Face Forgery Detection by Learning to Weight (META-Learning+PNet+ICC)
notion image
  1. 这篇文章考虑到GAN生成图片的质量参差不齐, 有一些 Fake Faces 生成质量比较差(或者Real Faces 中纯粹是人脸检测器误检的样本)的样本去拟合他们反而会损害泛化性. 所以作者通过一个打分网络pnet去衡量每个样本的泛化性得分.
    1. notion image
  1. 文章引入了异常检测的loss,拉近真脸,推远假脸。
  1. 作者结合 Mate-Learning 的方式, 随机将所有的训练数据划分为Training-set 和Meta-test set。其中meta-test set相当于是不可见的域. 也就是说想让模型不仅在training set上表现好,也要在meta-test上表现好,为了达成这个目的, 必须筛选出具有域泛化性的样本,且梯度正则项也会强迫模型往更具泛化性的方向更新。
Local Relation Learning for Face Forgery Detection (高频Attention+双流)
【频率图辅助 - 人脸伪造监测】Local Relation Learning for Face Forgery Detection
本文主要提出将图像原图及频率图同时输入,在网络里彼此获取特征信息,最后通过特征层间相似信息作为真假之外的辅助损失函数。 首先,作者使用离散余弦转换(DCT: Discrete Cosine Transform)将原图转换为频率分布: 其次,作者通过过滤分布图中的低频信息以方法高频信息的微妙变换: 最后,再将其转回成 RGB 图像: 之后作者提出对 RGB 和频率图特征的注意力交互模块: 首先将两个图片合并之后输入卷积层得到交互信息: 之后,再通过一层 3*3 的卷积网络得到注意力图,帮助特征整合提取。 最后,作者还提出了多尺度区域相似性模块。首先对每层整合后的两个特征流加和: 之后将每层整合特征图变换成同一尺度,分成多个区域,在本文共划分为 25 个小块 ui,将其特征拉成一维。 基于余弦距离计算所有小块彼此的相似度: 作者通过计算原图和相应伪造图每个像素点的差值,转换成灰度图后取 0.15 为阈值,创造真值二进制图。 将该图同样分成 25 个小块区域,对每个小块计算伪造率,然后根据该值计算真值相似性: 于是,作者创造了相似程度损失函数: 此外,作者还在末端加入了一层解码块获取预测的二进制区域图,损失函数为: 最后预测的伪造概率使用交叉熵损失: 模型的总体网络结构如下: Local Relation Learning for Face Forgery Detection https:// ojs.aaai.org/index.php/ AAAI/article/view/16193
【频率图辅助 - 人脸伪造监测】Local Relation Learning for Face Forgery Detection
  1. Motivation:
    1. (1)因为deepfake只是更改了部分的面部,而被更改的面部和未被更改的部分一定是有差异的,所以作者从局部和全局关系的角度出发,提出了Multi-scale Patch Similarity Module.
      (2)由于真假图在频率域上的差异,为了更好的利用频率信息,让其与RGB信息充分融合,作者提出一种新颖的RGB-Frequency Attention Module
  1. Method
    1. notion image
      首先让输入的rgb通过傅里叶变化得到频域图像,之后经过一个高通滤波过滤掉低频的图像内容部分,保留大概率存在伪造信息的高频部分。再对这部分进行逆变化,得到了输入的第二个分支。
      之后采用双流的策略分别对网络的low-level,mid-level和high-level使用RFAM进行模态对齐:
      notion image
      最后将三个层级的特征进行resize和concat得到了最后的分类特征,不同于以往直接使用polling+fc做二分类,作者考虑了局部与全局的关系,通过将最后特征图分成 个小patch,基于余弦距离计算所有小块彼此的相似度:
      计算原图和相应伪造图每个像素点的差值,转换成灰度图后取 0.15 为阈值,创造真值二进制图:
      将该图同样分成 25 个小块区域,对每个小块计算伪造率,每个patch 的伪造概率 是通过对 的所有像素值进行平均得到的。然后根据该值计算真值相似性:.
      计算similarity-loss:
      最后的,作者还在feature层面接了一个decoder,回归出差异图,同时和ground-truth做Segmentation loss:
以上的方法开始使用频域特征, 因为图像压缩也是基于频域的, 因此频域特征能很大程度上得到保留, 比起空域底层特征更加可靠. 还有些使用了同样不容易丢失的长距纹理特征. 总之, 更关注通用性来了 方法方面, 开始使用Attention, 改进损失形式, 多任务等方法, Patch CNN

ACM MM2020-CVPR2021

WildDeepfake: A Challenging Real-World Dataset for Deepfake Detection (由人脸计算Attention)
作者提出一种基于attention map的检测方法,motivation是在生成deepfake的时候往往会用到一个attention mask去做blending:
notion image
所以在做检测的时候可以先生成相似的attention mask,让网络聚焦在fake的区域。具体作者采用如下的流程去融合原始输入和attention mask:
notion image
具体的attention mask是用landmark先分别提取出face mask和organ mask,再用高斯模糊和归一化融合起来得到,如下图所示:
notion image
Not made for each other– Audio-Visual Dissonance-based Deepfake Detection and Localization (画音同步)
1.Motivation
作者认为音画不同步可以作为检测deepfake视频的很好依据,因为被篡改的帧往往会存在嘴唇的不连续性,而这种不连续性导致了和声音对不上的情况,所以作者提出了基于模态一致性的Modality Dissonance Scores(MDS)来判断真假视频,这个scores还可以判断具体是哪一帧被篡改了。
2.方法
notion image
两路 ,一路是视频,一路是对应的音频,之后视频进CNN,音频通过提取MFCC之后进一个浅层的CNN,中间用一个对比损失进行模态对齐(不是现在自监督那个infonce,是以前lecun提出的那个孪生网络用的对比损失),具体对比损失如下:
d就是Modality Dissonance Scores。
DeepRhythm: Exposing DeepFakes with Attentional Visual Heartbeat Rhythms (心跳???)
  1. 贡献
    1. 作者认为假视频会破坏正常的心脏跳动节奏信号,所以本文从放大这一信号的角度去增强DFD准确率,
      • 发明了DeepRhythm,是第一个从心脏跳动节奏(heartbeat rhythms)角度出发解决deepfake detction问题的。
      • 提出了motion-magnified spatial-temporal representation(MMSTR)模块对deepfake视频做运动放大
      • 提出了一个dual-spatial-temporal attention网络去适应人脸的动态变化和不同类型假脸。
  1. 方法
    1. 我觉得玄学, 日后再说
FakePolisher: Making DeepFakes More Detection-Evasive by Shallow Reconstruction (伪影去除)
这篇文章的目的是通过基于字典学习的浅层重建,消除deepfake的伪影信息,从而使伪造图片更难被发现。
具体方法挺简单,完全不用深度学习。就是先用真人数据集用PCA或者K-SVD学一个真人字典,然后用这些字典做基,对假图像进行重建。
原理就是在真图的流形上找到一个和假图最接近的图,用这个图代替原来的假图,可以消除伪影信息:
notion image
notion image
Multi-attentional Deepfake Detection
文章在浅层使用一个texture enhancement block用于提取纹理信息,具体而言,作者使用average pooling先去掉特征图的纹理信息,再与原图相减用于增强纹理特征。同时在深层使用attention module去定位伪造信息。同时还使用了基于attention map的数据增强和特殊设计的损失函数增加特征图的多样性。
Spatial-Phase Shallow Learning: Rethinking Face Forgery Detection in Frequency Domain
使用相位谱来捕捉上采样操作留下的栅格化并给出了一些理论证明,总体思路和ICML那篇有点像。

CVPR2021

Generalizing Face Forgery Detection with High-frequency Features (图像固定模式噪声+RGB互相Attention)
  1. Motivation
    1. 在本文中,我们发现当前基于 CNN 的检测器倾向于过度拟合特定方法生成的颜色纹理,因此无法泛化。我们观察到图像噪声会消除颜色纹理,并暴露出真实和被篡改的区域之间的差异,因此我们建议利用高频噪声进行人脸伪造检测。
      notion image
      我们精心设计了三个功能模块,以充分利用高频特性。第一个是 Multi-Scale SRM,它在多尺度上提取高频噪声并组成一种新颖的模态。第二个是 Residual-guided Spatial Attention Module,它引导低级RGB特征提取器从新的角度更多地关注伪造痕迹。最后一个是 Cross Modality Attention Module,它利用两种互补模态之间的相关性来促进彼此的特征学习。
       
  1. Analysis of Generalizable Forgery Detector
    1. 为了验证CNN分类器是否偏向于特定的伪造纹理,我们利用基于梯度的可视化工具来生成类的激活图,即Grad-CAM图,它揭示了CNN依赖的分类区域。
      notion image
      当遇到未见过的 forgeries 时,该模型将其他三种 forgeries 误认为是真实的,尽管它们包含许多可见的 Visual Artifacts。此外,高响应区域与训练集中的区域明显不同,与真实脸部的区域相似。原因是模型对F2F独特的forgeries纹理进行了过度适应。因此,当它没有识别当与训练集相同的假纹理模式时,就会给出错误的预测。
  1. Method
    1. Multi-Scale SRM
      1. 观察到图像的高频噪声去除了颜色内容,同时描绘了内在特征,我们尝试利用图像噪声进行人脸伪造检测。噪声是一些高频信号,捕捉亮度或颜色信息的随机变化。图像噪声的分布受图像传感器或数码相机电路的影响。因此,由不同设备处理或来自不同来源的图像具有不同的噪声模式(冷噪)。
        鉴于 Face Manipulation 操作破坏了原始图像特征的一致性,在噪声空间中经常留下独特的痕迹, 因此可以使用噪声来鉴别图像.
        notion image
        SRM 滤波器参考
    2. Cross Modality Attention Module
      1. 我们设计了一个双跨模态注意模块(DCMA)来捕获远程依赖并模拟低频纹理和高频噪声之间的相互作用。
        notion image
  1. Experiments
    1. notion image
      notion image
Lips Don’t Lie: A Generalisable and Robust Approach to Face Forgery Detection (唇读)
在本文中,我们提出了LipForensics,一种既能泛化到新的Face Manipulation又能允许各种扭曲变形的检测方法。LipForensics的目标是嘴部动作的高层次语义不规则,这在许多生成的视频中是很常见的。它包括首先预训练一个空间-时间网络,以实现视觉语音识别(唇读),从而学习与自然口型相关的丰富的内部表征。随后,在真实和伪造数据的固定嘴部嵌入上对时间网络进行微调,以便根据嘴部运动检测假视频,而不对低层次的、特定于操作的人工制品进行过度拟合。
notion image
Multi-attentional Deepfake Detection (Attention*纹理+Attention*全局特征+新Loss解决注意力过于集中)
本文通过语义信息获得注意力map,然后再去利用低粒度信息(篡改痕迹比较多出现的地方)去进行真假判断
小侯的论文笔记-deepfake6
Multi-attentional Deepfake Detection 文章链接: 文章的工作: 这篇文章主要完成了三个工作: ①原来我们在做deepfake检测的时候,我们都会用一种二分的手段,非真即假,但是这篇文章采取了一个新的角度,它对图像进行细粒度分类 ②文章中用到的是多注意力网络结构,为了能够使该结构保持它的多注意力特性,作者还引入了一种区域独立损失,设计了一种注意力引导的数据增广机制从而使得模型产生一种对抗学习的效果 工作细讲: 首先我们来讲一下这次用的架构 先讲下其流程吧 拿到一张图,我们先用注意力块去给它生成多注意力map: 图中可见,先是获得通过主干后的attention layer然后放入attention module 然后依次经过1X1卷积,BN,EeLu,最终得到的就是Attention maps(A,channel就是有多少种局部注意力的方式) 然后就是质地特征的增强(reason:篡改所导致的浅层特征中的组织信息通常都非常显著,所以我们要保留更多的组织信息): 先是对shallow layer进行一个局部平均池化,得到将会是非组织信息D。 然后我们用原来的shallow layer减去非组织信息,就能得到组织信息了。 接下来就是双线性注意力池化了: 首先我们要将刚刚获得的attention map进行重整,使其与结构信息map的大小一样 然后attention maps和结构特征map A_k 对应元素相乘然后就能得到注意力集中后的结构特征map F_k 最后将 进行归一平均池化(因为传统的全局平均池化,注意力map的强度不同会影响到最终的池化特征)后输入到分类器 至于那些深层次的特征,我们将注意力maps加在一起能得到一张注意力map ,然后就可以获得全局的深层特征了 最后就是将结构特征还有全局特征交给分类区,然后做一个真假分类。 公式解释: ①归一化平均: 在对组织特征的map进行注意力运算后得到的 F_k ,然后我们可以看到式子中分子是 F_k 中所有元素的和,而分母是该数字的第二范式 ② L_{RIL} :解决了注意力集中于一个区域的问题 V 是在获得结构性特征那一步时的副产品,是图片的语义特征, C^t 是第t次迭代所产生的中心点的向量 m_{in},m_{out} 则都是设置的超参数,前者用来给定当语义特征与中心点间的距离小到什么程度将其视为重合,而后者则是将中心点间的距离小到什么程度将其视为重合 ③中心点的迭代方程 \alpha 是每一轮迭代的学习率 将前一个中心的向量减去该次批量的中心所在,然后再乘以一个学习率,就得到了本次迭代的修改量了。 ④AGDA的公式:解决了注意力关注于同一种极具分辨能力的特征上 A_k^* 是对attention map进行归一化之后得到的 I_d 则是对输入的图片进行高斯模糊之后的产物 这个公式的意思就是,先取一部分不被关注的图片上的元素,在取一部分图片的语义信息,然后融合在一起,这样的话就能将注意力分配到不同的特征上面了,还能增强语义特征的影响 评价: ①本文给出了图像篡改检测的一个新思路,通过语义信息获得注意力map,然后再去利用低粒度信息(篡改痕迹比较多出现的地方)去进行真假判断 ②提出的Loss function很好的解决了注意力集中在相同地方和集中于相同的特征的问题 好,今天的论文笔记到此结束,欢迎各位评论跟我讨论,指出我的不足之处。
小侯的论文笔记-deepfake6
文章的工作:
这篇文章主要完成了三个工作:
①原来我们在做deepfake检测的时候,我们都会用一种二分的手段,非真即假,但是这篇文章采取了一个新的角度,它对图像进行细粒度分类
②文章中用到的是多注意力网络结构,为了能够使该结构保持它的多注意力特性,作者还引入了一种区域独立损失,设计了一种注意力引导的数据增广机制从而使得模型产生一种对抗学习的效果
网络的架构:
notion image
拿到一张图,我们先用注意力块去给它生成多注意力map:
  • 图中可见,先是获得通过主干后的attention layer然后放入attention module
  • 然后依次经过1X1卷积,BN,EeLu,最终得到的就是Attention maps(A,channel就是有多少种局部注意力的方式)
然后就是质地特征的增强(reason:篡改所导致的浅层特征中的组织信息通常都非常显著,所以我们要保留更多的组织信息):
  • 先是对shallow layer进行一个局部平均池化,得到将会是非组织信息D。
  • 然后我们用原来的shallow layer减去非组织信息,就能得到组织信息了。
接下来就是双线性注意力池化了:
notion image
  • 首先我们要将刚刚获得的attention map进行重整,使其与结构信息map的大小一样
  • 然后attention maps和结构特征map  对应元素相乘然后就能得到注意力集中后的结构特征map
  • 最后将 进行归一平均池化(因为传统的全局平均池化,注意力map的强度不同会影响到最终的池化特征)后输入到分类器
  • 至于那些深层次的特征,我们将注意力maps加在一起能得到一张注意力map ,然后就可以获得全局的深层特征了
  • 最后就是将结构特征还有全局特征交给分类区,然后做一个真假分类。
Spatial-Phase Shallow Learning: Rethinking Face Forgery Detectionin Frequency Domain (检测上采样)
Face Forgery Detection by 3D Decomposition (个性纹理分量+直射光分量+双流+Attention)
本文提出了基于三维解构的人脸伪造检测方法,通过对人脸图像进行图形学分解,找到包含最多伪造线索的图形学分量,提升了模型对多种伪造方式的鲁棒性。
根据计算机图形学对人脸成像的相关研究,我们将一张人脸图像视为其对应的三维人脸结构、纹理和光照环境交互的产物,通过三维可变模型和计算机图形学的渲染技术模拟一张人脸图像的生成过程,并将人脸解构为5个组成部分:
  • 3D人脸结构(3D geometry)
  • 共有纹理(common texture),指人类群体共有的纹理模式。
  • 个性纹理(identity texture),指某一人脸的特定纹理模式。
  • 环境光照(ambient light)
  • 直射光照(direct light)。
notion image
通过观察目前主流的人脸伪造数据,伪造数据中很少存在不合理的人脸拓扑结构和奇异肤色,因此可以认为目前的伪造方法能够有效重建人脸的3D结构、共有纹理和环境光照,这些分量在伪造检测时可以不再考虑。
然而,考虑到不同人脸之间明显而复杂的个性纹理差异,现有伪造方法很难实现对这一成分的完美重建。同时,很多在强直射光环境下的伪造图像中也存在明显的伪造痕迹。因此,个性纹理分量和直射光分量蕴含丰富的伪造线索,是伪造检测的两个重要成分。
notion image
 
首先用 3DFFA 对人脸进行分解,提取 direct light 和 identity texture 信息. 基于多模态学习的思想,团队提出一种双流网络Forgery-Detection-with-Facial-Detail Net(FD2Net),对人脸图像和人脸细节两种模态中隐含的伪造痕迹同时进行挖掘,并引入监督式注意力模型指导检测网络关注人脸细节中的伪造痕迹。与其他相关工作中的注意力模型不同的是,团队采用人脸细节上的差异作为训练注意力模型的监督信号。
notion image
ForgeryNet: A Versatile Benchmark for Comprehensive Forgery Analysis (新数据集)
CVPR 2021 Oral|商汤提出最新深伪评测基准 ForgeryNet:左右互搏--论火眼金睛的修炼
在 CVPR 2021 上,商汤通用智能通用视觉团队针对现有的人脸深度伪造技术发展对社会安全方面造成了威胁的现象,构建了一个目前维度最大最丰富的公开数据集和评测基准。在数据规模方面,ForgeryNet 包含了 290 万张图像和 221,247 个视频,15 个人脸深度伪造操作(其中包括7个图像层面的伪造方法,8 个视频层面的伪造方法),加入了多种扰动(36 种以上的扰动)以模拟真实世界中遇到的挑战,并包含丰富数据标注以供研究者进行探索(其中包含 630 万个分类标签,290 万个伪造空间定位标注和 221,247 个时序伪造标注);在评测方法上,提出了四种不同的图片级和视频级评测方法。我们希望 ForgeryNet丰富的数据、标签、质量和多样性能够促进人脸伪造分析等领域的进一步研究和创新。 这项研究由商汤通用智能通用视觉团队、北京邮电大学、北京航空航天大学、中国科学技术大学、南洋理工大学共同完成。 论文名称:ForgeryNet: A Versatile Benchmark for Comprehensive Forgery Analysis 本文已获得原作者授权,如需转载请联系本公众号后台。 逼真的人脸深度伪造技术,尤其是最近的深度学习的 DeepFake 技术引起了广泛的社会关注,人们担心这些技术可能被恶意滥用以欺骗性地伪造人脸。开发用于面部伪造分析的可靠方法,以区分图像和视频是否被操纵以及在何处被操纵是计算机视觉中一个重要方向。近年来人脸伪造的数据集已经被提出很多,但是,现有的数据集依然存在有局限性: 1. 数据缺乏: 目前的数据集最多包含 10 万个伪造视频或 24 万张伪造图片。ForgeryNet 提供了至少 12 万个伪造视频和上百万的伪造图片。 2. 多样性缺乏: 目前的数据集最多只用了 8 种面部篡改方式和 19 种后处理扰动。ForgeryNet 从人脸位姿、表情、光照、场景、人脸大小等多个维度,收集了不同相机采集、不同分辨率的未受控原始数据,使用了 15 种不同的方法对面部进行修改,并将 36 种后处理扰动方式的多种组合应用于生成的视频/图片上。 3.
CVPR 2021 Oral|商汤提出最新深伪评测基准 ForgeryNet:左右互搏--论火眼金睛的修炼
 
Exploring Adversarial Fake Images on Face Manifold (攻击, 略)
MagDR: Mask-guided Detection and Reconstruction for Defending Deepfakes (一种保护 deepfakes 免受对抗性攻击的方法, 略)
FReTAL: Generalizing Deepfake Detection using Knowledge Distillation and Representation Learning (知识蒸馏)
为了检测新类型的换脸技术,模型应该从额外的数据中学习,而不必担心失去对deepfakes的事先了解(灾难性的遗忘),尤其是当新的伪造技术与事先训练的很不一样。在这项工作中,该论文采用了表征学习(ReL)和知识蒸馏(KD)范式来解决这个问题,介绍了一种基于迁移学习的特征表示迁移自适应学习(FReTAL)方法。使用FReTAL在新服务器上执行域自适应任务伪造数据集,同时最大限度地减少灾难性遗忘。学生模型可以快速适应新类型的通过从预先培训过的老师那里提取知识来加深理解。
notion image
教师网络:使用知识蒸馏和表征学习检测深度伪造,先用FReTAL作为教师网络训练一个基础模型,教师模型是用Xception训练出来的,迁移学习的时候教师网络固定,学生网络训练。
学生网络:一旦教师模型在源域上得到完全训练,我们将教师模型(fT)的权重复制到学生模型(fS)。然后使用KD损失和基于特征的表征学习在目标域上训练学生模型。如图2所示,该过程与通常的师生模式不同。
基于特征的表征学习:在目标领域训练之前,学生模型只是教师模型的副本。使用目标域的数据进行建模以获得其特征表示(教师为Φtn,学生为Φsn),不存储所有目标域数据的特征,而只存储可区分的特征。为此,将softmax应用于两个模型的输出。基于特征的表征学习,有助于最小化学习过程中的域转移。由于真实数据和虚假数据的分布不同,我们分别存储真实数据和虚假数据的特征。
为了减少灾难性遗忘和领域转移的影响,应用交叉熵损失和KD损失,同时在目标领域训练学生模型。类概率通常由使用softmax输出层的神经网络生成,随着T的增加,softmax函数的概率分布变软
Representative Forgery Mining for Fake Face Detection (数据增强, 遮挡可疑区域)
论文:Representative Forgery Mining for Fake Face Detection_Agirlmop的博客-CSDN博客
Tags: 注意力机制, 神经网络, 视频检测 年份: 21年cvpr 论文地址:https://arxiv.org/abs/2104.06609 代码:https://github.com/crywang/RFM 提出了一个基于注意力的数据增强框架来指导检测器细化和扩大其注意力。我们的方法跟踪和遮挡面部Top-N敏感区域,鼓励检测器深入挖掘之前忽略的区域,以获得更有代表性的伪造结果。 人脸特征点检测(vanilla CNN)倾向于从脸部的有限区域内检测,而人类倾向于整个面部。 现在三个方向: a)通过提取由操作技术缺陷产生的数字指纹,对cnn生成的面部图像实现了先进的泛化性能; b)部分作品将人脸划分为多个patch并进行独立检测,强制优化了探测器对假脸的感知场。 c)利用精心设计的训练数据集,利用同源真假人脸之间的差异来指导检测器学习假人脸上的伪造信息,从而进一步实现伪造可视化。 基于注意力的数据增强方法:代表伪造挖掘(RFM),通过在训练过程中精炼训练数据来解决有限注意力问题。 包括两个步骤: 1)利用检测器的梯度生成图像级的伪造注意图(FAM),可以精确定位面部的敏感区域; 2)利用可疑伪造消除(Suspicious Forgery erase, SFE)有意遮挡面部的Top-N敏感区域。 该方法通过将检测器的注意力从过度敏感的面部区域解耦,实现了具有先进水平的检测性能,并显著保持了对仅包含少量技术伪造的人脸的检测性能。 RFM过程: 分为三个部分。首先(在步骤1、2中),我们为单个小批的每个原始图像生成FAM。然后(在步骤3和步骤4中),我们利用SFE在之前生成的FAMs的指导下对原始图像进行擦除。最后(在步骤5和步骤6中),我们使用被擦除的图像作为输入来训练检测器 找到最敏感的区域,将最敏感的区域定义为扰动对检测结果影响最大的区域。 正向传播,检测器输入一张人脸图像I,输出两个对数Oreal和Ofake衡量图片真假。结果由两个对数的相对大小决定。 Δ I O r e a l , Δ I O f a k e \Delta_IO_{real},\Delta_IO_{fake} 代表微小的噪声对输出的影响,两者之间的最大差值视为FAM。代表扰动对检测结果的影响。 函数max(·)计算沿通道轴的最大值,函数abs(·)得到每个像素的绝对值 擦除方法SFE,遮挡FAM计算的Top-N敏感区域。 首先以小批量的方式为每张图像生成FAM,FAM和输入图像的大小都可以假设为H×W, 对于每张图像,我们根据之前生成的对应FAM中的值降序排序坐标。接下来,按照上面计算的顺序将每个像素视为锚点。 对于每个锚点,我们使用随机整数来形成一个矩形块,尺寸小于 H e × W e ( H e ≤ H , W e ≤ W ) H_e\times W_e(H_e\le H,W_e\le W) 对之前未被遮挡的锚点进行遮挡.
论文:Representative Forgery Mining for Fake Face Detection_Agirlmop的博客-CSDN博客
notion image
  1. 摘要 提出了一个基于注意力的数据增强框架来指导检测器细化和扩大其注意力。我们的方法跟踪和遮挡面部Top-N敏感区域,鼓励检测器深入挖掘之前忽略的区域,以获得更有代表性的伪造结果。
  1. 介绍 人脸特征点检测(vanilla CNN)倾向于从脸部的有限区域内检测,而人类倾向于整个面部。
    1. 现在三个方向:
    2. 通过提取由操作技术缺陷产生的数字指纹,对cnn生成的面部图像实现了先进的泛化性能;
    3. 部分作品将人脸划分为多个patch并进行独立检测,强制优化了探测器对假脸的感知场。
    4. 利用精心设计的训练数据集,利用同源真假人脸之间的差异来指导检测器学习假人脸上的伪造信息,从而进一步实现伪造可视化。
  1. 方法
基于注意力的数据增强方法:代表伪造挖掘(RFM),通过在训练过程中精炼训练数据来解决有限注意力问题。
包括两个步骤:
  1. 利用检测器的梯度生成图像级的伪造注意图(FAM),可以精确定位面部的敏感区域;
  1. 利用可疑伪造消除(Suspicious Forgery erase, SFE)有意遮挡面部的Top-N敏感区域。
该方法通过将检测器的注意力从过度敏感的面部区域解耦,实现了具有先进水平的检测性能,并显著保持了对仅包含少量技术伪造的人脸的检测性能。
RFM过程:
notion image
分为三个部分。首先,我们为单个小批的每个原始图像生成FAM。然后,我们利用SFE在之前生成的FAMs的指导下对原始图像进行擦除。最后,我们使用被擦除的图像作为输入来训练检测器
 
发掘了新特征: 图像的固定模式噪声, 引入了直射光分量+个性纹理分量, 上采样痕迹(频域)这些特征. 另外, 高级特征比如唇读 开始花式Attention

CVPR2022

Self-supervised Learning of Adversarial Example: Towards Good Generalizations for Deepfake Detection (数据增强)
Self-supervised Learning of Adversarial Example: Towards Good Generalizations for Deepfake Detection
这篇文章开头提出目前的伪造检测算法,在训练集与测试集都是使用同一个伪造生成算法的情况下,检测效果很好。(即普通DeepFakes训练过程中的判别器,其输入的假图像分布一致,都是由同一个生成器生成的)这篇文章使用的GAN结构与DeepFakes不同,其使用设计的算法生成不同方式伪造的假图像,再由判别器判断是否为假图像。 为了提高伪造效果,使用对抗方法来生成判别器鉴别困难的伪造配置。另外,引入多任务学习来提高学习效率,判别器还要判断输入假图像的伪造配置。 这篇文章开头提出目前的伪造检测算法,在训练集与测试集都是使用同一个伪造生成算法的情况下,检测效果很好。(即普通DeepFakes训练过程中的判别器,其输入的假图像分布一致,都是由同一个生成器生成的)这篇文章使用的GAN结构与DeepFakes不同,其使用设计的算法生成不同方式伪造的假图像,再由判别器判断是否为假图像。 为了提高伪造效果,使用对抗方法来生成判别器鉴别困难的伪造配置。另外,引入多任务学习来提高学习效率,判别器还要判断输入假图像的伪造配置。 这篇论文使用对抗数据增强基准和自监督方法提出了一个人脸伪造算法,通过对抗学习去生成增强不同类型的人脸伪造数据及对应的伪造配置 {构成伪造合成器,即生成器} ,再使用这些数据及对应的伪造配置通过多任务自监督方法去判断类别及对应的伪造配置 {构成伪造检测器,即鉴别器}。通过生成器与鉴别器的对抗学习去丰富增强伪造类型,提高模型的泛化能力。其中伪造配置有三个类别:选择的区域 {region selection,},选择的混合类型 {blennding type selection,} 和混合比 {blending ratio,} 。其中混合比 只有在选择的混合类型为 mixup 时才不为 0,并且当输入为原始伪造图像时,合成过程将跳过,对应的配置将使用数据库官方提供的原始配置。 假设原始真图与原始参考图分别是 和 ,生成器为 ,确定了一个伪造的脸部区域。 ,确定了一个混合类型,对这两幅图进行混合。 ,确定了当 为 mixup 时的混合比例 合成的 图像计算公式如下: 其中 为最终的变换模板, 为 Hadamard 乘积。 该论文设计了一个多任务方法去训练模型,该多任务方法分为一个主任务和一个富足自监督任务集,辅助自监督任务集通过预测估计伪造配置如选择的区域、选择的混合类型以及混合比来进行辅助监督模型。 --主任务损失 使用 AM-Softmax Loss 代替传统的二元监督 BCE,匹配较小的类内差异,较大的类间差异。 --伪造区域估计损失 使用一个伪造区域预测头去生成一个 的伪造区域模板 --混合类型估计损失 与伪造区域估计类似,真实混合类型 也随着输入类型的变化而变化 类似的,使用 AM-Softmax Loss 去计算 --混合比估计损失 由于混合比只当混合类型为 mixup 时才有效,因此真实混合比 当输入为合成的对抗伪造图且混合类型为 mixup 时,其他的情况则为 0.
Self-supervised Learning of Adversarial Example: Towards Good Generalizations for Deepfake Detection
Leveraging Real Talking Faces via Self-Supervision for Robust Forgery Detection (跨模态自监督+视频++)
notion image
真实的人脸视频包含了丰富的自然脸部外观和行为的信息,并且可以在网上随时大量获得。我们的方法由两个阶段组成。首先,我们利用真实视频中视觉和听觉模态之间的自然对应关系,以自我监督的跨模态方式学习时间上密集的视频表征,以捕捉诸如面部运动、表情和身份等因素。其次,我们将这些学习到的表征作为目标,由我们的造假检测器与通常的二元造假分类任务一起预测;这鼓励它将真假判断建立在上述因素之上。我们的方法在跨操纵泛化和鲁棒性体验方面达到了最先进的性能.
Detecting Deepfakes with Self-Blended Images (使用单个样本的数据增强)
End-to-End Reconstruction-Classification Learning for Face Forgery Detection (VAE + Attention +二分图)
  1. Motivation
    1. 现有的人脸伪造检测器主要集中在特定的伪造模式上,如噪声特征、局部纹理或频率统计学的伪造检测。这导致学习到的表征对训练集中的已知伪造模式的特殊化,并使其难以检测到具有未知模式的伪造。
      我们提出了一个伪造检测框架,强调基于重建分类学习的真实面孔的共同紧凑表示。对真实图像的重构学习增强了对甚至是未知的伪造模式的认知,而分类学习则负责挖掘真实和伪造图像之间的本质差异,促进对伪造的理解。为了实现更好的表征,我们在重建学习中不只使用编码器,而是在一个多尺度的快照中,在编码器和解码器的特征上建立双线图。我们进一步利用重建的差异作为图形输出的伪造痕迹的指导,作为最终的表征,它被送入分类器进行伪造检测。
      notion image
  1. Method
    1. Reconstruction Learning
      对于重建学习,我们提出了一个重建网络,该网络由一个编码器和一个解码器组成,仅对真实人脸的分布进行建模。除了 reconstruction loss 之外,我们在编码器和解码器上应用metric-learning loss来使真实图像接近,而真实图像和假图像距离很远。由于学习到的分布差异,这确保了具有未知伪造模式的假图像更有可能被识别。
      notion image
      基于上述约束,揭示伪造线索的差异信息在解码器侧逐渐加强,最终导致真实面孔的良好重建和虚假图像的不良重建。因此,为了实现完整的表示,我们不仅使用编码器输出作为特征,还考虑了解码器的特征。
      其 metric-learning 的损失为:
      表示编码器或解码器块的输出特征。我们将全局平均池化操作应用于 并获得每个输入样本的特征向量 。其中 , 表示真假样本的集合。 是基于余弦距离函数.
      的第一部分鼓励从真实面孔中学习紧凑的表示,而第二部分强调真实样本和虚假样本之间的差异。
      Multi-scale Graph Reasoning
      当对解码器应用metric-learning损失时,分离真假图像的有用信息也被嵌入到解码器中。为了有效地利用解码器特征捕捉到的伪造线索进行最终分类,我们提出了一个多尺度图推理(MGR)模块,该模块将解码器块的潜在特征和编码器的输出结合成一个双子图,以全面地重估伪造的线索。
      Reconstruction Guided Attention
      在重建网络的约束下,重建的伪造人脸在视觉外观上与输入的伪造人脸有很大不同。这促使我们使用重建差异来指示可能被操纵的轨迹。为此,我们提出了重建引导注意(RGA)模块,该模块更加关注可能的伪造区域,以方便后期分类。
DeepFake Disrupter: The Detector of DeepFake Is My Friend (扰动攻击 DeepFake)
Learning Second Order Local Anomaly for General Face Forgery Detection (看不懂)
Robust Image Forgery Detection over Online Social Network Shared Images (对抗生成噪音+图像有损压缩)
在线社交网络(OSNs)的广泛使用使其成为传播伪造图片的主要渠道,以重新发布假新闻,传播谣言等。不幸的是,OSNs采用的各种有损操作,如压缩和调整大小,给实现强大的图像伪造检测带来了巨大挑战。为了对抗OSN共享的伪造,在这项工作中,我们提出了一个新的鲁棒性训练方案。我们首先对OSNs引入的噪声进行了彻底的分析,并将其解耦为两部分,即可预测的噪声和未见过的噪声,分别进行建模。前者模拟OSN公开的(已知的)操作所引入的噪声,而后者的设计不仅是为了完成先前的操作,而且还考虑到了检测器本身的缺陷。然后,我们将建模的噪声纳入一个稳健的训练框架,显著提高图像伪造检测器的稳健性。
notion image
可预测的噪声和旨在模拟已知操作(例如JPEG压缩)带来的可预测损失,其建模依赖于具有残差学习和嵌入式可微JPEG层的深度神经网络(DNN)。
未见过的噪声主要是为了应对OSN所进行的不可知的操作或各种 OSN 的训练和测试之间的差异。显然,从信号本身的角度为看不见的噪声建立一个合适的模型是不现实的。为了解决这个困难,我们将我们的观察从噪声的角度转移到伪造检测器上,只关注可能导致检测性能恶化的噪声。这种策略自然地孵化了一种新的算法,利用对抗性噪声的核心思想来模拟看不见的噪声,这本质上是不可察觉的扰动,会严重降低模型的性能。
Exploring Frequency Adversarial Attacks for Face Forgery Detection (攻击DeepFake检测器, 略)
在本文中,我们没有将对抗性扰动注入空间域,而是提出了一种针对面部伪造检测器的频率对抗性攻击方法。具体来说,我们对输入图像应用离散余弦变换(DCT),并引入融合模块来捕获频域中对手的显着区域。与空间域中现有的对抗性攻击(例如 FGSM、PGD)相比,我们的方法对人类观察者来说更不易察觉,并且不会降低原始图像的视觉质量。此外,受元学习思想的启发,我们还提出了一种混合对抗攻击,可以在空间和频率域中执行攻击。大量实验表明,所提出的方法不仅可以有效地欺骗基于空间的检测器,还可以有效地欺骗最先进的基于频率的检测器。此外,所提出的频率攻击增强了跨面部伪造检测器作为黑盒攻击的可转移性。
Voice-Face Homogeneity Tells Deepfake (匹配面部与声音???)
Protecting Celebrities from DeepFake with Identity Consistency Transformer (匹配人脸内部和外部区域的特征)
在这项工作中,我们提出了身份一致性转化器,这是一种新型的人脸伪造检测方法,它关注高层次的语义,特别是身份信息,并通过寻找人脸内部和外部区域的身份不一致来检测可疑的人脸。身份一致性转化器包含了一个用于身份一致性确定的一致性损失。
notion image

© Lazurite 2021 - 2024