1. 引言
由于图像编辑软件的简单实用性,人们可以随意对图像进行篡改,导致篡改图像在社交媒体上无处不在。人们篡改图像的目的多种多样,有些是为了美化形象、丰富图像内容,而有些则是为了散布虚假消息引起不良的社会影响。为了防止此类虚假消息的广泛传播,图像篡改检测也随之兴起,数字图像篡改的取证技术主要分为主动取证技术和被动取证技术。主动取证方法主要包含数字签名 [1]、数字水印 [2] 等需要事先在图像中嵌入验证信息,然后再进行信息提取验证的相关技术手段。相对于主动取证,被动取证的应用范围更为广泛,可以直接通过图像进行图像来源、完整性的判断。
关于传统方法的图像被动取证,针对JPEG压缩操作,Fridrich等人 [3] 首先对图像进行分块处理,再以图像块为单位提取特征。H. Farid等人 [4] 提出主成分分析法(PCA)代替离散余弦变换特征系数(DCT),获得更小的特征系数,提升了图像块特征向量匹配的效率。传统的取证方法通常都是采用手工设计的方式提取特征,这种基于手工设计的特征大多存在局限性,缺乏代表性,无法根据这些特征同时对多种篡改方式进行判定,导致传统的被动取证方法仅能鉴别单种篡改技术。
关于深度学习方法的图像被动取证,Yaqi Liu等人 [5] 提出了一种基于多尺度方法进行篡改区域定位的框架。该模型创新性地引入了多尺度的思想,设计不同尺度的图像滑动窗口,提取多尺度图像块特征。Bo Liu等人 [6] 提出了一种多种基础网络融合的方法,利用不同种类的基础网络互补,用来提升模型的鲁棒性,从而提升模型的识别准确率。Minyoung Huh等人 [7] 创新性地将自学习方法融入图像拼接检测中,该模型避免了当前图像篡改数据集数据量不足的问题,为基于深度学习的图像内容被动取证指出了新的方向。通过研究发现,基于深度学习的图像内容被动取证领域还存在以下问题:1) 缺乏数据集,虽然当前篡改图像数据集越来越多,但这与复杂多样的篡改技术相比仍远远不足。2) 提取篡改区域特征困难,在数字图像处理中,根据不同目的对图像进行不同处理,例如图像去噪、增强、复原和压缩等,而这些后处理技术使得提取图像篡改特征更加困难。
基于上述问题,本文提出一种新的图像篡改检测分割框架,框架分为两个阶段:第一阶段采用GAN [8] 来解决缺乏训练数据的问题。通过引入一个新的目标函数,将来自现有篡改数据集的图像作为GAN的输入,并通过目标函数进行优化,再与原篡改图像数据集进行混合,从而达到扩充数据集与优化篡改区域真实性的效果。第二阶段以Deeplab [9] 为基本框架,提出基于注意力机制的分割优化网络,将卷积注意力模块 [10] (CBAM)加入分割网络中,以增强篡改区域边界的特征提取能力,得到边缘mask和篡改区域mask,同时利用预测的边缘mask来替换原始区域,产生新的篡改图像,强化模型对于边界特征的提取能力,从而更好地定位篡改区域并将其分割出来。本文的主要贡献如下:
1) 针对缺乏训练数据的问题,通过GAN来扩充数据集并引入新的目标函数用于优化篡改区域真实性。
2) 针对篡改区域边界识别困难以及分割准确率低的问题,提出基于注意力机制的分割优化网络,提高模型性能。
2. 方法
本文所提出的图像篡改检测网络结构如图1所示,第一阶段将篡改数据集的图像和真实图像经过处理后作为生成器的输入,并通过目标函数进行优化,生成更加真实的篡改图像,并送入判别器进行验证;第二阶段再将生成的图像与原篡改图像数据集进行混合,作为注意力分割模块的输入,输出预测的边缘mask和篡改区域mask。其中,生成器基于U-net [11] 网络结构,判别器与PatchGAN [12] 类似;注意力分割模块分为分割模块和优化模块,分割模块负责识别篡改图像中的篡改边界,优化模块将篡改边界替换为真实区域,生成新的篡改边界。
2.1. 优化和扩充数据集
2.1.1. 生成器
生成器生成的篡改图像作为输入用于后续分割训练,如图2所示。根据现有数据集提供的篡改图像F (CASIA2.0 [13])以及对应的mask图像M和真实图像R (COCO [14]),首先以图像F为前景,图像R为背景创建一个复制粘贴图像C,C的表示如公式(1)所示:
(1)
其中
是按元素进行的矩阵乘法。
混合图像通过泊松融合 [15] 得到篡改区域中像素i的最终值如公式(2)所示:
(2)
其中
表示梯度,
是位置i处的像素的邻域,
是混合图像A中的像素,
是图像F中的像素,
是图像R中的像素。
与泊松融合类似,图像C中包含复制粘贴区域和背景图像,为了更好的融合篡改区域的邻域,本文优化了生成器,并添加了
损失 [12] 来重建背景,背景损失如公式(3)所示:
(3)
其中
是背景中的像素总数,
是图像C中的像素,
是图像M中位置i处的值。
为了维持篡改区域的形状,本文对复制粘贴的区域应用拉普拉斯算子,并重建该区域的梯度以匹配原区域,梯度损失如公式(4)所示:
(4)
其中,
表示拉普拉斯运算子,
是复制粘贴区域中的像素总数。
为了进一步约束复制粘贴区域的形状,本文添加的边缘损失如公式(5)所示:
(5)
其中
是边界像素的数量,
是边缘mask中位置i处的值,边缘mask是通过对图像M进行膨胀和腐蚀操作得到的。
2.1.2. 判别器
由于篡改图像中被篡改的区域通常只占据了图像的一小部分区域,因此,限制判别器注意局部图像块中的特征是有益的。与PatchGAN [12] 类似,本文的判别器在N × N的图像块上应用全卷积层。判别器通过最大化损失判断真实图像R为真,判断生成的图像
为假。为了生成真实的篡改图像,本文添加了一个对抗损失
,这有助于鼓励生成器在训练的过程中生成越来越真实的图像,对抗损失如公式(6)所示:
(6)
其中,M与
或R相连,作为判别器的输入。生成器最终损失函数如公式(7)所示:
(7)
其中,
、
和
分别设置为(1, 2, 5)以控制相应损失项。基于此约束,生成器保留并融合复制粘贴区域的背景以及纹理信息。
2.2. 注意力分割模块
2.2.1. 分割模块
分割网络结构如图3所示,分割阶段分成两个分支,一是预测篡改区域边缘mask的边缘分支,二是预测篡改区域mask的分割分支。其中为了提高对边界的关注,在分割网络中加入卷积注意力模块CBAM,CBAM通过空间和通道两个维度依次推断出注意力权重,然后与特征图相乘来对特征进行自适应调整,再将注意力图输入边缘分支和分割分支。随后将双线性上采样的中间特征连接起来,再将它们输入到1 × 1的卷积层从而输出预测的边缘mask,以形成边界分支。最后,本文将边界分支的输出特征与分割分支的上采样特征结合起来,输出最终的篡改区域mask。在分割网络的训练过程中,本文选择了复制粘贴的样本C,生成的样本G(C)和训练样本F作为分割网络的输入,提供了更多种类的篡改图像。
2.2.2. 优化模块
语义图像分割注重的是图像的语义内容,而篡改区域的分割更注重于篡改边界,如图4所示,本文利用分割出来的边缘mask,替换原始篡改区域的边界,生成新的篡改边界。本文用R中的真实区域替换预测边界中的像素,生成一个新的篡改图像,
的表示如公式(8)所示:
(8)
其中,
是具有新边界伪影的新篡改图像。对应的mask如公式(9)所示:
(9)
其中,
是
的篡改区域mask。用上述相同的方式预测新的边缘mask和篡改区域mask。
3. 实验
3.1. 实验环境
实验环境如表1所示。由于模型参数较大,因此对实验的设备有一定要求,本实验采用部署了英伟达RTX 2070SUPERx显卡的Linux服务器进行实验,并且配置了符合要求的加速平台和加速库。初始化学习率设置为0.0001,batch size设置为2,网络优化方法使用Adam,动量为0.9,权重衰减设置为0.0005。
3.2. 实验对比
3.2.1. 数据集与评价指标
本文提出的方法在CASIA数据集和Columnbia数据集上与其他经典的网络进行了比较。CASIA1.0包含921个篡改图像,CASIA2.0包含5123张图像,篡改技术包括拼接和复制粘贴,被篡改的区域包括动物、纹理、自然场景等,并且该数据集对篡改图像进行了后处理,以增强篡改效果。Columnbia数据集包含183张拼接图像,被篡改的区域是室内场景。本文使用CASIA2.0对模型进行训练,在CASIA1.0和Columnbia上进行测试。本文使用指标F1分数(F1-Score)和MCC分数(MCC-Score)评估本文提出的方法和现有方法的性能,它们都可以用来评价篡改区域的检测精度。F1-Score是查全率与查准率的加权调和平均,MCC-Score则是一个比较均衡的指标,在两类别的样本含量差别很大的情况下可以更好的对模型进行评价,比较适用于篡改检测领域。评估指标F1-Score如公式(10)所示:
(10)
其中
代表算法输出mask,
代表真实mask。TP代表篡改区域检测为篡改像素数量。FN代表未篡改区域检测为篡改像素数量。FP代表篡改区域未检测为篡改像素数量。评估指标MCC-Score如公式(11)所示:
(11)
3.2.2. 实验结果
从表2和表3可以看出,本文所提出的方法在F1-Score和MCC-Score方面优于现有的一些方法。如判断图像来源的被动取证方法NOI [16] 和CFA [17],这是因为手工设计的特征限制了它们的功能。本文引入的CBAM模块在不同空间生成上下文描述符,有助于获得篡改图像中的边界特征。

