伪造视频检测方法、电子设备及存储介质

文档序号:24875694发布日期:2021-04-30 12:50阅读:84来源:国知局
伪造视频检测方法、电子设备及存储介质

本公开涉及人工智能领域,更具体地,涉及一种伪造视频检测方法、电子设备及存储介质。



背景技术:

伪造视频检测的目的是给出输入视频是否存在伪造的判定。现有的伪造视频检测方法大多基于图像伪造检测方法,使用平均每帧图像预测概率或者投票的方法得到视频是否存在伪造的判定,这种方法对视频信息的利用率低,且样本易受噪声影响。现有技术也有针对视频级的伪造检测方案,这些方案大多在imagenet预训练模型的基础上端到端训练,由于缺乏有效的数据增广手段,训练出来的模型容易出现过拟合问题。

因此,在实现本公开的过程中发现,使用现有技术训练出来的模型易出现欠拟合或过拟合现象,鲁棒性较差。



技术实现要素:

有鉴于此,本公开提供了一种伪造视频检测方法、电子设备及存储介质。

本公开第一方面提供了一种伪造视频检测方法,包括:从视频中提取连续的帧序列,使用数据预处理方法处理上述帧序列,得到多个图像数据;使用图像特征提取器提取上述多个图像数据中的每个图像数据的特征,得到多个帧特征向量;将上述多个帧特征向量输入基于lstm的帧特征融合模块中,得到融合后的视频级检测结果特征;以及将上述视频级检测结果特征输入分类器,得到用于确定上述视频是否为伪造视频的检测结果。

根据本公开的实施例,上述图像特征提取器通过如下训练方法得到,训练方法包括:从样本视频中提取样本帧序列,使用数据预处理方法和数据增广方法处理上述样本帧序列,得到多个样本图像数据;以及使用上述多个样本图像数据基于上述多个样本图像数据对应的标签和第一训练参数,训练初始网络模型,得到上述图像特征提取器。

根据本公开的实施例,上述基于lstm的帧特征融合模块通过如下训练方法得到,训练方法包括:从样本视频中提取样本帧序列,使用数据预处理方法和数据增广方法处理上述样本帧序列,得到多个样本图像数据;将上述多个样本图像数据输入到上述图像特征提取器中,输出得到多个样本帧特征向量;以及使用上述多个样本帧特征向量基于上述多个样本帧特征向量对应的标签和第二训练参数,使用focalloss损失函数训练初始lstm网络模型,得到上述基于lstm的帧特征融合模块。

根据本公开的实施例,其中,上述数据预处理方法包括:使用图像检测器获取上述帧序列或上述样本帧序列的识别区域,裁剪上述识别区域得到图像序列;以及将上述图像序列裁剪到预设尺寸,得到上述多个图像数据或上述多个样本图像数据。

根据本公开的实施例,上述数据增广方法包括仿射、灰度、锐化、水平翻转、随机压缩、色调饱和度以及随机切割。

根据本公开的实施例,上述将上述多个帧特征向量输入基于lstm的帧特征融合模块中,得到融合后的视频级检测结果特征包括:将上述多个帧特征向量输入到一个或多个全连接层中,得到多个第一特征向量;依次将上述多个第一特征向量输入到一个多层lstm网络中,得到一个第二特征向量;以及将上述第二特征向量通过一个或多个全连接层,得到融合后的视频级检测结果特征。

根据本公开的实施例,上述第二特征向量由所有上述第一特征向量和上述多层lstm网络的参数通过矩阵计算得到。

根据本公开的实施例,上述第二特征向量的维度低于上述第一特征向量的维度。

本公开第二方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现上述伪造视频检测方法。

本公开第三方面还提供了一种计算机可读存储介质,存储有计算机可执行指令,上述指令在被执行时用于实现如上上述伪造视频检测方法。

根据本公开的实施例,提出了一种伪造视频检测方法,相比图像级的检测方案,该方法充分利用了视频丰富的信息,具有更好的鲁棒性,相比视频级的检测方案,该方法对训练资源的需求量较少,同时也避免了普遍存在的过拟合问题,具有实用性。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的伪造视频检测方法100的流程图;

图2示意性示出了根据本公开实施例的图像特征提取器训练方法200的流程图;

图3示意性示出了根据本公开实施例的数据增广方法的示意图;

图4示意性示出了根据本公开实施例的基于lstm的帧特征融合模块训练方法400的流程图;

