Employing Reinforcement Learning to Construct a Decision-Making Environment for Image Forgery Localization

Rongxuan Peng , Student Member, IEEE, Shunquan Tan , Senior Member, IEEE,

Xianbo Mo , Student Member, IEEE, Bin Li , Senior Member, IEEE, and Jiwu Huang , Fellow, IEEE

摘要

​  由于高级图像编辑工具和深度生成技术的广泛滥用,导致在现实场景中出现了大量内容被篡改的图像,通常没有任何明显的篡改痕迹。这给图像的安全性和可信度带来了潜在威胁。图像伪造定位是一项亟需的技术。在本文中,我们提出了一种基于强化学习的新框架CoDE(构建决策环境),该框架能够为伪造图像中的篡改区域提供可靠的定位结果。我们将伪造定位任务建模为马尔可夫决策过程(MDP),其中每个像素都配备了一个代理,该代理执行基于高斯分布的连续动作,以迭代更新相应的伪造概率,从而实现像素级别的图像伪造定位。为了在马尔可夫决策过程中构建状态转换,我们提出了一种双流状态编码器来处理更新后的状态,该状态包括伪造图像及其对应的伪造概率图。此外,考虑到在实际的图像篡改场景中,被篡改的区域通常较为稀疏,我们为此设计了一个专门针对这些稀疏区域的奖励函数。这种奖励机制能够引导智能体更高效地学习最大化累积奖励的最优策略。通过在多种基准数据集上进行的大量实验,CoDE在定位精度和对在线社交网络(OSNs)传输及各类后处理攻击导致的图像退化具有更强的鲁棒性方面表现出色。

I.引言

​  图像编辑软件的普及使得数字图像伪造变得前所未有的容易。即使是那些没有专业知识的新手也能迅速学会如何篡改图像。因此,图像的真实性已成为一个重要问题,尤其是在需要高度准确性和可信度的情况下,如法庭证词、新闻报道、保险索赔、摄影比赛等。如今,不断涌现的篡改手段进一步加剧了这一问题。
​  通常,如图1所示,篡改操作可分为以下三种类型:

image-20250604110835963

​    (1)剪辑:将一个图像的一部分叠加到另一个图像上;
​    (2)复制移动:在同一图像中复制并粘贴特定区域;
​    (3)删除:擦除图像的特定部分,然后进行修补。
​  Adobe Photoshop(PS)是最常用的剪辑和复制移动操作软件。当然,还有其他相关工具,如GIMP和After Effects Pro等。随着深度学习的迅猛发展,图像修复技术[1]能够用于移除特定对象、水印、人脸和标签信息等。最近,基于生成对抗网络(GAN)的方法[2],[3],[4]以及基于扩散模型(DM)的方法[5],[6]在图像修复领域展现了卓越的能力,能够有效恢复被移除的部分,这些部分在视觉上具有高度可信的纹理结构和语义内容。
​  随着篡改技术日益先进,大多数伪造图像都会留下难以察觉的痕迹。因此,开发能够捕捉更细微篡改特征的方法变得尤为重要,以检测甚至定位图像伪造。传统方法[7]通常从图像中提取低级特征,如纹理、颜色和边缘信息,然后使用支持向量机(SVM)等机器学习算法来判断图像是否被伪造。然而,这些方法对于复杂的篡改操作可能效果不佳,并且需要一定的先验知识。近年来,深度学习技术在各种模式识别任务中的应用日益广泛,图像取证领域也不例外。在图像取证领域,深度学习技术被广泛应用于构建端到端的框架,这些框架能够预测伪造图像的伪造概率图,从而实现像素级别的图像伪造定位。早期的一些研究主要集中在解决特定类型的篡改操作,例如. [8],[9],[10]拼接,[11],[12]复制-移动,[13],[14]移除。然而,这些方法存在一个关键的弱点,即它们往往难以应对之前未见过的篡改类型。为了解决这一问题,最近的一些研究[15],[16],[17],[18],[19],[20],[21],[22],[23],[24]采取了更为全面的方法,尽可能地考虑所有类型的篡改操作。
​  MVSS-Net [25]通过结合多种特征提取方法和多尺度视觉注意力机制,提升了伪造定位的性能。
​  PSCC-Net [26]提出了一种时空通道相关模块(SCCM),能够同时捕捉空间和通道的相关性。
​  为了防御对抗性攻击,SAT-IFL [27]采用FGSM [28]生成的对抗样本进行对抗性训练。
​  CAT-Net v2 [29]提出了一个两阶段网络,用于捕捉RGB域中的图像采集伪影和DCT域中的压缩伪影。
​  虽然最近的研究已取得重大进展,但仍有两大不足:(1)泛化能力有限;(2)鲁棒性不足。泛化能力主要指模型在多个数据集上的表现。如果测试集的数据分布与训练集有显著差异,模型的性能可能会大幅下降。为解决这一问题,多项研究[17]、[30]提出通过使用目标数据集的一个子集来微调预训练模型。需要注意的是,这种方法可能仅对用于微调的特定数据集有效,而对其他数据集则可能无效。鲁棒性主要指模型在面对图像退化时的表现。最近的研究[22]、[23]、[26]、[27]通过实施各种后处理攻击,如高斯噪声、调整大小、高斯模糊和JPEG压缩等,来评估模型在图像退化条件下的表现。然而,这些工作只考虑独立的而不是混合的图像后处理攻击,这可能不足以应对更复杂的场景。例如,Wu等人[31]发现,通过微信、Facebook等在线社交网络(OSNs)传输的图像会经历各种已知或未知的操作,这给定位篡改区域带来了更大的挑战,因为篡改痕迹在经过这些图像处理流程后可能会被严重削弱甚至完全消失。
​  为了解决上述问题,我们提出了一种基于强化学习的新框架CoDE,用于像素级别的图像伪造定位。我们将伪造概率图的更新建模为马尔可夫决策过程(MDP)。在CoDE中,我们设计了一个基于A3C(Asynchronous Advantage Actor-Critic,异步并行的 Actor-Critic 方法)算法[32]的Actor-Critic网络来实现这一目标,其中actor是一个策略网络,根据当前状态选择行动;critic是一个价值网络,估计当前状态的预期价值。图像中的每个像素都有一个代理,这些代理并行学习以最大化累积奖励的最佳策略。与标准方法相比,这种方法的优势在于它允许代理进行探索,不断尝试新的行动,以更好地理解复杂环境,发现潜在的高奖励策略,从而提高泛化性能和鲁棒性。
​  我们的主要贡献可总结如下:

  • 我们首先提出了一种基于强化学习的新框架CoDE,用于像素级图像伪造定位,其中代理在每个像素上在有限的步骤中迭代更新伪造概率图。
  • 我们基于高斯分布定义了一个连续的动作空间,这显著提高了模型对各种图像后处理攻击的鲁棒性,即使没有相应的数据增强。
  • 考虑到在实际图像篡改中常见的篡改区域分布稀疏,我们专门设计了一个奖励函数,使代理能够从反馈奖励中有效学习最优策略。
  • 在多种基准数据集上进行的综合实验表明,CoDE显著优于现有最先进方法,并在抵抗在线社交网络传输引起的图像退化方面表现出优越的鲁棒性。

