CN115170933A - 基于双流深度神经网络的数字图像伪造区域定位方法 - Google Patents

基于双流深度神经网络的数字图像伪造区域定位方法 Download PDF

Info

Publication number
CN115170933A
CN115170933A CN202210993852.XA CN202210993852A CN115170933A CN 115170933 A CN115170933 A CN 115170933A CN 202210993852 A CN202210993852 A CN 202210993852A CN 115170933 A CN115170933 A CN 115170933A
Authority
CN
China
Prior art keywords
layer
residual
setting
image
double
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210993852.XA
Other languages
English (en)
Inventor
蒋忠元
刘正道
李兴华
马建峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202210993852.XA priority Critical patent/CN115170933A/zh
Publication of CN115170933A publication Critical patent/CN115170933A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/95Pattern authentication; Markers therefor; Forgery detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开一种基于双流深度神经网络的数字图像伪造区域定位方法,主要解决现有图像伪造检测方法普适性不高,图像伪造关键特征提取缺失,伪造图像重要特征信息的遗漏问题。本发明实现的步骤为:构建包括编码器、特征融合模块和解码器的双流深度神经网络;编码器由两个子特征提取器实现双流的特征提取;利用由多种类型图像伪造样本组成的训练集,训练双流深度神经网络,对数字图像伪造区域进行定位。由于本发明使用双残差块、单残差块、特征融合模块提取并学习图像的伪造特征,实现了对数字图像伪造区域定位的能力,提高了图像伪造区域定位的准确性与效率。

Description