图5示意性示出了根据本公开另一实施例的人脸伪造视频检测方法500的示意图;

图6示意性示出了根据本公开实施例的适于实现伪造视频检测方法的电子设备600的示意图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。在使用类似于“a、b或c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b或c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。

本公开的实施例提供了一种伪造视频检测方法、电子设备及存储介质。伪造视频检测方法包括:从视频中提取连续的帧序列,使用数据预处理方法处理帧序列,得到多个图像数据;使用图像特征提取器提取多个图像数据中的每个图像数据的特征,得到多个帧特征向量;将多个帧特征向量输入基于lstm的帧特征融合模块中,得到融合后的视频级检测结果特征;以及将视频级检测结果特征输入分类器,得到用于确定视频是否为伪造视频的检测结果。

图1示意性示出了根据本公开实施例的伪造视频检测方法100的流程图。

如图1所示,该方法100包括操作s110~s140。

在操作s110中,从视频中提取连续的帧序列,使用数据预处理方法处理帧序列,得到多个图像数据。

根据本公开的实施例,首先将视频按帧解码分割,为了降低模型过拟合的风险,从中选取数量较少的连续帧图像,例如,随机选择十个连续的帧作为帧序列。数据预处理包括但不限于归一化、正则化、数据裁剪等手段,得到的多个图像数据具有相同的尺寸。

在操作s120中,使用图像特征提取器提取多个图像数据中的每个图像数据的特征,得到多个帧特征向量。

根据本公开的实施例,图像特征提取器可以使用现有的图像模型,例如resnext、efficientnet、xception的进入流等作为初始模型,采用本实施例的样本、样本的标签以及用户定义的训练参数进行训练。

在操作s130中,将多个帧特征向量输入基于lstm的帧特征融合模块中,得到融合后的视频级检测结果特征。

根据本公开的实施例,基于lstm的帧特征融合模块的主体是一个多层lstm网络,其输入端和输出端均有一个或多个全连接层。借由lstm网络的记忆与遗忘机制,可以将网络的输出与所有网络的输入建立联系。

在操作s140中,将视频级检测结果特征输入分类器,得到用于确定视频是否为伪造视频的检测结果。

根据本公开的实施例,分类器包括但不限于softmax分类器等。

本公开实施例的伪造视频检测方法可以部署在计算机或服务器,自动对视频是否存在伪造做出判别,可以应用在各大平台上,包括但不限于社交平台、视频分享平台等。

根据本公开的实施例,提出了一种伪造视频检测方法,相比图像级的检测方案,该方法充分利用了视频丰富的信息,具有更好的鲁棒性,相比视频级的检测方案,该方法对训练资源的需求量较少,同时也避免了普遍存在的过拟合问题,具有实用性。

图2示意性示出了根据本公开实施例的图像特征提取器训练方法200的流程图。

如图2所示,该方法200包括操作s201~s202,该方法200可用于实现方法100中操作s120中的图像特征提取器的训练。

在操作s201中,从样本视频中提取样本帧序列,使用数据预处理方法和数据增广方法处理样本帧序列,得到多个样本图像数据。

根据本公开的实施例,数据预处理方法包括使用图像检测器获取帧序列的识别区域,裁剪识别区域得到图像序列;以及将图像序列裁剪到预设尺寸,得到多个图像数据。

图3示意性示出了根据本公开实施例的数据增广方法的示意图。

根据本公开的实施例,如图3所示的数据增广方法包括仿射、灰度、锐化、水平翻转、随机压缩、色调饱和度以及随机切割等。本公开实施例中采取的数据增广方法的数量和种类仅是示意性的,在实际应用中可以采用任意数量和种类的数据增广方法。

在操作s202中,使用多个样本图像数据基于多个样本图像数据对应的标签和第一训练参数,训练初始网络模型,得到图像特征提取器。

根据本公开的实施例,第一训练参数包括训练轮次、学习函数及其参数、损失函数及其参数等。

图4示意性示出了根据本公开实施例的基于lstm的帧特征融合模块训练方法400的流程图。

如图4所示,该方法400包括操作s401~s403,该方法400可用于实现方法100中操作s130中的基于lstm的帧特征融合模块的训练。

在操作s401中,从样本视频中提取样本帧序列,使用数据预处理方法和数据增广方法处理样本帧序列,得到多个样本图像数据。

根据本公开的实施例,操作s401可根据方法200中的操作s201实现。

