掌桥专利:专业的专利平台
掌桥专利
首页

基于对比学习改进的图像篡改检测方法

文献发布时间:2024-04-18 19:59:31


基于对比学习改进的图像篡改检测方法

技术领域

本发明涉及图像处理技术领域,尤其涉及基于对比学习改进的图像篡改检测方法。

背景技术

数字图像以其直观传达信息的优势,在诸多领域中成为重要的信息传递载体。然而随着图像处理技术的多样化和图像编辑软件的流行,图像恶意篡改现象越来越普遍,这无疑给数字图像的安全性以及网络环境的净化带来了许多挑战。因此,对于图像篡改检测的研究具有重要的现实意义。

当前,主流的基于深度学习的方法进行图像篡改检测时主要依赖于篡改过程中留下的线索,包括视觉痕迹和残余压缩痕迹,再利用卷积神经网络(CNN)的自适应特性自动提取图像特征,对篡改图像进行分类或定位。这种方法训练的模型只针对特定的篡改特征有效,存在一定的局限性。当篡改图像显示出训练之外的其他篡改特征时,模型往往不能做出有效的检测。

并且现今由于篡改技术的多样性和不断发展,篡改特征逐渐多样化,因此只依赖于某种特定的篡改特征信息存在一定局限性,只能较好地应用于特定篡改特征在篡改图像中比较突出的场景中。当某些篡改技术有效模拟自然图像的特征,或者是对某个特征进行后处理掩盖,模型就难以准确检测到篡改图像的伪造特征。

发明内容

为解决上述问题,本发明提供基于对比学习改进的图像篡改检测方法,通过提取数据集本身的篡改特征进行学习,并利用全监督对比学习的机制使得模型面对各种篡改手段时都能表现出良好的性能,提高了模型的泛化能力。

为实现上述目的,本发明提供了基于对比学习改进的图像篡改检测方法,包括以下步骤:

S1、获取公开数据集,公开数据集包括CASIA和COVER数据集,其中CASIA数据集由使用复制移动和拼接技术篡改的图像组成;COVER数据集由多张使用复制移动技术篡改的图像组成;

S2、预处理:

S21、数据增强;

S22、参数设置;

S3、构建图像篡改检测模型;

S4、训练图像篡改检测模型;

S5、对图像篡改检测模型进行评测。

优选的,在步骤S1中由Pascal VOC中获取;

CASIA数据集和COVER数据集中的图像上均附有用于促进图像伪造定位的真实掩模。

优选的,步骤S21所述的数据增强包括图像旋转和镜像;

在步骤S22中,将公开数据集中原始图像的大小调整为256x256像素,batchsize设置为32,patchsize设置为8;选用SGD优化器,其动量设置为0.9,权重衰减设置为0.0005,初始学习率设置为0.001;采用学习率衰减策略,设定为学习率每10轮下降到前一轮的十分之一;在训练网络模型中进行200次epoch的训练。

优选的,步骤S3所述的图像篡改检测模型包括改进的DPN模块、多尺度注意力模块、双流注意模块和对比学习模块;

改进的DPN模块用于提取早期边缘特征;

多尺度注意力机制模块用于提取篡改特征;

改进的DPN模块和多尺度注意力机制模块组成Encoder模块,用于提取图像的RGB颜色域特征信息以及Noise噪声域特征信息;

双流注意模块用于图像的篡改检测定位;

对比学习模块用于学习出更具区分性的特征表示。

优选的,改进的DPN模块以DPN神经网络为基础架构,其包括依次设置的五个阶段的block模块,每个阶段的block模块输出代表不同时期的特征信息,通过重复利用上述五个阶段的block模块特征信息,实现早期边缘特征的提取;

在改进的DPN模块中执行以下步骤:

将原始图像经过多个1x1,3x3大小的卷积核,通过卷积操作实现特征信息的复用,同时对新的特征信息进行学习,并将每个block模块的输出作为多尺度注意力模块的输入。

优选的,多尺度注意力机制模块是基于Dot Product实现的;

