TPAMI' 2022
paper: https://arxiv.org/abs/2112.08935
code: https://github.com/dong03/MVSS-Net
摘要:由于通过复制移动、拼接和/或绘制来操纵图像可能导致对视觉内容的误解,因此检测这些类型的操作对于媒体取证至关重要。考虑到对内容的各种可能的攻击,设计一种通用的方法是非常重要的。当前基于深度学习的方法在训练数据和测试数据一致时很有前景,但在独立测试时表现不佳。此外,由于缺乏真实的测试图像,其图像级检测特异性值得怀疑。关键问题是如何设计和训练一个深度神经网络,使其能够学习对新数据操作敏感的可泛化特征,同时防止真实数据的误报。我们提出了多视图特征学习来共同利用篡改边界伪影和输入图像的噪声视图。由于这两个线索都是语义不可知论的,因此学习到的特征是可概括的。为了有效地从真实图像中学习,我们使用多尺度(像素/边缘/图像)监督进行训练。我们将新网络命名为MVSS-Net及其增强版本MVSS-Net++。在数据集内和跨数据集场景下进行的实验表明,MVSS-Net++表现最佳,并且对JPEG压缩、高斯模糊和基于截图的图像重捕获具有更好的鲁棒性。
1 INTRODUCTION
数字图像现在可以轻松地以视觉上难以察觉的方式进行操作[1]。copy -move(将给定图像中的元素从一个区域复制并移动到另一个区域)、splicing(从一个图像中复制元素并将其粘贴到另一个图像上)和inpainting(删除不需要的元素)是三种常见的图像操作类型,它们可能导致误解,从而恶意使用视觉内容[2]、[3]、[4]、[5]。在给定的图像中自动检测这些类型的操作的存在对于媒体取证和网络空间中可靠的信息共享至关重要。我们的目标不仅是区分被操作的图像和真实的图像,而且是在像素水平上精确定位被篡改的区域。
虽然图像内容篡改早已存在,但媒体取证是一个相对较新的研究领域[5]。传统上,从给定的图像中提取精心手工制作的特征,以捕捉其篡改和真实区域之间的细微差异。通过各种方法计算差异,包括基于媒体格式的压缩伪影[6],[7],基于物理的光照不一致性[8],[9],统计建模[10],局部噪声估计[11]等。然而,由于对数字内容的各种可能的攻击,该领域的一个主要挑战是操作检测可能无法通过单一信息来源的单一方法解决。更让问题变得棘手的是,当图像在社交媒体平台上上传和传播时,常规的低级图像处理,如调整大小、重新压缩、重新捕获和图像美学增强,不可避免地削弱了法医痕迹[12]。毫无疑问,为了克服这些挑战,最新的技术是基于深度学习的[13],[14],[15],[16],[17],[18],特别是专注于像素级操作检测[13],[15],[16],也称为操作定位[19]。仅考虑两类(操作与真实),该任务似乎是图像语义分割的简化情况。然而,一个现成的语义分割网络对于任务来说是次优的,因为它被设计为捕获语义信息,使得网络依赖于数据集而不泛化。先前的研究[16]报道了在CASIAv2数据集[21]上训练的DeepLabv2[20]在与CASIAv2同源的CASIAv1数据集[22]上表现良好,而在非同源的COVER数据集[23]上表现较差。本研究也观察到FCN的类似行为[24]。人们越来越认识到,当训练数据和测试数据在数据源和操作方法上很好地对齐时,深度神经网络(DNNs)表现良好,但在独立测试中往往表现不佳[19]。因此,关键问题是如何设计和训练一个深度神经网络,使其能够学习对操作敏感的语义不可知特征,同时又能防止误报?
为了学习语义不可知的特征,必须抑制原来在RGB视图中呈现的图像内容。根据抑制发生的阶段,我们将现有方法分为两类,即噪声视图方法[14]、[15]、[17]、[18]、[25]和边缘监督方法[13]、[16]。假设通过拼接和/或引入的新元素在噪声分布方面与真实部分不同,噪声视图方法旨在利用这种差异。输入图像的噪声图,由预定义的高通滤波器[29]或可训练的对应滤波器[25],[30]生成,单独[17],[25]或与输入图像[14],[15],[18]一起输入到DNN中。注意,这些方法对于检测没有引入新元素的copy-move是无效的。边缘监督方法试图在篡改区域周围找到边界伪影,通过使用目标检测头回归一个覆盖区域的边界框[14],[17]或使用辅助分支重建区域的边缘[13],[16]来实现。注意,现有技术将来自主干不同层的特征统一求和[13]或连接[16]作为辅助分支的输入。因此,有一种风险是,负责操作检测的更深层特征仍然是语义感知的,因此无法推广。
为了衡量模型的可泛化性,常用的评估方案[13]、[15]、[16]、[18]是首先在公共数据集(如CASIAv2[21])上训练模型,然后在其他公共数据集(如NIST16[31]、Columbia[32]和CASIAv1[22])上进行测试。然而,令我们惊讶的是,评估仅在处理过的图像上执行,并报告了像素级指标。模型的特殊性被忽略了,它揭示了它如何处理真实的图像,因此对现实世界的可用性至关重要。如图1所示,传统的误差水平分析(Error Level Analysis, ELA)和当前的深度学习方法[13]、[15]、[18]都会对真实图像产生严重的虚警。由于目前的方法主要是使用逐像素的分割损失,而真实样本可以贡献的损失很小,因此这些方法很难利用真实数据作为整体上下文来提高它们的特异性。
考虑到利用噪声视图和原始RGB视图的需要,以及联合考虑局部边缘信息和整体上下文的需要,设计一个执行一般操作检测任务的深度神经网络是很重要的。我们从其他研究领域的当代进展中获得灵感。在通用语义分割的背景下,Border Network[33]逐步聚合特征来预测目标边界。我们将该技术用于跟踪操作区域周围的细微边界伪影。在医学图像分析的背景下,LesionNet[34]采用了一种图像分类损失来分割彩色眼底照片中的视网膜病变。我们借用这个想法来考虑真实的图像。我们提出用多尺度监督网络(MVSS-Net系列)进行多视图特征学习,用于图像处理检测。注意,前面的几种方法可能会间接地学习边界伪影以及噪声视图,例如通过边界盒回归任务[14]。据我们所知(表1),我们是第一个联合利用噪声视图和显式提取的边界伪影来学习操作检测特征的人。在多尺度的监督下,我们也开始尝试从真实的数据中学习。注意,上面的联合开发在技术上是非常重要的。例如,简单地添加图像分类损失可以提高模型的特异性,但代价是像素级检测性能的显著下降,正如我们的实验所示。要把这两个世界的精华结合起来,就需要新的网络。
综上所述,我们的主要贡献如下:
(1)提出了一种新的图像处理检测网络MVSS-Net。如图2所示,MVSS-Net的技术优势在于它能够以端到端的方式共同利用多视图输入、显式提取的边界构件和整体信息。多视图特征学习的目的是提取语义不可知的特征,从而获得更一般化的特征。
(2)通过多尺度监督进行网络训练。这使我们能够有效地从真实的图像中学习,而这些图像被现有技术所忽略。因此,大大提高了操作检测的特异性。
(3)在多个基准测试中优于SOTA。在两个训练集和六个测试集上进行的大量实验表明,MVSS-Net优于SOTA。真实测试图像的包含揭示了模型在图像级别的检测特异性。代码和模型在GitHub1。
这项工作的初步版本在ICCV 2021上发表[35]。期刊文章在多个方面都比会议论文有所改进。首先,为了将像素级操作检测转换为图像级预测,我们提出用ConvGeM来取代[35]中使用的全局最大池(GMP)。新模块有效地克服了GMP的两个缺点,即图像尺度损失反向传播的瓶颈,以及缺乏考虑正响应数量和空间分布的能力。这就产生了一个更好的MVSS-Net++模型。其次,我们通过引入另外三种基线方法,即H-LSTM[3]、SPAN[18]和CA T-Net[28],以及最近发布的数据集,即IMD[36],来加强我们的评估。此外,我们提出了一项关于当前模型如何对通过截图重新捕获的操做图像做出反应的试点研究,这是图像在互联网上传播时的一种常见操作。
2 RELATED WORK
我们受到最近一些工作的启发,这些工作对学习用于图像处理检测的语义不可知特征进行了新颖的尝试,见表1。我们将简要描述这些尝试是如何实现的,并相应地解释我们的新奇之处。我们专注于深度学习方法的复制移动/拼接/绘制检测。对于低级操作的检测,如高斯模糊和JPEG压缩,我们参考[30]。
为了抑制内容信息,Li和Huang[25]提出用可训练的高通滤波器实现FCN的第一个卷积层,并将他们的HP-FCN用于图像检测。Kown等[28]模型量化了DCT系数分布来跟踪压缩伪影。Yang等人使用BayarConv[30]作为其CR-CNN的初始卷积层[17]。尽管这种约束的卷积层有助于提取噪声信息,但单独使用它们有丢失原始RGB视图中其他有用信息的风险。因此,我们看到越来越多的工作利用RGB视图和噪声视图的信息[14],[15],[18],[26],[27],[28]。Zhou等[14]开发了一种双流Faster R-CNN,提出了RGB- N,它以空间丰富模型(SRM)生成的RGB图像及其对应的噪声作为输入[29]。Rao和Ni也使用SRM[27],而Wu等[15]和Hu等使用SRM[18]同时使用BayarConv和SRM。给定来自不同视图的特征,需要进行特征融合。Mantra-Net[15]、SPAN[18]和JPEG-ComNet[27]采用的是早期的特征拼接,CAT-Net[28]采用的是中期的特征拼接。另外,MM-Net[26]在中间阶段进行特征融合,其中噪声视图分支的特征被用作注意图,以重新加权RGB视图分支的特征。我们的MVSS-Net更接近RGB-N,因为它在后期进行特征融合。然而,与RGB-N中使用的不可训练双线性池不同,MVSS-Net中使用的双重注意是可训练的,因此更具选择性。
由于对给定图像中特定区域的操作不可避免地会在篡改区域与其周围区域之间留下痕迹,因此如何利用这种边缘伪影对操作检测也很重要。saloum等人开发了一种多任务FCN (MFCN)来对称预测篡改区域及其边界[13]。GSR-Net有一个接受不同层次特征的边缘检测和细化分支[16]。最近的JPEG-ComNet[27]应用RGB视图特征的边界关注来预测被操纵区域的边缘,随后利用预测来改进操作分割。鉴于区域分割和边缘检测本质上是两个不同的任务,挑战在于如何在两者之间取得适当的平衡。在JPEG-ComNet中直接使用更深的特征进行边缘检测有影响操作分割的主要任务的风险,而在MFCN和GSR-Net中使用的将所有特征放在一起可能会让更深的特征被边缘分支忽略。我们的MVSS-Net有一个边缘监督分支,可以有效地解决这些问题。
最后,我们观察到很少报道图像处理检测器的特异性,即它如何响应真实图像。事实上,主流的解决方案是在语义分割网络中开发的。自然,它们是在操作分割的背景下对被操作的图像进行训练和评估的[16]。在训练和测试阶段缺乏真实图像自然会引起对检测特异性的关注。在本文中,我们做了一个新颖的尝试,包括真实的图像用于训练和测试,这是现实世界部署的重要一步。此外,与之前基于测试数据选择模型决策阈值的常见做法不同,我们主张使用默认阈值0.5。这样的评价实际上也很重要。
3 PROPOSED MODEL
给定一个大小为W × H × 3的RGB图像x,我们的目标是一个多头深度网络G,它不仅确定图像是否被操作,而且还确定其被操作的像素。特别是,我们让G有一个语义分割头,用Gseg表示,用于生成一个全尺寸概率图,用S(x)表示,它表示在像素级别上操作的概率。我们可以通过Si,j(x), i = 1...W, j = 1…H 来访问像素级的分数。同时,网络有一个图像分类头Gclf输出C(x):图像被操纵的概率。由于图像级决策自然受到像素级证据的影响,我们从分割图中得出C(x):
(1)式提供了我们网络的高级草图。
为了提取可泛化的操作检测特征,G被设计为同时接受输入图像的原始RGB视图和额外的噪声视图。为了在检测灵敏度和特异性之间取得适当的平衡,多视图特征学习过程由像素、边缘和图像三个尺度的注释共同监督。所有这些都导致了多视图多尺度监督网络(MVSS-Net)。
3.1 Multi-View Feature Learning
MVSS-Net有两个分支,都以ResNet-50[37]作为主干。图2顶部的边缘监督分支(ESB)专门用于利用篡改区域周围的细微边界伪像,而底部的噪声敏感分支(NSB)用于捕获篡改区域和真实区域之间的噪声不一致性。这两条线索都是语义不可知论的。
3.1.1 Edge-Supervised Branch
理想情况下,通过边缘监督,我们希望网络的响应区域更集中在被篡改的区域。设计这样一个边缘监督网络是非常重要的。如上文2所述,主要的挑战是如何为边缘检测头构造一个合适的输入。一方面,直接使用最后一个ResNet块的特征是有问题的,因为这将强制使用深层特征来捕获低级边缘模式,从而影响操作分割的主要任务。而另一方面,使用初始块中的特征也是有问题的,因为这些浅层特征中包含的微妙边缘模式在多次深度卷积后很容易消失。因此,浅层和深层特征的联合使用是必要的。然而,我们认为,像以前在[16]中使用的简单特征串联是次优的,因为特征是混合的,并且不能保证更深的特征将从边缘头获得足够的监督。为了克服这一挑战,我们建议以一种从浅到深的方式构建边缘头的输入。
如图2所示,来自不同ResNet块的特征以渐进的方式组合在一起,用于操作边缘检测。为了增强与边缘相关的图案,我们引入了Sobel层,如图3(a)所示。Sobel层背后的基本思想是通过使用与边缘相关的权重来区分给定特征映射中与边缘相关的像素和其他像素。为了获得这样的注意图,我们让特征图经过经典的Sobel滤波器,该滤波器广泛用于识别候选边缘像素[38],然后是批处理归一化层和L2 Norm层,最后是sigmoid (σ)层。然后使用带有元素乘法的注意图对特征图进行重新加权。
由block #i生成的特征映射,经过Sobel层增强,然后经过边缘残差块(ERB),见图3(b),然后与block #i+1的对应块组合(通过求和)。为了防止累积的影响,忽略最后一个块的特征。我们让组合的特征在下一轮特征组合之前经过另一个ERB(图2中顶部)。我们相信这样的机制有助于防止极端情况,其中更深层的特征要么被过度监督,要么被边缘头完全忽略。在图4中可视化最后一个ResNet块的特征映射,我们观察到提议的ESB确实在篡改区域附近产生了更集中的响应。
ESB的输出有两个部分:来自最后一个ResNet块的特征映射,表示为{fesb,1,…, fesb,k},用于主要任务,以及将最后一个ERB的输出用sigmoid (σ)层变换得到的预测操作边缘映射,记为Sedge(x)。ESB分支的关键数据流在概念上由Eq.2表示。
3.1.2 Noise-Sensitive Branch
与ESB并行,我们构建一个噪声敏感分支(NSB)。NSB被实现为标准的FCN(另一个ResNet-50作为其骨干),但它的输入是给定图像的噪声视图,而不是原始的RGB视图。在噪声提取的选择上,我们采用BayarConv[30],因为发现BayarConv优于SRM滤波器[17]。
根据Bayar和Stamm [30], BayarConv的发展是为了增强给定图像中被操作区域和真实区域之间的噪声不一致性。为此,BayarConv层被实现为一组可训练的预测误差过滤器。每个滤波器的响应设计为滤波器窗口的中心像素值与窗口内剩余像素值的线性组合之间的误差。更具体地说,给定一个以ω为参数化的特定卷积滤波器,以ω(0,0)为中心元素,BayarConv施加两个约束,即ω(0,0) = - 1和 。在每次训练迭代后对ω施加约束。
如图2所示,让给定图像x经过核尺寸为5 × 5 × 3的BayarConv层,我们得到其全尺寸噪声视图BayarConv(x)。NSB分支的输出是k个特征映射的数组,它来自其主干的最后一个ResNet块,即
3.1.3Branch Fusion by Dual Attention
给定两组特征映射{fesb,1,…, fesb,k}和{fnsb,1,…, fnsb,k}来自ESB和NSB,我们建议通过可训练的双注意(Dual Attention, DA)模块来融合它们[39]。这是新的,因为以前的工作[14]使用双线性池进行特征融合,这是不可训练的。
DA模块有两种并行的注意机制: 通道注意(CA)和位置注意(PA),如图5所示。 CA将通道特征关联起来,选择性地强调相互依赖的通道特征映射。同时,PA通过所有位置特征的加权和,选择性地更新每个位置的特征。将CA和PA的输出相加,并通过1 × 1的卷积变换成大小为w/16 × h/16的特征图,记为s' (x)。通过无参数的双线性上采样,再加上一个逐元素的sigmoid函数,将s' (x)转换为全尺寸分割图S(x)。基于数据分析的分支融合在概念上表示为
3.2 ConvGeM for Image-Level Prediction (图像级预测的ConvGeM)
对于Eq. 1中的Gclf,一个直接的实现是全局最大池化(GMP),正如我们之前在会议论文[35]中使用的那样。GMP取S(x)最大值为C(x),即C (x) = Si∗j∗(x)与(i∗,j∗)= argmaxi,j Si, j (x)。虽然GMP将C(x)直接连接到S(x),但由于以下两个缺点,我们认为这种操作不是最优的。首先,由于图像分类损失实际上是基于Si∗,j∗(x)计算的,因此梯度w.r.t.损失仅通过唯一点(i∗,j∗)反向传播。这样的瓶颈不仅减慢了分类头的训练速度,而且阻碍了分类头对整个网络的引导。其次,GMP对阳性反应的数量及其空间分布是不变的。然而,这两个属性对于有意义的像素级检测结果都很重要。根据格式塔理论[40],人类感知的视觉模式与它们的空间背景有关。根据这个理论,为了有效的欺骗,在给定的图像中,一定数量的像素必须以一定的配置同时被操作。因此,偶尔出现的积极反应更有可能是噪音,而不是空间分组的对应反应。区分它们超出了GMP的能力。
我们注意到,最初提出用于图像检索的广义均值池(GeM)[41]可以用来克服GMP的第一个缺点。如Eq.5, GeM使用一个可训练的正参数p在全局平均池化(p = 1)和GMP(假设p为100)之间取得平衡:
由于有更多的像素参与到C(x)中,GeM有效地打破了GMP在反向传播中的瓶颈。我们通过经验观察到,用GeM代替GMP大约节省了10个训练周期。尽管如此,GeM对积极响应的空间分布保持不变。
由于卷积自然地捕获像素之间的空间相关性,因此可以考虑提前在GeM中添加一个卷积块,表示为Conv(S(x))。因此,C(x)得到GeM(Conv(S(x)))。注意,在早期的训练阶段,网络,特别是它的分割头Gseg,没有得到很好的训练,因此大多数产生无意义的S(x)。这种输入到Gclf中的噪声会被Conv进一步放大,使得分类头和整个网络难以训练。为了抑制这种负面影响,我们通过非负超参数 λ 作为加权的衰减跳过连接将GeM(S(x))添加到C(x)中:
其中λ初始化为一个接近于1的值,并随着迭代次数的增加而非线性衰减。如图6所示,使用接近于1的λ可以让Gclf在早期训练阶段暂时忽略Conv块。然后,随着Gseg不断改进以提供更准确和可靠的S(x), λ下降得更快,以便Gclf对Conv进行更多计数以充分利用S(x)。如Eq. 6所示,GeM和GeM(Conv)在训练过程中权重动态确定的凸组合有效地解决了GMP的缺点。我们创建了新模块ConvGeM。
3.3 Multi-Scale Supervision
我们在三个尺度上考虑损失,每个尺度都有自己的目标,即:像素级损失用于提高模型对像素级操作检测的灵敏度,边缘损失用于学习语义诊断特征,图像级损失用于提高模型对图像级操作检测的特异性。
Pixel-scale loss。由于被操作的像素在给定图像中通常是少数,我们使用Dice loss,这对于从极度不平衡的数据中学习是有效的[34]:
其中yi,j∈{0,1}是表示像素(i, j)是否被操作的二进制标签。
Edge loss。由于边缘的像素被非边缘像素淹没,我们再次使用Dice loss进行边缘检测,表示为lossedg。由于操作边缘检测是一项辅助任务,因此我们不计算W × H的完整尺寸的损失,而是以w/4 × h/4的较小尺寸计算损失,见图2。这种策略减少了训练过程中的计算量,同时也略微提高了性能。
Image-scale loss。为了减少误报,在训练阶段必须考虑真实图像。然而,对于当前的工作,例如Mantra-Net [15], HP-FCN[25]和GSR-Net[16],是非常重要的,因为它们都依赖于一定的语义分割损失。以广泛使用的二进制交叉熵(BCE)损失为例。一个真实的图像,如果有很小比例的像素被错误分类,就会对BCE损失造成轻微的影响,从而很难有效地减少误报。还要注意,Dice损失不能处理真实图像的定义。因此,需要图像尺度的损失。
由于图像级的两类比像素级的更平衡,我们采用广泛用于图像分类的BCE损失来计算图像尺度损失:
y = max({yi,j})。值得指出的是,lossclf的有用性并不局限于提高模型的特异性。通过ConvGeM,现在可以比我们之前使用的GMP[35]更有效地反向传播图像尺度的监督,以改善特征学习。
Combined loss。给定在三个不同尺度上计算的损失,我们通过凸组合得到一个组合损失,即
4 EXPERIMENTS
4.1 Experimental Setup
Datasets。为了与最先进的技术进行正面比较,我们采用CASIAv2[21]进行训练,并广泛使用COVER[23]、Columbia[32]、NIST16[31]、CASIAv1+2[22]和最新的IMD[36]进行测试。同时,我们注意到DEFACTO[4],这是一个最近的大规模数据集,包含从MS-COCO[43]采样的149k张图像,并通过复制移动、拼接和绘制进行自动操作。考虑到DEFACTO的挑战性,我们选择在这个新数据集上进行消融研究。由于该集没有真实图像,我们构建了一个名为DEF84k的训练集,通过从DEFACTO随机抽取64k阳性图像和从MS-COCO随机抽取20k阴性图像。以类似的方式,我们通过从DEFACTO的剩余部分随机采样6k阳性图像和MS-COCO的6k阴性图像,构建了一个称为DEF-12k的测试集。请注意,为了避免任何数据泄露,对于用于训练(测试)的操作图像,其源图像不包括在测试(训练)集中。我们的实验总共使用了2个训练集和6个测试集,见表2。这些集合的元数据可在我们的项目网站上找到。
Evaluation Criteria。对于像素级操作检测,我们根据前人的研究[13],[14],[16]计算像素级精度和召回率,并报告它们的F1。对于图像级操作检测,为了测量漏检率和虚警率,我们报告了灵敏度、特异性及其F1。还报道了AUC作为无决策阈值的度量。每个测试集的真实图像仅用于图像级评估。
请注意,以前的工作通常使用每个测试集选择的决策阈值来报告性能[16],[18],[28],允许在最佳条件下比较模型。然而,这种设置会导致过于乐观的性能估计,因为在实践中,必须预先指定和固定模型的决策阈值(或其操作点)。对于现实世界的评估,对于像素级和图像级的F1计算,我们建议使用默认阈值0.5,除非另有说明。
总体性能通过Com-F1来衡量,Com-F1定义为像素级和图像级F1的谐波平均值。Com-F1对pixel-F1和image-F1的最低值敏感。特别是,当pixel-F1或image-F1为0时,它的得分为0,这对于算术平均值是不成立的。
为了进行更完整的比较,我们额外报告每个测试集的准确性,即测试集中正确分类样本的百分比。像素级/图像级精度是通过将每个像素/图像作为一个样本来获得的。请注意,当类分布高度不平衡时,准确性不是一个可靠的度量。因此,我们报告了MCC(马修斯相关系数)[44],这是对分类器在两个类别上的能力的更平衡的衡量。
Implementation。我们的模型在PyTorch中实现,并在NVIDIA Tesla V100 GPU上进行训练。输入大小为512 × 512。ESB和NSB中使用的两个ResNet-50使用ImageNet预训练的对等体进行初始化。我们使用Adam[45]优化器,其学习率周期性地从10−4衰减到10−7。对于组合损失中的两个超参数,我们经验地设置α = 0.16和β = 0.04,参见在线补充资料中的参数灵敏度分析3。对于ConvGeM,为了获得与GMP相似的效果,将衰减跳过连接中使用的GeM中的p初始值设置为10,而将Conv分支中使用的GeM的p初始值设置为3,使该GeM更接近全局均值池化。Eq. 6中的权值λ是w.r.t非线性衰减的。训练epoch的个数为λ = 0.9975(e·e), e = 1,2, .. ..
如果DEFACTO的持有验证集的损失在连续10个周期内没有减少,就会发生提前止损。因此,训练epoch的数量取决于所使用的训练数据:CASIAv2上的训练需要16个epoch,在推理模式下λ为0.527,而DEF-84k上的训练需要更多的30个epoch, λ为0.105。
我们应用常规的数据增强来进行训练,包括翻转、模糊、压缩和简单的操作,通过裁剪和粘贴正方形区域或使用内置的OpenCV inpainting函数[46],[47]。
4.2 Ablation Study
为了揭示单个组件的影响,我们在不同的设置中评估了所提出的模型,并逐步添加组件。本节报告的所有结果均以DEF-84k为训练集,DEF-12k为测试集获得。
4.2.1 On T rainable Components
Influence of the semantic segmentation backbone:语义分割主干的影响。我们从FCN-16出发,没有多视角多尺度监督。回想一下,我们使用DA模块进行分支融合。因此,为了公平比较,我们采用FCN-16与DA,使其本质上是DANet的实现[39]。这种改进后的FCN-16的得分优于其更先进的同类,例如UNet[48],DeepLabv3[49]和DeepLabv3+[50],见表3。结果证实了我们在第1节中的猜想,即最先进的语义分割网络对于操作检测确实是次优的。竞争基线(FCN-16与DA)在表4中称为Seg(设置#0)。
Influence of the image classification loss:图像分类损失的影响。比较Seg+Clf和Seg,我们看到特异性明显增加,敏感性明显下降,这表明添加lossclf使模型对于报告操作更加保守。这种变化不仅通过降低Pixel-F1得到证实,而且在图7的第四列中也观察到,表明Seg+Clf预测的被操纵区域大大减少。
Influence of NSB:NSB的影响。由于Seg+Clf+Noise是通过在Seg+Clf中加入NSB得到的,因此其更好的性能验证了NSB在改进操纵检测方面的有效性。
Influence of ESB:ESB的影响。Seg+Clf+Edge相对于Seg+Clf更好的性能证明了ESB的有效性。
ESB versus GSR-Net:ESB与GSR-Net。Seg+Clf+GSR是用GSR- net的边缘分支代替我们的ESB得到的[16]。Seg+Clf+GSR的整体性能低于Seg+Clf+Edge。此外,在cmpv上存在更大的性能差距(ESB为0.405,而GSR-Net为0.363)。结果清楚地表明,所提出的ESB优于现有技术。
Influence of two branch fusion:两支融合的影响。通过双重关注融合ESB和NSB的完整设置表现最好,显示了各个组件的互补性。为了进一步证明我们基于双重注意力融合的必要性,我们提出了一种替代解决方案,通过模型平均将Seg+Clf+Noise和Seg+Clf+Edge集成,称为Ensemble(N,E)。比较表4中的Setup #6和#7,我们可以看到MVSS-Net优于Ensemble(N,E),显示了我们的融合方法的优势。与先前使用的双线性池融合[14]的比较在附录中提供。
Influence of Gclf :Gclf的影响。我们比较了Gclf的三种不同实现,即GMP、GeM和拟议的ConvGeM,它们的性能显示在表4的最后三行。与GMP相比,GeM获得了更高的像素级F1,这表明GeM更有效地利用了图像尺度监督来改进分割网络。然而,GeM对像素的响应进行平均,尽管是以非线性的方式,使其灵敏度降低,从而导致图像级检测灵敏度急剧下降(从79.7降至63.1)。它在像素级任务上的增益和在图像级任务上的损失相互抵消,使得Com-F1与GMP相比基本没有变化。相比之下,ConvGeM在两个任务之间达到了最佳平衡,将Com-F1从64.3提高到66.3。
Edge segmentation versus bounding box regression:边缘分割与边界盒回归。在被操作区域周围学习边界构件的另一种策略是将篡改定位视为边界盒(bbox)回归任务,参见[14]。为了与这种替代方案进行比较,我们将边缘分割头,即图2中的sigmoid层,替换为CenterNet的目标检测头[51]。CenterNet使用两个分支头部执行无锚点目标检测,其中一个分支生成每个像素作为对象中心的概率图,而另一个分支负责预测对象大小。在我们的上下文中,对象的区域被定义为包含给定此篡改区域中所有像素的最小bbox。经过目标检测损失训练的MVSS-Net的性能如表4 (Setup #9.1)的倒数第二行所示。在像素级和图像级操作检测方面,它的得分都比设置#9低,这表明边缘分割损失更适合学习边界伪迹特征。
4.2.2 On Non-trainable Blocks (不可训练的块)
Influence of Sobel on ESB: Sobel对ESB的影响。Seg+Clf+Edge/s是通过去除Seg+Clf+Edge的Sobel操作得到的,因此它的性能下降,特别是在copy-move检测方面(从0.405到0.382,表4中的cmpv)表明了Sobel的必要性。
值得一提的是,Sobel对于篡改边缘检测的好处是在基于ResNet的网络架构的基础上得出的。与ResNet相比,拥有数十亿个可训练参数的大视觉模型在自然图像分类中表现出更优越的性能[52]。将MVSS-Net中使用的ResNet块替换为来自大型模型的对应块可能会提高当前任务的性能。不可训练的Sobel是否对这种更复杂的网络架构有益,还需要进一步的研究。
Enhancing NSB using non-trainable blocks?:使用不可训练的块增强NSB ?受到Sobel对ESB的好处的启发,我们尝试通过使用不可训练块来逐步从NSB中每个ResNet块的输出中提取与噪声相关的构件来增强NSB。特别是,我们在每个ResNet块之后使用中值滤波残差(MFR)块。MFR通过从输入中减去中值滤波的特征映射来处理输入特征映射,从而起到高通滤波器的作用。每个MFR的输出以类似于图2中的ESB逻辑的从浅到深的方式逐渐聚合。
最后一个MFR的输出被添加到最后一个ResNet块的输出中,在DA模块之前。我们参考附录了解更多细节。带MRF的NSB性能如表4中Setup #9.2所示。与设置#9 (NSB w/o MFR)相比,更高的灵敏度(81.3 vs 74.8)和更低的特异性(79.9 vs 85.7)表明高频噪声模式对操纵敏感,但不够特异性,导致更多像素级的假警报。因此,以像素级操作检测的性能下降为代价,获得了图像级操作检测的MFR优势。
4.2.3 Qualitative Visualization
图7给出了一些像素级操作检测的定性结果。从左到右,结果展示了在不同的设置中建议模型如何在检测灵敏度和特异性之间取得平衡。
到目前为止,我们的评估是在同源的训练和测试数据上进行的。接下来,我们以CASIAv2作为通用训练集,COVER、Columbia、NIST16、CASIAv1+、IMD和DEF-12k作为测试集,在跨数据集设置下评估模型的泛化能力。
4.3 Comparison with State-of-the-art
4.3.1 Baselines
为了进行公平和可重复的比较,我们必须有选择性地选择符合以下三个标准之一的最新技术:1)论文作者发布的预训练模型,2)公开可用的源代码,以及3)遵循通用评估协议,其中CASIAv2用于训练,其他公共数据集用于测试。因此,我们编制了9个已发布的基线列表,如下所示:
•H-LSTM[3](在自制的65000张操纵图像数据集上进行预训练,并在NIST16和IEEE Forensics Challenge数据集上进行微调)、ManTra-Net[15](在数百万张操纵图像的私有数据集上进行训练)、HP-FCN[25](在私有的手绘图像集上进行训练)、CR-CNN[17](在CASIAv27上进行训练)、SPAN[18](在与ManTra-Net相同的数据集上进行训练,并在CASIAv28上进行微调)和CAT-Net[28](在联合数据集上进行训练,包括CASIAv2、IMD、Fantastic Reality[53]、self-spliced COCO9)。我们按原样使用这六个模型。
•可用代码:GSR-Net[16],我们使用作者提供的代码进行培训。我们在适当的地方引用他们的结果,只在必要的时候使用我们重新训练的模型。
•相同的评估方案:MFCN[13]和RGB-N[14],数据引用自同一团队[16]。
为了公平的比较,我们在CASIAv2上从头开始重新训练了FCN(表4中的Setup#0)、MVSS-Net (Setup#7)和MVSS-Net++(Setup#9)。由于以往的工作很少报告其图像级性能,因此在其实现中自然缺少图像分类头。为了获得基线的图像级预测,而不需要侵入它们的模型或代码,我们使用了MVSS-Net中使用的GMP。
4.3.2 Pixel-Level Manipulation Detection
表5显示了不同模型的像素级检测性能。MVSS-Net++在整体性能方面是最好的。
我们将ManTra-Net在DEF-12k上更好的性能归功于其大规模的训练数据,这些数据同样来自MSCOCO,即DE-12k。NIST上表现最好的是H-LSTM,它的训练数据包含了NIST的70%左右。与在相同的CASIAv2 (MFCN、RGB-N、CR-CNN和GSR-Net)上训练的基线相比,mvss - net++在几乎所有测试集上都优于它们。它在这种跨数据集设置中的优越性能证明了它更好的泛化能力。
表5的左半部分显示了模型在最优条件下的性能,而右半部分显示了模型在真实场景下的对应性能,对比起来,两者之间存在明显的差距。对于最佳基线,即SPAN,其像素级F1从68.8下降到21.4。MVSS-Net++的F1从73.2下降到38.7。结果表明,该任务具有挑战性,提出的评估方案对于公平评估实际部署的技术进展是必要的。
4.3.3 Image-Level Manipulation Detection
表6显示了不同模型的图像级性能,所有模型都使用默认决策阈值0.5。MVSS-Net + +还是表现最好的。在多尺度监督下,MVSSNet系列在大多数测试集上能够向真实样本学习,获得更高的特异性,从而降低误报率。我们的模型还具有竞争力的AUC分数,这意味着它们在广泛的操作点上优于基线。Fig8为各模型w.r.t.决策阈值的性能曲线。MVSS-Net++在决策值为0.46时的性能达到峰值,比其他模型的决策值更接近于0.5。这一结果再次说明我们的模型具有较好的泛化能力。
像素级和图像级操作检测的总体性能如表7所示。
4.3.4 Robustness Evaluation
根据[14],[15],[18],我们对图像在互联网上循环时的两种日常图像处理操作,即JPEG压缩和高斯模糊,评估了模型的鲁棒性。此外,我们研究了当前模型对通过截图重新捕获的操作图像的反应,据我们所知,这是以前从未做过的。
对比两种操作,高斯模糊对检测性能的影响更为严重,特别是当使用较大的核尺寸(17 × 17及以上)时,如图9所示。虽然这样一个更大的内核可以有效地擦除操作痕迹,但它也显著降低了图形内容(未显示的数据)的可读性。MVSS-Net和mvss - net++都表现出比基线更好的鲁棒性。根据他们的原始论文,ManTra-Net和SPAN使用了包括压缩在内的广泛的数据增强,而CR-CNN, GSR-Net和CA T-Net没有使用这种数据增强。因此,为了更公平的比较,我们还训练了MVSS-Net++,将压缩和模糊排除在数据增强之外。重新训练的模型,表示为MVSSNet++ (w/o aug),仍然比基线更健壮。
面向截图的评估方法如下。
从CASIAv1+中随机选择100张操作图像的子集。然后在屏幕分辨率为1920 × 1080的Windows10笔记本电脑上手动重新捕获每个图像。使用了三个商业截图工具,包括Microsoft Snip&Sketch11, Google Chrome DevTools12和Snipaste13。每个图像和工具,结果图像分别保存为jpg(质量水平为90%)和png格式,除了Chrome只支持png。改变屏幕工具的配置和图像格式导致测试集的五个变体,即Snip&Sketch (png), Snip&Sketch (jpg), Chrome (png), Snipaste (png)和Snipaste (jpg)。
图10显示了各个模型在原始测试集及其变体上的性能。从图中我们可以得出两个结论。首先,对于图像捕获的两个因素,即截图工具和文件格式,后者更为重要。其次,虽然所有模型都受到基于截图的图像重捕获的影响,但MVSS-Net++仍然是最好的。
4.3.5 Efficiency Test
我们以每秒帧数(FPS)来衡量推理效率,分别在两张GPU卡上进行测试,即NVIDIA Tesla V100 (32GB GPU内存占用)和GeForce RTX2080ti (12GB GPU内存占用)。根据使用的卡,MVSS-Net系列以16到20 FPS运行,见表8。与其他公开可用的模型相比,相对较高的FPS允许MVSS-Net系列用于实时应用。
4.3.6 Failure Case Analysis
鉴于任务的挑战性,失败是不可避免的,见图11。第一排的图像是通过将孩子戴的眼镜的框架变暗来处理的。这样的操作痕迹似乎太小了,目前的模型无法揭示出来。第二行图像的右上角覆盖了一定的半透明图像补丁,处理后的痕迹很好地融入了雾蒙蒙的场景。至于最后一张图片,我们在前景的狗背上放了一个骑士,同时模糊了背景。所有的模型都捕捉到了前景和背景之间的不一致,但都没有意识到背景实际上是被操作的。
5 CONCLUSIONS
对于学习语义不可知的特征,噪声和边缘信息都是有帮助的,而后者单独使用时效果更好。为了利用边缘信息,我们提出的边缘监督分支(ESB)比以前使用的特征连接更有效。ESB引导网络更加集中于被篡改的区域。关于操作检测的特异性,我们的经验表明,目前的技术存在较差的特异性。包含图像分类损失提高了特异性,但代价是像素级操作检测的性能明显下降。为了避免这种损失,必须将多视角特征学习与多尺度监督结合使用。由此产生的MVSS-Net++是图像处理检测的新技术,性能优于当前数据集内和跨数据集场景中的方法。它还对JPEG压缩、高斯模糊和基于截图的图像重捕获表现出更好的鲁棒性。
随着MVSS-Net的初步成功,我们相信它将有希望设计一个更复杂的网络,包含更多的组件来覆盖其他信息(例如压缩工件)和其他模式(例如关联文本),用于媒体取证。