Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries

Code link:https://github.com/jawadbappy/forgery_localization_HLED

1 摘要

随着图像修改工具的进步,图像内容的修改日益严重,包含复制克隆、物体拼接、移动等操作的检测变得很具有挑战性,在视觉上难以分辨出来,这篇文章提出一种高置信度的篡改定位检测框架,充分利用重采样特征、LSTM,编解码网络分割出像素级别的篡改区域。重采样特征用来捕获篡改痕迹,包括JPEG质量损失、上采样、下采样、旋转与剪切。提出的网络利用空间领域的较大接收视野和谱域的关联分析是否为篡改区域的区别性特征通过整合编码网络与LSTM网络,最后使用解码网络来定位来自低分辨率特征的映射,利用softmax层来预测mask,通过反向传播算法进行端到端的学习,而且引入了用于定位篡改区域与高精度的拼接数据集。

2 引言

随着篡改工具的发展,篡改通过视觉来分辨变得具有挑战性,通常的篡改类型分为两类,一个是内容篡改 一个是内容保留(压缩、模糊、对比度加强)主要来源于后处理,造成较少的伤害因为其没有改变语义内容;改变内容的有复制粘贴、拼接、物体移除、任意篡改语义内容的操作,内容的修改引起图片信息的改变与丢失。随着篡改图片的操作日益增多,对于篡改的检测也趋于重要,最近图片与视频的语义篡改的检测也日益流行,在本文中,我们提出了一种像素级别的篡改定位网络框架

在过去的几年间,分类图像是否篡改逐渐成为主流工作,【13】【29】【38】【46】【64】【72】【76】很少的工作在于篡改的像素级定位【7】【14】,一些工作是篡改块的定位【17】【25】【53】优秀的篡改图片很难在视觉上留下线索,如图1(a)复制粘贴 (b)拼接(c)背景的改变

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

多数的图片篡改检测利用频域的特征,统计量来决定【45】【55】【57】【83】,在【20】【83】是对JPEG压缩的检测,受到格式的限制,在【66】【67】中,通过添加噪声来加强重采样特征的检测;在计算机视觉方面,深度学习在目标识别与检测方面取得较大的突破【31】,场景分类【88】语义分割【54】,基础的方法自动编码器【86】CNN的【8】【21】75等用于图像篡改检测,在多媒体取证方面,现存的方法多专注在具体的篡改类型,copy-move【19】【35】【47】,拼接的【60】,因此应对的篡改类型比较单一,尤其是不知道篡改类型的情况下,我们最近的文章7,提出了通用的检测框架来应对不同程度的内容篡改;

       并非如语义分割一样,所有的区域内物体都需要分割,图像篡改只强调对篡改区域的定位;在计算机视觉方面,一些先进的的语义分割方法【6】【54】【87】都是基于CNN的,在【87】中充分利用全卷积网络提供不同水平的高级特征来分析物体内容与形状,在目标检测【31】与分割【6】【54】,CNN在分析不同区域的内容方面显示出优异的潜能,对比语义分割、篡改区域的物体被移除并被填充来自另一部分物体,较好的篡改经常是内容上相似【75】,即便是CNN产生不同区域的空间映射也不能区分、所以只通过CNN框架的篡改检测是不足够的,在我们早期的【7】的工作中,对比不同的语义分割方法【54】【87】,并未对复制粘贴与物体移除显示出较好的性能。

       图像篡改产生很多人工痕迹,重采样、压缩、剪切等操作在重采样特征刻画的很明显,【17】【28】【77】,在【17】中,LSTM利用重采样特征来来分类是否篡改块,其作者训练6种不同类型的操作(JPEG因子在85以及以下的,上采样、下采样、顺时针旋转、逆时针旋转、剪切)由于插值效应的重采样出现周期性的特征;CNN对不同区域的图片展现旋转不变性的特点,都有助于篡改图像的定位

       为了有效的定位篡改图片,我们提出了一种利用重采样特征、LSTM、编解码网络的框架来学习篡改图片的定位,给予一张图片,我们分为几个相同块,然后提取其重采样特征

