1. 引言
如今,各种图像处理工具越来越多,类似于Photoshop和Corel Draw的图像处理软件可以轻易完成篡改图像操作,而且这些操作造成的图像变化很难通过肉眼检测到。经过伪造的图像可以用于各种地方,虽然大多数人仅仅使用这些工具美化图像,但某些不法分子通过篡改图像达成个人目的的事件也层出不穷。因此,为了避免这种情况的发生,研究人员想出各种方法来检验图像的真实性,即图像取证。理论上,图像取证可以分为主动和被动两种方式。所谓主动取证,是指对图片进行一些预处理,通过某些手段如信息隐藏等对图片进行信息隐写。在需要对图像认证时,从图像中提取相关信息,从而确定图像的真伪。而被动取证则事先不需要做任何事情,通过对任意获取的一幅图像进行技术分析就可以确定图像是否经过了复制粘贴或者二次合成等。从应用角度而言,主动取证技术需要大量的存储资源,可以用于小范围内图像的取证,应用面较窄。而被动取证则适合于任何图像,因此应用面较宽 [1] 。
在已有的篡改图像检测方法中,有的计算复杂度较高,而有的则识别率较低。一个良好的检测算法不仅应该具有较低的运算复杂度,而且其识别率应该达到较高的水平。本文对几种基于频率的复制粘贴检测方法进行了分析和对比,指出了各种算法存在的缺陷,并对今后研究的方向进行了展望。
2. 图像篡改与检测技术
2.1. 数字图像篡改技术
数字图像篡改可分为五类:复制粘贴、图像润饰、图像拼接、图像变形和图像增强 [2] 。
复制粘贴:在这项技术中,先将图像的一部分进行复制。然后将复制的这一部分粘贴在原图像上的一些其他位置,以隐藏原图像的某些对象或生成一些其他的对象,从而改变原图像中所携带的信息。
图像润饰:这项技术往往被用于商业用途和人类美学。图像润饰是为了增强图像特征,当然,这种图像篡改的技术也可以被用于降低图像的特征。
图像拼接:在这种篡改技术中,不同的图像组件相互拼接,用于产生一个单一的复合图像。这样,几个不同图像中的对象将并置于同一幅图像中。
图像变形:在这种篡改中,两幅不同图像中类型相似的对象被用来将原始对象转换成不同的对象。这种篡改技术常用于对图像中的人脸进行修饰。
图像增强:在这种图像处理过程中,几种增强操作(如颜色变化,背景模糊等)作用于图像使对象更加清晰可见。
2.2. 复制粘贴篡改检测
由于区域复制是在复制粘贴篡改中进行的,所以被篡改的图像中至少存在两个相似的区域。经过复制的片段将含有类似的属性,如噪声分量,动态范围以及图像剩余部分的调色板的兼容性。复制粘贴篡改检测可分为两类:基于图像块的方法 [3] 和基于特征点的方法。在基于图像块的方法中,输入图像被划分为固定大小的重叠或不重叠的块。一般来说,方块使用较多,但一些研究人员也会使用圆形块。对每个块进行特征提取的方法有很多,如基于矩的方法,基于灰度的方法,基于降维的方法,基于频率的方法等。通过匹配,两个相似的特征向量分别对应图像中两个相似的区域,也就找到了图像中经过复制粘贴篡改的区域。在基于特征点的方法中,输入图像不需要被划分成固定大小的块。只用确定图像中的一些特征点,通过逐一扫描特征点提取出特征点的特征向量。同样的,相似的特征向量也对应着图像中被篡改过的两块区域。
在复制粘贴图像篡改中,复制和粘贴的区域存在很强的相关性,可以根据这一特性找出图像中经过篡改的部分。复制粘贴篡改检测的一般步骤如图1所示。
其主要步骤如下:
1) 预处理:预处理的目的是消除图像中无关的信息,恢复有用的真实信息,增强有关信息的可检测性和最大限度地简化数据。如果需要将彩色图像转换成灰度图像,则可以执行颜色转换操作。不同的预处理操作可以产生不同的效果,比如图像缩放,图像降维,图像低通滤波等。在基于图像块的方法和基于特征点的方法中,都可以对图像进行预处理操作。
2) 特征提取:在这一步中,需要提取图像的特征向量。如果使用的是基于图像块的方法,特征提取的对象是图像中被划分的每一个块。图像将被划分为固定大小的重叠或不重叠的块,这些块可以是方形的,也可以是圆形的。在基于特征点的方法中,特征提取对应的对象则是每一个特征点。
3) 匹配:经过特征提取操作后,将提取出来的特征向量进行匹配,寻找出图像中相似的区域。在基于图像块的方法中,字典排序或基数排序都可以将相似的特征向量排列在相邻的位置,从而提高匹