在多尺度注意力机制模块中执行以下步骤:

第一步、对于第i阶段的特征信息表示为F_i,依次经过Sobel卷积核和下采样,将第i阶段的特征信息尺寸调整为与第i+1阶段的特征信息F_(i+1)相同的尺寸;

第二步、通过不同的卷积块将F_i转换为注意力机制中的Key值向量,以表示浅层特征特定信息;

第三步、将F_(i+1)通过不同卷积操作分别变换为注意力机制中的Key、Value和Query;

第四步、使用矩阵乘法和求和计算输出流,并将此多尺度注意力机制模块的输出流用作下一个多尺度注意力机制模块的输入流,其计算公式如下:

式中,T

第五步、利用Encoder模块提取图像的RGB颜色域特征信息以及Noise噪声域特征信息。

优选的,在双流注意模块中执行以下步骤:

第一步、设定RGB颜色域特征信息和Noise噪声域特征信息分别为T

第二步、采用以下公式将T

T

式中,T

第三步、通过局部注意力和全局注意力的方式再通过相应的sigmoid获取一组融合权重:

wei=sigmoid(F

式中,F

第四步、赋予T

X

式中,X

第五步、将X

优选的,在对比学习模块中执行以下步骤:

第一步、将由双流注意模块输出的输出特征尺寸输入对比学习模块中;利用对比学习模块中的FCN head将输出特征尺寸映射为待检图片的尺寸大小;利用对比学习模块中的projection head和ground-truth mask分别映射到编码器特征提取四个阶段的特征尺寸大小;

第二步、在训练过程中先用projection head进行训练,而后利用FCN head通过采用多次的上采样保留边缘信息逐步恢复图像的细节,再进行预测评估;

第三步、在损失函数部分,添加如下对比损失函数:

L

式中,L

优选的,在步骤S4中,使用python环境以及PyTorch深度学习框架;并使用SGD作为优化器,其动量设置为0.9,权重衰减设置为0.0005,初始学习率设置为0.001;同时采用学习率衰减策略,设定为每训练10轮学习率衰减为上个轮次的十分之一;且将batch-size的大小设置为32,patch-size大小设置为8;使用经在对比学习模块确定的损失函数;将训练网络模型迭代200个epoch。

优选的,在步骤S5中,将经步骤S4训练好的图像篡改检测模型分别在CASIA数据集和COVER数据集上进行评估验证,选取的验证指标为AUC和F1。

本发明具有以下有益效果:

1)本发明所设计的多尺度关注模块和双流关注模块,相比于现有的研究,更能充分利用图像的边缘信息以及神经网络不同层次的特征信息,实现低层次的边缘信息与高层次的语义信息相融合,通过赋予不同权重忽略无关的特征信息,使得模型更加关注与检测相关的特征信息,从而更好地提取图像篡改特征信息;

2)本发明所设计的对比学习模块可识别各种不同的篡改线索,而不是仅仅专注于某个特定的特征信息,同时该模块直接利用数据本身作为监督学习信息,且在模型训练过程中引入约束部分,相比于以往的模型更具鲁棒性,泛化性也更强。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

图1为本发明所述的基于对比学习改进的图像篡改检测方法的图像篡改检测模型示意图;

图2为本发明所述的基于对比学习改进的图像篡改检测方法的改进DPN模块结构示意图;

图3为本发明所述的基于对比学习改进的图像篡改检测方法的多尺度注意力模块结构示意图;

图4为本发明所述的基于对比学习改进的图像篡改检测方法的Encoder模块结构示意图;

图5为本发明所述的基于对比学习改进的图像篡改检测方法的双流注意模块结构示意图;

图6为本发明所述的基于对比学习改进的图像篡改检测方法的对比学习模块结构示意图。

具体实施方式

为了使本发明实施例公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明实施例,并不用于限定本发明实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。

需要说明的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

如图1-图6所示,基于对比学习改进的图像篡改检测方法,包括以下步骤:

S1、获取公开数据集,本实施例中的公开数据集包括5万张图像,公开数据集包括CASIA和COVER数据集,其中CASIA数据集由使用复制移动和拼接技术篡改的图像组成;COVER数据集由多张(100张)使用复制移动技术篡改的图像组成;

优选的,在步骤S1中由Pascal VOC中获取;

CASIA数据集和COVER数据集中的图像上均附有用于促进图像伪造定位的真实掩模。

S2、预处理:

S21、数据增强,增加了数据集规模和增强模型的泛化能力;

优选的,步骤S21所述的数据增强包括图像旋转和镜像;

S22、参数设置;

在步骤S22中,将公开数据集中原始图像的大小调整为256x256像素,batchsize设置为32,patchsize设置为8;选用SGD优化器,其动量设置为0.9,权重衰减设置为0.0005,初始学习率设置为0.001;采用学习率衰减策略,设定为学习率每10轮下降到前一轮的十分之一;在训练网络模型中进行200次epoch的训练。

S3、构建图像篡改检测模型;

优选的,步骤S3所述的图像篡改检测模型包括改进的DPN模块、多尺度注意力模块、双流注意模块和对比学习模块;改进的DPN模块用于提取早期边缘特征;多尺度注意力机制模块用于提取篡改特征,利用注意力机制充分的关注关键特征信息抑制无关特征信息,从而提高模型在学习篡改信息特征的性能表现;改进的DPN模块和多尺度注意力机制模块组成Encoder模块,用于提取图像的RGB颜色域特征信息以及Noise噪声域特征信息;双流注意模块用于图像的篡改检测定位;对比学习模块用于学习出更具区分性的特征表示。

其中,改进的DPN模块以DPN神经网络为基础架构,其包括依次设置的五个阶段的block模块,每个阶段的block模块输出代表不同时期的特征信息,通过重复利用上述五个阶段的block模块特征信息,实现早期边缘特征的提取;

在改进的DPN模块中执行以下步骤:

将原始图像经过多个1x1,3x3大小的卷积核(在网络模型中,每个block模块可以看作是一组由多个DPN block单元块组成的结构,每个单元块包含多个1x1,3x3大小的卷积核,每个块由resnet分支和densenet分支两个分支组成),通过卷积操作实现特征信息的复用,同时对新的特征信息进行学习,并将每个block模块的输出作为多尺度注意力模块的输入。

优选的,多尺度注意力机制模块是基于Dot Product实现的,在多尺度注意力机制模块中通过利用早期的特征信息,引导模型更多关注早期边缘特征信息及篡改的边缘信息,摒弃与篡改无关的额外信息;

由于篡改区域与真实区域之间必然会留下一些边界特征信息,同时,针对复制移动和拼接类型图像的篡改区域通常也会具有一定的语义内容信息。因此,为了充分利用网络早期边缘特征信息和全局语义特征信息,在多尺度注意力机制模块中执行以下步骤:

第一步、对于第i阶段的特征信息表示为F_i,依次经过Sobel卷积核和下采样,将第i阶段的特征信息尺寸调整为与第i+1阶段的特征信息F_(i+1)相同的尺寸;

第二步、通过不同的卷积块将F_i转换为注意力机制中的Key值向量,以表示浅层特征特定信息;

第三步、将F_(i+1)通过不同卷积操作分别变换为注意力机制中的Key、Value和Query;

第四步、使用矩阵乘法和求和计算输出流,并将此多尺度注意力机制模块的输出流用作下一个多尺度注意力机制模块的输入流,其计算公式如下:

式中,T

第五步、利用Encoder模块提取图像的RGB颜色域特征信息以及Noise噪声域特征信息。

优选的,在双流注意模块中同时考虑图像RGB颜色域特征信息以及Noise噪声域特征信息各自的特点,通过两者相互协同捕获更为充分的篡改特征信息。同时设计一种即插即用的基于注意力机制的融合模块实现不同分支的特征信息有效融合。

其执行以下步骤:

第一步、设定RGB颜色域特征信息和Noise噪声域特征信息分别为T