在操作s402中,将多个样本图像数据输入到图像特征提取器中,输出得到多个样本帧特征向量。

根据本公开的实施例,首先根据方法200训练得到图像特征提取器,然后利用该图像特征提取器的输出作为样本数据。

在操作s403中,使用多个样本帧特征向量基于多个样本帧特征向量对应的标签和第二训练参数,使用focalloss损失函数训练初始lstm网络模型,得到基于lstm的帧特征融合模块。

根据本公开的实施例,第二训练参数可以与第一训练参数相同,也可以存在差异。focalloss损失函数用于解决训练样本中类别的不平衡。

图5示意性示出了根据本公开另一实施例的人脸伪造视频检测方法500的示意图。

如图5所示,视频数据首先被解码为帧序列,解码之后的帧序列通过一个人脸检测器得到人脸区域坐标,边界扩大1.3倍后裁剪得到人脸序列。从人脸序列中随机选择一个连续的十帧序列,并将十帧序列裁剪到224×224的大小,得到图像数据501。

根据本公开另一实施例,将图像数据501输入到嵌入层embedding502中,分别提取图像数据501中每一张图像的帧特征向量,可以得到10个帧特征向量。本实施例中的嵌入层embedding502可根据方法200训练得到。

根据本公开另一实施例,训练嵌入层embedding502时,训练轮次设为36,每次输入一个样本进入模型进行训练,使用随机梯度下降法对模型进行优化,动量因子设置为0.9,权值衰减系数设置为0.001,初始学习率设置为0.0001,学习率按照余弦调度策略变化,网络最后的全连接层学习率设置为模型整体学习率的四倍。

根据本公开另一实施例,图5所示的帧特征融合模块示意图是帧特征融合模块503按时间展开后得到的,帧特征融合模块503包括3个全连接层5031和一个三层的lstm网络5032。本实施例中的帧特征融合模块503可根据方法400训练得到。

根据本公开另一实施例,训练帧特征融合模块503时,会将嵌入层embedding502冻结,保持其参数不变,训练轮次设为30,其余参数设置与训练嵌入层embedding502时的参数设置相同。使用focalloss损失函数作为损失函数来平衡数据集中的正负比例,在focalloss损失函数中,alpha设为1∶3,beta设为2。

根据本公开另一实施例,首先,将10个帧特征向量输入到一个全连接层5031中,得到10个512维的第一特征向量。之后,再将10个第一特征向量按照原本帧序列的顺序依次输入到lstm网络5032中,得到一个256维的第二特征向量。本公开另一实施例中采取的第一特征向量输入顺序仅是示意性的,在实际应用中,可以按照任意顺序将第一特征向量输入到帧特征融合模块503中。第二特征向量由10个第一特征向量和lstm网络5032的参数通过矩阵计算得到。第二特征向量的维度小于第一特征向量的维度。最后,将第二特征向量通过两个全连接层5031,得到融合后的视频级检测结果特征。

根据本公开另一实施例,lstm网络5032的层数可以是任意值,该网络前端及后端的全连接层5031可以是任意个。在实际应用中,可以在训练时根据参数信息,对全连接层5031和lstm网络5032的层数进行修改,以得到拟合度最佳的模型。

根据本公开另一实施例,融合后的视频级检测结果特征是预测结果的logits值,在本公开的其他实施例中,通过修改最后一个全连接层5031的激活函数,融合后的视频级检测结果特征也可以是预测结果的odds值,或者是预测结果的概率值。

根据本公开另一实施例,将融合后的视频级检测结果特征输入到softmax分类器504中,得出原视频数据是真实或者虚假的结论。

图6示意性示出了根据本公开实施例的适于实现伪造视频检测方法的电子设备600的示意图。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图6所示,根据本公开实施例的电子设备600包括处理器601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

在ram603中,存储有电子设备600操作所需的各种程序和数据。处理器601、rom602以及ram603通过总线604彼此相连。处理器601通过执行rom602和/或ram603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除rom602和ram603以外的一个或多个存储器中。处理器601也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。

根据本公开的实施例,电子设备600还可以包括输入/输出(i/o)接口605,输入/输出(i/o)接口605也连接至总线604。系统600还可以包括连接至i/o接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。

本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

例如,根据本公开的实施例,计算机可渎存储介质可以包括上文描述的rom602和/或ram603和/或rom602和ram603以外的一个或多个存储器。

附图中的流程图和框图,图示了按照本公开各种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1