Figure 1. General steps of copy-move image forgery detection
图1. 复制粘贴篡改检测的一般步骤
配的效率。在基于特征点的方法中,通常采用最优节点优先算法(BBF)识别出最相邻的两个特征向量,进而完成匹配。
4) 滤波:滤波的目的是为了减少误匹配数,从而降低虚警概率。可以利用形态学滤波排除一些孤立的区域。
3. 基于频率的复制粘贴图像篡改检测方法
3.1. 基于DCT变换的方法
Fridrich、Soukal和Lucas提出了使用DCT变换(离散余弦变换)的方法进行图像篡改检测 [4] 。DCT变换的方法是将空间域转换为离散频域。首先对图像进行DCT变换,而后在给定的阈值下,对变换后的DCT系数进行系数对直方图化处理,并对直方图化后的值进行归一化,最后用主成分分析对上述数据进行降维处理取得系数对直方图的统计特征,同时将真实图像和篡改后的图像特征进行分类识别 [5] 。
3.1.1. 预处理
如果输入的是彩色图像,先应用公式(1)将其转换为灰度图像。
(1)
3.1.2. 特征提取
先确定一个尺寸大小为
的方形滑动窗,然后将此方形滑动窗从图像的左上角到右下角依次进行滑动,将图像划分成多个相互重叠或不重叠的方块。对应计算出每一个方块的DCT系数,即为特征向量。
3.1.3. 匹配
从方块中提取的特征向量被存储在一个矩阵中。如果输入图像的大小为
,则矩阵将有
行和
列。所有的特征向量都是按照字典排序法进行排序的,经过逐一匹配,所有的匹配块对将被识别出来,但可能存在大量的错误匹配。为了避免这种情况,还需要计算出相似块的位移向量。将每个块的左上角的坐标定义为它的位置坐标,当得到一对相似的位移向量时,计数器T的值加一。这样,就可以得到两个相同的特征向量对应的块对。假设块对的位置坐标分别为
和
,对应于相似块对的位移向量可以用式(2)进行计算。
(2)
由于位移向量
和
表示的是同一种位移,所以应该对位移向量做归一化处理。当
时,将位移向量乘以
,使
。对于每一组具有相同的归一化位移向量的匹配块对,计数器T的值加一,如式(3)所示。
(3)
首先将计数器T的值初始化为零,计数器的值表示出现不同的位移向量的频率。对于所有的归一化的位移向量
,只要其频率大于一个用户设定的阈值
,即
,就可以被检测出来。出现频率大于用户指定阈值的位移向量所对应的块对就被标记为复制粘贴篡改块。如果阈值设定得偏高,那么小尺寸匹配块对将很难被检测出来;而如果阈值设定得偏低,又会出现很多的错误匹配。用此算法能够检测的篡改块的最小尺寸由方块的大小和阈值
共同决定。
3.1.4. 算法缺陷
当原始图像中存在大纹理区域时,此方法无法准确区分出篡改区域和大纹理区域,误检率将会大大提高。
3.2. 基于DWT变换的方法
Zhang、Feng和Su提出了一种基于DWT变换(离散小波变换)的方法进行图像篡改检测 [6] 。由于小波变换具有多分辨率特性,故其被广泛应用于图像分解。DWT变换能够减小每一级图像分解的尺寸,如果一个矩形图像经过L级分解后的大小为
,那么经过L+1级分解后图像大小则为
。在每个分解等级上,输入图像被分解成四个子带:LL、HL、LH和HH。其中,HL、LH和HH分别是图像的水平分量,垂直分量和对角线分量,LL则被称为近似分量或粗水平分量。每一级分解后,将得到的LL子带进一步划分为四个子图像。最后将这些子图像拼接起来,就能够恢复出原始图像。由于DWT变换具有迭代分解特性,如果进行L级分解,那么在LL子带执行的匹配则表示为
。每次迭代后,用于产生重叠块的子图像分别是
。其中,
是粗级图像。
3.2.1. 预处理
如果输入的是彩色图像,则利用公式(1)将其转换为灰度图像。
3.2.2. 特征提取
子带被分为多个大小为
重叠块。将对应于每个块的像素值提取出来并存储在一个行向量中。如果输入图像的大小为
,那么存储每个图像块的特征向量的矩阵都含有
行和
列。如果进行j级分解,那么矩阵的行数将减少到
。
3.2.3. 匹配
应用字典排序法找出相似的特征向量。对于相邻的特征向量,计算出其位移向量,并给位移向量计数器设定一个阈值。对于位移向量计数器的值大于阈值的块对,用不同的颜色将其标记为复制粘贴篡改块。
3.2.4. 算法缺陷
此方法会受到图像中复制和粘贴区域位置的限制。当篡改的区域位于图像的中心部分时,此方法将无法使用。在这种情况下,需要将该算法迭代应用于各个子图像。
3.3. 基于DyWT变换的方法
Muhammad、Hussain 和 Bebis基于DyWT变换(二进小波变换)提出了一种复制粘贴图像篡改检测方法 [7] 。DWT变换出现后,基于这种算法又衍生出很多改进型的算法,DyWT变换就是其中的一种。当从一幅图像上复制出一片区域,然后粘贴在该图像的其他位置时,这两个相似的图像块就存在不同的图像特征,这样就要求小波描述符具有平移不变性。然而,由于DWT变换对图像进行下采样,故其不具有平移不变性。因此,DWT变换对诸如边缘检测、图像去噪和纹理分析等信号处理不能产生很好的效果。而DyWT变换具有平移不变性,故可以应用于上述操作。将输入图像I进行分解,Q[k]和R[k]分别是低通滤波器和高通通滤波器,输入图像I的DyWT变换可以用如下算法进行计算。
从w = 0开始,假定
,在
的各级分解下,尺度系数和小波系数可以依式(4)和式(5)分别计算得到。
(4)
(5)
和
是通过在Q[k]和R[k]之间添加
个零点所得到的滤波器。DyWT变换可以通过图2所示的滤波过程实现。假设从第0级分解开始计算,即
。
DyWT变换不涉及下采样,对二维信号而言,将图像分解后可得到LL、HL、LH和HH四个子带。当然,也可以对图像的行和列分别应用DyWT变换进行分解,如图3所示。
3.3.1. 预处理
这种方法可以直接应用于彩色图像,不需要将其转化为灰度图像。将输入图像分解为三个颜色通道红色(R)、绿色(G)和蓝色(B),然后对这三个颜色通道分别执行类似的操作,通过比较列表进行匹配。
3.3.2. 特征提取
应用DyWT变换进行篡改图像检测的步骤如图4所示。图像经过分解后,可以得到四个子带,但只
有其中的两个子带LL1和HH1可以用于进一步操作,并最后检测出复制粘贴图像篡改。在水平方向和垂直方向同时应用低通滤波后得到LL1子带,因此其代表图像的低频分量。同样的,在水平方向和垂直方向同时应用高通滤波后得到HH1子带,其包含图像的高频分量信息,如噪声和锐利边缘等。假设篡改图像块的像素值不小于
,将LL1和HH1子带划分为大小为
的重叠块,并且每个重叠块的行和列均含有8个重叠像素值。
3.3.3. 匹配
LL1子带包含图像复制区域和粘贴区域的相似成分。经过篡改,篡改区域的噪声模式变得失真。为了隐藏篡改的痕迹,需要对图像进行各种其他操作,如边缘平滑或在篡改区域加噪等。在HH1子带中,篡改块具有很大的不同,图像块之间的相似性可以通过欧氏距离计算得到,如式(6)所示。