第二步、采用以下公式将T

T

式中,T

第三步、通过局部注意力和全局注意力的方式再通过相应的sigmoid获取一组融合权重:

wei=sigmoid(F

式中,F

第四步、赋予T

X

式中,X

第五步、将X

优选的,为了解决现有模型只针对特定篡改特征有效的局限性,提出了对比学习模块,其可充分利用每个篡改样本的信息,通过最小化正样本篡改点之间的距离,同时最大化正样本点和负样本点之间的距离,从而学习出更具区分性的特征表示,此外,通过附加额外损失函数,避免模型在训练过程中过度拟合,从而提高算法模型的泛化性。

在对比学习模块中执行以下步骤:

第一步、将由双流注意模块输出的输出特征尺寸输入对比学习模块中;利用对比学习模块中的FCN head将输出特征尺寸映射为待检图片的尺寸大小;利用对比学习模块中的projection head和ground-truth mask分别映射到编码器特征提取四个阶段的特征尺寸大小;

第二步、在训练过程中先用projection head进行训练,而后利用FCN head通过采用多次的上采样保留边缘信息逐步恢复图像的细节,再进行预测评估;

即在利用全监督对比学习的方式过程中,feature map作为query值,ground-truth mask真实掩膜作为key值进行对比学习。在训练过程中先用projection head进行训练,获得较好的性能,随后用FCN head通过采用多次的上采样的操作保留了边缘信息逐步恢复图像的细节,从而提高算法模型的边缘像素分类的准确率,最后进行相应的预测评估。在映射到不同尺度的过程中充分考虑篡改特征的低级边缘语义信息以及高维语义特征信息,通过不同尺度的感受野获取到不同尺度的特征信息,使得网络对不同尺寸的篡改区域能够精确捕获。

第三步、在损失函数部分,添加如下对比损失函数:

L

式中,L

S4、训练图像篡改检测模型;

优选的,在步骤S4中,使用python环境以及PyTorch深度学习框架;并使用SGD作为优化器,其动量设置为0.9,权重衰减设置为0.0005,初始学习率设置为0.001;同时采用学习率衰减策略,设定为每训练10轮学习率衰减为上个轮次的十分之一;且将batch-size的大小设置为32,patch-size大小设置为8;使用经在对比学习模块确定的损失函数;将训练网络模型迭代200个epoch。

S5、对图像篡改检测模型进行评测。

优选的,在步骤S5中,将经步骤S4训练好的图像篡改检测模型分别在CASIA数据集和COVER数据集上进行评估验证,选取的验证指标为AUC和F1。

表1图像篡改检测定位算法性能对比

从表1中可以看出所提出的模型在CASIA2.0数据集上AUC达到87.61%在DMLANET的基础上提高了1.31百分点,尽管在Coverage数据集上依旧不是最好的表现,但是相比于MALNet提升了2.25%。其中Coverage数据集只存在一种篡改操作,而对于CASIA数据集中存在多种数据集,因此可以表明,所提出的模型并不是关注某种特定的篡改特征线索,而是通过篡改数据集本身的信息,充分利用全监督对比学习的机制使得网络具有更好的泛化能力。

即可知本发明所提出的模型整体上优于现有的模型。其中在Coverage数据集上较弱于前人的工作,是因为Coverage数据集上只存在一种篡改操作,因此本发明的模型在结果上比只针对此特定线索所提出的模型效果较差。但同时也能说明本发明所提出的模型并不是关注某种特定的篡改特征线索,而是通过篡改数据集本身的信息,充分利用全监督对比学习的机制使得网络具有更好的泛化能力。

因此,本发明采用上述基于对比学习改进的图像篡改检测方法,通过在更宽、更深的双流、多尺度体系结构的基础上,构建了一种基于对比学习的图像伪造检测算法,最后通过在损失函数中加入约束函数Lloss来解决模型训练过程中的过拟合问题,实现更准确更具泛化性的图像篡改检测模型。

最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。

技术分类

06120116525199