Exploring Multi-view Pixel Contrast for General and Robust Image Forgery Localization

Zijie Lou1,2, Gang Cao1,2,∗,Kun Guo1,2,Haochen Zhu1,2, Lifang Yu3

1中国传媒大学媒体融合与传播国家重点实验室
2中国传媒大学计算机与网络科学学院
3北京平面设计学院信息工程系

摘要

​  图像伪造定位作为数字取证领域的基础性任务,其核心目标在于识别图像中的篡改区域。尽管现有深度学习方法已取得显著成果,但这些方法仅通过像素到标签的直接映射关系进行学习,未能充分挖掘特征空间中像素间的内在关联。针对这一缺陷,我们提出多视角像素对比算法(MPC)用于图像伪造检测。具体而言,我们首先采用监督对比损失对主干网络进行预训练,从图像内部、跨尺度和跨模态三个维度构建像素间关系模型,旨在提升同类图像的紧凑性并增强不同类图像的可区分性。随后,我们通过交叉熵损失对定位头进行微调,从而获得更精准的像素定位器。为与现有图像伪造定位算法进行全面公平的对比,我们使用三种不同规模的训练数据集对MPC进行训练。在小、中、大规模训练数据集上开展的大量实验表明,相较于现有最先进方法,本文提出的MPC不仅具有更强的泛化性能,还展现出更出色的抗后处理能力。相关代码将在https://github.com/multimediaFor/MPC平台开放获取。

1 引言

​  得益于图像处理技术与工具的迅猛发展,数字图像已变得极易被篡改。诸如假新闻、学术造假和犯罪活动等恶意图像篡改行为,对社会可能造成严重负面影响。更棘手的是,由于篡改痕迹难以察觉,这些被篡改区域往往肉眼难辨。因此,开发可靠的图像篡改取证技术显得尤为重要。
​  早期方法主要采用人工设计的特征来区分原始区域和篡改区域,例如颜色滤波器阵列[12]和局部噪声特征[38]。然而,由于依赖于先验统计模型,这些人工特征在面对未见过的篡改类型时难以有效泛化。近年来,基于深度学习(DL)的方法[2,3,8,14,16-18,21,25,27-30,32-35,43,46,47,51,54,57,59-61,63-67]在图像伪造定位领域取得了显著成果。凭借丰富的训练样本和强大的特征表示能力,这类深度学习方法在定位性能上明显优于传统方法。典型的图像伪造定位模型通常由深度特征提取器和像素级softmax/sigmoid分类器组成,并采用像素级交叉熵(CE)损失函数进行训练。为了有效区分篡改区域与真实区域,部分取证方法采用了专门的网络设计,例如多层特征融合[8,14,16,21,25,29,34,35,47]和注意力机制[8,16-18,21,25,28,34,35,51,67]。这些伪造定位模型的核心原理是利用深度网络将图像像素映射到高度非线性的特征空间。然而,它们通常直接在标签空间中学习像素到标签的映射关系,却忽视了特征空间中像素间的关联性。理想情况下,有效的伪造定位特征空间不仅需要1)考虑单个像素嵌入的分类能力,还需2)具备良好的组织结构,既能保证同类像素间的紧凑性,又能实现不同类别的可分离性。
​  为解决这一问题,我们提出了一种多视角像素级对比算法以实现更高效的图像伪造定位。具体而言,我们首先通过三种视角(图像内部、跨尺度和跨模态)的监督对比损失对主干网络进行预训练,从而构建像素特征空间。随后使用CE损失对定位头进行微调,以解决类别间判别问题。该方法通过对比损失机制,促使同一类别的像素特征(原始与原始、未篡改与篡改)相互靠近,而不同类别的像素特征(原始与篡改)彼此远离,从而增强类别内紧凑性和类别间可分离性。这种机制自然促进了微调阶段中定位预测的准确性提升。
​  近期如[41,60]等研究也采用对比学习方法进行图像伪造定位任务。但这些研究仅聚焦于图像内部像素对比度,同时使用对比损失和CE损失进行训练,并在有限测试数据集上验证其方案。与这些研究相比,我们通过对比损失从三个维度探索标注像素嵌入的结构信息:图像内部、跨尺度和跨模态。此外,我们采用两阶段训练策略,并在多个测试数据集上验证了所提方法的有效性。总体而言,我们的贡献包括:

  • 我们提出了一种多视角像素级对比算法(MPC)用于图像伪造定位。该方法采用两阶段训练策略,不仅能在标签空间中建模像素关系,还能在特征空间中进行建模。
  • 对比损失用于从三个维度塑造像素特征空间:图像内部、跨尺度和跨模态。通过多视角像素对比,可以获得结构良好的像素特征空间,从而提升定位性能。
  • 我们对现有的图像伪造定位方法进行了全面而公平的比较。广泛的实验表明,与最先进的方法相比,我们提出的MPC具有显著的性能优势。

2 相关工作

2.1 图像伪造定位

2.2 对比学习

3 方法

3.1 网络结构

​  我们的算法包含两个主要组件,包括主干网络和定位头,如图1所示。

image-20250801155942589

​  该模型将输入图像𝑋映射为密集嵌入\(\{X_i,\hat X_i\}=𝑓_{BAC}(X)\)。我们首次在取证任务中采用HRFormer,因其能在整个过程中保持高分辨率表征。这种高分辨率表征能够保留细粒度的取证线索,这对准确识别伪造行为至关重要。此外,我们的跨尺度与跨模态对比损失函数的设计依赖于HRFormer的架构设计。定位头\(f_{LOC}\)通过1×1卷积层与ReLU激活函数实现,将拼接后的\(\{X_i\}\)投影为评分图\(Y=f_{L O C}(C o n c a t(X_{1},X_{2},X_{3},X_{4}))\)
​  需要说明的是,我们采用了两阶段训练策略。具体来说,首先使用对比损失(公式4)对主干网络进行训练,随后冻结主干网络的权重。接着,我们使用CE损失(公式5)对定位头进行微调。

3.2 用于取证的多视图像素对比

​  在本研究中,我们开发了一种多视角像素级对比学习算法,以增强伪造像素检测的表征学习效果。我们将图像伪造定位任务转化为像素级二分类问题,即图像X的每个像素x必须被归类到类别y∈{0,1}中,其中“0”表示“原始”,“1”表示“篡改”。具体而言,给定伪造图像\(X\in\mathbb{R}^{H\times W\times3}\)时,主干网络会生成一系列多尺度特征\(\{X_{1},X_{2},X_{3},X_{4}\}\)\(\{\hat X_{1},\hat X_{2},\hat X_{3},\hat X_{4}\}\)。由于主干网络存在dropout机制,\(X_i\)\(\hat X_i\)存在差异。因此可以推导出x的像素嵌入向量\(x\in\mathbb{R}^{C}\)

​  图像内损失
​  我们首先探究图像中像素之间的结构关系。对于具有真实标签“1”的像素嵌入\(x\in X_1\),正样本\(x^+\)是该嵌入在\(X_1\)中其他标记为“1”的像素嵌入,而负样本\(x^-\)则是标记为“0”的像素嵌入。图像内对比损失函数定义如下: \[{\mathcal{L}}_{x}^{1}=-\log{\frac{\frac{1}{|{\mathcal{P}}_{x}|}\sum_{x^{+}\in{\mathcal{P}}_{x}\in X_{1}}\exp(x\cdot x^{+}/\tau)}{\sum_{x^{-}\in{\mathcal{N}}_{x}\in X_{1}}\exp(x\cdot x^{-}/\tau)}}\] ​  其中\({\mathcal{P}}_{x}\)\({\mathcal{N}}_{x}\)分别表示从\(X_1\)中随机采样的正负像素嵌入集合。‘·’表示内积,其中温度超参数为正数。这种图像内对比损失旨在学习判别性特征表示,有助于区分图像中的原始像素与伪造像素。通过将同一类像素嵌入拉近并推动不同类别的像素嵌入分开,可以提高类内紧凑性和类间可分离性[41,52,62]。

​  跨尺度损失
​  由于篡改区域通常具有不同尺寸特征,因此在不同尺度上融合特征对于增强定位算法的鲁棒性至关重要。与直接将低级特征整合到高级特征的[16,25]方法不同,我们的跨尺度对比损失是通过计算不同尺度特征之间的差异来实现的。具体而言,对于像素嵌入\(x\in X_1\),正负样本像素嵌入集合\({\mathcal{P}}_{x}\)\({\mathcal{N}}_{x}\)分别从图像的三个部分(即图像块、区域块和像素块)中采样获得。 \[{\mathcal{L}}_{x}^{2}=-\log{\frac{\frac{1}{|{\mathcal{P}}_{x}|}\sum_{x^{+}\in{\mathcal{P}}_{x}\in X_{2}\cup X_{3}\cup X_{4}}\exp(x\cdot x^{+}/\tau)}{\sum_{x^{-}\in{\mathcal{N}}_{x}\in X_{2}\cup X_{3}\cup X_{4}}\exp(x\cdot x^{-}/\tau)}}\] ​  因此,不同尺度之间的密集连接能够有效地交换信息,这对于提取抗尺度变化的稳健的特征很有帮助。

​  跨模态损失
​  受自然语言处理领域自监督学习的启发,本研究进一步整合跨模态对比学习以增强法医鉴别能力。具体而言,图像𝑋被依次输入主干网络两次,生成两个特征图版本\(X_i\)\(\hat X_i\)。由于随机dropout机制的作用,这两个特征图具有相似性但不完全相同。这种双重编码方式在不增加网络复杂度的前提下,通过扩展可训练样本数量,形成了两种不同模态的训练样本。对于像素嵌入\(x\in X_1\),正负像素嵌入集合\({\mathcal{P}}_{x}\)\({\mathcal{N}}_{x}\)从数据集\(\hat X_i\)中采样获得。然后采用跨模态对比损失函数 \[{\mathcal{L}}_{x}^{3}=-\log{\frac{\frac{1}{|{\mathcal{P}}_{x}|}\sum_{x^{+}\in{\mathcal{P}}_{x}\in \hat X_{1}}\exp(x\cdot x^{+}/\tau)}{\sum_{x^{-}\in{\mathcal{N}}_{x}\in \hat X_{1}}\exp(x\cdot x^{-}/\tau)}}\] ​  考虑到计算复杂度,我们采用分辨率最高的特征\(X_1\)来计算\({\mathcal{L}}_{x}^{1}\)\({\mathcal{L}}_{x}^{3}\)。总体而言,在训练主干网络时使用的总多视角对比损失函数\({\mathcal{L}}_{x}^{Contra}\)定义为 \[{\mathcal{L}}_{x}^{Contra}={\mathcal{L}}_{x}^{1}+{\mathcal{L}}_{x}^{2}+{\mathcal{L}}_{x}^{3}\]

3.3 监督式像素级伪造检测

​  完成训练后,将冻结主干网络的权重。随后对定位头进行微调,将投影\(\{X_{1},X_{2},X_{3},X_{4}\}\)转换为评分图\(Y\)。设𝑦为像素𝑥的评分向量(通过sigmoid激活),即.,\(𝑦\in Y\).。给定像素𝑥相对于其真实标签\(\hat 𝑦\in\{0,1\}\),的𝑦值,优化改进后的交叉熵损失函数[31]。 \[\begin{aligned}\mathcal{L}_{x}^{\mathrm{CE}}(\hat{y},y)=&-\alpha\,(1-y)^{\gamma}\times\hat{y}\log\left(y\right)\\ &-(1-\alpha)y^{Y}\times(1-\hat{y})\log\left(1-y\right)\end{aligned}\] ​  其中𝛼和𝛾是超参数,通常经验性地设置为0.5和2。虽然对比学习会促使图像中的像素根据其标签聚类,但基于CE损失的微调会重新排列这些聚类,使其落在决策边界正确的那一侧。

4 实验

4.1 实验设置

​  数据集
​  为了与现有算法进行全面、公平的比较,我们在不同规模的训练数据集上进行了三组实验,如表1所示。各实验的配置如下:

  • 实验一
    基于前期研究[8,25],我们的模型在包含5123张篡改图像的CASIAv2数据集[9]上进行训练。随后我们使用另外10个数据集对模型进行测试,包括CASIAv1 [9]、NIST [15]、Columbia[20]、IFC [1]、IMD [42]、Coverage [53]、DSO [4]、DEF-test [39]、Wild [22]和Korus [26]。在实验1中,所有模型均仅在CASIAv2数据集上进行训练。
  • 实验二
    在完成[17,28,34,59,61,65]阶段后,我们还从CAT-Net数据集[27]中随机选取了60,000张篡改图像进行模型预训练。在后续微调MPC时,我们沿用了与NIST、Coverage和CASIA实验相同的训练-测试比例配置。最后,我们在四个数据集(即CASIAv1 [9]、NIST [15]、IMD [42]和Coverage [53])上进行测试。实验2中所有模型均在等比例缩放的数据集上进行训练,以确保公平比较。
  • 实验三
    我们的模型使用与CAT-Net [27]和TruFor[16]相同的训练数据集进行训练,并在其他10个公开数据集上进行测试,包括CASIAv1 [9]、NIST [15]、Columbia[20]、Coverage [53]、DSO [4]、Wild [22]、Korus [26]、MISD [23]、CoCoGlide [16]和FF++ [45]。由于计算资源的限制,我们仅将我们的方法与在相同数据集上训练的CAT-Net和TruFor进行对比。

​  指标
​  与先前研究[16,25,54]类似,我们通过F1值和交并比(IoU)来评估像素级伪造检测的准确度。采用固定阈值0.5对定位概率图进行二值化处理。各测试数据集的平均F1值和IoU值被用作伪造检测算法的统计性能指标。考虑到不同数据集间图像样本数量存在明显不平衡,所有测试数据集的平均F1值和IoU值均按以下方式计算: \[\mathrm{Average}={\frac{\sum_{i=1}^{i=N}{\mathrm {Metric}}_{D_i}\times\mathrm{Num}_{D_{i}}}{\sum_{i=1}^{i=N}\mathrm{Num}_{D_{i}}}}\] ​  其中\({\mathrm {Metric}}_{D_i}\)表示第i个数据集的平均指标(F1或IoU),\({\mathrm {Num}}_{D_i}\)表示该数据集包含的图像数量。这种指标本质上是样本级别的平均值,而非简单的数据集级算术平均值。等式6中的计算方法适用于现有文献中仅提供各数据集指标\({\mathrm {Metric}}_{D_i}\)的场景,用于重新计算样本级别的平均值。

​  具体实施细节
​  所提出的MPC算法由PyTorch实现。我们在单个A800 GPU上分两个阶段训练网络:第一阶段学习率从1e-4开始,采用“平台期降速策略”逐步降低;第二阶段学习率同样从1e-4起始,但改用“余弦退火策略”进行调整。优化器选用Adam,批量大小设为4,所有训练图像均调整为512×512像素尺寸。作为数据增强手段,我们采用了包括翻转、模糊、压缩、加噪和缩放在内的常见处理方式。

4.2 与State-of-the-Arts的比较

​  实验一
​  我们将MPC的性能与16种现有的图像伪造定位或语义分割算法进行比较,所有这些算法都是在CASIAv2数据集上训练的。

image-20250801163131701
image-20250801163202176

​  表2和表3展示了不同方法在像素级定位性能上的评估结果。总体而言,我们的方法取得了最高的平均定位精度,在F1值和交并比(IoU)方面分别领先第二名PIM[25]3.7%和2.9%。此外,我们的方法在6个数据集上获得了最佳的F1值,在7个数据集上则在交并比(IoU)方面表现最优。尽管这10个测试数据集的分布形态各异,但我们的MPC方法在定位性能上仍超越了所有先前研究。这些亮眼的成绩充分展现了该方法在各类伪造图像中展现出的高精度定位能力和强大的泛化能力。这些优势对于推动法医定位技术向现实应用领域发展具有重要意义。
​  此外,我们发现仅在小规模CASIAv2数据集上训练时,基于Swin-ViT [36]构建的简单语义分割网络定位性能,已超越大多数专门设计的取证算法[8,21,27,33,34,55]。这些结果表明,当训练数据集规模不足时,现有多数取证算法可能无法有效学习其依赖的篡改痕迹特征。相比之下,我们的多视角对比学习(MPC)方法不依赖特定取证线索,而是通过多视图对比学习构建结构化特征空间,从而实现原始像素与篡改像素的有效区分。

​  实验二
​  如文献[8,17,18,21,28,29,32,34,35,47,51,57,59-61,63-65,67]所述,这类实验通常采用中等规模数据集(样本量6万∼10万)进行预训练,随后在测试集子集上进行微调。由于缺乏额外的测试数据集,此类实验无法准确反映模型的泛化能力。不过为确保公平比较,我们仍沿用现有19种图像伪造定位方法的实验设置。

image-20250801163414873

​  表5为实验2中微调模型的对比结果,标记为“-”的未获得结果的情况是由于文献中未公开源代码或未给出测试结果。相较于现有方法,我们的MPC模型在平均F1分数上表现最佳,并且比排名第二的TBFormer [35]高出3.8%。需要特别说明的是,TBFormer未在IMD数据集上进行测试——这对评估伪造检测算法的泛化能力至关重要。与同样采用对比学习的PCL [60]相比,MPC模型的改进幅度可超过24.5%。总体而言,我们的MPC模型能够适应不同分布的数据集,并展现出具有竞争力的定位性能。

​  实验三
​  在本系列实验中,我们将方法与CAT-Net [27]和TruFor [16]进行对比。所有模型均使用包含80万余张篡改图像的CAT-Net数据集[27]进行训练。

image-20250801163558907

​  表4展示了不同方法在10个测试数据集上的F1值和交并比表现。我们的MPC方法在哥伦比亚、CASIAv1、Coverage、MISD和CoCoGlide数据集上超越TruFor,但在其余数据集上稍逊一筹。平均而言,我们的方法在F1值和交并比上分别比当前最佳的TruFor高出1.4%和0.9%。总体而言,我们的MPC方法在伪造定位性能上与TruFor旗鼓相当,并且在所有数据集上均优于CAT-Net。此外,我们的方法具有参数更少的优势。虽然CAT-Net(1.143亿参数)和TruFor(6870万参数)分别采用基于HRNet [50]和SegFormer [56]的双分支架构,但我们的MPC(4180万参数)仅采用单分支HRFormer架构。我们的方案避免了额外模块的设计,以更低的计算成本实现了相当甚至更优的定位性能。

4.3 鲁棒性评估

​  我们首先评估图像伪造定位方法对社交网络(OSNs)复杂后处理操作的鲁棒性。参照先前研究[54],我们测试了通过Facebook、Weibo、Wechat和Whatsapp平台传输的四个伪造数据集。表6显示,我们的方法在各社交网络平台的四个数据集中均保持最高准确率。

image-20250801163704753

​  在对比方法中,MPC因OSNs的影响而产生的性能损失最小。值得注意的是,CAT-Net由于专门学习JPEG压缩伪影,在处理Columbia数据集时表现更优。但该方法在其他数据集上明显性能下降——例如在Facebook版Columbia数据集上F1=91.8%,而在Wechat版CASIAv1数据集上F1=13.9%。相比之下,我们的MPC在所有社交网络传输中始终保持高定位准确率。这些结果验证了MPC对社交网络处理的鲁棒性。
​  在先前研究[8,34]的基础上,我们还在Columbia数据集上评估了模型对JPEG压缩、高斯模糊、高斯噪声和图像缩放等后处理的鲁棒性。如图2所示结果验证了我们的MPC模型对这些后处理具有高度鲁棒性。

image-20250801163858679

​  MPC在所有测试场景中均表现最佳。特别值得注意的是,模糊处理和噪声干扰会显著降低CAT-Net和TruFor的性能,但对我们的方法影响微乎其微。以噪声干扰为例,虽然CAT-Net和TruFor的F1值分别从0.8骤降至0和0.5,但MPC在不同噪声强度下的表现始终稳定在0.9以上。
​  我们进一步验证了MPC算法在组合后处理操作中的鲁棒性。具体而言,在OSN传输完成后,我们在Columbia数据集上应用了额外的JPEG压缩、高斯模糊、高斯噪声和图像缩放处理。为模拟真实世界的后处理流程,所有操作顺序均采用随机化处理。表7展示了相应的统计测试结果,图3则呈现了示例测试图像的定性评估结果。

image-20250801164022849
image-20250801164043501

​  可以观察到,CAT-Net算法无法抵御任何组合后的处理方式。TruFor的定位性能也严重受损,几乎无法使用。相比之下,我们的MPC展现出显著更强的鲁棒性,以明显优势超越CAT-Net和TruFor。这种结果归因于CAT-Net和TruFor依赖特定篡改痕迹(如JPEG伪影和噪声不一致性)。我们的方法致力于通过对比学习增强原始像素与篡改像素之间的类内紧凑性和类间可分离性。此外,训练过程中采用的数据增强策略也能进一步提升我们MPC的鲁棒性。

4.4 消融研究

​  我们进行了大量消融实验来验证所提出的MPC的有效性。相关子实验的总结如表8所示。

image-20250801164142032

​  多视图像素对比度的有效性
​  我们移除三种对比损失中的其中一种,并通过评估定位性能的下降幅度来验证每种损失带来的性能提升。在MPC框架中,图像内损失\({\mathcal{L}}_{x}^{1}\)最为关键,其缺失会导致定位性能出现灾难性崩溃。这是因为通过图像内对比损失来提升类间紧凑性和类内可分离性,正是我们研究的核心目标。此外,跨模态损失\({\mathcal{L}}_{x}^{3}\)带来的性能提升效果优于跨尺度损失\({\mathcal{L}}_{x}^{2}\)。这一结果归因于所采用的dropout机制:该机制引入具有挑战性的样本,从而增强了模型识别被篡改像素区域的能力。

​  主干网络的影响
​  我们还研究了网络规模对性能的影响。尽管HRFormer-base(41.8M)相比HRFormer-small(8.2M)的网络复杂度有所增加,但性能表现仍显著提升。这种改进归因于参数更丰富的大型模型可能具备更强的表征学习能力。不过与CAT-Net(114.3M)和TruFor(68.7M)相比,我们的MPC(41.8M)依然保持了轻量化优势。

4.5 定性结果

​  我们还对不同方法的定位性能进行了定性对比。从测试数据集中选取了涵盖三种常见篡改类型(即拼接、复制移动和删除)的样本进行分析。图4展示了各方法在示例图像上的像素级伪造定位结果。

image-20250801164444941

​  可以看出,我们的方法对各类伪造图像都能生成更精准的定位结果。在大多数情况下,其他定位方法只能检测到篡改区域的部分特征,且存在不同程度的误报。
​  除了传统图像伪造案例,我们还对定位算法在新型伪造图像上的表现进行了定性对比。具体而言,我们分别从FF++ [45]和CoCoGlide [16]数据集中选取了深度伪造图像和本地AI生成图像进行测试。FF++中的合成人脸图像是通过Face2Face [49]等面部交换算法生成的,而CoCoGlide中的本地AI生成图像则由GLIDE扩散模型[40]生成。如图5所示,尽管训练过程中未包含此类图像类型,我们的方法仍能精准识别出被篡改区域。相比之下,TruFor算法容易产生更多误判和漏检,而CAT-Net几乎完全失效。这些结果充分证明了我们提出的多视图像素级对比学习方法具有强大的泛化能力。

5 结论

​  本文提出了一种名为MPC的新型可信图像伪造定位方案。首先通过像素级监督对比损失训练主干网络,从图像内部、跨尺度和跨模态三个维度建模特征空间中的像素关系。随后利用CE损失对定位头进行微调,从而获得更精准的像素定位器。我们通过三组主流实验与现有图像伪造定位方法进行全面公平的对比验证。大量实验表明,相较于现有技术,我们的方法展现出更强的泛化能力和鲁棒性。MPC在应对在线社交网络的复杂后处理及操作链路时表现出优异的抗干扰能力。未来研究将致力于开发更强大的取证算法,以应对低光环境图像和新型AI生成图像等极具挑战性的伪造场景。