Query-efficient Attack for Black-box Image Inpainting Forensics via Reinforcement Learning
英文题目:《Query-efficient Attack for Black-box Image Inpainting Forensics via Reinforcement Learning》
中文题目:《基于强化学习的黑盒图像修复取证的高效查询攻击》
论文作者:Xianbo Mo; Shunquan Tan; Bin Li; Jiwu Huang
发布于:AAAI
发布时间:2025-04-11
级别:CCF-A
论文链接: https://doi.org/10.1609/aaai.v39i18.34147
论文代码:无
摘要
最近,图像修复已经成为恶意操纵自然图像的常用工具,这导致了修复取证的快速发展。尽管目前的取证方法已经显示出修复区域的精确定位和对图像后处理操作的可靠鲁棒性,但它们是否能够有效地抵抗现实场景中可能的攻击仍然不清楚。为了识别潜在的缺陷,我们提出了一种新的黑盒反取证框架来攻击修复取证方法,该框架使用强化学习来生成一个查询高效的对抗,命名为RLGC。为此,我们定义强化学习范式,对基于查询的黑盒反取证场景的马尔科夫决策过程进行建模。 具体来说,基于动作选择和查询取证方法,使用像素级代理对反取证图像进行调制,以获得相应的输出。之后,奖励函数通过这些输出来评估攻击效果和图像失真。为了最大化累积奖励,策略网络和值网络被集成,并通过异步优势演员-评论家算法进行训练。实验结果表明,RLGC在对抗取证图像无视觉可察觉失真的情况下,针对各种黑盒修复取证方法,以高查询效率的方式取得了显著的攻击效果,甚至超过了最具代表性的白盒攻击方法。
本文聚焦的问题
- 图像修复与取证:图像修复技术可以恶意地操纵自然图像,这使得图像修复取证方法的发展变得尤为重要。现有的取证方法虽然能够精确定位修复区域并抵抗图像后处理操作,但它们在真实世界场景中对抗攻击的能力尚不清楚。
- 攻击方法分类:攻击方法分为白盒攻击和黑盒攻击。白盒攻击需要目标网络的完整信息,而黑盒攻击则不需要。在图像修复取证中,由于取证方法通常是黑盒系统,因此研究黑盒攻击方法具有重要意义。
1. 损坏图像的定义
给定一个掩码,其中,表示图像中哪些像素是已知的(记为1)和哪些是未知的(记为0)。损坏图像 $$D$$ 可以表示为:
D = (d_{i,j,k})_{w \times h \times c} = (x_{i,j,k} \cdot m_{i,j})_{w \times h \times c}$$, 其中: - $X = (x_{i,j,k})_{w \times h \times c}$是原始图像。 - $m_{i,j}$是掩码。 - $d_{i,j,k}$是损坏图像的像素值。 ### 2. 图像修复的目标 图像修复的目标是找到一个修复图像$Y$,在掩码$M$指定的区域中填补缺失的像素,使得$Y$尽可能接近原始图像$X$。数学上可以表示为: $$\min_{Y \in \mathcal{I}} \| X - Y \| \quad \text{subject to} \quad Y = \theta_i(D)
其中:
-
\| \cdot \| $$是L2范数。
3. 图像修复取证的目标
图像修复取证的目标是检测图像是否被修复,并定位修复区域。给定一个真实掩码,取证方法 的目标是预测掩码$$M_p$$,使得 尽可能接近。数学上可以表示为:
其中:
- 是取证方法预测的掩码。
- 是取证算法。
- 是L2范数。
例子
假设有一个简单的2x2的图像,其像素值如下:
假设掩码为:
那么损坏图像为:
- 修复算法$$ \theta_i $$的目标是生成一个修复图像$$$$,使得$$$$尽可能接近$$$$。例如,修复后的图像$$ Y $$可能为:
- 取证算法的目标是预测掩码,使得尽可能接近真实掩码。例如,预测掩码可能为:
4.A3C算法
A3C是一种基于深度强化学习的算法。 A3C的基础是一个Actor‑Critic框架,其中Actor根据$$\pi(a_c|s_c)$$为当前状态$$s_c$$选择其动作,而Critic评估下一个状态$$s_n$$的值。通常,深度学习策略网络和价值网络被用作 A3C中的Actor和Critic。为了训练这些网络,**A3C利用 Actor相对于Critic的优势,即预期奖励与值的差异。**我们将策略网络和价值网络分别表示为P和V,并将它们的参数表示为$$\theta_p$$和$$\theta_v$$。在时间步t,状态N的预期奖励是针对后续状态$${s(t+i) \mid i=0,1,\dots,N-1}$$计算的:
- 短期奖励:$$\sum_{i=0}^{N-1} \lambda^i r(t+i)$$是从当前时间步$$t$$开始的接下来$$N$$步的奖励之和。
- 长期价值:$$\lambda^N V(s(t+N))$$是从时间步 t+N 开始的未来状态的价值估计。
这样设置为了在训练过程中更好地平衡短期奖励和长期价值,从而提高模型的训练效率和策略性能。
本文提出的方法
通过强化学习生成对抗性攻击,以在极少量查询次数下有效干扰图像修复取证方法,同时尽量减少对图像视觉质量的破坏。用于针对黑盒图像修复取证方法。
模型建模
- 环境模型:在RLGC中,修复取证方法作为环境模型,使用了IID‑Net(Wu和Zhou2022)。选择IID‑Net是因为其检测性能优异且对各种图像后处理操作具有鲁棒性。
- 智能体:基于A3C框架的多线程异步并行概念,我们为每个像素分配一个智能体。目标是使每个智能体能够通过考虑相邻像素的分布,自适应地确定其扰动方向 和幅度。
- 状态我们的状态集$$S$$由图像集$$\mathcal{I}$$组成,形成一个高维空间,其大小为$$256^{(w\times l\times c)}$$。然而,无需探索整个状态空间, 因为即使小的扰动也能带来优异的攻击性能。具体来说, 给定一个原始修复图像$$X_0\in \mathcal{I}$$,它作为初始状态$$S_0$$。
- 状态转移:从 转换到分别对应和 ,$$A_t$$是智能体在 状态采取的动作。
奖励函数需要同时考虑以下两个方面:
- 攻击效果(Attack Effectiveness):希望代理能够生成的对抗样本能够有效地误导鉴别器,使其无法准确检测到图像修复区域。
- 图像失真(Visual Distortion):希望生成的对抗样本在视觉上与原始图像尽可能接近,避免引入明显的失真,从而降低攻击被检测到的风险。
奖励映射函数计算如下:
- 攻击效果差异 RA:*用于衡量当前状态和下一个状态之间的攻击效果变化。具体计算如下:
- 如果 RA 为正,说明下一个状态的攻击效果更好;
- 如果 RA 为负,说明下一个状态的攻击效果更差。
- 视觉失真差异 RD:视觉失真差异用于衡量当前状态和下一个状态之间的图像失真变化。具体计算如下:
- 如果 RD 为正,说明下一个状态的图像失真更小;
- 如果 RD 为负,说明下一个状态的图像失真更大。

