• 工作总结
  • 工作计划
  • 心得体会
  • 领导讲话
  • 发言稿
  • 演讲稿
  • 述职报告
  • 入党申请
  • 党建材料
  • 党课下载
  • 脱贫攻坚
  • 对照材料
  • 主题教育
  • 事迹材料
  • 谈话记录
  • 扫黑除恶
  • 实施方案
  • 自查整改
  • 调查报告
  • 公文范文
  • 思想汇报
  • 当前位置: 雅意学习网 > 文档大全 > 公文范文 > 正文

    面向图像修复取证的U型特征金字塔网络

    时间:2023-07-01 15:55:03 来源:雅意学习网 本文已影响 雅意学习网手机站

    沈万里,张玉金,胡 万

    (上海工程技术大学 电子电气工程学院,上海 201620)

    图像修复[1-2]是用看似合理的内容来填充图像中缺失的区域,在图像处理和计算机视觉领域有广泛的应用,例如修复损坏的照片和移除不想要的物体;
    然而,图像修复技术也可能被恶意利用来篡改和删除图像内容,使其成为伪造图像的强大工具。近年来,关于恶意使用图像修复技术的信任问题和安全问题受到广泛关注,例如在法庭上使用修复的图像作为证据、移除关键对象来报告假新闻、擦除可见的版权水印等。随着深度学习技术的快速发展,传统图像修复方法得到了实质性的改进,使互联网上的修复伪造图像更加泛滥。因此,为解决图像修复带来的信任和安全问题,检测图像是否被修复以及进一步定位修复区域具有重要的理论研究意义和应用前景。

    典型的图像修复方法主要有三类:基于扩散的修复方法、基于图像块的修复方法和基于深度学习的修复方法[3]。针对基于扩散和图像块的修复已有一些有效的取证方法[4-7],然而针对深度图像修复的取证工作相对较少。Zhu等[8]在2018 年首次提出一种基于深度神经网络的图像修复取证算法,使用一个由标签矩阵和加权交叉熵监督的编码器-解码器网络来捕获修复痕迹。Wu 等[9]提出了一种通用的伪造定位网络(Manipulation Tracing Network,MT-Net),利用神经网络强大的学习能力对输入图像的异常进行分类实现篡改区域像素级的定位。为了进一步提高检测精度,Li等[10]设计了一种基于深度修复的图像区域定位方法,采用高通预滤波模块来抑制图像内容,增大修复区域和未修复区域之间的差异,达到了较高的测试精度。

    深度图像修复模型可以利用高级语义信息生成更复杂的结构乃至是新的对象[11],获得视觉上更加逼真的修复图像。针对深度图像修复取证问题,上述方法仅针对单一的深度修复技术进行取证分析,而在现实生活中深度修复技术种类繁多,现有方法难以满足实际需求。此外,对于修复伪造的图像,修复区域和未修复区域通常具有类不平衡问题,即修复区域通常面积远小于未修复区域,给现有取证方法加大了检测难度。

    本文提出一种面向图像修复取证的U 型特征金字塔网络(Feature Pyramid Network,FPN),通过自上而下的VGG16[12]模块进行多尺度特征提取,利用自下而上的特征金字塔架构对融合后的特征图进行上采样,在获取丰富的图像特征的同时,增强了高级特征的表示能力,以应对多种深度修复方法的取证场景。为了解决修复区域和未修复区域通常具有类不平衡的问题,本文结合全局和局部注意力机制凸显修复痕迹,使用融合损失函数以提高修复区域的预测率。

    特征金字塔网络(FPN)[13]实现了在像素域的图像分割,图像修复取证旨在判断图像中的像素是否被修复,在某种意义上与图像分割的目的相似,即确定图像中每个像素所属的对象类别。受此启发,本文提出面向图像深度修复取证的U型特征金字塔网络(U-shaped FPN,U-FPN),算法流程如图1所示。通过VGG16 模块提取高维和低维特征,底层的高维特征图与上一层特征图通过像素相加的融合方式[14]输出并向上采样,整体流程形成U 型结构。各层特征图经过全局和局部注意力机制进行权重分配后,通过数据拼接方式融合并输出,最后通过融合损失函数模块做决策判定。

    图1 本文算法流程Fig.1 Flow of the proposed algorithm

    1.1 U-FPN

    U-FPN 使用了自上而下、自下而上和横向连接的架构,架构整体形成U 型,如图2 所示。图2 中x、y、z分别表示卷积核的个数、大小和步长。深度修复取证主要强调修复区域留下的痕迹,需要深度网络学习更加丰富的特征[15]。

    图2 U-FPN图像修复取证网络Fig.2 U-FPN image inpainting forensics network

    针对现实生活中种类繁多的深度修复技术,修复区域在规模、形状和位置上具有明显的差异,单一采用FPN 自下而上的卷积和池化层,无法有效处理这些复杂的修复痕迹。VGG16 模块卷积层深度更大,能获取深度图像修复取证所需的丰富特征图,同时该模块使用了有填充的卷积模式,保证了卷积层的输入和输出尺寸一致。因此,VGG16 特征提取模块可以较为有效地处理这些复杂的修复痕迹。VGG16特征提取模块由13 个卷积层和4 个2×2 的最大池化层组合而成,结构如表1 所示。

    表1 VGG16特征提取模块的结构Tab.1 Structure of VGG16 feature extraction module

    U-FPN 以VGG16 作为自上而下的路径,这种下采样可以进行多尺度特征提取,获取图像修复取证所需的丰富特征图。本文分别将下采样过程中的Conv1-2 和Conv2-2 作为低维特征图,Conv3-3、Conv4-3 和Conv5-3 作为高维特征图输出。在自下而上的路径中,底层的Conv5-3 高维特征图做上采样操作,同时输出得到特征图{P5}。为克服上采样过程在一定程度上导致的信息失真,本文算法在自上而下的路径(收缩路径)和自下而上的路径(扩展路径)之间建立横向连接架构,将收缩路径的特征映射和从扩展路径的特征图融合在一起来增强高级特征的表示能力,特征融合的具体方式如图3 所示,下层特征图通过2 倍上采样后,与每一层通过1×1卷积的特征图进行融合。为消除上采样的混叠效应,经过融合的特征图会通过一个步长为2 的3×3 卷积核后继续向上采样并输出。经过4 次上采样过程后,生成最后需要的特征图{P1,P2,P3,P4,P5}。

    图3 特征融合方式Fig.3 Method of feature fusion

    上采样后的特征图{P1,P2,P3,P4}将通过的卷积层、BN层(Batch Normalization)和ReLU 层(Rectified Linear Unit)使通道减半后进行输出,得到的特征图将分别输入到注意力机制生成更好的检测结果。深度图像修复检测不同于FPN 需要对多尺度的特征图进行预测,U-FPN 将特征图通过像素相加的方法(Element-wise addition)进行融合,可以较充分地利用特征在不同尺度之间的相关性,从而得到更准确的检测结果。

    针对修复区域和未修复区域像素不平衡问题,本文将U-FPN 中提取的特征图{P1,P2,P3,P4,P5}输入全局和局部注意力机制模块,通过注意力机制减少误分类像素的数量,并提高局部特征的一致性。各层特征图通过注意力机制凸显修复痕迹后,将通过数据拼接的方式进行融合,融合后的特征图将通过一个的3×3 卷积核输出,并得到与输入图像具有相同尺寸的特征图,该特征图具有两个通道,表示为Z=[z0,z1],其中z0和z1分别代表未修复和修复的像素。最终的特征图将通过Softmax 逻辑回归(Softmax Regression)进行分类。修复类的概率矩阵表示为:

    其中:m=0,1 表示未修复和修复的类,根据概率矩阵P得到最终预测的标签矩阵:

    其中:1 ≤i≤H,1 ≤j≤W,Mo(i,j) 表示修复图像Mo的第(i,j)像素,H和W分别表示图像的高度和宽度。

    1.2 注意力机制

    图像修复检测结果可以分为正样本和负样本两类,即修复区域像素和未修复区域像素,而卷积神经网络在长时间建模过程中可能会产生错误分类的像素,降低检测准确率[16]。同时为了有效解决修复区域和未修复区域通常具有的类不平衡问题,本算法结合全局和局部注意力机制[17]用于提高检测结果:全局注意力机制旨在分类任务中,通过类内方差最小化的技术来减少误分类像素的数量;
    局部注意力机制用于提高特定区域内的特征一致性。全局和局部注意力机制具体过程如图4 所示(Cov.表示卷积操作,Avg.表示取平均值操作),下面对上述两种注意力机制分别进行介绍。

    图4 全局和局部注意力机制Fig.4 Global and local attention mechanisms

    1.2.1 全局注意力机制

    全局注意力机制旨在分类任务中,通过类内方差最小化的技术来减少误分类像素的数量。实验设置中,对于特征图中的最相似的特征块,使用其最相似的T个类的平均值代替,以达到减少同一类之间差异的作用。当使用X作为输入时,假设ϑ(X)是通过U-FPN 各层输出的特征图,从ϑ(X)中提取所有1×1 的类组成一个集合P。对于每个Pj∈P的类,在P内的内余弦相似度可以用式(3)进行计算:

    为计算所有的Sj,k,设置一个相似性阈值τ来为集合P内的Pj选择最相似的类。在实验中,令N={k|Sj,k≥τ} 为Top⁃T中所有最相似类的索引,得到N={n1,n2,…,nT}。相似性搜索的过程可以通过修改的卷积层来进行,以减少由循环操作引起的计算负担[17-18],实验通过对应的顶部T个最相似类的平均值来更新每个Pj∈P,即,更新后的将随着训练过程增加类内相似度。根据文献[9],当τ=0.5 时,计算得出相似类的概率最高,此时的T=5。

    1.2.2 局部注意力机制

    相邻像素通常与中心像素高度相关,由此本算法加入了一个局部注意模块来提高特定区域内特征的一致性。类似于全局注意力机制的过程,实验以加权的方式用相邻像素区域来更新中心像素区域。为了反映局部相关性,本算法利用局部小窗口中的相邻像素区域,定义了一个大小为5×5 的权重矩阵Wl与Pj进行卷积,以获得更新后的特征,即:=Wl⊗Pj。根据文献[17],Wl定义为:

    1.3 损失函数

    损失函数通过掩膜标签和网络预测图来衡量网络性能。实验设置中,使用二元交叉熵损失函数(Binary Cross Entropy,BCE)来训练网络,训练损失被定义为:

    其中:(Mg,Mo)表示一对掩膜标签和网络预测图,Mg(i,j)和Mo(i,j)分别表示Mg和Mo的第(i,j)个像素。

    然而在大多数的修复取证中,图像中的篡改区域(正样本)往往比未篡改区域(负样本)小得多,占主导地位的负样本会造成大部分损失,正样本信息较少导致真阳率(True Positive Rate,TPR)下降。为解决上述问题,本文将BCE 函数和焦点损失函数融合成新的损失函数。焦点损失函数意在标准的交叉熵损失中增加一个调制项,以便集中学习困难样本(修复区域面积远小于未修复区域)。焦点损失函数被定义为:

    其中:γ是一个聚焦参数,用来平滑地调整简单样本的降重速率。当γ=0 时,此融合损失函数相当于二元交叉熵函数,并且随着γ变大,调制因子的影响同样增加。通过大量的实验分析,γ=2 时算法性能最佳。α是分配困难样本的权重,用于进一步调整样本之前的不平衡性。样本修复区域的比例大多在0%~50%,实验设置α=0.75 来平衡困难样本。融合损失函数可以进一步表示为:

    2.1 实验数据集及算法性能评价指标

    本文从ImageNet 数据集[19]准备了训练和测试数据,数据集中的图像尺寸不同,均以JPEG 文件形式储存,品质因子(Quality Factor,QF)为96、85 和75,对于不同品质因子,分别从ImageNet 中随机选择50 000 张图像作为训练集。该数据集通过文献[20]方法对图片中心10%的矩形空白区域进行修复。测试集由6 种不同的基于深度学习修复方法制成,根据方法分别命名为GC[20]、CA[16]、SH[18]、LB[21]、RN[22]、EC[23],各包含1 000 组修复图片和掩膜图。其中,修复区域是手动选择的一些有意义的对象,修复区域的总面积约为整个图像的2%~30%。

    本算法的修复检测结果将基于精度(Precision,Pre)、召回率(Recall,Re)、F1 分数(F1)和交并比(Intersection over Union,IoU)进行评估。具体定义的公式如下:

    其中:TP(True Positive)是指检测出真阳样本的数量,FP(False Positive)是指检测出假阳样本的数量,FN(False Negative)是指修复像素点被误检测为真实像素点的数量。通常来说,Pre值越高越好,Re值也越高越好,为综合考虑准确率和召回率,采用F1 分数,F1 分数是准确率和召回率的加权调和平均,值越大检测结果越好。IoU 通过计算交集(网络预测图和掩膜的重叠区域)和并集(网络预测图和掩膜的并集区域)的比值来评估检测器,比值越大,检测效果越好。

    2.2 超参数设置

    模型训练使用Pytorch 深度框架,采用Adam 优化模型,初始化学习率为0.000 1,经过每个epoch 后学习率下降50%,batch-size 设置为4,20 个epoch 迭代训练网络,整个网络在单张NVIDA RTX 2080Ti GPU进行训练。

    2.3 实验结果

    2.3.1 网络结构的有效性

    为了验证算法的有效性,本文通过消融实验在品质因子QF=96 的测试集上进行评估,测试集使用的深度修复方法与训练集一致,实验结果如表2 所示。表2 中的场景1 是指不带有VGG16 特征提取模块和注意力模块的网络变体;
    场景2 是指不带有VGG16 特征提取模块、带有注意力模块的网络变体;
    场景3 是指带有VGG16 特征提取模块、不带有注意力模块的网络变体;
    场景4 是指带有VGG16 特征提取模块和注意力模块的网络变体。

    从表2 可以看出,当网络使用VGG16 的特征提取模块和注意力模块时,测试的结果都略高于所提方法的其他变体,说明了本文提出的面向图像修复取证的U 型特征金字塔网络具有一定的有效性。

    表2 所提方法不同变体的定位结果 单位:%Tab.2 Localization results obtained by different variants of the proposed method unit:%

    1)VGG16 特征提取模块:本文方法相较于不使用该模块的变体,在交并比和F1 值上高出约14.61 个百分点和10.32个百分点,说明了该特征提取模块能有效地提取深度图像修复取证所需的丰富特征图。

    2)全局和局部注意力机制:本文方法相较于不使用注意力模块的变体,在交并比和F1 值上提升了约9.11 个百分点和5.08 个百分点,说明了该模块能够较为有效解决修复区域和未修复区域通常具有的类不平衡问题。

    2.3.2 图像修复检测结果

    为了评估本文方法的性能,实验选取以下方法进行对比:基于扩散的数字图像修复定位(Localization of Diffusionbased Inpainting,LDI)[5]、基于图像块的深度修复取证方法(Patch-based Convolutional Neural Network,Patch-CNN)[6]和基于高通全卷积神经网络(High-Pass Fully Convolutional Network,HP-FCN)[10]的深度图像取证架构。表3 显示的是LDI、Patch-CNN、HP-FCN 和本文方法在数据集GC、CA、SH、LB、RN 和EC 上的F1 分数和IoU 值。从表3 可以看出,在品质因子为96 的情况下,本文方法在6 个测试集上的平均F1分数和IoU 值为79.19%和74.72%,均优于对比方法。

    表3 品质因子为96时,在六个数据集上F1分数和IoU值的比较 单位:%Tab.3 Comparison of F1-score and IoU values on six datasets when quality factor is 96 unit:%

    从实验结果看出,LDI 方法的预测率不足50%,Path-CNN方法的预测率为57.17%,检测效果并不理想,主要原因是基于扩散和图像块修复的取证方法是通过检测图像中的伪影从而定位修复区域,而基于深度学习的修复方法可以在不留下明显伪影的情况下获得良好的修复效果。实验使用的深度修复数据集的修复区域在规模、形状和位置上具有明显的差异,HP-FCN 网络检测修复区域面积远小于未修复区域面积的图像时,检测精度还有待提升,主要原因是HP-FCN 的模型过度拟合了由特定修复方法和固定修复掩膜组成的数据集,面向多种修复操作则体现为泛化能力不足。而本文方法合理运用卷积过程中的高维和低维特征,并引入注意力机制进行像素权重分配,针对不同深度修复方法的数据集,有更好的泛化能力。

    2.3.3 方法对JPEG压缩的鲁棒性

    在实际的修复取证场景,修复后的图像通常会以JPEG格式进行保存,为进一步分析本文方法的鲁棒性,实验分别测试6 个品质因子QF=85 和QF=75 的数据集,使用的深度修复手段不变。实验结果如表4、5 所示,通过对比可知,相较于QF=96 时,本文方法的平均F1 分数分别下降了1.85 个百分点和6.47 个百分点,HP-FCN 方法分别下降了38.41 个百分点和42.32 个百分点,Patch-CNN 和LDI 方法下降更明显。

    表4 品质因子为85时,在六个数据集上F1分数的比较 单位:%Tab.4 Comparison of F1-score on six datasets when quality factor is 85 unit:%

    表5 品质因子为75时,在六个数据集上F1分数的比较 单位:%Tab.5 Comparison of F1-score on six datasets when quality factor is 75 unit:%

    JPEG 压缩会对图像信息造成损失,产生块效应,品质因子越小,对修复证据的破坏越大,检测难度越高,而这就要求网络需要学习更加丰富的图像信息完成取证工作。针对JPEG 压缩后的图像,LDI 方法无法有效地提取图像修复后产生的伪影,从而导致检测失败;
    Patch-CNN 和HP-FCN 的网络深度较浅,提取的图像信息不够丰富,从而造成检测精度不高。而本文使用VGG16 的特征提取模块,能够获得取证网络所需的丰富图像信息,同时合理运用了高维特征分辨率高和低维特征语义强的特点,检测经过JPEG 压缩后的修复图像具有较强的鲁棒性。

    2.3.4 图像修复篡改定位结果

    为了进一步验证文本提出框架的泛化能力,本节对上述由6 种不同方法产出的修复图像进行了修复检测和定位,如图5 所示。

    从图5 可视化结果可以看出,在6 种真实修复集上HP-FCN 和本文方法多数都能识别修复区域;
    传统LDI 方法在部分数据集上能大致检测出修复区域的轮廓,但在CA、SH 和EC 数据集上检测失败;
    Patch-CNN 方法多数能检测到大致的修复区域,但是在CA、LB 和RN 数据集上将未修复区域检测为修复区域比例较大,误检率较高。对比基于深度修复取证的HP-FCN 方法,对于真值掩膜图较为规则的修复图,例如SH 所示,两种方法的预测图都能达到较高的相似度,对于多数不规则的真值掩膜图,本文方法较之HP-FCN方法更好地定位了修复区域,同时也能大致显示出修复区域的轮廓。虽然较之其他三种方法,本文方法在真实修复数据集上能更有效地实现定位和预测,但是预测区域的分辨率还是有限的,预测区域的轮廓也与真值掩模图有差异,但总体 而言的定位结果更为准确。

    图5 品质因子为96时,六种不同数据集的可视化结果Fig.5 Visualized results of six different datasets when quality factor is 96

    2.3.5 时间复杂度对比分析

    时间复杂度作为衡量方法的指标,是实际应用中一个重要问题,实验在具有10 000 张修复图像测试集上分别比较了几种方法的平均运行时间。实验结果如表6 所示,相较于其他几种取证方法,本文方法运行速率提升明显。基于传统扩散修复取证的算法LDI 平均运行时间长,其原因是LDI 单次只能检测一张图片,且使用的CPU 计算力远远不如深度取证方法使用的GPU。而基于图像块的深度修复取证方法Patch-CNN,需要在整张图像上搜索可疑的图像块,平均运行时间较低。本文方法和HP-FCN 的平均运行时间较少,是因为深度学习方法以牺牲训练时间为代价,大幅地减少了测试时间。而在实际应用中,测试阶段才是通常关心的计算成本,训练阶段是离线的,所以深度学习方法无疑更适合实际应用。

    表6 不同方法的平均运行时间 单位:sTab.6 Average running times of different methods unit:s

    本文提出一种面向图像深度修复取证的U 型特征金字塔网络U-FPN,实现修复区域的检测与定位。本文以VGG16作为提取模块,有效地提供了取证网络所需的丰富特征图。引入全局和局部注意力机制使网络更加关注修复区域,有效处理了由不同深度修复技术带来的复杂痕迹问题。本算法引入融合损失函数用于提高修复区域的预测率,针对修复图像类不平稳的问题,依旧能取得较好的检测精度。实验结果表明,相较于现有方法,本文所提方法在多种深度修复数据集上具有更好的泛化能力,同时针对JPEG 压缩也具有较强的鲁棒性。但实验中发现,当修复区域的轮廓更加复杂时,网络只能做到定位修复区域和检测大致边缘;
    探索由复合深度修复方法制成的数据集也是未来的工作之一。

    猜你喜欢注意力卷积像素像素前线之“幻影”2000小哥白尼(军事科学)(2022年2期)2022-05-25让注意力“飞”回来小雪花·成长指南(2022年1期)2022-04-09基于3D-Winograd的快速卷积算法设计及FPGA实现北京航空航天大学学报(2021年9期)2021-11-02“像素”仙人掌红领巾·萌芽(2019年8期)2019-08-27从滤波器理解卷积电子制作(2019年11期)2019-07-04基于傅里叶域卷积表示的目标跟踪算法北京航空航天大学学报(2018年1期)2018-04-20ÉVOLUTIONDIGAE Style de vie tactile中国与非洲(法文版)(2017年10期)2017-11-23“扬眼”APP:让注意力“变现”传媒评论(2017年3期)2017-06-13A Beautiful Way Of Looking At Things第二课堂(课外活动版)(2016年2期)2016-10-21高像素不是全部CHIP新电脑(2016年3期)2016-03-10

    推荐访问:取证 金字塔 修复

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章