基于卷积LSTM的视频中Deepfake检测方法
李永强,白天player
(中国科学技术大学软件学院,安徽合肥230026)
摘要:以Deepfake为代表的伪造人脸技术,使用少量的人脸数据就能将视频中的人脸替换成为目标人脸,从而达到伪造视频的目的$此类技术的滥用将带来恶劣的社会影响,需要使用检测技术加以制裁$针对这一问题,已有若干检测算法被提出$现有方法具有一定局限性,单帧检测算法忽略了Deepfake动态缺陷;当数据存在缺陷时,模型可能会陷入“学会特定脸”的陷阱中$提出了一种对视频数据中的Deepfake检测方法,使用结合CNN和LSTM的卷积LSTM,判断视频真伪$提出了一种基于人脸特征点的cutout方法,能抑制网络学会特定脸$实验表明,在不同场景下,准确度对比基准算法均有提升$
关键词:Deepfake检测;计算机视觉;深度学习
中图分类号:TP18文献标识码:A DOI:10.19358/j.issn.2096-5133.2021.04.005
引用格式:李永强,白天.基于卷积LSTM的视频中Deepfake检测方法[J],信息技术与网络安全,2021,40(4): 28-32.
Deepfake detection method in videos bad on convolutional LSTM
Li Yongqiang,Bai Tian
(School of Software Engineering,University of Science and Technology of China,Hefei230026,China)
Abstract:The face forgery technology reprented by deepfake can replace the face in video with the target face by using a small amount of face data,so as to achieve the purpo of forgery video.The abu of this kind of technology will bring adver social effects,which need to be punished by using detection technology.The existing methods have some limitations,single frame detection algorithm ignores the dynamic defect of deepfake;when the data has defects,the model may fall into the trap of"learning specific face".In this paper,we propo a forgery face detection method in video,which us the convolutional LSTM combined with CNN and LSTM to judge if a video is original or manipulated by deepfake.In addition,we propo a cutout method bad on landmarks,which can inhibit the network from learning specific face.Experiments show that the accuracy of the baline algorithm is improved in different scenes.
Key words:Deepfake detection;computer vision;deep learning
0引言
近年来,基于深度学习技术的图像生成技术迅速发展,视频人脸伪造技术也随之日趋成熟"利用此类技术的人脸伪造技术已经可以欺骗普通人类[1]"但这些技术的滥用也引发了一些社会问题,因为这些技术可以利用公众人物公开的视频、图像素材,伪造公众人物岀场的虚假视频,发布虚假的言论,或伪造色情影片,破坏名誉。由于Deepfakes项目[2]的广泛流传,这一类技术常被通称为Deepfake。为了避免Deepfake技术的滥用,许多研究团体做岀了卓越的贡献"ROSSLER A等人发布了包含大量Deepfake数据的公开数据集FaceF o rensics++[1],以帮助研究人员研究检测算法°Facebook开展了DFDC (Deepfake Detection Challenge)比赛并公布了训练数据集[3]。
早期的研究主要是从视频中随机提取帧,使用基于卷积神经网络(Convolutional Neural Networks,CNN)的二分类器进行检测[1]。这样的方法存在两个问题。一是只使用了单帧信息,忽略了Deepfake技术的动态缺陷,在低质量场景下容易岀错。二是分类器与训练数据高度相关,不具备通用性,在对数据的生成模型未知的情况下,效果将会大打折扣。
另外有研究从频域角度岀发试图解决问题。
KORSHUNOV P [4]等人通过构造图片的频率特征或
统计特征等方法,构造图像质量指标(Image Quality Measures , 9QM),作为特征供支持向量机(/口卩卩。!! Yector
Machine , SVM)学习,但是通过构造特征的方式需要
大量专业知识,不能很好地泛化问题。QIAN Y 557等 人从频域提取到Deepfake 模型留下的特定频率特 征,在特定数据集上获得了较好的效果。然而无法
保证不同的模型能产生类似的频率特征,并且不同 的有损压缩方式也会带来频率噪声,对频域特征存
在干扰,缺乏鲁棒性。
针对以上问题,本文提岀了一种基于深度学习 的视频中Deepfake 检测方法。
本文的主要工作如下:
(1) 提岀卷积LSTM 的模型架构,结合CNN 和长
短期记忆网络(Long Sh *r t - Term Mem *r y , LSTM )的模
型架构,融合了存在于帧间的时间信息,用于视频 中Deepfake 检测。
(2) 提岀一种帧抽取方法,提咼了 Deepfake 动态
缺陷的显著性。
(3) 提岀一种基于人脸特征点进行cutout 的数
据增强方法,抑制了模型学会特定脸的现象。
(4) 在公开数据集上进行测试,并与文献中其他
算法进行对比。
1本文方法
通过对相关数据的分析可以发现,使用Deepfake 伪造人脸的视频在动态过程中会岀现异常抖动。对 于帧之间独立分析的方法无法发现这种抖动,仅局 限于发现单帧画面中的瑕疵。而视频质量较差或使
用有损视频压缩算法也会带来许多瑕疵,当模型无
法区分这两类瑕疵时,模型的性能将大大降低。本文 提 岀 卷 积 LSTM 架 构 , 将 CNN 与 LSTM 进 行 融 合 , 用 于解决传统模型忽略时序特征的问题,并提岀一种
基于人脸标记点(landmarks)的cutout 方法,以抑制模
型学会特定脸的现象。
1.1模型架构
卷积 LSTM 分为 CNN block 和 LSTM block , CNN
block 负责获取空间信息,LSTM block 则从特征图序
列中获取时间信息。如图1(a)所示,从视频中提取
!帧后,使用现有的人脸提取器对这些帧进行人脸 提取,得到人脸图片序列,调整大小到CNN block 对
应的大小,在训练时,还需进行动态数据增强。假设
人脸]u>广社卩
丄P [提取器]T I l _p-
帧序列
脸序列
(a)人脸提取
履
叵I
单个人脸
特征图 预测值
(b)单脸预测
脸 序 列 特 征 图 序 列 预 测 值
(c)序列检测图1模型架构图
使用的CNN block 输岀512维的特征图,那么将得
到!个512维向量,在训练阶段,每个向量还将经 过多层感知机得到标签的独热编码,用于约束特 征图。将!个512维的向量输入LSTM block 中,模
型最终按独热编码的形式输岀预测标签。
1.1.1帧抽取
由于生成模型的训练过程中没有唯一标准的 答案,因此生成结果具有一定的不确定性。即对于 相似的输入,模型可能生成不相似的结果,尤其是 处理毛发、斑点等特征的情况下,无法保证每次随
机生成的结果相同,从而导致了视频中的抖动现象。 记表示原视频的第i 帧,F #表示经过Deepfake
处理过的图像,% (i ,')表示原始视频中第i 和'帧的 差异,即R #和"的差异,df (i ,j )表示和$的差异°
通常,d & (i ,j )主要受视频中人脸的姿态、光照等条件 影响,而d f (i ,j )还额外受到模型不确定性error (i ,j ) 影响,如式(1)所示°若I i -' I 过于小,d &和d f 均很小, 造成信息冗余°若I i - j I 过于大,则df 主要取决于d&, 模型的抖动将难以捕捉。因此,应当在保证一定最
小间隔的前提下,选取相对紧凑的选取帧,本文实 验中,采用在视频中随机选取时间点,以0.2 s 为间
隔采样,采样总长度不超过32帧。
df (i J) = d &(i ,j ) +error (i J)>d &(i ,j )
(1)
1.1.2人脸提取
现有的人脸提取算法已经能满足实际需要。常 见的人脸提取器有MTCNN 两、dlib 等°本文后续实
验中,将使用MTCNN 提取人脸框及人脸特征点°
1.1.3CNN-block
outmanImageNet竞赛极大推动了深度卷积网络的发展,即使ImageNet早已结束,图像领域的新模型都会在ImageNet上进行基准测试,并发布预训练模型。基于这样的预训练模型在其他任务上训练,可以加快训练收敛的速度,并且一般会使得模型最终效果更好、更稳定。针对不同的应用场景,有许多开箱即用的模型可以使用。Resnet345系列因为其普遍性,具有良好的可移植性,几乎所有平台都能使用。Mobilenet[8]系列针对边缘节点算力较弱的场
景,在可接受的准确率损失的前提下,极大地
减少了计算力"Efficientnet[<5则相反,使用更大
的模型,更大的输入尺寸,获得更好的拟合效
果。本文提岀的架构设计中,可以根据实际场
景轻松地切换CNN-block°为了后续模块中能
保留充足的信息,CNN-block将会向后输岀一个较大维度的向量,如512维向量,同时为了保证这个向量中包含了有关于训练目标的信息,在训练过程中,对于每个向量,都会经过一个浅层神经网络,输岀单帧的标签预测值,从对特征向量本身进行约束,以提高特征本身对于标签的相关性。
1.1.4LSTM-block
单独使用CNN-block无法处理变长数据和有序数据,因此需要结合使用循环神经网络(Recurrent Neural Network,RNN)来处理时间信息。LSTM是一种特殊的RNN,如图2所示,本文所用的结构在原始LSTM的基础上加入了实例正则化(Instance Normal-ization,IN),这是由于不同的数据可能使用的替换人脸不同,每个图像实例之间独立地进行正则化,可以加快模型收敛。结合CNN与LSTM后,模型拥有
$
00
1
tanh
1
replay
tanh
图2LSTM单元结构图
融合时空信息的能力,能同时挖掘数据中Deepfake 的动态缺陷和静态缺陷,提升了数据信息利用率。
1.2数据处理
1.2.1数据增强
常规的数据增强方法依然适用,但是需要注意一点的是,部分增强方法在同一组数据中需要保持一致。除了 1.2.3节中将要介绍的cutout方法,本文实验中使用到的数据增强方法如表1所示。
表1数据增强方法及参数说明
方法名称方法说明参数范围
水平翻转以概率&随机进行左右翻转&^0-5
旋转在角度范围内进行旋转-30"〜30"
缩放对图像进行比例缩放100%〜120%
JPEG压缩攻击使用不同质量因子进行JPEG压缩0.5-1.0
1.2.2基于人脸特征点的cutout
cutout3105是一种数据增强技术,在图像中随机选择一个正方形区域,进行全0填充。Deepfake伪造的痕
迹主要存在于面部及交界处,直接使用cutout技术,
有可能将面部覆盖,从而引入有害噪声,影响模型
的学习。人脸标记点用于定位人脸不同的区域,dlib
能检测68个特征点,如图3(a)所示。本文实验中,
利用这些点划分了6个区域,如图3(b)所示,区域
所用的特征点序号如表2所示。每个区域按均等概
率进行cutout。
表2不同区域所用特征点序号
区域名称特征点序号—
左脸颊1,2,3,4,5,6,7,8,49,32,37
右脸颊10,11,12,13,14,15,16,17,46,36,55
嘴及下巴8,9,10,55,36,35,34,33,32,49
左眼1,18,19,20,21,22,28,40,41,42,37
右眼28,23,24,25,26,27,17,46,47,48,43
鼻32,33,34,35,36,46,47,48,43,28,40,41,42,37 2实验结果及分析
本文实验使用了2个数据集,FaceForensics++和DFDC。实验中,将利用DFDC数据训练CNN模型,
使用迁移学习技术,在完整模型架构中,使用Face-
Forensics++对应数据子集进行模型微调,最后在Face-
contentsForensics++对应的子集上进行效果验证。
2.1数据集介绍
FaceForensics++数据集包含了1000个从YouTube 上筛选的视频片段,片段以单人视频为主,视频物
(a)68个人脸特征点(b)6个cutout区域
图3人脸特征点及cutout区域
理分辨率从480p到1080p不等°通过Deepfakes52]、Face2Face[11]、8&%19"&$5/67以及:1;<&=>1?@;<145'A7四种算法生成伪造视频以及对应的模型。对于每个视频,根据H264编码时使用的参数分为无损(RAW)、低压缩(C23)和高压缩(C40)三种版本,对于伪造视频,还提供了伪造区域的mask信息。
donateDFDC(Deepfake-Detection-Challenge)数据集来源于Kaggle上的算法竞赛,由AW9、Facebook等共同创建,其中的伪造视频由视频、音频以及音视频同时伪造°数据集共471.84GB,分为50个相互独立的分卷,每个分卷中有若干视频和一个标签文件,每个文件对应的标签中标明了数据是否是造假视频,对于伪造视频,还提供 了其原视频的标签,相比FaceForensics++,没有公布进行伪造的算法和模型,也没有提供伪造区域的mask信息。
2.2训练细节
为了方便对比基线,实验的CNN模型选用了Xception5147,单帧输入大为224x224,对应输岀feature map的大小为512。使用带有梯度裁切的adam优化器进行优化,学习率设置为0.0001,损失函数使用focal loss5157,其表达式为式(2),!设置为0.25,"设置为2,focal loss可以缓解数据中的不平衡,使模型更专注于难样本。训练时存在两种约束,需要交替训练。训练CNN的阶段,设置batch size为128,迭代次数为10个epoch,使用DFDC数据作为预训练°综合训练阶段,使用FaceForensics++的某个子集进行训练,设置batch size为32,迭代次数为20个epoch°
focal_loss(p)=-!x(1-p,)"x log(p()(2) 2.3实验结果及对比
本文方法使用DFDC数据预训练CNN模块,然后迁移到FaceForensics++对应的数据子集上进行后续的完整训练。数据子集包括无损、低压缩和高压缩三种质量下的四种算法生成的伪造视频和对应的真实视频进行混合的12种集合。结果如表3所示。相比于文献[1]中给岀的基于Xception的基线算法,在12种集合上的效果均有提升,尤其是在低视频质量的情况下,提升较为明显°
表3在FaceForensics++数据集上准确率对比(%)数据子集本文方法Xception517
Raw
Deepfakes99.6799.59
FaceSwap99.7199.61
Face2Face99.3299.14
NeuralTextures99.4199.36
Compresd23
google 翻译网
Deepfakes98.9698.85
FaceSwap98.5598.36
Face2Face98.4698.23
因变量
NeuralTextures95.1794.5
Compresd40
Deepfakes95.5394 .28
FaceSwap93.0591.56
Face2Face95.1693.7
NeuralTextures92.5682.11
3结论
本文提岀了一种用于检测视频的Deepfake检测方法°提岀将CNN和LSTM结合的卷积LSTM,充分利用
了视频中帧的空间信息和Deepfake的动态缺陷这一时间信息°针对任务目标,提岀了一种帧提取方法,提高了Deepfake动态缺陷的显著性°提岀一种基于人脸特征点的cutout方法用于数据增强,同时抑制模型学会特定脸的现象°在FaceForensics++数据集上的实验表明,算法在各种压缩质量和换脸算法下,对比基线算法均有提升°南昌超越英语学校
参考文献
[1]ROSSLER A,COZZOLINO D,VERDOLIVA L,et al.
Faceforensics++:learning to detect manipulated facial
images[C].Proceedings of the IEEE International
Conference on Computer Vision,2019.
[2]Deepfakes.Deepfakes github[EB/OL].[2021-01-12].
[3]Facebook.Deepfake-detection-challenge[EB/OL].
shutout[2021-01-12]./c/deepfake-
de tection-challenge.
[4]KORSHUNOV P,MARCEL S.Deepfakes:a new threat
to face recognition V asssment and detection[J].arXiv
preprint arXiv:1812.08685,2018.
[5]QIAN Y,YIN G,SHENG L,et al.Thinking in fre
quency:face forgery detection by mining frequency-
aware clues[C].European Conference on Computer
Vision.Springer,Cham,2020.
[6]ZHANG K,ZHANG Z,LI Z,et al.Joint face detection
and alignment using multitask cascaded convolutional
networks[J].IEEE Signal Processing Letters,2016,23
(10):1499-1503.
[7]HE K,ZHANG X,REN S,et al.Deep residual learning
for image recognition[C].Proceedings of the IEEE
conference on computer vision and pattern recognition,
2016:770-778.
[8]HOWARD A G,ZHU M,CHEN B,et al.Mobilenets:
efficient convolutional neural networks for mobile vision applications[J].arXiv preprint arXiv:1704.04861,2017.
[9]TAN M,LE Q V.Efficientnet:rethinking model scaling
for convolutional neural networks[J].arXiv preprint
arXiv:1905.11946,2019.
[10]DEVRIES T,TAYLOR G W.Improved regularization
of convolutional neural networks with cutout[J] .arXiv
preprint arXiv:1708.04552,2017.
[11]THIES J,ZOLLHOFER M,STAMMINGER M,et al.
Face2face:realtime face capture and reenactment of
rgb videos[C].Proceedings of the IEEE Conference
on Computer Vision and Pattern Recognition,2016. [12]MAREKKOWALSKI.FaceSwap github[EB/OL].[2021-
01-12]./MarekKowalski/FaceSwap.
[13]THIES J,ZOLLH O FER M,NIEVNER M.Deferred
neural rendering:image synthesis using neural textures[J].
ACM Transactions on Graphics(TOG),2019,38(4):
1-12.
[14]CHOLLET F.Xception:deep learning with depthwi
parable convolutions[C] .Proceedings of the IEEE
conference on computer vision and pattern recognition,
2017.
entirecolumn[15]LIN T Y,GOYAL P,GIRSHICK R,et al.Focal loss
for den object detection[C]. Proceedings of the IEEE
International Conference on Computer Vision,2017.
(收稿日期:2021-01-20)作者简介:
李永强(1995-),男,硕士研究生,主要研究方向:计算机视觉°
白天(1975-),男,博士,讲师,主要研究方向:图像处理与分析、计算机视觉°