基于双流深度神经网络的数字图像伪造区域定位方法
技术领域
本发明属于数字信息安全技术领域中的基于双流深度神经网络的数字图像伪造区域定位方法。本发明可用于在互联网环境中检测并判断数字图像内容的安全性,定位互联网数字图像的伪造区域,能够为版权保护、侵权追溯、虚假新闻鉴定提供重要的依据。
背景技术
图像伪造亦称篡改是对图像内容的一种攻击模式,通常包括全局篡改攻击和局部篡改攻击。全局篡改是对图像进行模糊操作、翻转、添加噪声等,只影响图像的视觉效果而不改变图像的上下文信息。局部篡改攻击可分为传统意义上的伪造攻击与基于深度学习的伪造攻击。传统的图像伪造攻击的类型包括拼接、复制-粘贴以及删除伪造。基于深度学习的伪造攻击一般指的是通过生成式对抗模型对图像中的特定目标进行替换,如利用人工智能技术换脸、利用生成式对抗模型修图等。目前的数字图像伪造区域定位的准确率较低、普适性较弱、抵抗复杂攻击的能力较弱。
河北工业大学在其拥有的专利技术“一种被拼接篡改的图像的检测方法”(申请号:201911325073.7,授权公告号:CN111062931B)中提出了一种使用双通道的卷积神经网络来检测并定位拼接类型的伪造图像的方法。该方法利用两个结构相同的卷积神经网络分别提取被拼接篡改图像及其对应光源图的多阶段特征,结合多尺度信息,将两组多阶段特征进行融合和上采样,得到金字塔特征图,将金字塔特征图不同层分别经过区域生成网络,得到篡改候选区域,经过ROIAlign生成固定尺寸特征图,对固定尺寸特征图进行分类、边界框回归和掩码预测,最后得到篡改区域的边界框和像素级定位,完成对被拼接篡改的图像的检测。该方法虽然克服了现有技术提取的图像篡改特征单一不全面,容易忽略区域较小的篡改目标,不能实现端到端的像素级定位的缺陷。但是,该方法仍然存在的不足之处是:该方法只能用于定位拼接类型的伪造图像,该方法无法处理目前已知的图像伪造类型包括的拼接、复制-移动、删除等其他的伪造类型。
重庆邮电大学在其申请的专利文献“一种基于双流卷积神经网络的图像篡改检测方法”(申请号:202110266702.4,申请公布号:CN 113129261 A)中提出了一种基于双流卷积神经网络的图像篡改检测方法。该方法的实现步骤为:1)搜集并整理公开的篡改图像样本;2)对篡改图像样本进行标注获得这些篡改图像样本的标签以完成图像篡改数据集的构建;3)利用搜集到的图像篡改数据集对双流的卷积神经网络进行训练;4)利用训练得到的模型对其他的篡改图像进行测试,得到最终效果。该方法虽然利用双流的卷积神经网络训练得到的模型可以对现实中的篡改图像进行检测。但是,该方法仍然存在的不足之处是:仅使用了两个卷积神经网络分别提取图像的篡改特征,而缺少对于图像伪造区域边缘的学习,导致图像伪造关键特征提取缺失的问题。
Zhou等在其发表的论文“Learning Rich Features for Image ManipulationDetection”(2018 IEEE/CVF Conference on Computer Vision and PatternRecognition(CVPR)IEEE)中设计了一种双流神经网络的数字图像伪造定位方法。该方法的重要贡献是设计了SRM滤波器对于数字图像进行特征预处理,有效提升了模型进行图像伪造定位的能力。该方法存在的不足之处是:在对双流子网络进行特征融合时采用了传统的双线性池化方法,该方法无法部署在CPU上运算,因此增加了模型训练的时间。此外,双线性池化使用主成分分析等方法进行降维,因此会损失神经网络提取到的一些关键特征信息。
发明内容
本发明的目的是针对上述现有技术的不足,提出一种基于双通道深度神经网络的数字图像伪造区域定位方法。用于解决无法处理目前已知的图像伪造类型包括的拼接、复制-移动、删除等其他的伪造类型的问题,以及图像伪造关键特征提取缺失、伪造图像重要特征信息的遗漏问题。
实现本发明目的的技术思路是,本发明设计了一个双流深度神经网络。该网络包括编码器、特征融合模块与解码器。编码器部分包括两个子网络,原始图像采样单元与高通图像采样子网络。原始图像采样单元包括四个可训练的迭代层,专门用于提取篡改图像的本质属性;高通图像采样子网络包括一个高通滤波处理层与四个可训练的迭代层。由此,该高通图像采样子网络能够学习图像的伪造边缘属性,有效解决图像伪造关键特征提取缺失的问题。本发明的特征融合模块通过卷积操作、池化操作、非线性操作形成一个可训练的迭代层,对两个子网络提取到的特征图进行信息融合,有效地解决了子网络在特征融合时出现的关键信息丢失问题。本发明的解码器部分包括了四个可训练的迭代层,用短路连接与原始图像采样单元中的各个迭代层相连接,稳定了当前阶段提取到的图像伪造特征信息。由于本发明提出的双流深度神经网络整体使用大规模的图像伪造数据集进行训练,保证模型达到拟合并得到“.pkl”文件。将训练好的模型用于定位拼接、复制-移动、删除三种类型的伪造图像,解决了部分图像伪造定位方法只能处理一种特定类别的伪造图像的问题。
本发明的实现步骤如下:
步骤1,构建双流深度神经网络中的编码器:
步骤1.1,搭建由四个结构相同的双残差块串联组成的原始图像采样单元;
步骤1.2,双残差块由输入层,第一卷积层,第一非线性运算层,第二卷积层,第一残差卷积层,非线性加法运算单元,第二非线性运算层,第三卷积层,第四卷积层,门控卷积层,门控非线性运算层,第三非线性运算层,第二残差卷积层,输出层组成;
步骤1.3,第一卷积层、第一非线性运算层、第二卷积层、非线性加法运算单元、第一残差卷积层依次串联后形成第一次残差传播的残差块、第一次残差传播的残差块的输出结果;
步骤1.4,第三卷积层、第二非线性运算层、第四卷积层、第三非线性运算层、第二残差卷积层依次串联形成第二次残差传播的残差块;
步骤1.5,输入层分别与第一卷积层、第一残差卷积层、第二残差卷积层连接,再与第一次残差传播的残差块,门控卷积层,门控非线性运算层,第二次残差传播的残差块、输出层依次串联整体构成了双残差块;
步骤1.6,根据图像分辨率的大小将输入层的通道参数设置为3,输入神经元个数设置为384×256个,将第一、第三卷积层、第一、第二残差卷积层的输入通道均设置为3,输出通道均设置为32,核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1,将第二、第四卷积层的输入、输出通道数均设置为32,核大小设置为3×3,滑动步长设置为1,扩张系数设置为1,设置门控卷积层输入通道数为32,输出通道大小设置为3,核大小为3×3,滑动步长设置为1,扩张系数设置为1,第一至第三非线性运算层、非线性加法运算单元均采用激活函数ReLU实现,输出层的输入、输出通道数均设置为32;
步骤1.7,搭建一个由高通滤波模块和四个结构相同的单残差块依次串联组成的高通图像采样子网络;
步骤1.8,高通滤波模块由输入层、水平高通核、垂直高通核、叠加运算单元、高通滤波输出层组成;
步骤1.9,将水平高通核、垂直高通核、叠加运算单元依次串联后,再分别与输入层相连,构成高通滤波器,高通滤波器与高通滤波输出层串联组成高通滤波模块;
步骤1.10,根据输入的样本图像分辨率的大小设置高通滤波模块的通道参数为3,设置输入神经元个数为384×256个,设置卷积核大小为3×3;
步骤1.11,单残差块包括输入层,单次残差传播的残差块和输出层,其中,单次残差传播的残差块由依次串联的第一卷积层、第一非线性运算层、第二卷积层、第二非线性运算层、第一残差卷积层形成,输入层分别与第一卷积层和第一残差卷积层连接,再与输出层串联形成单残差块;
步骤1.12,将第一卷积层、第一残差卷积层的输入通道数均设置为3,输出通道数设置为32,卷积核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1,将第二卷积层输入、输出通道数均设置为32,卷积核大小设置为3×3,滑动步长设置为1,扩张系数均设置为1,将第一、第二非线性运算层采用激活函数ReLU实现,输出层的输入、输出通道数均设置为32;
步骤1.13,将原始图像采样单元与高通图像采样子网络串联构成编码器;
步骤2,构建双流深度神经网络的特征融合模块:
步骤2.1,特征融合模块由特征拼接层,第一卷积层,第一非线性运算层,第一池化层依次串联组成;
步骤2.2,根据原始图像采样单元与高通图像采样子网络输出的结果,设置特征拼接层的输入通道数为512,设置输入神经元个数为24×16,设置第一卷积层的输入通道数为512,输出通道数为256,核大小为1×1,步长为1,扩张系数为1,设置第一池化层的输入通道数为256,核大小为3×3,步长为1;
步骤3,构建双流深度神经网络的解码器:
步骤3.1,解码器由第一输入层、第二输入层、解码器子模块组、网络输出子模块依次串联组成;
步骤3.2,将四个结构相同的解码器子模块串联组成解码器子模块,第一输入层输入当前状态的特征张量,第二输入层输入原始图像采样单元中对应的双残差块的输出特征张量,解码器子模块由特征张量拼接层、第一非线性运算层、双残差块依次串联组成;
步骤3.3,将第一卷积层和第二非线性运算层串联组成网络输出子模块;
步骤3.4,设置解码器参数情况如下,根据特征融合层的输出特征张量,设置特征张量拼接层的输入通道数为512,神经元个数为24×16,设置第一非线性运算层为激活函数ReLU,设置双残差块的输入通道数为512,输出通道数为128,设置第一卷积层的输入通道数为32,输出通道数为1,卷积核为1×1,步长为1,扩张系数为1;
步骤4,构建双流深度神经网络:
将编码器,特征融合模块,解码器依次串联组成双流深度神经网络;
步骤5,生成训练集:
步骤5.1,将至少4500个伪造图像样本组成图像伪造样本集,该样本集中至少包括三种不同伪造类型的图像,每种类型图像的比例要求为1比1比1;
步骤5.2,将图像伪造样本集中的每个样本依次进行裁剪和归一化操作,将归一化后的所有样本组成训练集;
步骤6,训练双流深度神经网络:
将训练数据集按照批次依次输入到双流深度神经网络中,使用随机梯度下降SGD的梯度优化算法对网络参数进行优化,迭代更新卷积神经网络的权重值和学习率,直至网络的交叉熵损失函数收敛为止,得到训练好的双流深度神经网络;
步骤7,对数字图像伪造区域进行定位:
步骤7.1,将待定位的数字图像依次进行裁剪、归一化的预处理操作;
步骤7.2,将预处理后的数字图像输入到训练好的双流深度神经网络中,输出伪造定位后的预测图像。
与现有技术相比,本发明具有以下优点:
第一,本发明在对伪造图像的特征提取的过程中,通过设计的高通滤波模块,并将其引入高通滤波采样子网络,对图像的伪造边缘特征进行提取,并将提取到的特征图通过高通滤波采样子网络中的迭代神经单元进行学习。该设计思路克服了现有方法中图像伪造关键特征信息缺失,使得本发明设计的神经网络能够有效学习图像伪造区域的轮廓,提高了数字图像伪造区域定位的准确率。
第二,本发明设计了一个神经元模块作为特征融合模块,用于对编码器中高通滤波采样子网络与原始图像采样单元提取到的两幅特征图进行特征融合。该特征融合模块能够在不丢失特征图关键信息的条件下通过卷积操作、池化操作、非线性运算实现特征图维度的变换以及特征信息的融合。该设计思路克服了现有的双线性池化方法训练效率低下、降维后特征丢失的缺陷,使得本发明减少了网络训练时间的损失,减少了特征融合时关键信息的丢失,提高了数字图像伪造区域定位的效率。
第三,本发明生成的训练集数据规模大,图像伪造种类全。训练集拥有拼接、复制-移动、删除三种伪造类型的伪造图像样本。因此经过训练后得到的数字图像伪造定位模型具有普适性,克服了现有方法仅能处理某一类特定的伪造图像,使得本发明提高了数字图像伪造区域定位的普适性。
附图说明
图1是本发明的流程框图;
图2是本发明构建的双残差块的结构示意图;
图3是本发明构建的高通滤波模块的结构示意图;
图4是本发明构建的单残差块的结构示意图;
图5是本发明构建的解码器的结构示意图;
图6是本发明的数字图像伪造区域定位示意图,其中图6(a)是待定位的伪造图像,图6(b)是待定位的伪造图像伪造定位的真实标签示意图,图6(c)是待定位伪造图像的伪造区域定位结果图。
具体实施方式
下面结合附图和实施例,对本发明做进一步的详细描述。
参照图1和实施例,对本发明的数字图像伪造区域定位方法的实现步骤做进一步的详细描述。
步骤1,构建双流深度神经网络中的编码器。
步骤1.1,搭建由四个结构相同的双残差块串联组成的原始图像采样单元。
参考图2,对双残差块的结构作进一步的描述。
步骤1.1.1,双残差块由输入层,第一卷积层,第一非线性运算层,第二卷积层,第一残差卷积层,非线性加法运算单元,第二非线性运算层,第三卷积层,第四卷积层,门控卷积层,门控非线性运算层,第三非线性运算层,第二残差卷积层,输出层组成。
第一卷积层、第一非线性运算层、第二卷积层、非线性加法运算单元、第一残差卷积层依次串联后形成第一次残差传播的残差块。
第三卷积层、第二非线性运算层、第四卷积层、第三非线性运算层、第二残差卷积层依次串联形成第二次残差传播的残差块。
输入层分别与第一卷积层、第一残差卷积层、第二残差卷积层连接,再与第一次残差传播的残差块,门控卷积层,门控非线性运算层,第二次残差传播的残差块、输出层依次串联整体构成了双残差块。
步骤1.1.2,设置双残差块的参数如下。根据图像分辨率的大小将输入层的通道参数设置为3,输入神经元个数设置为384×256个;将第一、第三卷积层、第一、第二残差卷积层的输入通道均设置为3,输出通道均设置为32,核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1。将第二、第四卷积层的输入、输出通道数均设置为32,核大小设置为3×3,滑动步长设置为1,扩张系数设置为1;设置门控卷积层输入通道数为32,输出通道大小设置为3,核大小为3×3,滑动步长设置为1,扩张系数设置为1;第一至第三非线性运算层、非线性加法运算单元均采用激活函数ReLU实现;输出层的输入、输出通道数均设置为32。
步骤1.1.3,按照下式,计算输入的每张图像经过双残差块的第一次残差传播后输出的结果:
j=σ1(Conv22(Conv1(i)))+dConv1(i))
其中,j表示第一次残差传播的结果,σ1(.)表示使用非线性加法运算单元进行ReLU运算,Conv1(i)表示对输入到原始图像采样单元中的第i个数字图像,(该数字图像是一个三元组图像)使用第一卷积层进行一次核大小为3×3,步长为1的二维卷积运算的结果,σ2(.)表示使用第一非线性运算层对Conv1(i)进行ReLU运算,Conv2(.)表示对σ2(.)的运算结果使用第二卷积层再进行一次二维卷积运算的结果,dConv1(i)表示使用第一残差卷积层对i进行一次核大小为3×3,步长为1的二维卷积运算的结果。
门控卷积层和门控非线性运算层构成了门控机制。在双残差块进行第二次残差映射之前,通过门控机制将输入的第i个数字图像以及双残差块第一次残差传播的结果j的特征信息叠加,并调整维数使其满足双残差块的第二次残差传播的残差块的输入条件。
按照下式,计算输入的每张图像和第一次残差传播的结果j经过门控机制后输出的结果。
Figure BDA0003804840260000081
其中,Sigmoid(.)是一个激活函数,其运算结果分布在区间(0,1)内,j表示第一次残差传播的结果,Conv(j)表示对j执行一次核大小为3×3,步长为1的二维卷积运算的结果。
按照下式,计算输入的第i张图像和第一次残差传播的结果j经过双残差块的第二次残差传播后输出的结果:
o=σ3(Conv44(Conv3(g)))+dConv2(i))
其中,o表示双残差块第二次残差传播的结果,σ3(.)表示通过第三非线性运算层进行ReLU运算,Conv3(g)表示对门控机制的输出结果g使用第三卷积层进行一次核大小为3×3,步长为1的二维卷积运算的结果,σ4(.)表示对Conv3(g)进行ReLU运算,Conv4(.)表示对σ4(.)的运算结果使用第四卷积层再进行一次二维运算。dConv2(i)表示用第二残差卷积层对i进行一次核大小为3×3,步长为1的二维卷积运算的结果。
按照下式,计算双残差块第二次残差传播的结果o经过输出层后输出的结果:
p=Blurpool(Maxpool(o))
其中,p表示输出层的运算结果,Maxpool(o)表示对o进行一次核大小为3×3,步长为1的最大池化运算,Blurpool(.)表示对Maxpool(o)进行一次核大小为3×3,步长为1的模糊池化运算。
在原始采样子网络中通过双残差块提取伪造图像的本质特征的理由是:双残差块通过让输出特征图进行两次残差传播,增强了图像伪造特征提取的能力。在双残差块中,第一次残差传播得到的结果作为第二次残差传播的输入特征,第二次残差传播能够将这些特征整合,稳定已提取的特征信息。
步骤1.2,搭建一个由高通滤波模块和四个结构相同的单残差块依次串联组成的高通图像采样子网络。
参考图3和图4,对高通滤波模块和单残差块的结构作进一步的描述。
步骤1.2.1,所述高通滤波模块由输入层、水平高通核、垂直高通核、叠加运算单元、高通滤波输出层组成。
将所述水平高通核、垂直高通核、叠加运算单元依次串联后,再分别与输入层相连,构成高通滤波器。高通滤波器与高通滤波输出层串联组成高通滤波模块。
步骤1.2.2,单残差块包括输入层,单次残差传播的残差块和输出层。其中,单次残差传播的残差块由依次串联的第一卷积层、第一非线性运算层、第二卷积层、第二非线性运算层、第一残差卷积层形成。输入层分别与第一卷积层和第一残差卷积层连接,再与输出层串联形成单残差块。
步骤1.2.3,设置高通滤波模块的参数如下。根据输入的样本图像分辨率的大小设置高通滤波模块的通道参数为3,设置输入神经元个数为384×256个,设置卷积核大小为3×3;高通卷积核的参数如下:
Figure BDA0003804840260000091
其中,Hx是水平方向的卷积核,Hy是垂直方向上的卷积核。
步骤1.2.4,设置单残差块的参数如下。将第一卷积层、第一残差卷积层的输入通道数均设置为3,输出通道数设置为32,卷积核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1;将第二卷积层输入、输出通道数均设置为32,卷积核大小设置为3×3,滑动步长设置为1,扩张系数均设置为1;将第一、第二非线性运算层采用激活函数ReLU实现。输出层的输入、输出通道数均设置为32。
步骤1.2.5,按照下式,计算输入的每张图像经过高通滤波模块后输出的结果:
Figure BDA0003804840260000092
其中,x表示对输入的第i张图像样本利用高通核进行卷积运算的结果。在高通图像采样子网络中使用高通滤波器的理由是:高通滤波器对输入图像进行滤波提取伪造图像中的边缘特征,有利于后续的4个单残差块对图像的伪造边缘信息的提取,有助于确定图像伪造区域的范围。
步骤1.2.6,按照下式,计算对输入的每张图像样本利用高通核进行卷积运算的结果x经过单残差块的单次残差传播的残差块后输出的结果:
y=σ(Conv65(Conv7(x)))+resConv(x))
其中,y表示单次残差传播的结果,σ(.)表示通过第二非线性运算层进行ReLU运算,Conv7(x)表示对x使用第一卷积层进行一次核大小为3×3,步长为1的二维卷积运算的结果,σ5(.)表示对Conv7(x)进行ReLU运算,Conv6(x)表示对σ5的运算结果使用第二卷积层进行一次核大小为3×3,步长为1的二维卷积运算,resConv(x)表示对x使用第一残差卷积层进行一次核大小为3×3,步长为1的二维卷积运算的结果。
按照下式,计算单次残差传播的结果y经过输出层后输出的结果:
z=Blurpool1(Maxpool1(y))
其中,z表示输出层的运算结果,Maxpool1(y)表示对y进行一次核大小为3×3,步长为1的最大池化运算,Blurpool1(.)表示对Maxpool1(y)进行一次核大小为3×3,步长为1的模糊池化运算。
在高通图像处理子网络中使用单残差块的目的是:消减神经网络中梯度消失的影响,加快整个神经网络的收敛;使高通图像处理子网络学习到的图像伪造区域边缘特征信息更加充分。
步骤1.3,将原始图像采样单元与高通图像采样子网络串联构成编码器。
步骤2,构建双流深度神经网络的特征融合模块。
步骤2.1,所述特征融合模块由特征拼接层,第一卷积层,第一非线性运算层,第一池化层依次串联组成。
步骤2.2,特征融合模块的参数设置如下。根据原始图像采样单元与高通图像采样子网络输出的结果,设置特征拼接层的输入通道数为512,设置输入神经元个数为24×16。设置第一卷积层的输入通道数为512,输出通道数为256,核大小为1×1,步长为1,扩张系数为1。设置第一池化层的输入通道数为256,核大小为3×3,步长为1。
步骤2.3,按照下式,计算原始图像采样单元输出特征张量s1和高通图像采样子网络输出特征张量s2经过特征融合模块后输出的结果:
f=Maxpool2(σ(Conv2(Concat(s1,s2))))
其中,f表示特征融合模块的运算结果,s1表示输入图像x经过原始图像采样单元学习伪造特征后得到的特征张量,s2表示输入图像x经过高通图像采样子网络学习伪造区域边缘特征后得到的特征张量,Concat(s1,s2)表示将两个特征张量(s1,s2)拼接的过程,Conv2(.)表示一个核大小为1×1,步长为1,扩张系数为1的卷积运算。σ(.)表示通过第一非线性运算层进行ReLU运算,Maxpool2(.)表示一个核大小为3×3,步长为1的最大池化操作。
在双流深度神经网络中引入特征融合模块的原因是:特征融合模块使用卷积操作、池化操作、非线性运算都能在计算机的图形处理器(英语:graphics processing unit,缩写:GPU)上执行,大大提升了网络训练的效率;特征融合层中的卷积操作与池化操作能够在不损失关键特征的条件下改变特征张量的维度,避免使用主成分分析、双线性池化等降维操作会出现关键特征丢失的缺陷。
步骤3,构建双流深度神经网络的解码器。
参照图5对双流深度神经网络的解码器做进一步描述。
步骤3.1,解码器由第一输入层、第二输入层、解码器子模块组、网络输出子模块依次串联组成。所述解码器子模块组由四个结构相同的解码器子模块组成。其中,第一输入层输入当前状态的特征张量,第二输入层输入原始图像采样单元中对应的双残差块的输出特征张量。例如,第一解码器子模块的输入是特征融合模块的输出特征张量与原始图像采样单元中第四双残差块的输出特征张量,第二个解码器子模块的输入层是第一解码器子模块的输出特征张量与原始图像采样单元第三双残差块的输出特征张量拼接的结果,以此类推。所述解码器子模块由特征张量拼接层、第一非线性运算层、双残差块依次串联组成。网络输出子模块由第一卷积层和第二非线性运算层串联组成。
步骤3.2,设置解码器参数情况如下。根据特征融合层的输出特征张量,设置特征张量拼接层的输入通道数为512,神经元个数为24×16;设置第一非线性运算层为激活函数ReLU。设置双残差块的输入通道数为512,输出通道数为128。设置第一卷积层的输入通道数为32,输出通道数为1,卷积核为1×1,步长为1,扩张系数为1。
步骤3.3,按照下式,计算特征融合模块的输出特征张量d1和原始图像采样单元中第四双残差块的输出特征张量e4经过解码器子模块后输出的结果:
c=dRes(σ8(Concat1(d1,e4)))
其中,c表示解码器子模块的输出结果,d1表示特征融合模块的输出特征张量,e4表示原始图像采样单元中第四双残差块的输出特征张量,Concat1(d1,e4)表示将上述内容拼接的过程;σ8(.)表示对Concat1(d1,e4)通过第一非线性运算层进行ReLU运算;dRes(.)表示双残差块。
解码器子模块的作用是:解码器的每个子模块的输入特征张量与编码器模块中原始图像采样单元对应的双残差块的输出特征张量进行信息融合,能有效修复解码器子模块输入的特征张量的特征信息和维数,增强网络的稳定性。
按照下式,计算最后一个解码器子模块的输出特征张量c4经过网络输出子模块后输出的结果:
u=Sigmoid1(Conv3(c4))
其中,u表示编码器部分的输出,表示最后一个解码器子模块的输出特征张量;Conv3(c4)表示对c4进行一次卷积核为1×1,步长为1,扩张系数为1的卷积运算的结果;Sigmoid1(.)表示对Conv3(c4)进行一次非线性运算。
步骤4,构建双流深度神经网络。
将编码器,特征融合模块,解码器依次串联组成双流深度神经网络。
步骤5,生成训练集。
步骤5.1,本发明的实施例从四种不同的图像伪造公开数据集中收集整理共4542个伪造图像样本组成图像伪造样本集。即从‘卡西亚’CASIA数据集中抽取2000张拼接类型的伪造图像和2000张复制-移动类型的伪造图像;从‘覆盖’COVERAGE(简称COVER)数据集中抽取了70张复制-移动类型的伪造图像;从‘现实’REALISTIC(简称RT)数据集中抽取180张拼接类型的伪造图像;从‘敏捷挑战2016’Nimble Challenge2016(简称NC16)数据集中抽取146张拼接类型的伪造图像与146张删除类型的伪造图像。
步骤5.2,本发明的实施例从‘事实’DEFACTO数据集中抽取了15000张图像,其中包含了拼接伪造类型、复制-移动伪造类型、删除伪造类型的图像,每种伪造类型的图像各为5000张组成图像伪造扩展样本集。
步骤5.3,本发明的实施例将图像伪造样本集与图像伪造扩展样本集组成用于实现数字图像伪造区域定位方法的样本集。该样本集中共包括17542张伪造图像样本。将每个样本按照384×256规格裁剪、并通过使用OpenCV-python对每个样本进行归一化操作。将归一化后的所有样本组成训练集。
步骤6,训练双流深度神经网络。
步骤6.1,将训练数据集按照批次依次输入到双流深度神经网络中,利用二进制交叉熵损失函数计算所选取的伪造图像输入到双流深度神经网络后,双流深度神经网络的损失值。利用随机梯度下降SGD的梯度优化算法对网络参数进行优化,迭代更新卷积神经网络的权重值和学习率,直至网络的二进制交叉熵损失函数收敛为止,得到训练好的双流深度神经网络。将双流深度神经网络在收敛时各个网络层的权重值存储在‘.pth’文件内。
所述的二进制交叉熵损失函数如下:
Figure BDA0003804840260000131
其中,其中,loss表示输入到双流深度神经网络的待定位伪造图像,经过一轮迭代后,输出网络的损失值,∑[.]表示求和操作,log表示以10为底的对数操作,N表示训练集中图像样本的总数,i表示训练集中图像样本的索引,Pi表示训练集中第i张图像经训练好的双流深度神经网络输出的伪造定位的预测结果,Gi表示训练集中第i张图像的伪造定位的真实标签。
步骤7,对数字图像伪造区域进行定位。
步骤7.1,将待定位的数字图像按照384×256规格裁剪、并使用OpenCV-python进行归一化操作,实现待定位的数字图像的预处理操作。
步骤7.2,将预处理后的数字图像输入到训练好的双流深度神经网络对输入图像进行伪造区域定位。网络的输出就是输入图像伪造区域定位的结果。其中,输出数字图像中像素值为255的像素点代表伪造区域,像素值为0的像素点代表真实区域。
参照图6对数字图像伪造区域进行定位做进一步说明,其中图6(a)是待定位的伪造图像;图6(b)是待定位的伪造图像伪造定位的真实标签示意图,图中的白色区域表示伪造区域;图6(c)是待定位伪造图像伪造区域的定位结果图,图中的白色区域表示双流深度神经网络预测输入图像中的伪造区域。由图6(c)可以看出,本发明训练好的双流深度神经网络能够实现准确定位图像中的伪造区域的功能。
下面结合仿真图对本发明效果做进一步的描述。
1.1,仿真实验条件:
本发明的仿真实验的平台为:一台显卡为RTX-3090,内存为24G的云服务器,使用Pytorch(版本1.8)搭建并训练双流深度神经网络。
1.2,仿真实验测试集:
本发明从五种不同的图像伪造公开数据集中收集整理共2370张伪造图像样本组成图像伪造测试集。即从‘卡西亚’CASIA数据集中抽取1000张拼接类型的伪造图像和1000张复制-移动类型的伪造图像;从‘覆盖’COVERAGE(简称COVER)数据集中抽取了30张复制-移动类型的伪造图像;从‘现实’REALISTIC(简称RT)数据集中抽取40张拼接类型的伪造图像;从‘在野外’In-wild数据集中抽取100张拼接类型的伪造图像;从‘敏捷挑战2016’NimbleChallenge2016(简称NC16)数据集中抽取100张拼接类型的伪造图像与100张删除类型的伪造图像。将测试集中的每张图像按照384×256的规格裁剪、并通过使用OpenCV-python对每个样本进行归一化操作。
2.1,仿真内容与结果分析。
本发明的仿真实验是通过使用浏览器插件开发技术,将数字图像伪造区域定位方法固化为一款谷歌浏览器安全插件,实现在互联网环境下对互联网数字图像的伪造区域进行定位。
为了验证本发明提出的数字图像伪造区域定位方法的准确性,测试了该方法在测试集上所有的预测结果的平均准确率和平均F值。如表1和表2所示。
平均准确率的计算公式如下:
Figure BDA0003804840260000141
其中,mAcc表示平均准确率的计算结果,M表示测试集中伪造图像样本的个数,Rpi表示第i张图像的预测结果中,所有预测正确的像素点的个数;Npi表示第i张图像的预测结果中像素点总数,i表示训练集中图像样本的索引。
平均F值的计算公式如下:
Figure BDA0003804840260000151
其中,mF表示平均F值的计算结果,M表示测试集中伪造图像样本的个数,Tni表示第i张图像的预测结果中所有预测正确的伪造像素点的个数,Tpi表示第i张图像的预测结果中所有伪造像素点的个数,Api表示第i张图像的预测结果中所有真实的伪造像素点的个数,i表示训练集中图像样本的索引。
表1双流深度神经网络测试集上所有的预测结果的平均准确率一览表
Figure BDA0003804840260000152
表2双流深度神经网络在测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000153
为了验证本发明提出的数字图像伪造区域定位方法的鲁棒性,在高斯噪声、高斯模糊、JPEG压缩、旋转、缩放的外部干扰条件下,测试数字图像伪造区域定位方法在测试集上所有的预测结果的平均F值。如表3至表7所示。
表3高斯噪声干扰下测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000154
表4高斯模糊干扰下测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000161
表5 JPEG压缩干扰下测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000162
表6缩放干扰下测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000163
表7旋转干扰下测试集上所有的预测结果的平均F值一览表
Figure BDA0003804840260000164

