一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种图像篡改检测方法

2022-11-16 07:47:55 来源:中国专利 TAG:


1.本发明涉及图像篡改检测技术领域,具体涉及一种图像篡改检测方法。


背景技术:

2.数字图像已经涉及到我们生活的各个角落,从我们日常生活中的社交网络到学术科研,图像的数量都十分庞大,在现代社会生活中起着不可忽视的作用,并扮演着越来越重要的角色。随着一些图像处理工具的普及,如photoshop和美图秀秀等,使得修改和创建虚假的图像变得极其容易和快速,让我们对数字图像的信任大大降低,不再相信“眼见为实”。面向真实性检测的数字图像取证技术是迫切需要的一种技术, 潜在的应用领域广泛, 涉及新闻媒体、电子票据、文档签名、法庭取证、保险事故调查等领域, 有着广泛的应用前景。
3.最常见的图像篡改技术大致可分为三大类:复制-移动,图像的局部直接或者经过缩放、旋转、翻转等操作后被复制粘贴到同一图像的另一部分;拼接,从其他图像上选取局部拼接到当前图像上;修饰,主要是移除掉图像中某些元素。在应用完这些篡改手段后,篡改者还会利用photoshop等图像编辑工具进行一些后处理,比如调整大小、旋转、对比度/亮度调整、去噪等,保证篡改的图像和真实图像看起来别无二致。
4.对上述图像的篡改进行检测的技术主要可以分为两大类:基于传统方法的篡改检测和基于深度学习的篡改检测。传统的检测方法基于特定的篡改手段设计具体的方法来检测是否篡改,而深度学习方法利用深度神经网络来提取图像特征,并给出图像篡改区域定位。传统的检测方法只能针对特定的痕迹手工设计算法,不仅过程繁琐,而且使用场景非常有限。例如sift算法仅能检测复制-移动的图像,利用边缘不连续、照明不一致、几何不一致和相机轨迹不一致等拼接痕迹的传统算法仅能检测拼接的图像。
5.由于深度学习方法不依赖于先验知识,可以端到端的训练和检测,并且对于三种篡改手段都有效,已经成为该领域的主要研究方向,大量研究者投入其中。近年来,涌现出大量的基于深度学习的通用的图像篡改检测算法,如rgb-n、mantranet、span、mvss等。
6.基于深度学习的方法可以进一步细分为单流结构和双流结构,都利用利用卷积神经网络提取图像语义特征、篡改区域边缘特征、噪声特征。但是单流结构的模型难以有效学习多种篡改特征,并且某些方法也只能检测单一的篡改类型,如mfcn,rru-net等。因此,又涌现出很多双流结构的算法,双流结构的算法同时学习噪声特征、边缘特征、图像语义信息等,但是不同流提取的特征具有差异性,多个特征仅仅在模型的两端融合,很难弥合这些特征之间的差距。例如,mm-net算法提出了一个注意力引导模块,希望让一个流来引导另一个流的学习,但是在学习的过程中依然忽略了两个分支的联系,本质上依然是后融合;seinet算法在提取特征阶段通过将两个流的特征相加或者相乘进行交互,不能很好的挖掘相关性,并且也缺乏对全局特征的提取,而全局特征对于检测异源噪声和噪声不一致性至关重要。目前这些双流结构算法都陷入了瓶颈,无法取得更高的检测精度。


技术实现要素:

7.本发明的目的在于克服现有技术的缺点与不足,提出一种图像篡改检测方法,可以同时学习篡改图像的噪声特征、边缘特征、语义特征和全局特征,并且深度挖掘特征之间关联性的新型双流结构模型,以提高检测准确率和篡改区域的定位精度。
8.本发明完整的技术方案如下:一种图像篡改检测方法,具体步骤如下:步骤s1:预处理原始图像:读取原始图像,调整图像尺寸,得到rgb原始图;利用限制卷积模型bayerconv初始化rgb原始图,得到噪声特征图;步骤s2:采用双流结构网络进行特征提取,并进行特征融合:一个分支为rgb流,利用卷积网络resnet对rgb原始图进行特征提取;另一个分支为噪声流,利用cswin-transformer网络对所述噪声特征图进行特征提取;之后,采用transformer模块进行特征融合;步骤s3:进行上采样并输出预测结果图:将两个分支完成特征提取和融合后,得到的最终的融合特征进行上采样,上采样至原始图像尺寸大小后,再对得到的图像的每个像素点进行二分类,输出预测结果图。
9.进一步的,步骤s2中,两个分支的网络各自包含四个block模块,每经过一个block模块即为特征提取的一个阶段,噪声特征图特征提取的每一个阶段之后都对中间特征进行聚类操作,利用聚类的结果修正中间特征,并将修正后的中间特征与rgb流的中间特征进行特征融合,融合后再分别输入到两个分支中的下一个block模块,直到完成四个阶段,得到最终的融合特征。
10.进一步的,步骤s2中,通过双流结构网络进行特征提取,并通过transformer模块融合特征,最终得到融合特征,具体包括以下步骤:从每个分支中的第一个block模块开始;步骤2-1、采用双流结构网络提取特征:rgb原始图经过卷积网络resnet中的block模块得到卷积特征,噪声特征经过cswin-transformer网络中的block模块得到cswin特征;步骤2-2、对cswin特征进行k-means聚类得到聚类结果特征,利用聚类结果特征修正cswin特征,得到修正后的修正特征;步骤2-3、融合特征:将卷积特征和修正特征拼接到一起得到拼接特征,将拼接特征输入到transformer模块中进行特征融合,得到融合特征;步骤2-4、将步骤2-3的融合后的融合特征另存为跳跃连接特征,再拆分成新的下一阶段卷积特征和下一阶段cswin特征分别输入到步骤2-1中的各自分支的下一个block;2-5、重复上述步骤2-1至步骤2-4直至经过两个分支的最后一个block模块,也就是经过4个block模块后,提取特征阶段完成,最后一个block模块后的融合阶段的融合特征无需拆分,直接输入到解码器模块。
11.进一步的,在步骤s2的步骤2-2中,基于聚类结果特征利用卷积模块去修正cswin特征,得到修正后的修正特征。
12.进一步的,所述卷积模块包含两个卷积层,两层的卷积核大小分别为3
×
3和1
×
1,该卷积模块不改变cswin特征的尺寸。
13.进一步的,步骤s3具体包括以下步骤:步骤3-1、利用解码器模块对融合特征进行上采样,并在上采样时加入步骤s2中保存的跳跃连接特征,上采样至原始图像尺寸大小;步骤3-2、对于上采样完成后的特征图每一个像素点进行二分类,分为是篡改点和非篡改点,得到预测结果图mask。
14.进一步的,解码器模块采用上采样卷积模块。
15.进一步的,在所述检测方法的步骤s3中,将预测结果图mask与对应的groundtruth计算损失,根据该损失反向传播对所述检测方法进行优化。
16.进一步的,所述损失的计算采用dice损失函数来计算。
17.本发明的有益效果在于:1.本发明的特征提取阶段采取的双流结构网络,一条分支使用resnet,输入原始的rgb原始图像,另一条分支采用最新的cswintransformer网络,输入经过bayerconv(限制卷积模型)初始化的噪声特征图,能够实现从不同角度进行特征提取,实现特征提取的全面性。
18.2.本发明的融合模块采用通用的transformer模块,因为transformer具有强力的建立远距离依赖和挖掘关联性的能力。融合完两个分支的特征之后再分别输入到各自的流进行下一阶段的特征学习。与当前先进的检测算法不同的是,本发明模型在提取特征的过程中,每个block后会对两个分支提取的特征进行融合,以达到相互指导、消除差异性的目的。
19.3.在本发明中引入传统的聚类算法,在cswin-transformer提取完特征后进行,k-means聚类,理想情况下将篡改区域的特征聚集为一类,非篡改区域的特征聚集为另一类,这也有助于cswin-transformer更多的注意到局部细节信息,提高篡改区域的定位精度。
附图说明
20.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1 为本发明图像篡改检测方法的整体模型结构图;图2 为本发明图像篡改检测方法流程图;图3 为本发明图像篡改检测方法检测的原图与bayerconv初始化后的噪声特征图对比图;图4 为本发明图像篡改检测方法的实施例中所检测的篡改图、原始图像、
groundtruth及预测结果图的对照。
具体实施方式
22.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
23.本发明的基于双流结构网络的图像篡改检测方法,结构图如图1所示,流程图如图2所示,具体方法步骤如下:步骤1,对原始图像进行预处理,具体步骤如下:1-1、利用opencv读取原始图像并调整图像尺寸,得到调整后的rgb原始图,1-2、利用bayerconv初始化上述调整后的rgb原始图得到噪声特征图。
24.图像篡改检测与其他一般的图像任务不同,图像篡改检测更加关注图像的篡改部分,因此,需要模型学习篡改检测特征而不是代表图像内容的语义特征。限制卷积模型bayerconv是一个约束卷积核,rgb原始图经过该卷积核初始化之后得到抑制了图像语义的噪声特征图,本发明采用的一系列的共5个bayerconv约束卷积核,对rgb原始图进行初始化,进行初始化的约束条件如公式(1)所示。
25.(1)其中表示第k个卷积核,k=1,2,3,4,5;(0,0)表示中心位置,(m,n)表示其他位置。对rgb原始图经过上述初始化,得到经过bayerconv初始化后的噪声特征图,如图3所示。
26.步骤2,通过双流结构网络进行特征提取,并通过transformer模块融合特征,最终得到融合特征;具体方法包括:2-1、采用双流结构网络提取特征:将rgb原始图和噪声图像分别输入到卷积网络resnet分支和cswin-transformer网络分支。上述两个网络都采用4个block模块的结构。
27.resnet是一种卷积网络,有多种结构,每种结构只是层数不一样,本实施例采用resnet50有50层卷积网络。
28.rgb原始图经过resnet中的第一个block得到卷积特征f
res
,噪声特征经过cswin-transformer网络中的block得到cswin特征f
cswin
;另外,对于经过卷积网络resnet处理后的特征,根据实际需要还可以经过embbeding处理,如图1所示,embbeding作用是把一个图像patch映射成低维向量,主要是通过一个卷积操作加一个线性映射完成。
29.2-2、对cswin特征f
cswin
进行k-means聚类得到聚类结果特征f
clu
,利用聚类结果特征f
clu
修正特征f
cswin
到cswin的修正特征;2-2-1、对cswin特征f
cswin
进行k-means聚类得到聚类结果特征f
clu
,具体方法如下:k-means算法是最常用的聚类算法,该算法主要通过在给定k值和k个初始类簇中
心点的情况下,把每个点(亦即数据记录)分到离其最近的类簇中心点所代表的类簇中,距离通过欧氏距离计算公式计算,如公式(2)所示。所有点分配完毕之后,根据一个类簇内的所有点重新计算该类簇的中心点(取平均值),然后再迭代的进行分配点和更新类簇中心点的步骤,直至类簇中心点的变化很小,或者达到指定的迭代次数。本方法中将k设为2,聚成两类,篡改区域特征分配到一类,非篡改区域特征分配到另一类。
30.(2)其中,为距离,表示第i个特征,表示第j个聚类中心,m表示特征维度。依次比较每一个对象到每一个聚类中心的距离,将对象分配到距离最近的聚类中心的类簇中,得到2个类簇, k-means算法用中心定义了类簇的原型,类簇中心就是类簇内所有对象在各个维度的均值,其计算公式如下:(3)公式中表示第l个聚类中心,表示第l个聚类中心中样本数。
31.2-2-2、得到聚类结果特征后,再利用卷积模块去修正cswin特征,得到修正后的特征。
32.具体修正过程利用位置注意力算法,计算每个特征点聚类结构对原特征的影响分数,具体方法如下:在cswin-trasnsformer提取到特征后,将其输入到一个k-means层产生一个特征聚类结果,并将的维度扩展至c
×h×
w。然后将和相乘,对相乘的结果输入到一个softmax层计算空间注意力图,计算过程如公式(4)所示:(4)其中,表示特征聚类结果第i个点对于特征图的影响力分数,n=h
×
w是特征图的像素点。接下来将和相乘把空间影响力分数作用到上得到中间特征。因为聚类是一个无监督过程,为了防止聚类结果有偏差将原始的特征图往不利的方向引导,我们将中间特征和cswin特征相加得到一个第二中间特征。最后我们将第二中间特征输入到一个卷积模块和一个激活层中学习得到聚类并修正完的修正特征。卷积模块包含两个卷积层,两层的卷积核大小分别为3
×
3和1
×
1,该卷积模块不改变特征尺寸。
33.2-3、融合特征:将卷积特征和修正特征拼接到一起得到拼接特征,将拼接特征输入到transformer模块中进行特征融合,得到融合之后的融合特征:2-4、将步骤2-3的融合后的融合特征另存为跳跃连接特征,再拆分成新的下一阶段卷积特征和下一阶段cswin特征,并分别输入到步骤2-1中的各自分支的下一个block;2-5、重复上述步骤2-1至2-4直至经过两个分支的最后一个block模块,也就是经过4个block模块后,提取特征阶段完成,最后一个block模块后的融合阶段的融合特征无需拆分,直接输入到解码器模块;步骤3,对融合特征进行上采样处理以及分类,得到预测结果图,具体步骤为:3-1、在利用解码器模块对融合特征上采样时加入步骤2中的跳跃连接特征,上采样至原始图像尺寸大小;3-2、对于上采样完成后的特征图每一个像素点进行二分类,分为是篡改点和非篡改点,得到预测结果图mask,如图4所示。
34.本发明的方法模型在训练时会利用预测得到的预测结果图mask和对应的groundtruth计算损失,反向传播进行优化;其中,groundtruth为原始图像的篡改图像的标注图,将篡改图像的非篡改区域标为黑色,篡改区域标为白色。由于篡改区域在一般情况下所占的比例较小,数据极不平衡,因此交叉熵损失函数等常用损失函数效果不好。
35.本方法中使用dice损失函数来计算上述损失,详细情况见公式(5),其中,w
×
h表示图像尺寸,g(xi)表示表示第i个像素的预测值,yi表示第i个像素的真实值,篡改像素为1,没篡改像素为0。
36.(5)训练时的模型参数说明:图像输入尺寸大小为256
×
256,初始学习率设为0.00001,学习率衰减系数为0.01,训练1000轮,batch的大小为8,优化器选用adam。
37.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献