Table 2. Results on F1-Score
表2. 实验结果对比(F1-Score)

Table 3. Results on MCC-Score
表3. 实验结果对比(MCC-Score)
从图5可以看出本文提出的方法能够有效的将篡改区域分割出来,分割的边缘mask也比较清晰,虽然篡改区域经过后处理,隐藏了篡改区域和真实区域的对比差异,但本文通过在分割网络中添加CBAM模块,增强了篡改区域边界的特征提取能力,使得拼接类型的篡改图像更容易检测,分割效果也较好。而对于复制粘贴类的篡改图像检测则较困难,这主要是因为复制区域来自于同一张篡改图像的某个部分,篡改区域与真实区域有着相同的对比度,在本文设计的网络中,通过分割模块中的优化部分,强化模型对于边界特征的提取能力,使得复制粘贴类型的篡改图像也容易被检测与分割,本文提出的方法在两种篡改图像上都取得了较好的效果。
3.2.3. 鲁棒性分析
为验证模型的鲁棒性,对CASIA数据集采用JPEG压缩和高斯平滑处理,其中,JPEG压缩将图片质量压缩到70%和50%,高斯平滑处理将高斯核标准差设置为0.5、1、1.5和2。从图6和图7可以看出,模型的抗干扰性较强,有较强的鲁棒性。
4. 结束语
本文提出了一种基于注意力机制的图像篡改检测网络,实现了图像篡改区域的分割。利用GAN生成篡改图像来解决缺乏训练数据的问题,同时扩充样本量避免出现模型坍塌的情况。相较于目前的生成对抗网络,本文引入了一个新的目标函数,将来自现有篡改数据集的图像作为GAN的输入,并通过目标函数进行优化,再与原篡改图像数据集进行混合,从而达到扩充数据集与优化篡改区域真实性的效果。为了在训练过程中使模型更好地识别边界,进一步提取有效的图像篡改特征,本文以Deeplab为基本框架,提出了基于注意力机制的分割优化网络,将卷积注意力模块(CBAM)加入分割网络中,以增强篡改区域边界的特征提取能力,得到边缘mask和篡改区域mask,同时利用预测的边缘mask来替换原始区域以产生新的篡改图像,强化模型对于边界特征的提取能力,从而更好地定位篡改区域并将其分割出来。从对比实验可以看出,本文方法各项指标均优于其它方法。
由于网络模型参数较多,对计算机的运算能力要求较高,后期的工作主要在于构建轻量化的模型并提高算法的检测精度。
基金项目
本文作者符颖得到省级项目基金资助:四川省科技厅重点研发项目(2020YFG0453,8K超短焦光学镜头关键技术研究及应用);四川省科技厅“新一代人工智能平台”重大专项(2019DZX0005,面向开放共享的云深度学习专用平台)。