paper: https://arxiv.org/pdf/2107.14480.pdf
code: https://github.com/ltnghia/openforensics
Abstract
deepfake媒体的泛滥引起了公众和相关部门的关注。针对社交媒体上的假脸,制定对策变得至关重要。本文对多面伪造检测和野外分割这两个新的对抗任务进行了全面的研究。在不受限制的自然场景中,在多张人脸中定位伪造人脸比传统的深度假人脸识别任务更具挑战性。为了促进这些新任务,我们创建了第一个大规模数据集,提出了高水平的挑战,该数据集设计了针对面部伪造检测和分割的面部丰富注释,即OpenForensics。由于其丰富的注释,我们的OpenForensics数据集在深度伪造预防和一般人脸检测方面都有很大的研究潜力。我们还为这些任务开发了一套基准,通过在各种场景下对我们新构建的数据集进行最先进的实例检测和分割方法的广泛评估。
1. Introduction
深度学习的持续进步使得深度伪造方法(即基于深度学习的人脸伪造)有了令人印象深刻的改进,可以改变目标人的身份[32,1,64,42]。新兴技术,如自动编码器(AE)模型和生成对抗网络(gan),可以在保留原始面部表情和头部姿势的情况下,将一个人的脸转移到另一个人身上[68,67,56,66]。利用deepfake方法合成的逼真外观在计算机视觉和图形学领域备受关注,因为这些方法在广泛的领域具有潜在的应用前景[18,26,30,79,39]。此外,人工智能合成的伪造图像/视频引起了对个人骚扰和犯罪欺骗的严重关注[6,62,12]。为了应对欺骗和假冒攻击带来的威胁,必须制定针对数字媒体中人脸伪造的对策。
传统的人脸伪造识别方法[2,54,53]需要输入给定的人脸区域。因此,它们一次只能处理一张人脸,顺序处理多张人脸非常耗时。此外,它们的性能在很大程度上取决于所使用的独立人脸检测方法的准确性。鉴于这些方法仅在实验室环境中使用具有简单背景和单一清晰正面的图像进行了评估[31,78],因此它们还没有准备好在现实世界中部署,在现实世界中,背景比简单的分阶段场景更加多样化和具有挑战性。
因此,开发能够从输入图像中同时有效处理多个人脸的方法变得至关重要。据我们所知,目前还没有正式提出人脸伪造检测和分割的方法。我们将此部分归因于缺乏用于训练和测试的大规模数据集。为了鼓励这一领域的更多研究,我们在本文中提出了四个贡献。
首先,我们对野外大规模人脸伪造相关任务进行了全面研究。特别地,我们引入了两个新的任务:多面伪造检测和野外分割。据我们所知,这是对这些任务的第一次正式探索。以前的工作只探索了单面伪造识别。
其次,我们建议使用GAN模型生成无限数量的假个人身份,用于非目标面部交换,而无需重复训练deepfake AE。我们提出的伪造工作流程降低了合成伪造数据的成本。
第三,利用提出的伪造工作流程,我们引入了一个新的图像数据集来支持多面伪造检测和分割任务的开发。我们新构建的 OpenForensics 数据集是为这些任务设计的第一个大型数据集。它由115K张不受限制的图像和334K张人脸组成。与现有的数据集不同,我们的数据集包含各种背景和不同年龄、性别、姿势、位置和面部遮挡的多个人。所有图像都具有支持多个任务的面部丰富注释,例如伪造类别、边界框、分割掩码、伪造边界和一般面部地标(见图1和图2)。因此,数据集不仅可以支持多人脸伪造检测和分割任务,还可以支持涉及一般人脸的常规任务。
第四,我们提出了一个基准套件,以促进这些任务的评估和推进。我们对各种场景下最先进的实例检测和分割模型进行了广泛的评估和深入的分析。
整个数据集、评估工具包和训练模型将在我们的项目页面上免费提供。
2. Related Work
2.1. Existing Forensic Datasets
表1总结了现有法医数据集的基本信息。DF-TIMIT数据集[31]使用Faceswap-GAN[64]从Vid-TIMIT数据集[63]制作了640个假视频。UADFV数据集[78]由98个视频组成,其中一半是假的,使用FakeAPP[18]创建。FaceForensics++ 数据集[61]包含来自youttube的1000个原始视频和使用deepfake方法操纵的4000个合成视频[1,68,32,67]。Google DFD数据集[16]包含3068个假视频。Facebook DFDC数据集[14]包含128K使用各种深度伪造和增强方法创建的原始视频和经过处理的视频[59,24,79,56,28]。Celeb-DF数据集[46]包含youtube名人视频和5639个假视频。DeeperForensics数据集[27]由使用深度伪造VAE的10K操纵视频和对FaceForensics++ 数据集中的1000个原始视频的增强组成。WildDeepfake数据集[84]包含从互联网上收集的707个deepfake视频中提取的人脸序列。如表1所示,我们的OpenForensics是第一个设计用于人脸伪造检测和分割的数据集。
现有的法医数据集是通过将长视频分成短视频来创建的,导致即使是原始视频也有相同的背景。随后从一个原始视频合成了许多假视频,产生了许多相似的背景。在现有数据集上训练的深度模型由于背景的重复,可能不能很好地泛化到现实世界。相比之下,我们的大规模图像数据集包含不同的背景。受Dolhansky等人[14]和Jiang等人[27]的工作启发,我们系统地将混合扰动应用于原始操纵图像以模拟真实场景。在现有的数据集上,需要在每对视频上训练一个deepfake模型来交换人类身份,从而产生相当数量的需要训练的模型。相比之下,我们数据集中的大量假人脸是由GAN合成的,而无需反复重新训练deepfake模型。虽然现有数据集仅针对单面伪造分类任务而开发,但我们的数据集是第一个针对多面伪造检测和分割任务而设计的数据集,这比分类任务需要更多的注释。我们的数据集也可以用于各种通用face-related任务。
2.2. Face Manipulation and Generation
许多用于人脸交换的deepfake开源技术已经被发布[32,1,64]。这些技术已经逐渐从使用手工制作的特征[32]演变为通过训练AE架构[1]和GAN模型[64][42]来使用深度学习来实现真实感。面部再现技术已被开发用于转移表情[68,67,56]。不同的技术,如3D重建[68]和神经纹理[67]被用来保留目标皮肤的颜色和光照条件。边界潜空间[75]和解纠缠形状[66]与AE模型相结合,对表情进行变形。除了传递表情外,还可以通过使用循环神经网络来控制头部姿势,通过使用不同的模式[74]和使用人类可解释的属性和动作[70]来增强自然度[56]。
随后提出的人脸合成技术使用深度学习。他们通常将GAN用于面部属性翻译[8,9,28,29],身份-属性组合[3],已识别特征去除[51],以及交互式语义操作[40,83]。人脸解纠缠特征在不同的潜在空间中被解释,从而在人脸编辑中更精确地控制属性操作[28,29,65,60]。
现有的深度伪造方法需要对人脸进行特定的训练,这意味着训练成本非常高。训练需要图像序列;因此,这些方法仅适用于视频,并且生成的人脸通常具有低分辨率。虽然现有的人脸合成方法可以生成高质量的人脸,但如果原始人脸与训练数据的分布不接近,合成的人脸就会朝向前方,与原始人脸不一致。我们将这两种方法结合起来,在不重复训练AEs的情况下生成无限数量的假人类身份。我们通过转化基于gan的高质量合成的脸变成原来的姿势来实现这点。
2.3. Face Forgery Classification
人脸伪造分类问题一直被认为是一个简单的二元分类问题(真/假)。这项研究任务也被称为“深度伪造检测”,但“检测”这个词可能会导致对目标检测这一基本任务的误解。早期的方法通过分析生物线索,如眨眼[44]、头部姿势[78]、皮肤纹理[49]、虹膜和牙齿颜色[50],利用deepfake图像和视频中视觉伪影产生的不一致性。一些研究研究了仿射人脸翘曲[45]或混合边界[43]中的伪影,以区分真假人脸。目前大多数方法都是数据驱动的,直接在真实和虚假图像和视频上训练深度网络[2,54,61,53,82,71]。它们不依赖于特定的工件。
现有的人脸伪造分类方法不具备人脸定位能力。他们只能在一张裁剪后的脸上工作;因此,它们的性能在很大程度上依赖于独立的人脸检测作为预处理。据我们所知,我们的研究是第一个解决野外多人脸检测和分割的工作。
3. Large-Scale OpenForensics Dataset
新的任务和数据集的出现使得人类研究领域取得了快速进展[77,13,55,20,19]。然而,人类防伪的研究才刚刚开始,该领域还不成熟,只在人脸伪造分类任务上进行了研究。考虑到这一点,我们的目标是研究和开发一个数据集,以支持计算机视觉和法医社区中具有挑战性的新伪造研究任务。
3.1. Dataset Construction
如图4所示,数据集构建工作流主要包括真人图像采集、伪造人脸图像合成和多任务标注三个步骤。
3.1.1 Real Human Image Collection
我们从Google Open images中收集了原始图像[34],并删除了没有人的图像。由不真实的人脸组成的图像(例如,钞票、书籍、杂志、漫画和素描中的图像)或类似人类的物体(例如,玩偶、机器人和雕塑)也被删除。我们最终得到了45,473张图像,这些图像被用作原始数据。
3.1.2 Forged Face Image Synthesis
图4显示了用于合成伪造人脸图像的过程概述。首先,提取真人图像中的所有人脸,并在操作可行性检查模块中进行检查,看是否可以进行操作。这是使用各种条件(例如,面部大小,图像质量和模糊)和随机操作概率来完成的。如果操作可行,图像就会经历一个循环过程。受基于gan的人脸合成的启发[9,29],我们首先提取人脸身份潜在向量,并使用随机值对其进行修改。然后将修改后的潜在向量输入GAN模型[65,60]以生成新面孔。合成的人脸随后被转换成原始姿势。在人脸交换模块中,通过泊松混合[58]和颜色适应算法,提取合成人脸中可行的操作区域(如面部地标内的区域或整个人脸),并将其融合到原始人脸中,最终得到新的身份。然后对新的身份图像进行测试,以确定它是否可以欺骗伪造判断模块中的简单分类器(即XceptionNet[10]),该模块经过训练以区分真实和虚假身份。那些欺骗成功的被覆盖在原始图像上。其他人被丢弃,新的面孔被生成。我们在补充材料中提供了网络的详细实施和培训。
我们的合成工作流具有以低成本为非目标的没有配对训练的目标换脸合成无限数量的假身份的能力。与此同时,其他deepfake方法使用有限数量的假身份从视频中提取人物,并使用深度模型对目标人脸交换进行配对训练。因此,他们需要大量的时间和资源来合成数据集。我们的综合方法也克服了现有方法的局限性。现有方法[61,14,27]生成的是低分辨率人脸(通常小于256 × 256像素),而我们的方法生成的人脸具有更高的分辨率(即512 × 512像素)和更好的视觉质量(参见图3)。
我们使用泊松混合[58]和颜色自适应算法来减少合成人脸与原始人脸之间的颜色不匹配(图3),增强了伪造人脸的自然度。我们还通过提取68个人脸地标点,训练人脸分割模型,提高了混合蒙版的平滑度,得到了精细的边界和完整的人脸覆盖(不同混合蒙版如图2所示)。用于创建现有数据集的混合掩模要么是矩形的,要么是眉毛和下唇之间粗糙的凸包,导致面部覆盖不完整或可见边界(参见图3)。
最后,我们将接受的图像随机分成单独的训练集、验证集和测试开发集(比例为60:10:30)。表3显示了我们新构建的OpenForensics数据集中的图像和人脸分布。
3.1.3 Challenging Scenario Augmentation
为了增强OpenForensics数据集对真实世界人脸伪造检测和分割的挑战,我们应用了各种扰动来更好地模拟自然场景中的上下文,从而产生了一个测试挑战子集。各种增广算子被划分为总体群。
•色彩操作:色调变化,饱和度变化,亮度变化,直方图调整,对比度添加,灰度转换。
•边缘操作:边缘检测和改变。
•块扭曲:颜色分组,颜色池,颜色量化和像素化。
•图像损坏:弹性变形,拼图失真,JPEG压缩,噪声添加,和辍学。
•卷积掩模变换:高斯模糊,运动模糊,锐化和压花。
•外部效果:雾,云,太阳,霜,雪,雨。
这些增强分为三个强度级别(即简单、中等和困难),以确保不同的场景。对于每一层,随机类型的增强被单独应用或作为混合应用,产生45,000张图像。测试挑战集中的示例图像如图5所示。
3.2. Dataset Description
Task Diversity. 任务的多样性。现有的deepfake数据集[61,14,27,46]只关注视频标签进行分类。相比之下,我们的目标是利用face-wise ground truth,这需要更多的注释工作,以推进进一步的伪造分析。每张脸都被标记了各种GT,如伪造类别(真实/虚假)、边界框、分割掩码、伪造边界和面部地标(参见图2)。我们丰富的注释可以用于各种任务,甚至多任务学习。
Dataset Size. 数据集的大小。OpenForensics是最大的检测和分割数据集之一(参见表2),其规模足以训练和评估深度网络。这将鼓励在这一领域进行更多的研究。
Diverse Scenarios. 不同场景。现有数据集[61,14,27,46]以短视频的形式发布。虽然它们包含大量的图像,但短视频中的帧是相似的,并且对深度网络的训练贡献不大。对于这些数据集,通常使用数据采样来训练深度网络,以避免过拟合并减少训练时间。我们将短视频中的类似帧定义为“场景”,并断言使用多种场景的训练有助于使深度网络更有效。表1显示,就场景数量而言,OpenForensics数据集比现有数据集大一个数量级,只比DFDC数据集少一点。
Image Scene. 图像场景。现有的deepfake数据集[61,46]包含有限类型的图像场景,如室内场景和电视场景。相比之下,OpenForensics数据集包含各种类型的场景。我们在大规模Places2数据集上使用预训练模型计算场景[81]。图6(a)以字云的形式显示其分布,各种户外场景占图像的36.3%。
Image Resolution. 图像分辨率。图6(b)显示了OpenForensics数据集中图像分辨率的分布。大量的高分辨率图像为模型训练提供了更多的人脸边界细节,从而获得了更好的性能。
Multiple Faces Per Image. 每个图像多个面。现有的deepfake数据集[61,14,27,46]大多每张图像只有一张人脸。相比之下,OpenForensics数据集每张图像有多个人脸(平均2.9个)。图6(c)显示了分布情况。
Face Characteristics. 脸特征。图6(d和e)通过边界框大小和掩码大小(即覆盖人脸的像素数)显示了OpenForensics数据集中人脸的分布。OpenForensics包含了大小不一的人脸,从小到大。从图6(f)中人脸质心的分布可以看出,人脸趋向于靠近图像中心。此外,男女脸的比例为50:50,年龄也有多样性。补充材料中提供了更多细节。
Data Augmentation. 数据增加。在现有的deepfake数据集上训练的深度模型在现实世界中可能由于训练数据中的图像相似度导致的过拟合而表现不佳。虽然强深度模型已经获得了非常高的精度[54,43],甚至接近100%,但如果它们没有与训练数据集共享一个紧密的分布,它们在现实世界中很容易失败。为了模拟OpenForensics数据集中的真实环境,我们使用了不同的扰动来提高场景的多样性,从而更好地模拟真实世界的数据分布。通过使用简单的扰动,已经对一些现有的数据集进行了改进,这增加了它们的大小。例如,DFDC数据集[14]和DeeperForensics数据集[27]已经通过应用几何和颜色变换、添加噪声、模糊和覆盖对象来改进。
3.3. User Study
为了评估OpenForensics数据集中图像的视觉质量和人类在人脸伪造检测方面的表现,我们对200名参与者进行了一项用户研究,其中80人是专家,他们可以提供知识渊博的意见,因为他们研究deepfake。研究结果能较好地反映专家和非专家的绩效。
该研究是在OpenForensics数据集和四个现有的深度伪造数据集上进行的: FaceForensics++[61]、DFDC[14]、Celeb-DF[46]和DeeperForensics[27]。对于每个数据集,我们随机选择了600张图像,并为参与者准备了一个虚拟平台。
我们认为,如果参与者看到两张相似但不同的人的照片,他们可以很快看出一张脸是假的,这会导致与现有数据集的不公平比较。此外,如果将伪造的人脸与真实人脸混在一起,可能会给伪造识别带来困难。为了调查这些假设,我们的用户研究集中在两种情况下:裁剪面部以消除周围环境和多面部的完整图像。
Evaluation of Image Realism. 图像写实主义评价。我们裁剪了伪造的头,它们从脸上延伸了两倍,以确保每个人的上半部分完全被提取出来。参与者被要求观看200张伪造的头部图像,然后以1到5分的形式对每张图像的真实性进行反馈,对应于“明显虚假”、“弱不真实”、“边缘”、“几乎真实”和“明显真实”。如图7所示,OpenForensics数据集中图像的视觉质量得到了大多数参与者的高度评价。也就是说,OpenForensics数据集中的伪造人脸被认为是最真实的。我们的数据集获得了最高的平均意见得分(MOS) 4.0,远高于第二好的数据集Celeb-DF(3.2)。DeeperForensics和DFDC数据集具有中等质量的图像(MOS为2.8)。FaceForensics++数据集具有最不真实的图像(MOS仅为1.3)。
Human Performance on Face Forgery Classification. 人脸伪造分类中的人类行为。我们再次裁剪了头部,类似于为评估图像真实感所做的裁剪。参与者被要求观看400张混合图像,这些图像随机由原始头像和伪造头像组成,比例为50:50。在观看每张照片后,参与者被问及照片是“真的”还是“假的”。如图8所示,参与者在区分OpenForensics数据集中的真假图像时遇到了最大的困难。OpenForensics数据集的总体准确率最低(59.7%),其次是Celeb-DF(68.7%)、DFDC(72.0%)、faceforensics ++(82.0%)和DeeperForensics(82.9%)。该图还显示,专家和非专家都难以区分我们数据集中的真实和虚假图像。有趣的是,尽管专家可以比非专家更好地识别假脸,但他们错误地识别了低质量、低分辨率或低对比度的真实脸(即faceforensics ++数据集)。我们将此归因于他们的过度自信,以及他们相信gan可能会生成这样的面孔,从而导致错误识别。
图9说明了视觉属性与人类识别伪造面孔的能力之间的关系。识别伪造人脸的能力取决于图像的真实感,因此随着真实感的提高(即,随着MOS的增加),误报率也会增加。该图显示,大量参与者将OpenForensics数据集中的伪造面孔错误地分类为真实面孔。OpenForensics数据集具有最高的MOS(4.0)和最高的误报率(34.6%)。图中还显示,OpenForensics数据集的BRISQUE评分[52]是最低的(35.2),这表明我们数据集中的图像具有最好的视觉质量。降低图像质量(即提高BRISQUE分数)会影响人的观察,导致误报率降低。
Human Performance on Multi-Face Forgery Detection. 人脸伪造检测中的人类行为。参与者被要求观看一组160张照片,每张照片都有多人,每张照片都有随机选择的原始脸和伪造脸,或者只有原始脸,或者只有伪造脸。他们被要求识别每张图片中伪造的人脸的数量。从图10可以看出,当图像中不存在伪造人脸时,检测准确率最高(86%),并且随着伪造人脸数量的增加,检测准确率呈下降趋势。这可以解释为,当一张图片中有许多张脸时,参与者倾向于不太仔细地检查每张脸,并猜测所有的脸都是真实的。这就解释了为什么当所有的脸都是真实的时候,准确率很高,而当伪造的脸存在时,准确率会大大降低。事实上,当数字超过7时,准确率下降到0%。即使是人们也发现在原始和伪造的混合图像中识别伪造的面孔非常困难,这突出了我们的OpenForensics数据集的挑战。
4. Benchmark Suite
4.1. Baseline Methods
我们对多面伪造检测和分割进行了竞争性基准测试。为此,我们训练和评估了各种场景下最新的实例检测和分割方法。方法有MaskRCNN[22]、MSRCNN[25]、RetinaMask[17]、YOLACT[4]、YOLACT++[5]、CenterMask[41]、BlendMask[7]、PolarMask[76]、MEInst[80]、CondInst[69]、SOLO[72]、SOLO2[73]。MaskRCNN和MSRCNN是众所周知的两阶段模型,它们执行检测后分割的速度很慢。YOLACT模型[4,5]是针对实时性能的早期单级模型。其余的方法是广泛使用的现代单阶段模型,克服了精度和处理时间的问题。其中SOLO[72,73]直接输出掩码,不计算边界框。
所有方法都使用相同的主干(FPN-ResNet50[47,23]),以使比较公平。我们在拥有32GB内存和Tesla P100 GPU的PC上训练模型。使用ImageNet权值初始化模型[33],并在我们的训练集上训练12个epoch。在第8和第11个时期,基本学习率下降了1/10。其他设置与作者提供的默认公共配置一致。
4.2. Evaluation Metrics
我们使用标准的COCO-style平均精度(AP)[48]来评估方法。我们报告的结果为平均AP和AP在不同尺度上(APS、APM、APL,其中S、M和L分别代表小型、中型和大型对象)。我们还使用定位召回精度(LRP)误差对方法进行了评估[57]。我们报告了平均最优LRP (oLRP)及其误差分量的结果,包括定位(oLRPLoc)、假阳性率(oLRPF P)和假阴性率(oLRPF N)。
4.3. Overall Evaluation
如图11所示,在标准图像的检测和分割任务中,BlendMask的性能最好,AP最高,oLRP误差最低。其他现代单级法也具有较高的性能,而两级法的性能一般。YOLACT方法在这两个任务上的表现最差,因为它们主要关注实时处理。对于未见过的图像,yolact++和BlendMask的鲁棒性最强。
4.4. Multi-Face Forgery Detection Benchmark
表4显示了按指标细分的多面伪造检测任务的详细结果。结果表明,BlendMask具有最好的性能,实现了最高的AP(87.0)和最低的oLRP误差(19.5)。BlendMask也实现了所有对象尺度的最高AP。现代单阶段方法(即BlendMask, PolarMask和CondInst)具有较小的定位误差和假阳性率,而两阶段方法(即MaskRCNN和MSRCNN)具有较低的假阴性率。
4.5. Multi-Face Forgery Segmentation Benchmark
随着可解释AI (explainable AI, XAI)技术的出现[15,21,35,38],它有助于识别被检测人脸中的被操纵区域。因此,我们还评估了分割性能。如表4所示,对于多面伪造分割任务,方法性能排名的趋势与检测任务相似。BlendMask具有最好的分割性能,对于测试开发集,AP几乎为90,oLRP误差大约为18。
现实世界中的图像显然包含了各种大小的人脸。因此,研究不同尺度的检测和分割能力是必要的。表4显示,所有基线方法仅在中等尺寸和较大的人脸上实现了高性能。性能随着人脸尺寸的增大而下降,导致小人脸和中/大人脸在检测和分割方面存在微小差异。这些结果说明了我们的OpenForensics数据集的挑战,该数据集由巨大的面部尺寸组成。
与检测任务类似,我们发现基于密集检测的单阶段方法的FP误差更小,而基于稀疏检测的两阶段方法的FN误差更小。因此,利用NMS进行后处理的发展和RPN的改进可以帮助提高伪造检测的水平。
4.6. Robustness Evaluation
我们进行了实验来评估方法在我们的测试挑战集上的鲁棒性,该集模拟了现实世界中的场景。表5显示,对于未见过的图像,yolact++和BlendMask是最稳健的方法。CenterMask是鲁棒性最差的方法,其结果包含大量噪声,导致假阳性和假阴性率极高。
表4和表5显示了对于所有的方法中看不见的图像性能的大幅下降,这超出训练集的分布。尽管现有的方法能在标准图像上很好地工作,但在看不见的图像上,其鲁棒性较弱。即使是深度学习时代领先的伪造识别方法仍然有限,还不能有效地应对现实世界的挑战(前1名:测试挑战集的AP < 60)。因此,野外的多面伪造检测和分割问题还远远没有得到解决,还有很大的改进空间。这些结果也说明了OpenForensics数据集面临的挑战。
5. Conclusion and Outlook
作为我们对野外多面伪造检测和分割的综合研究的一部分,我们创建了一个大规模的数据集。对OpenForensics数据集的深入分析显示了其多样性和复杂性。我们还通过在各种实验设置中评估最先进的实例分割方法进行了广泛的基准测试。我们希望我们的OpenForensics数据集能够促进深度伪造预防方面的研究活动。我们打算继续扩大这个数据集,以配合深度伪造技术的未来发展。
得益于我们OpenForensics数据集中丰富的注释,有许多可预见的研究方向将为伪造和一般人脸研究提供坚实的基础,包括基础研究(例如,弱/半监督/自监督检测/分割,多任务通用网络)和具体研究(例如,抗伪造鲁棒性检测,伪造边界检测,伪造排名,人脸匿名化,人脸检测/分割,面部地标预测)。