​  本文其余部分安排如下:第 II部分介绍如何利用强化学习方法对图像伪造定位任务进行建模;第III部分介绍实验设置的详细情况和全面的实验结果;最后第IV部分总结全文并展望未来的研究方向。

II.提出的方法

​  在本节中,我们将详细阐述提出的像素级图像伪造定位的CoDE方法。首先,我们将简要介绍强化学习和A3C算法的概念。接着,我们将介绍CoDE的整体模型架构。然后,我们将描述如何定义强化学习中的关键要素,包括状态、动作、奖励函数、策略、演员和评论家。最后,我们将详细说明相应的优化算法。

A.前言

​  强化学习是一种流行的机器学习范式,已被应用于机器人、游戏和控制等多个领域。近年来,一些研究开始将强化学习技术应用于图像取证领域。Jin等人[33]通过调整边界框的位置,利用预定义的离散动作,实现了篡改视频的粗略定位。Wei等人[34]和Chen等人[35]则在神经架构搜索(NAS)中应用了强化学习,专注于优化卷积神经网络,以提高图像取证的准确性。
​  强化学习的核心在于MDP,它提供了一个数学框架,用于形式化环境中的顺序决策问题。

image-20250604112108569

​  图2展示了概念性的交互过程,其中智能体通过采取行动、接收奖励并转移到新状态与环境互动。一个完整的MDP通常由多个交互过程组成,这些过程被称为一集。

image-20250604112223716

​  如图3所示,我们为图像伪造定位任务设计了MDP。MDP由一个元组\(({\mathcal{S}},{\mathcal{A}},{\mathcal{P}},r,\gamma)\)定义,其中\({\mathcal{S}}\)表示可能的状态集合;\({\mathcal{A}}\)表示可能的行动集合;\({\mathcal{P}}\)表示智能体采用的策略。具体来说,\({\mathcal{P}}(a^{(t)}|{s^{(t)}})\)表示在状态\(s^{(t)}\)下采取行动\(a^{(t)}\)的概率;\(r^{(t+1)}\)表示从状态\(s^{(t)}\)转移到\(s^{(t+1)}\)时立即获得的奖励;\(\gamma\)是折扣因子,用于平衡即时奖励与未来奖励之间的关系。
​  异步优势Actor-Critic(A3C)是一种流行的强化学习框架。通过同时使用优势函数和时间差分误差,A3C能够有效平衡探索与开发,相比其他强化学习算法,可以实现更好的性能。A3C是actor-critic算法的扩展,它结合了基于策略和基于价值的方法,以实现更好的性能。actor负责学习在给定当前状态时选择动作的策略,而critic则估计从当前状态出发的预期价值。
​  A3C中actor的公式更新定义为: \[\mathcal{L}_{\theta_{a}}=\beta\mathcal{H}(\mathcal{P}_{\theta_{a}}(s^{(t)}))+l o g\mathcal{P}_{\theta_{a}}(a^{(t)}|s^{(t)})A(s^{(t)},a^{(t)})\]

\[\theta_{a}=\theta_{a}+\eta\nabla_{\theta_{a}}Z_{\theta_{a}}\]

