论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts

论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts

现在对于论文阅读还是比较头疼,很多翻译都很奇怪,还是要提高英语能力啊,心酸菜鸡在线叹气。这篇论文主要是给大家一些资料的收集整理,避免琐碎麻烦的工作,主要的干货也没有很多,如果要认真研究还需要自己自己阅读论文噢。本篇论文全文获取

Motivation

这篇文章是的主要出发点是由于计算资源和制作时间的限制,DeepFake算法只能合成有限分辨率的人脸图像,并且必须对其进行仿射变换以匹配源人脸的配置,融合到源视频中。进行变换后的脸,肯定和原来视频中的环境有一些不协调的地方,这种扭曲(也有翻译成翘曲)在生成的Deepfake视频中留下了独特的伪影(artifacts),作者就是通过检测在这个过程中产生的伪影也进行deepfake检测。

仿射变换

实际上就是一个通过一系列的原子变换的复合来实现的变换,包括平移,翻转,旋转,缩放和剪切(错切),变换的整个过程可以用一个仿射变换矩阵来表示。
这里附上一个整理总结得比较清晰的博主链接,讲解了仿射变换的相关内容。

相关工作

本篇论文被引论文之一:
On the generalization of GAN image forensics. arXiv: Computer Vision and Pattern Recognition 2019. [获取链接]

引用论文
在这些论文中加粗的四种模型也是本篇论文最后进行AUC评估的时候对比模型之一,如果有需要可以重点去了解一下。

  • Exposing Deep Fakes Using Inconsistent Head Poses
    利用头部姿势的不一致性来进行检测,比如头的方向和位置,通过提取面部的68个特征点,然后将这些特征放入SVM进行分类。 [获取链接]
  • Recurrent Convolutional Strategies for Face Manipulation Detection in Videos:
    利用CNN+RNN的方法进行检测[获取链接]
  • Deepfake Video Detection Using Recurrent Neural Networks
    InceptionV3提特征后送入LSTM(LRCN) [获取链接]
  • Noiseprint: a CNN-based camera model fingerprint
    这里找到一个大佬的这篇论文的精读,有兴趣的朋友可以去康康。
  • In Ictu Oculi: Exposing AI Generated Fake Face Videos by Detecting
    Eye Blinking[获取链接]
    基于眨眼检测,deepfake生成的假视频与真视频在眨眼频率上有区别。这篇论文提出者和本篇博客所讲解的论文提出者都有 Siwei Lyu 。
  • Meso-4和MesoInception-4是基于中层语义进行的检测,主要是提出了自动检测Deepfake和Face2Face的方法。
    这里也有大佬做了这篇论文的阅读,可以自行参考。
    论文全文获取MesoNet: aCompactFacialVideoForgeryDetectionNetwork
  • Two-Stream Neural Networks for Tampered Face Detection
    提出了一个人脸篡改检测的双流网络。
    我们训练GoogLeNet以检测人脸分类流中的篡改伪影,并训练基于补丁的三重网络,以利用捕获本地噪声残留和相机特性的特征作为第二流。[获取链接]

以上的这些方法在进行训练时都需要事先生成deepfakes作为负例,就会消耗大量时间和计算资源,从而导致效率降低的问题。那么作者在基于以上相关工作的研究分析之后,在负例的生成上也做了进一步的改进。

实验

数据集
这里简单介绍一下测试的数据集,作者采用了两个数据集UADFV和deepfakeTIMIT

  • UADFV: UADFV数据集包含49个真实视频和49个假视频,每个视频大约持续11秒,总共32752帧。
  • DeepfakeTIMIT:DeepfakeTIMIT数据集包括两组数据,分别为64 x 64大小的低质量视频和128 x 128大小的高质量视频,每个视频大约持续4秒,其中包含从每个质量集的320个视频中提取的总共10537个原始图像和34,023个虚构图像。

负样本数据
获得负样本训练数据时,考虑到deepfakes算法耗时和耗资源,另一方面,由于本文的目的是检测Deepfakes中仿射变换步骤引入的伪影,作者通过直接模拟下图仿射面翘曲步骤来简化负样本生成过程,动态生成反例。如下图所示。

  • 利用dlib[14]软件对原始图像进行人脸检测,提取人脸区域;(dlib-ml 包含一个可扩展的线性代数工具包,内置了 BLAS支持。它还包含贝叶斯网络中执行推理的算法的实现以及基于内核的分类、回归、聚类、异常检测和特征排名的方法。为了便于使用这些工具,整个库都使用合同编程进行了开发,它提供了完整、精确的文档以及强大的调试工具。)
  • 将人脸对齐成多个尺度,随机选取一个尺度,然后用核大小为5x5的高斯模糊进行平滑。这一过程的目的是在仿射变形的人脸上创建更多的分辨率实例,从而更好地模拟仿射变形中引入的各种分辨率不一致。
  • 平滑后的面将经历仿射扭曲,返回到原始面的相同大小,以模拟DeeFake生产管道中的工件。
    论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts_第1张图片
    为了保证训练数据多样性,作者采取了一些方法:
  • 改变训练示例颜色、亮度、对比度、失真、清晰度;
  • 改变仿射翘曲面部形状,模拟不同深假处理程序;
  • 裁决兴趣矩形区域作为输入,要求保证其涵盖所有面部部分,并且规整为224*224的格式

训练
训练时,作者将正负样本的ROI区域裁剪出来训练VGG16ResNet50ResNet101ResNet152网络,最后在UADFV和DeepfakeTIMIT数据集上评估该算法的性能。

对于ResNet50、ResNet101和ResNet 152模型,首先加载ImageNet预处理的模型,并使用数据对它们进行微调。训练过程将在第20epoch结束。然后使用硬挖掘策略对模型进行微调。在训练中,硬例子包括预测假概率大于0:5的正例子和预测假概率小于0:5的负例子。采用相同的train,学习率为0:0001。这一阶段在20个epoch之后结束。
论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts_第2张图片
论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts_第3张图片

结果表明,VGG16、ResNet50、ResNet101和ResNet152模型分别达到了83:3%、97:4%、95:4%和93:8%的AUC性能。与VGG16相比,ResNet网络的性能提高了10%左右,这是由于存在剩余连接,使得学习过程更加有效。然而,ResNet50在其他ResNet网络中具有最好的性能,这表明随着网络深度的增加,与分类相关的信息减少。

AUC性能评估

在UADFV数据集和DeepfakeTIMIT数据集上,比较了该方法与其他最新方法的AUC性能。结果表明,我们的ResNet模型优于所有其他方法。具体来说,ResNet50的性能最好。

  1. 在两个数据集上的性能都比Two-stream NN好16%,从而证明了方法在深度假视频检测上的有效性。
  2. 作者提出的方法也比Meso-4和mesoiption-4的性能分别提高了17%和21%。具体来说,在DeepfakeTIMIT的HQ集上有显著的进步。由于MesoNet是使用自收集的DeepFake生成的视频进行训练的,本篇论文提出的方法面对不同来源的深度伪视频更具鲁棒性;
  3. 比head pose中提出的方法在UADFV测试中性能优于它8%。原因可能是因为利用头部姿势的不一致性来区分真假视频,这种生理信号在正面可能不明显。
    论文阅读:Exposing DeepFake Videos By Detecting FaceWarping Artifacts_第4张图片
    最后附上本篇论文的代码百度网盘地址,有需要的朋友自行下载使用。提取码:5ox9

你可能感兴趣的:(人工智能,计算机视觉,神经网络)