Claims (4)

1.一种基于双流深度神经网络的数字图像伪造区域定位方法,其特征在于,利用构建双流深度神经网络中的双残差块、单残差块、特征融合模块提取并学习图像的伪造特征,实现对数字图像伪造区域定位的能力;该定位方法的步骤包括如下:
步骤1,构建双流深度神经网络中的编码器:
步骤1.1,搭建由四个结构相同的双残差块串联组成的原始图像采样单元;
步骤1.2,双残差块由输入层,第一卷积层,第一非线性运算层,第二卷积层,第一残差卷积层,非线性加法运算单元,第二非线性运算层,第三卷积层,第四卷积层,门控卷积层,门控非线性运算层,第三非线性运算层,第二残差卷积层,输出层组成;
步骤1.3,第一卷积层、第一非线性运算层、第二卷积层、非线性加法运算单元、第一残差卷积层依次串联后形成第一次残差传播的残差块、第一次残差传播的残差块的输出结果;
步骤1.4,第三卷积层、第二非线性运算层、第四卷积层、第三非线性运算层、第二残差卷积层依次串联形成第二次残差传播的残差块;
步骤1.5,输入层分别与第一卷积层、第一残差卷积层、第二残差卷积层连接,再与第一次残差传播的残差块,门控卷积层,门控非线性运算层,第二次残差传播的残差块、输出层依次串联整体构成了双残差块;
步骤1.6,根据图像分辨率的大小将输入层的通道参数设置为3,输入神经元个数设置为384×256个,将第一、第三卷积层、第一、第二残差卷积层的输入通道均设置为3,输出通道均设置为32,核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1,将第二、第四卷积层的输入、输出通道数均设置为32,核大小设置为3×3,滑动步长设置为1,扩张系数设置为1,设置门控卷积层输入通道数为32,输出通道大小设置为3,核大小为3×3,滑动步长设置为1,扩张系数设置为1,第一至第三非线性运算层、非线性加法运算单元均采用激活函数ReLU实现,输出层的输入、输出通道数均设置为32;
步骤1.7,搭建一个由高通滤波模块和四个结构相同的单残差块依次串联组成的高通图像采样子网络;
步骤1.8,高通滤波模块由输入层、水平高通核、垂直高通核、叠加运算单元、高通滤波输出层组成;
步骤1.9,将水平高通核、垂直高通核、叠加运算单元依次串联后,再分别与输入层相连,构成高通滤波器,高通滤波器与高通滤波输出层串联组成高通滤波模块;
步骤1.10,根据输入的样本图像分辨率的大小设置高通滤波模块的通道参数为3,设置输入神经元个数为384×256个,设置卷积核大小为3×3;
步骤1.11,单残差块包括输入层,单次残差传播的残差块和输出层,其中,单次残差传播的残差块由依次串联的第一卷积层、第一非线性运算层、第二卷积层、第二非线性运算层、第一残差卷积层形成,输入层分别与第一卷积层和第一残差卷积层连接,再与输出层串联形成单残差块;
步骤1.12,将第一卷积层、第一残差卷积层的输入通道数均设置为3,输出通道数设置为32,卷积核大小均设置为3×3,滑动步长均设置为1,扩张系数均设置为1,将第二卷积层输入、输出通道数均设置为32,卷积核大小设置为3×3,滑动步长设置为1,扩张系数均设置为1,将第一、第二非线性运算层采用激活函数ReLU实现,输出层的输入、输出通道数均设置为32;
步骤1.13,将原始图像采样单元与高通图像采样子网络串联构成编码器;
步骤2,构建双流深度神经网络的特征融合模块:
步骤2.1,特征融合模块由特征拼接层,第一卷积层,第一非线性运算层,第一池化层依次串联组成;
步骤2.2,根据原始图像采样单元与高通图像采样子网络输出的结果,设置特征拼接层的输入通道数为512,设置输入神经元个数为24×16,设置第一卷积层的输入通道数为512,输出通道数为256,核大小为1×1,步长为1,扩张系数为1,设置第一池化层的输入通道数为256,核大小为3×3,步长为1;
步骤3,构建双流深度神经网络的解码器:
步骤3.1,解码器由第一输入层、第二输入层、解码器子模块组、网络输出子模块依次串联组成;
步骤3.2,将四个结构相同的解码器子模块串联组成解码器子模块,第一输入层输入当前状态的特征张量,第二输入层输入原始图像采样单元中对应的双残差块的输出特征张量,解码器子模块由特征张量拼接层、第一非线性运算层、双残差块依次串联组成;
步骤3.3,将第一卷积层和第二非线性运算层串联组成网络输出子模块;
步骤3.4,设置解码器参数情况如下,根据特征融合层的输出特征张量,设置特征张量拼接层的输入通道数为512,神经元个数为24×16,设置第一非线性运算层为激活函数ReLU,设置双残差块的输入通道数为512,输出通道数为128,设置第一卷积层的输入通道数为32,输出通道数为1,卷积核为1×1,步长为1,扩张系数为1;
步骤4,构建双流深度神经网络:
将编码器,特征融合模块,解码器依次串联组成双流深度神经网络;
步骤5,生成训练集:
步骤5.1,将至少4500个伪造图像样本组成图像伪造样本集,该样本集中至少包括三种不同伪造类型的图像,每种类型图像的比例要求为1:1:1;
步骤5.2,将图像伪造样本集中的每个样本依次进行裁剪和归一化操作,将归一化后的所有样本组成训练集;
步骤6,训练双流深度神经网络:
将训练数据集按照批次依次输入到双流深度神经网络中,使用随机梯度下降SGD的梯度优化算法对网络参数进行优化,迭代更新卷积神经网络的权重值和学习率,直至网络的交叉熵损失函数收敛为止,得到训练好的双流深度神经网络;
步骤7,对数字图像伪造区域进行定位:
步骤7.1,将待定位的数字图像依次进行裁剪、归一化的预处理操作;
步骤7.2,将预处理后的数字图像输入到训练好的双流深度神经网络中,输出伪造定位后的预测图像。
2.根据权利要求1中所述的基于双流深度神经网络的数字图像伪造区域定位方法,其特征在于,步骤1.8中所述的水平高通核如下:
Figure FDA0003804840250000041
其中,Hx表示水平方向的卷积核。
3.根据权利要求1中所述的基于双流深度神经网络的数字图像伪造区域定位方法,其特征在于,步骤1.8中所述的垂直高通核如下:
Figure FDA0003804840250000042
其中,Hy表示垂直方向上的卷积核。
4.根据权利要求1中所述的基于双流深度神经网络的数字图像伪造区域定位方法,其特征在于,步骤6中所述的交叉熵损失函数如下:
Figure FDA0003804840250000043
其中,loss表示输入到双流深度神经网络的待定位伪造图像,经过一轮迭代后,输出网络的损失值,∑[.]表示求和操作,log表示以10为底的对数操作,N表示训练集中图像样本的总数,i表示训练集中图像样本的索引,Pi表示训练集中第i张图像经训练好的双流深度神经网络输出的伪造定位的预测结果,Gi表示训练集中第i张图像的伪造定位的真实标签。
CN202210993852.XA 2022-08-18 2022-08-18 基于双流深度神经网络的数字图像伪造区域定位方法 Pending CN115170933A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210993852.XA CN115170933A (zh) 2022-08-18 2022-08-18 基于双流深度神经网络的数字图像伪造区域定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210993852.XA CN115170933A (zh) 2022-08-18 2022-08-18 基于双流深度神经网络的数字图像伪造区域定位方法