​  其中,\(\theta_{a}\)是actor网络的参数,\(\mathcal{L}_{\theta_{a}}\)是相应的优化目标,该目标分为两部分。\(\mathcal{H}(\mathcal{P}_{\theta_{a}}(s^{(t)}))\)表示在给定状态\(s^{(t)}\)下所有可能动作的熵,作为正则化项以促进探索;\(\beta\)是一个控制熵正则化强度的系数;\(\mathcal{P}_{\theta_{a}}(a^{(t)}|s^{(t)})\)表示在当前策略下,处于状态\(s^{(t)}\)下采取行动\(a^{(t)}\)的的概率;\(A(s^{(t)},a^{(t)})\)是优势函数,用于评估在状态\(s^{(t)}\)时采取动作\(a^{(t)}\)的优势,其计算方式如下: \[A(s^{(t)},a^{(t)})=Q(s^{(t)},a^{(t)})-V(s^{(t)})\] ​  其中,\(V(s^{(t)})\)表示状态\(s^{(t)}\)的期望值;\(Q(s^{(t)},a^{(t)})\)则表示在状态\(s^{(t)}\)下采取动作\(a^{(t)}\)的期望值,通常通过单步近似法进行估算,其公式如下: \[Q(s^{(t)},a^{(t)})=\left\{\begin{array}{l l}{V(s^{(t)}),}&{i f\ s t o p,}\\ {r^{(t+1)}+\gamma Q(s^{(t+1)},a^{(t+1)}),}&{e l s e;}\end{array}\right.\] ​  这里“if stop”指的是状态\(s^{(t)}\)是终状态。此时\(Q(s^{(t+1)},a^{(t+1)})\)等于\(V(s^{(t)}\),因为没有发生状态转换。
​  A3C中对critic的公式更新定义为: \[\mathcal{L}_{\theta_{c}}=A(s^{(t)},a^{(t)})^{2}\]

\[\theta_{c}=\theta_{c}-\eta\nabla_{\theta_{c}}\mathcal{L}_{\theta_{c}}\]

​  其中\(\theta_{c}\)代表critic网络的参数,而\(\mathcal{L}_{\theta_{c}}\)则是相应的优化目标,即优势函数的平方。

B.在MDP中定义图像伪造定位的元素

​  在下文中,我们将详细阐述如何在MDP中定义图像伪造定位任务的基本元素,如图3所示。

image-20250604112223716

1)状态空间:

​  状态表示应设计为包含任务中最相关的信息。对于图像伪造定位,它当然应包括伪造图像(\(I_{f}\in\mathbb{R}^{H\times W\times3}\)),因为我们需要捕捉到细微的篡改痕迹,以指导模型做出精准决策。其中H和W分别表示图像的高和宽。此外,由于我们的目标是预测二进制掩码\(M_{f}\in\mathbb{R}^{H\times W}\),所以在某一事件的时间步t处的伪造概率图\(P_{f}^{(t)}\in\mathbb{R}^{H\times W}\)也是必不可少的。因此,根据等式(7)的表述,状态空间由两个主要部分构成:
​    (1)伪造的图像,\(I_{f}\)
​    (2)时间步长t处的伪造概率图\(P_{f}^{(t)}\)
​  将\(I_{f}\)\(P_{f}^{(t)}\)均除以255,以便在[0,1]范围内进行归一化。 \[s^{(t)}=(I_{f},P_{f}{}^{(t)})\]

2)动作空间:

​  动作空间的设计基于状态变量的变化。由于我们的目标是迭代更新所有像素的伪造概率(即伪造概率图\(P_{f}^{(t)}\)),因此我们的动作自然涉及伪造概率的加减,如公式等式(8)所示。 \[P_{f}^{(t+1)}=P_{f}^{(t)}+a^{(t)}\] ​  在强化学习领域,动作空间主要分为离散型和连续型两种。本研究中,我们基于高斯分布构建了连续型动作空间,并为每个像素设置独立的高斯分布进行动作采样,具体公式见等式(9)。 \[a^{(t)}\sim\mathcal{N}(\mu^{(t)},(\sigma^{2})^{(t)})\] ​  其中,\(a^{(t)}\ \in\mathbb{R}^{H\times W}\)\(\mu^{(t)}\in\mathbb{R}^{H\times W}\)\((\sigma^{2})^{(t)} \ \in\ \ \mathbb{R}^{H\times W}\)分别表示时间步长t时的动作图、均值图和方差图。与离散动作空间(例如[±0.5,±0.2,±0.1,±0.0])不同,连续动作空间拥有更宽泛的数值范围,这使得智能体能够全面探索环境并优化策略。此外,我们发现使用其他具有可变分布形状的统计分布,如贝塔分布时,会导致像素决策出现显著波动。这种波动性使得代理难以学习有效的策略。相比之下,高斯分布是一个单峰、对称的钟形曲线,这意味着它在平均值附近具有较高的概率密度。这种稳定性使代理在训练过程中能够更有效地探索并学习到更好的策略。
​  由于我们在一个回合中通过多个时间步长来采样动作以更新伪造概率图,因此需要控制均值图和方差图的值范围。这种控制机制通过限制极端或不切实际的动作,防止过度探索,从而提高智能体收敛到最优策略的效率。因此,我们引入了一个缩放因子\(\lambda\)来限制\(\mu^{(t)}\)的范围。\(\sigma^{2}\)的范围则由actor网络中的激活函数控制(请参见第II-C.2节)。随后,动作图\(a^{(t)}\)的公式如下: \[a^{(t)}\sim\mathcal{N}(\lambda\mu^{(t)},(\sigma^{2})^{(t)})\] ​  然而,采样操作(公式(10))不可导,导致反向传播在更新\(\mu^{(t)}\)\((\sigma^{2})^{(t)}\)的梯度时失败。为了解决这一问题,采用了重参数化技术。如等式(11)所示,首先从标准正态分布\({\mathcal{N}}(0,1)\)中抽取一个矩阵变量\(\xi\in\mathbb{R}^{H\times W}\),然后通过等式(12)转换,得到动作图\(a^{(t)}\),这相当于直接从\(\mathcal{N}(\lambda\mu^{(t)},(\sigma^{2})^{(t)})\)中抽样。这样,在训练过程中可以计算并反向传播\(\mu^{(t)}\)\((\sigma^{2})^{(t)}\)相对于\(a^{(t)}\)的梯度。 \[\xi\sim{\mathcal{N}}(0,1)\]

\[a^{(t)}=\lambda\mu^{(t)}+\xi\odot\sqrt{(\sigma^{2})^{(t)}}\]

​  请注意,伪造概率图\(P_{f}^{(t)}\)的范围在[0,1]内。然而,通过等式(12)计算得到的\(a^{(t)}\)范围可能无限大。为了确保\(P_{f}^{(t)}\)保持在有效范围内,我们对\(a^{(t)}\)\(P_{f}^{(t)}\)在[0,1]区间内进行了截断处理。
​  在测试阶段,代理执行确定性策略,即不再需要$({2}){(t)} \(来进行探索,仅使用\){(t)}\(作为动作图。因此,动作图\)a{(t)}\(可以统一表示为:\)\(a^{(t)}=\left\{\begin{array}{l}{\lambda\mu^{(t)}+\xi\odot\sqrt{(\sigma^{2})^{(t)}},\ i f\ t r a i n,}\\ {\lambda\mu^{(t)},}\end{array}\right.\)$

  3)奖励函数:

​  奖励函数的设计至关重要,因为它在训练过程中为智能体提供了关键的反馈信息。因此,奖励函数应根据具体任务的特点进行定制。为了更新像素的伪造概率,我们需要定义一个映射函数,该函数能够给出伪造概率的映射值,从而确定智能体因更新伪造概率而获得的奖励。

image-20250604115900146
​  图4a展示了一个单个像素伪造概率的线性映射函数,其公式如下: \[\begin{aligned}f_{lin}(x,GT) & =\left\{\begin{array}{ll}1-x, & \mathrm{if~}GT=0, \\x, & \mathrm{if~}GT=1.\end{array}\right. \\ & =GT\cdot x+(1-GT)\cdot(1-x)\end{aligned}\] ​  其中x表示像素的伪造概率。而“GT”的含义如下:“GT=1”表示该像素为伪造,而“GT=0”表示该像素为原始。
​  随后,我们提出了一种基础奖励函数\(r_{bs}^{(t)}\)。该设计基于等式(14)的直观理念,直接将两次伪造概率的差异转化为奖励。为了在不同GT条件下区分正负奖励,等式(14)被设计为分段函数形式。\(r_{bs}^{(t)}\)的具体公式如下: \[\begin{aligned}r_{bs}^{(t)} & = f_{l i n}(x^{(t)},G T)-f_{l i n}(x^{(t-1)},G T)\\ & =2(G T-0.5)(x^{(t)}-x^{(t-1)})\end{aligned}\] ​  在这里,t表示完整更新过程中的时间步。需要注意的是,初始伪造概率被设定为零(即\(x^{(0)}\ =\ 0\))。\(r_{bs}^{(t)}\)表明奖励与伪造概率呈线性相关。例如,当\(x^{(0)}=0,x^{(1)}\ =0.2\)时,\(r_{bs}^{(t)}\)\(x^{(0)}\)\(x^{(1)}\),GT=1)和\(r_{bs}^{(t)}\)\(x^{(0)}\)\(x^{(1)}\),GT=0)的奖励结果完全相反。然而,在伪造图像中,原始区域的比例通常大于篡改区域。同时,代理在训练初期采用的策略非常不理想。这导致代理在原始区域采取错误行动的比例远高于正确行动,从而遭受了较大的惩罚。随着时间的推移,持续的负面奖励促使代理倾向于采取微小的更新动作以避免重大惩罚,这反而不利于策略的优化。
​  基于上述分析,我们提出了一种新的奖励函数设计原则,该原则主张在篡改区域采取正确行动时给予更高的奖励,同时减少在原始区域采取错误行动的惩罚。二元交叉熵与这一奖励函数设计原则非常契合,因此,我们首先介绍了一种基于二元交叉熵的映射函数\(f_{b c e}(x,G T)\),如图4b所示,其公式为: \[\begin{aligned}f_{b c e}(x,G T) & =\left\{\begin{array}{ll}-\log(1-x+\epsilon), & \mathrm{if~}GT=0, \\-\log(x+\epsilon),, & \mathrm{if~}GT=1.\end{array}\right. \\ & -G T\cdot l o g(x+\epsilon)-(1-G T)\cdot l o g(1-x+\epsilon)\end{aligned}\] ​  考虑到\(f_{b c e}(x=0,\,GT=1)\)\(f_{b c e}(x=0,\,GT=0)\)的无限值可能导致训练崩溃,我们通过引入常数\(\epsilon=1\times10^{-8}\)来限制其值范围,从而实现简单的优化。
​  随后,基于二进制交叉熵的奖励函数\(r_{bs}^{(t)}\)被定义为: $$ \[\begin{array}{l}r_{b c e}^{(t)}&=-(f_{b c e}(x^{(t)},G T)-f_{b c e}(x^{(t-1)},G T))\\&=G T\cdot l o g(\frac{x^{(t)}+\epsilon}{x^{(t-1)}+\epsilon})\\&+(1-G T)\cdot l o g(\frac{1-x^{(t)}+\epsilon}{1-x^{(t-1)}+\epsilon}) \end{array}\]

\[ ​&emsp;&emsp;为了确保当$x^{(t)}$接近GT时给予正奖励,而当$x^{(t)}$离开GT时给予负奖励,在$f_{b c e}(x^{(t)},G T)-f_{b c e}(x^{(t-1)},G T)$的表达式前加上负号。例如,给定$x^{(0)}=0,x^{(1)}\ =0.2$,正奖励$r_{bs}^{(t)}$($x^{(0)}$,$x^{(1)}$,GT=1)相对于负奖励$r_{bs}^{(t)}$($x^{(0)}$,$x^{(1)}$,GT=0)的绝对值要大得多。<br/>​&emsp;&emsp;上述关于两个奖励函数等式(15)和等式(17)的讨论,都是基于单个像素的。我们的任务目标是生成整个图像的伪造概率图$P_{f}\in\mathbb{R}^{H\times W}$。为了使讨论更加全面,我们将单个像素的伪造概率x扩展到整个图像的伪造概率图$P_{f}$。因此,基本奖励函数$r_{b s}(t)\in\mathbb{R}^{H\times W}$通过等式(18)定义,而基于BCE的奖励函数$r_{b c}e^{(t)}\in\mathbb{R}^{H\times W}$则通过等式(19)定义。 \]r_{b c e}^{(t)}=2(M_{g t}-0.5),,(P_{f}{}{(t)}-P_{f}{}{(t-1)})$$

\[\begin{array}{l}r_{b c e}{}^{(t)}=&M_{g t}\odot l o g(\frac{P_{f}{}^{(t)}+\epsilon}{P_{f}{}^{(t-1)}+\epsilon})\\&+\left(1-M_{g t}\right)\odot l o g\bigl(\frac{1-P_{f}(t)+\epsilon}{1-P_{f}(t-1)+\epsilon}\bigl)\end{array}\]

​  这里的粗体部分是矩阵变量,Mgt是真实值的掩码。

​  为了验证我们关于两个奖励函数(公式(18)和等式(19))的设计假设,我们在第三部分B.1节中展示了它们对比的实验结果。

C.网络架构

​  图5展示了模型,图6展示了各模块的结构图。整个模型由三部分组成:孪生流状态编码器、行为网络和评价网络。接下来我们将详细介绍:

image-20250606163728166

1)双流状态编码器:

​  状态编码器旨在提取状态特征并满足状态转换,分为两部分:(1)伪造编码器;(2)伪造概率图编码器(FPM-E)。如图5所示,伪造编码器通过五个伪造编码器模块,从伪造图像中提取层次特征,其形式为\(I_{f}\in\mathbb{R}^{H\times W\times 3}\)

image-20250606163425108

​  为了实现快速训练,我们采用了ImageNet预训练的EfficientNetb4 [36]模型,并去除了其分类层。FPM-E设计用于编码伪造概率图\(P_{f}^{(t)}\in\mathbb{R}^{H\times W}\),该图可以整合到actor-critic网络中,以指导actor做出相应的决策。FPM-E由两个FPMC(伪造概率图卷积)模块组成,如图6b所示。

image-20250606164932650

​  W表示伪造概率图。

​  每个FPMC模块中,首先使用一个1×1的无偏卷积层将通道维度从1扩展到48,随后是两个3×3的卷积层,其中最后一个卷积层具有2×2的步幅,用于下采样。在伪造编码器和FPM-E中,每次下采样后特征图的大小都会减半。
​  实际上,我们可以通过在通道维度上将\(I_f\)\(P_f^{(t)}\)连接起来,使用一个编码器同时处理这两个信号,即\([I_f,P_f^{(t)}]\in\mathbb{R}^{H\times W\times4}\)。然而,这种方法需要较长的推理时间,因为状态需要在一个回合中多次更新。为了减少推理时间,我们提出了一种双流架构,该架构仅通过FPM-E即可实现状态转换,伪造编码器在一个回合中只需运行一次。我们在第III-B.2节中介绍了两种状态处理模式在伪造定位性能和推理时间上的比较实验。

2)Actor网络:

​  Actor网络通过输出均值图\(\mu^{(t)}\in\mathbb{R}^{H\times W}\)和方差图\((\sigma^{2})^{(t)}\in\ \mathbb{R}^{H\times W}\),为每个像素构建独立的高斯分布模型。随后,代理可以根据这些数据生成动作图\(a^{(t)}\in\mathbb{R}^{H\times W}\)。演员网络通过四个基础解码器模块(如图6a所示)实现四倍2×上采样处理。此外,为了加速模型的收敛,我们采用了U-Net [37]架构,将前四个伪造编码器模块与上述四个基本解码器模块连接起来。在每个基本解码器模块中,首先使用一个非学习的上采样层,采用最近邻插值法,然后是一个3×3卷积层。连接后,再使用两个3×3卷积层。
​  最后,为了输出\(\mu^{(t)}\)\((\sigma^{2})^{(t)}\),我们采用了双分支架构,即均值块和方差块。如图6c和图6d所示,这两个模块都以相同的特征图作为输入,该特征图由最终的基本解码器块和FPMC块的输出拼接而成。

image-20250606165123913

​  X表示最终伪造编码器模块或之前的基解码器模块的输出。Z表示FPMC模块的输出。

​  在结构上,它们均包含一个上采样层和三个3×3卷积层。它们仅在最后一个3×3卷积层的激活函数上有所不同,其中均值块使用Softsign(\(S o f t s i g n(x)={\frac{x}{\vert x\vert+1}}\))来限制\(\mu^{(t)}\)在(−1, 1)的范围内。方差块则使用Softplus(\(S o f t p l u s(x)=\log(e^{x}+1)\))来确保在(0, +∞)的范围内。
​  为了研究动作空间大小对定位性能的影响,我们引入了一个缩放因子λ来限定\(\mu^{(t)}\)的值域。此外,我们还探讨了通过Sigmoid函数将\((\sigma^{2})^{(t)}\)的值域限制在0到1之间的效果。比较实验的结果详见第三部分B.3节。

3)critic网络:

​  critic网络旨在估计当前状态下的值图\(V^{(t)}\in\mathbb{R}^{H\times W}\)。如图5所示,该网络还使用了四个基本解码器块进行四倍2×上采样,并与前四个伪造编码器块采用相同的U-Net [37]连接方式。最后,值块将最终的基本解码器块和FPMC块的输出合并。如图6e所示,值块包含一个上采样层和两个3×3卷积层。最后一个3×3卷积层中的激活函数为Sigmoid(\(S i g m o i d(x)={\frac{1}{1+e^{-x}}}\)),以确保\(V^{(t)}\)的值保持在0到1之间。

D.训练阶段

​  训练阶段如算法1所示,可分为三个部分:

image-20250606174635568

1)初始化:

​  第一步是初始化网络的参数。每当新一轮开始时,初始伪造概率图\(Pf^{(0)}\)被设为零。因此,初始状态\(s^{(0)}\)被定义为\((I_f,Pf^{(0)})\)。奖励图r (0)在开始时也被设置为零,因为还没有发生任何状态转换。

2)迭代更新状态:

​  在第t轮,当前状态s(t−1)被输入模型,以获取均值图µ(t−1)、方差图(σ2)(t−1)和价值图V(t−1)。随后,均值图µ(t−1)经过λ的缩放,记为λµ(t−1)。接着,从标准正态分布N(0,1)中抽取ξ∈RH×W,并重新参数化以获得动作图a(t−1),具体公式见等式(12)。代理根据Pf(t−1)执行a(t−1),以生成新的伪造概率图Pf (t),该图稍后会被截断到范围[0,1]。奖励图r (t)可通过等式(19)计算得出。最后,这一过程会再次使用更新后的状态s (t)重复进行。

3)累积损失和更新参数:

​  在完成一轮后,计算并累积演员网络和评论家网络的损失\(\cal L_{\theta_a}\)\(\cal L_{\theta_c}\)。首先将总损失\(\cal L_{total}\)重置为零。从最后一轮的反转开始,我们按以下方式累积\(\cal L_{total}\)\[\mathcal{L}_{t o t a l}=\mathcal{L}_{t o t a l}+A v e r a g e(\frac{\cal L_{\theta_{c}}}{2}-\mathcal{L}_{\theta_{a}})\] ​  需要注意的是,优化目标在于最大化行为者(公式(2))中的优势函数和熵,并最小化评估者(公式(6))中优势函数的均方误差。因此,参数更新采用以下公式,其中η表示学习率。 \[\theta_{a}=\theta_{a}-\eta\nabla_{\theta_{a}}\mathcal{L}_{t o t a l},\quad\theta_{c}=\theta_{c}-\eta\nabla_{\theta_{c}}\mathcal{L}_{t o t a l}\] ​  此外,由于我们的动作空间遵循高斯分布,等式(1)中的熵是通过以下公式计算的: \[\mathcal{H}(P_{\theta_{a}}(s_{t}))=\frac{1}{2}\left(\ln(2\pi(\sigma^{2})^{(t)}+1)\right)\]

E.测试阶段

​  测试阶段如算法2所示。

image-20250701114433240

​  首先,初始伪造概率图Pf (0)被设为零。与训练阶段不同,代理无需进一步探索,而是采用确定性策略来完成任务。具体来说,在状态s (t)传递后,我们仅保留平均图μ(t),而不是从高斯分布N(μ(t),σ²(t))中抽样,缩放后的平均图λμ(t)直接作为动作图a (t)使用。随后,通过执行(t)更新Pf (t)。一旦剧集结束,我们对最终的伪造概率图\(P_{f}^{(L_{e p t})}\)应用二值化处理,使用固定的伪造阈值δ生成二进制掩码M_f。

III.实验

​  在本节中,我们评估了CoDE在各种基准数据集上的表现,并与最先进的方法进行了比较。我们还分析了CoDE对不同后处理攻击的鲁棒性,包括调整大小、高斯模糊、高斯噪声、JPEG压缩和裁剪等,并设置了不同的攻击强度。此外,我们展示了CoDE在来自不同主流在线社交网络的数据集上的泛化能力和鲁棒性,这些社交网络包括Facebook、微信、微博和WhatsApp。

A.实验设置

​  1)数据集:
​  我们在实验中采用了以下基准数据集。所有伪造图像均配有对应的真值掩码。

  • COLUMBIA数据集[38]由160张伪造图像组成,这些图像完全通过拼接技术创建。

  • COVERAGE[39]是一个包含100张伪造图像的复制-移动数据集。所有伪造图像都经过了后期处理,以掩盖操作痕迹。

  • CASIA数据集[40]的v1版本包含960张伪造图像,而v2版本则有5123张。这些伪造图像主要通过剪辑和复制移动的方式进行篡改,部分图像还经过了滤镜处理和模糊等后期修饰,以掩盖篡改痕迹。

  • NIST16数据集[41]由564张伪造图像组成,包含三种篡改类型:拼接、复制移动和删除。

  • IMD2020数据集[42]包含2,010张伪造图像,其原始版本均来自互联网。所采用的篡改技术包括拼接、复制移动和删除。

  • TampCOCO数据集由CAT-Net v2 [29]提供,包含80万张伪造图像,涉及两种篡改方式:拼接和复制移动。我们仅从该数据集中随机选取了0.5%的伪造图像用于训练,而CAT-Net v2则使用了全部数据。

  • DSO [43]是一个剪接数据集,专注于人类受试者操作,包含100张伪造图像。

  • 由IF-OSN [31]提供的OSNs数据集包含了来自COLUMBIA、NIST16、DSO和CASIA v1的伪造图像。所有这些图像均通过Facebook、微博、微信和WhatsApp等社交媒体平台传播。

  • OpenForensics [44]是一个面部伪造数据集,具有极高的挑战性。测试集经过了多种处理,包括色调、亮度和饱和度的调整,JPEG压缩,锐化,添加噪声等,以更真实地模拟自然环境中的背景。我们随机选取了500张伪造图像进行评估。

  • CocoGlide数据集由TruFor [45]使用扩散模型GLIDE [46]提供,包含512张伪造图像。

  • FF++ [47]是一个面部伪造数据集,旨在检测视频中的伪造行为。该数据集由多种基于生成对抗网络(GAN)的模型生成,如Face2Face、NeuralTextures和FaceSwap。在本研究中,我们使用了该数据集的中等压缩版本(c23)。从每个模型中随机选取了100个伪造视频,并从每个视频中随机抽取了两帧,最终生成了600张用于评估的伪造图像。

​  2)训练模式:
​  我们对不同的训练模式进行了实验,具体介绍如下:

  • 基准测试:模型分别在每个基准数据集上进行训练,并在相应的测试分割上进行测试。
  • 预训练:模型仅在外部数据集上进行训练,然后直接在目标数据集的测试分割上进行评估。
  • 微调:首先使用预训练权重初始化模型,然后在目标数据集的训练分割上进行进一步微调,并在目标数据集的测试分割上进行评估。

​  在第三节C部分,对于基准训练,我们保持了与PSCC-Net [26]相同的训练与测试比例,即75%:25%。在微调阶段,我们首先在CASIA v2、0.5% TampCOCO和IMD2020数据集上预训练CoDE,然后在每个数据集的训练集上进行微调(训练与测试的比例与基准训练模式一致)。在第三节D部分,我们展示了预训练模式下的泛化性能。我们在CASIA v2、0.5% TampCOCO和IMD2020数据集上训练CoDE,然后直接在这些数据集上进行测试。需要注意的是,我们的训练集中仅包含大约11,000张伪造图像,而CAT-Net v2 [29]和TruFor [45]则使用了约850,000张图像。

​  3)评价指标:
​  在我们的实验中,采用F1分数和交并比(IoU)作为评价指标。
​  F1是精确度和召回率的调和平均值,是定位结果准确性和完整性的衡量指标,其取值范围在0到1之间,其中1表示定位性能达到完美。 \[F_{1}=\frac{2\times P r e c i s i o n\times R e c a l l}{P r e c i s i o n+R e c a l l}\] ​  IoU是真实区域与预测篡改区域的交并比,其取值范围为0到1,其中1表示定位性能达到完美。 \[\mathrm{IoU}={\frac{\mathrm{TP}}{\mathrm{TP}+\mathrm{FP}+\mathrm{FN}}}\] ​  此外,为了提供全面的评估,在表IV、表V和表VII中,我们计算了所有数据集上的F1和IoU的加权平均值,其中权重基于各自伪造图像的数量。
​  实际上,在其他关于图像伪造定位的论文中,AUC(ROC曲线下面积)也经常被采用。然而,在实际的图像伪造定位场景中,篡改区域远小于原始区域,这导致了严重的类别不平衡问题。在这种情况下,ROC曲线可能会受到原始区域像素数量的影响,使得评估结果偏向于原始像素。因此,AUC可能会给出不可靠的结果。相比之下,F1和IoU则表现更好,因为它们同时考虑了伪造定位结果的准确性和完整性。

​  4)设置:
​  所提出的CoDE基于PyTorch实现,所有图像均调整为512×512的尺寸,以便在单个Tesla A100 GPU上进行端到端训练。小批量大小设为8。我们采用了Adam优化器[48]和多参数学习方案,其中学习率从1.0×10−4开始,并在每轮\(i\in[1,N_{e p i}]\)时乘以\((1-(\frac{i}{N_{e p i}})^{0.9})\)。我们将最大回合数Nepi设定为50,000。折扣因子γ和伪造阈值δ分别实验性地设定为0.95和0.2。
​  源代码和辅助材料可从GitHub(https://github.com/tansq/CoDE)下载。

B.消融研究

​  在本小节中,我们分别研究了不同奖励函数、状态处理模式、动作空间以及单个回合中的最大步数对结果的影响。所有实验均在基准训练模式下进行。
​  1)奖励函数的影响
​  2)状态处理模式的影响
​  3)µ和σ²缩放的影响
​  4)离散动作空间与连续动作空间的影响
​  5)最大步长Lepi的影响

C.定量比较

​  在本小节中,我们比较了基准训练和微调两种训练模式下不同方法的性能。
​  如表V所示,在基准训练模式下,我们的CoDE在F1和IoU指标上分别比IF-OSN提升了12.5%和16.3%,表现更优。

image-20250701144344273

​  在微调模式下,CoDE的F1和IoU平均分别提高了9.1%和9.9%,优于IF-OSN。此外,即使没有外部数据集进行预训练,我们的基准训练CoDE仍能显著超越其他微调模型,例如,在F1和IoU上分别平均提高了4.6%和6.2%。上述两种训练模式的结果表明,我们的方法CoDE在图像伪造定位方面具有更强的潜力。通过对比CoDE在基准训练和微调模式下的表现,后者在性能上有了全面的提升,特别是在COVERAGE和CASIA v1数据集上,F1分别提高了14.3%和8.2%。加权平均F1和IoU分别提高了4.3%和3.4%。

image-20250701144521425

​  图9展示了使用我们提出的CoDE方法进行图像伪造定位的视觉结果。伪造概率图初始设为0(即Pf (0) = 0)。由于策略在训练过程中已完全优化,代理可以采取良好的行动a (0),使Pf (1)接近Mgt。但这并不意味着任务已经结束,因为接下来的两个步骤将更加专注于精细的定位。

D.泛化性能

​  为了评估泛化性能,我们直接使用其他方法提供的预训练模型,在多个测试数据集上进行性能评估。需要注意的是,所有方法使用的训练集和测试集互不重叠。

image-20250701144616961