LSTM网络用语学习篡改与非篡改区域频域上的相关性,使用编解码网络取得其空间信息,提出一种端到端的学习网络使用大数据,当然在其他的数据集中表现的很好。

 

3 方法概述

整体框架分为三个部分,LSTM网络与重采样特征  卷积编码网络  解码网络

(1)分为几个块,对其抽取重采样特征,使用HILBER CURVE来决定块的顺序胃进LSTM中,LSTM可以学习这种篡改区域与非篡改区域的频域上的转换,最终连接编码网络的特征来由LSTM网络生成feature map图,在编码网络包含残差块、块归一化、**函数。在每个残差块,与两个卷积上使用短连接,在残差与最大池化操作后,拥有转换不变性

(2)下一步设计解码网络提供最终的表征层,联合空间特征与LSTM的输出来定位篡改,解码网络基础的操作上采样、卷积、块归一化、**函数等,这些帮助更好的定位篡改,最后softmax用来预测篡改是否。

4 主要的贡献点

  1. 提出了利用空间特征与频域特征的框架用于篡改
  2. 使用整个图作为输入,充分利用全局特征
  3. 提供新的数据集用来篡改检测,数据集较大(现有的 IEEE FORENSICS[1],COVERAGE[84]

5 相关工作

现存的方法来检测不同的篡改类型,比如说重采样、JPEG、内容修改等,在此我们简介一下,我们的现存的方法

过去几年,【28】【58】【67】【71】【77】被提出用于检测重采样;多数方法研究线性与三次方插值,在【77】使用二阶导数的变化引起周期特征,在【67】在JPEG压缩图像的基础上通过添加噪音来确定重采样操作,在【27】【28】利用归一化能量密度生成特征,利用SVM来对重采样进行鲁棒性检测,最近【33】【34】被提出在图像压缩的基础上来探索图片的篡改

       很多现有的方法来检测拼接痕迹,如【30】【52】【78】;修改移除物体【20】【49】【85】几种方法来通过研究JPEG的块效应检测篡改区域【12】【13】【26】【51】【56】,一些最近工作,【3】【38】【40】【47】研究复制粘贴篡改,【47】使用分割的方法来研究复制粘贴,首先分为语义独立的区域,然后进行关键块匹配;在【24】中,使用最近邻算法匹配算法,进一步的使用不变性特征,例如圆形谐波变化并经过几何变换的重复块显示了鲁棒性;在【60】中,可操作金字塔(SPT)与局部二值模式(LBP)被用于特征匹配;在【34】中强调了图片篡改与讨论恢复缺少损坏的区域,在【5】中,不同类型篡改操作进行了综述。

       最近,应用不同的计算机视觉与机器学习【68】【74】的方法日益增多,在语义分割方面,很多深度学习框架,【6】【54】【87】被提出,以大幅的精度提升超过了现有的方法,其中多数深度框架【6】【54】,基于CNN利用语义分割取得高级特征,在【54】中提出使用全卷积代替全连接层,最后一层,解码网络使用上采样来生成稠密像素label;SegNet[6]设计从低分辨率热度来进行高效的语义分割操作;在【22】【41】中,使用CRF作为后处理改善分割结果;在【70】中,短连接用于后期的特征图融合;在【81】ReSeg 中,门循环单元和上采样用于产生分割mask

       最近的工作,包括【8】【9】【17】【61】【75】篡改检测任务,探索深度学习模型。这些任务包括篡改基础操作8】【9】,重采样【10】,拼接【75】,盗用【16】;【73】提出一种高斯神经元CNN用于隐写分析。深度学习的方法用于面部修饰在【11】,在【86】中使用自动堆叠编码模型来检测图片篡改。在【8】中,新的卷积层被提出用于篡改特征提取;在计算机视觉领域,深度学习方法带来了巨大的发展,比如说图像分类【88】,语义分割【54】,这些深度学习网络,在物体分割发明发挥作用;多数基于CNN的方法,提供空间特征图来相关篡改区域,因此,空间语义与重采样有助于定位篡改图片,我们的工作重复利用此性能;

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

6网络框架概述

文章的目标是像素级的定位篡改,图2展示了网络框架,整个网络框架可以分为三个部门,(1)使用LSTM提取网络特征(2)编码网络 (3)解码网络;CNN提取语义信息来进行物体分割其有助于篡改定位,单只利用空间特征的效果是不够的,因为上采样、下采样、压缩引起的痕迹在频域才能有效的显示处理,因此我们使用从图像块中提出重采样特征、这些重采样特征使用LSTM学习图像块之间的相关性,编码网络用来空间篡改定位,在解码网络之前,同时在频域与空域上提取特征,最后使用低分辨率特征图来定位篡改区域,为了解码网络能够更好的定位、使用了卷积层、块归一化、最大池化与上采样 ;下一部分讨论提出框架的细节

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

6.1 提出重采样特征的LSTM

(1)重采样特征:经典图片内容的篡改是复制粘贴、拼接以及物体的移除,其很难检测;这些操作扭曲了篡改边界的自然统计特性、在【58】中,使用radon 变换用于重采样检测,其作用在块上抽取重采样特征,阐述radon变换的如何提前重采样特征,我们提供了两个例子表现篡改与未篡改区域的差异,在图3,第一行是未篡改最后一行是篡改,一张图片需要分为64个块,比如是256*256*3可以分为32*32*3的大小图片,通过使用拉普拉斯3*3的过滤器然后取其平方根,在【17】中用于预测错误;重采样的信号有周期性的关联在线性预测,使用拉冬变化沿着多角度做误差的累加。我们实验中使用10个角度,最后使用FFT找出自然统计信号,通常重采样在提取在与特定JPEG特定压缩品质下,采用下采样上采样旋转剪切等。

       为了减少计算量使用了256*256的图片,其中可能引入了额外的篡改痕迹比如说降低品质因子、上采样、下采样等。在【17】中,重采样的特征用于分类这些痕迹,在本文的工作中也使用了重采样特征显示鲁棒性,和【17】不同的是,重采样特征用于图像块的分类;

在图像块大小的选择是一个平衡点:块大有利于重采样特征、但是不利于小篡改区域的检测,在【17】中使用8*8的块,我们使用32*32为了提出更详细的信息,使用重采样特征的主要动机是来刻画不同篡改类型的局部篡改痕迹。

(2)Hilbert Curve:LSTM多数用于时序信息的研究,其较好的表现来源于图像块输入的顺序性,可以考虑水平与竖着方向,但不能够很高定位精度,单个方向排除了另外方向块的联系性,另外是时间方法的原因。

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

       使用空间填充曲线把多维度问题转换为单维度【15】能更好的保留图像块的局部空间定位【62】,使用此曲线的原因其可以捕获相邻块的相关性【82】,图4展示HILBETT 曲线的工作原理,其看做为一个敞开的正方形,【82】连接起来组成多个,结构元拥有一个入口语一个出口,从图4第一个图可以看出包括2*2的空间范围,主要的思想是把平面分为4个部分,然后再分四个部分,最后连接起来,在这些块按照这个顺序输入然后输入到LSTM,其强调顺序的对准确定位的正确性

(3)LSTM 记忆网络:其可以获取输入序列之间的联系性【18】【69】,关键是使用LSTM学习在不同块的二值转化,在篡改与未篡改之间其提供了区别性的特征;在【7】【17】中,LSTM网络使用学习转变在篡改与未篡改之间,在【17】中进行了8*8块的分类,此方法对多尺寸图片更有效;在每个块抽取之后,我们使用Hilbert曲线,决定输入块的输入顺序,LSTM 通过计算块之间的对数距离,学习相邻块直接的联系;在文中使用两个堆叠层,使用64的步长在LSTM网络中,在最后可以获取64维度的特征,然后映射生成的LSTM网络Nf特征图;使用公式1来做特征映射Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

,在我们实验室中选择Nh==128,Nf=64,选择输出为了更好的保留空间特征信息,然后把64*Nf矩阵转为8*8的,前两维的块的定位表征在图2中显示

       LSTM的工作原理:有三个门控制输入、输出、忘记门、公式如下

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

6.2 编码网络

在【6】【22】【54】中,一些基于CNN深度网络框架来定位热图来语义分割,我们探索使用编解码网络在【6】中的,编码网络使用不同卷积核来定位篡改区域,在第一层使用256*256*3,基于的使用卷积、池化与**函数,本文使用残差单元【36】,主要是有助于优化模型,卷积使用3*3的,在编码层使用32、64、128、256的特征图,总共4层卷积结构、在残差单元中使用BN【37】,**函数使用ReLU,最后的残差单元使用步长2 减少特征图的大小,与【7】不同使用最大池化【43】提供转换不变性,池化损失的信息可以通过解码中的上采样来补充,in【6】

6.3解码网络

在【54】中,解码网络需要储存编码层的feature map,然后需要大量内存这是不可实现的在现实生活中,我们使用在【6】中的解码,关键解码代替全连接层,编解网络用于分割【6】中,在本文中使用篡改物体的分割,在上采样的部分无可训练参数,不同通道的卷积核来生成稠密图,每个解码都是上采样、卷积、块归一化操作。使用3*3卷积,最后利用16 64的特征图来预测,如图2所示

6.4 训练网络

使用softmax函数分类

损失函数:交叉熵损失,使用Adam优化函数,

 

7实验部分

数据集 NIST’16[2]  

7.1 数据集

创造了65K的篡改与未篡改图片,base-model 是提出的网络,在网络基础上微调在NIST’16 与 IEEE FORENSICS CHALLENGE

合成图片是拼接操作,主要是物体的增加与减少,使用MS-COCO【50】进行目标检测与语义分割,并且把物体经过处理放入DRESDEN[32] NIST’16[2] ,未篡改的主要是使用NIST’16

创建数据集的步骤:

  1. 从DRESDEN数据集中,裁剪1024*1024大小的图片,主要避免重采样带来的噪声
  2. 把来自MS-COCO的六个物体 拼接到图中
  3. 我们拼接两次使用不同的尺度与旋转角度,无重叠部分 如图5所示

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

分别从两个数据集得到大家40K 25K的未篡改图片、具体表1所示

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

NIST数据集包括复制粘贴、去除与拼接、另外选择COVERAGE[84]来评价

比例: train valid test 70:5:25

实验分析:

实验步骤分为;提出模型的表现、不同基准方法的表现、比较现存的方法、roc曲线、质量分析、全局内容影响

 

基础方法:

FCN ;全卷积网络 在【54】

J-conv-LSTM-CONV:用于语义分割的【7】

Encoder-Decoder:使用卷积网络作为编解码网络在【6】

EnDec: 相似于【6】的编解码 ,上采样因子为4

LSTM-ENDEC-BAS:提出的框架

LSTM-ENDEC微调的网络

 

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

 

比较现有算法:

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

 

Hybrid LSTM and Encoder–Decoder Architecture for Detection of Image Forgeries论文阅读

 

 

 

 

 8结论

提出一种基于深度学习的篡改检测的网络,特别的,使用 CNN-LSTM混合模型来分类篡改区域,使用CNN来提取空间特征。重采样特征用于LSTM中,探索篡改块与未篡改块之间的联系,解码网络学习进行最后的定位,并且制作了合成图数据集,提出网络能够用于复制粘贴、去除、与拼接的篡改类型;