Figure 2. One level decomposition of DyWT
图2. DyWT变换的一级分解

Figure 3. For a 2D image one level decomposition of DyWT
图3. 二维图像的一级DyWT分解

Figure 4. Steps of image forgery detection using DyWT
图4. 应用DyWT变换进行篡改图像检测的步骤
(6)
式中,
表示块u和块v之间的欧式距离和灰度值,
和
表示块u和块v的像素值,N则表示所有块的总像素值。计算出来的图像块之间的欧式距离需要进行归一化处理,使其介于0和1之间。将LL1子带的距离值存储在List1中,然后将List1按照升序进行排列。为了减少错误匹配的出现,我们将距离值(Th1) > 0.7的块对舍弃掉。同样的,将LL2子带的距离值存储在List2中,然后将List2按照降序进行排列。由于List2反映的是块对之间的差异性,故我们将距离值(Th2) < 0.3的块对舍弃掉。最后,在List1和List2中的相似位置找到的匹配块对就是复制粘贴篡改块。如果块对(u,v)在List1中的位置坐标为n,同时它在List2中的位置坐标位于
和
之间,那么这个块对就被标记为篡改块对。List2主要用于降低虚警概率。I的值可以在1到15之间变化,并且当I=7时可以得到最优结果。
3.3.4. 算法缺陷
子带的大小仍然和原始图像一样。
3.4. 基于QCD变换的方法
Ghorbani、Firouzmand和Faraahi在 [8] 中提出了一种新的复制粘贴篡改检测方法。在这种方法中,先应用DWT变换减小输入图像的尺寸,然后应用DCT-QCD变换减小特征向量的长度。其中,DWT变换的作用对象是大小为
的灰度图。将图像分解为LL、HL、LH和HH四个子带,近似子带(LL)用作进一步的处理。经过DWT变换后,作进一步处理的图像大小变为
。其中,j是分解等级。
3.4.1. 预处理
如果输入图像是彩色图像,那么需要对每个颜色通道单独进行处理。
3.4.2. 特征提取
设定一个
大小的方块,将这个方块从图像的左上角到右下角依次滑动,从而将图像划分成多个重叠块。我们将每个方块对应的行向量存储在一个矩阵中,然后应用DCT变换对每个方块进行提取特征,应用QCD变换减小每个特征向量的长度。由于每个方块包含的行的个数等于
,那么特征向量的长度将会减小到
,矩阵的大小将会变成
。
3.4.3. 匹配
先运用字典排序法将矩阵的行进行排序,以获得彼此相邻的相似的特征向量,然后计算出相似的特征向量所对应的块对的位移向量。那么,每当位移向量的计数器值大于阈值时,这组块对就被标记为复制粘贴篡改块。
3.4.4. 算法缺陷
如果复制的图像区域在粘贴之前经过旋转、重压缩和缩放操作,这个方法将无法检测出篡改区域。
4. 结束语
由于复制粘贴篡改是当前最流行的图像篡改方法,所以篡改检测技术的重要性日益突出。虽然研究人员提出了各种图像篡改检测技术来抵抗在篡改区域上应用的各种后处理操作,但是在这个领域仍然有很大的研究空间。其中,计算复杂度是篡改检测算法所要解决的主要问题。本文讨论的基于频率的检测技术对于复制粘贴篡改检测非常有效。即使是经过了图像模糊,添加噪声和JPEG压缩等后处理操作,这些方法仍能检测出图像篡改,有些方法对几何变换也有很强的鲁棒性。当然,考虑到被复制区域可能经过压缩、重叠或增强处理,我们仍然需要研究出适应性更强的复制粘贴篡改检测方法。今后,我们希望在降低计算成本的情况下,将混合检测技术应用于任意手段的图像篡改,从而得到更精确的计算结果。
基金项目
船载航行数据记录仪(VDR)图象篡改鉴别技术研究(61250006);基于调制解调的图象多分辨率分解理论与方法(61273262);信号稀疏表示的广义测不准原理研究(61471412)。