- 编码器:编码器模块使RLGC能够以高效的方式处理高维状态。**通过将这些状态压缩成低维表示,可以去除冗余信息,**从而促进我们的代理学习与反取证任务最相关的数据。
- Actor: 它根据编码器提取的特征生成一个指导攻击的策略。 为此,Actor模块为动作集的采样过程提供概率分布
- Critic:它用于值函数逼近。Critic模块的目标是基于编码器提供的特征来估计当前攻击图像的值函数,该值函 数被定义为智能体可以从当前攻击图像中获得的未来奖励的预期总和。
阅读总结
不足:
- 泛化性验证有限:虽提到对不同 inpainting 方法有鲁棒性,但测试范围集中于常见数据集和模型,缺乏跨域(如视频修复、不同压缩格式)的验证。
- 防御机制缺乏讨论:未对抗取证系统的防御手段(如随机化输出、查询模糊化、输入扰动检测)进行探讨。
改进方向:
- **扩展至多模态或视频反取证:**将 RLGC 推广至视频修复检测、音频篡改检测等更复杂的多模态场景。
- 精细的目标函数:从整体指标到“边界感知”,把奖励中的取证误差从全图 F1/IoU 拆到边界区与内区(取证更敏感处),对边界漏检给予更高奖励,避免出现“整体 F1 下降但边界仍可见”的伪提升。