​  如表VI所示,与五种方法相比,我们的CoDE在平均F1值上分别提高了0.225(76.8%)、0.151(41.1%)、0.119(29.8%)、0.194(59.9%)和0.019(3.8%)。为了进一步揭示基于深度学习的数据对方法泛化性能的影响,我们还引入了基于生成对抗网络(GAN)的数据集(FF++)和基于扩散模型的数据集(CocoGlide)进行评估。即使与TruFor相比,我们提出的CoDE也表现出相当甚至更优的性能。值得注意的是,我们的训练集不包含任何来自GAN或扩散模型的数据。

E.后处理攻击的鲁棒性分析

​  在实际应用中,评估模型对不同水平的图像退化的鲁棒性是至关重要的。为此,我们对测试数据集进行了多种后处理攻击,包括JPEG压缩、高斯噪声、裁剪、高斯模糊和调整大小。在裁剪过程中,我们采用了中心裁剪,并引入了一个名为“裁剪率”(C R)的参数来控制裁剪区域的高度Hcr和宽度Wcr,具体公式见等式(25)。 \[H_{c r}=C R*H_{o r i.}\ \ \ \ W_{c r}=C R*W_{o r i}\] ​  其中Hori和Wori分别代表原始图像的高度和宽度。我们使用预训练模型对这些数据集进行评估,并计算加权平均F1值。

image-20250701144815839

​  如图10所示,随着各种后处理攻击强度的增加,我们的CoDE相比其他方法表现出显著更低的性能下降。我们量化了图像退化前后性能的最大差距:TurFor在JPEG压缩、高斯噪声、裁剪、高斯模糊和调整大小下的性能分别下降了17.8%、46.1%、13.6%、43.1%和32.3%。相比之下,我们的CoDE在这些测试中的性能分别下降了19.3%、14.1%、1.0%、18.1%和8.7%。实验结果清楚地表明,我们的CoDE表现出显著较低的性能下降率,突显了其对不同强度的后处理攻击具有更好的稳定性。此外,与最先进的TruFor相比,我们的CoDE在JPEG压缩、高斯噪声、裁剪、高斯模糊和调整大小下的F1值平均提高了0.018(4.1%)、0.122(34.3%)、0.060(13.0%)、0.090(23.6%)和0.078(18.4%)。

F.在线社交网络的鲁棒性分析

​  在线社交网络(OSNs)带来了新的挑战性场景,其中图像经常同时被压缩和调整大小,并可能包含未知噪声。这一过程导致伪造图像中的篡改痕迹被稀释。

image-20250701145558695

​  根据表VII的数据,我们的CoDE在所有社交网络(OSNs)的平均F1值和IoU指标上表现最佳。具体而言,与MVSS-Net、PSCC-Net、CAT-Net v2、IF-OSN及TruFor相比,CoDE在所有社交网络上的平均F1值分别提升了0.311(91.6%)、0.154(34.8%)、0.238(66.5%)、0.170(39.9%)和0.050(9.2%)。

​  通过全面对比,我们发现CoDE在Facebook、微博和WhatsApp上的平均F1值几乎相同。微信对所有方法的性能影响最大,因为它可能同时进行高强度的JPEG压缩和图像调整。在微信平台上,与其它方法相比,CoDE分别提高了0.308(118.9%)、0.134(30.9%)、0.353(165.0%)、0.174(44.3%)和0.059(11.6%)。这些实验结果表明,CoDE能够有效抵御来自社交网络平台的混合后处理攻击,即使在篡改痕迹被显著削弱的情况下,也能保持较高的稳健性。

G.计算复杂性

​  为了评估我们的CoDE算法的计算复杂度,我们在CASIA v1数据集上进行了实验,所有图像都被统一调整为512×512的尺寸,并作为输入在单个Tesla A100 GPU上进行处理。我们对比了CoDE与MVSS-Net、PSCC-Net、CAT-Net v2和IF-OSN的计算复杂度。此外,我们还使用单个Tesla A100重新计算了这些方法的计算复杂度。

image-20250701145717011

​  如表VIII所示,我们的CoDE模型参数量较低,仅为2.11M。这是因为我们设计了轻量级的编码器和解码器模块。由于CoDE在每个训练周期中需要多次更新,因此其FLOPs相对较高。然而,得益于我们设计的双流状态编码器、伪造编码器以及八个基本解码器模块,这些模块在每个训练周期只需运行一次,而FPM-E和均值、方差、值模块则运行Lepi = 3次。在CASIA v1数据集上,我们的CoDE模型平均每张图像的推理时间为65毫秒,这一速度超过了大多数模型。

IV.结论

​  本文提出了一种基于深度强化学习的新型端到端框架CoDE,用于图像伪造定位任务。CoDE的目标是部署一个智能体,通过基于像素级高斯分布的连续动作,在多个步骤中迭代更新伪造概率图。设计的基于BCE的奖励函数专门针对稀疏分布的篡改区域,能够更高效地引导代理学习,从而提升收敛性能。此外,我们设计的双流状态编码器和轻量级解码器不仅提升了性能,还显著缩短了推理时间。广泛的实验结果表明,CoDE在各种数据集上的泛化能力和对各种后处理攻击的鲁棒性方面,均优于现有的深度学习方法。此外,CoDE即使在面对高度压缩的图像和通过在线社交网络传输引入的未知噪声时,仍能提供可靠的伪造定位结果。
​  在我们未来的工作中,我们将重点关注以下几个方面:定义更高效的图像伪造定位任务的状态表示、动作空间和奖励函数,以提高在半监督学习环境下的准确性和鲁棒性。此外,我们还计划将基于强化学习的框架扩展到更广泛的伪造定位场景,例如在视频中识别被剪辑或移除操作伪造的对象。