Publications (1)

Publication Number Publication Date
CN115170933A true CN115170933A (zh) 2022-10-11

Family

ID=83480486

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210993852.XA Pending CN115170933A (zh) 2022-08-18 2022-08-18 基于双流深度神经网络的数字图像伪造区域定位方法

Country Status (1)

Country Link
CN (1) CN115170933A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117788906A (zh) * 2023-12-26 2024-03-29 中国信息通信研究院 一种大模型生成图像鉴别方法和***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117788906A (zh) * 2023-12-26 2024-03-29 中国信息通信研究院 一种大模型生成图像鉴别方法和***

Similar Documents

Publication Publication Date Title
Wang et al. Detection and localization of image forgeries using improved mask regional convolutional neural network
Wu et al. Image copy-move forgery detection via an end-to-end deep neural network
CN110349136A (zh) 一种基于深度学习的篡改图像检测方法
CN108446700A (zh) 一种基于对抗攻击的车牌攻击生成方法
CN108090447A (zh) 双分支深层结构下的高光谱图像分类方法及装置
CN112083422A (zh) 基于多级深度学习网络的单航过InSAR***端对端分类方法
Arabi et al. Optical remote sensing change detection through deep siamese network
CN112257741B (zh) 一种基于复数神经网络的生成性对抗虚假图片的检测方法
Li et al. Image manipulation localization using attentional cross-domain CNN features
CN111400572A (zh) 一种基于卷积神经网络实现图像特征识别的内容安全监测***及其方法
Mazumdar et al. Universal image manipulation detection using deep siamese convolutional neural network
CN111626357B (zh) 一种基于神经网络模型的图像识别方法
CN112434599A (zh) 一种基于噪声通道的随机遮挡恢复的行人重识别方法
CN115393698A (zh) 一种基于改进dpn网络的数字图像篡改检测方法
CN112862799A (zh) 基于图像属性恢复的图像异常检测方法和***
CN115797216A (zh) 一种基于自编码网络的碑文文字修复模型及修复方法
CN115861756A (zh) 基于级联组合网络的大地背景小目标识别方法
CN115170933A (zh) 基于双流深度神经网络的数字图像伪造区域定位方法
CN113807237B (zh) 活体检测模型的训练、活体检测方法、计算机设备及介质
CN117558011B (zh) 基于自一致性矩阵和多尺度损失的图像文本篡改检测方法
Mazumdar et al. Two-stream encoder–decoder network for localizing image forgeries
Charitidis et al. Operation-wise attention network for tampering localization fusion
Li et al. An improved PCB defect detector based on feature pyramid networks
Chawla et al. Classification of computer generated images from photographic images using convolutional neural networks
Wu et al. Review of imaging device identification based on machine learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination