赵秀锋,魏伟一,陈金寿,陈 帼
(1.西北师范大学 计算机科学与工程学院,兰州 730070;2.石河子大学 信息科学与技术学院,新疆 石河子 832000)
图像拼接是一种常见的图像伪造手段,其将多幅图像合并成一张图像[1],这种图像合成往往会造成整幅图像某些特性(如光照方向[2]、噪声[3]、光源颜色等)的不一致,从而为图像拼接篡改检测研究提供了思路。YU 等[4]较早利用光源颜色不一致来检测图像拼接篡改,虽然取得了一定的效果,但其阈值选择依赖于先验经验。SUN 等[5]根据篡改图像中的色偏不一致来检测拼接区域,该方法采用顺序分块策略划分图像并根据先验知识人工地选取未篡改块作为参考区域,丢失了图像块的语义信息,导致边缘检测效果较差且无法自动定位拼接区域。WU 等[6]以篡改图像中噪声不一致为检测依据,在单尺度超像素中估计噪声方差,排除不符合正态分布的超像素,并将剩余区域与阈值进行比较以定位可疑区域。PUN[7]在多尺度超像素分割中利用噪声差异来检测拼接区域,首先在单个尺度中计算噪声水平和亮度信息并建立两者之间的多项式函数,将不受函数约束的块标记为该尺度下的可疑区域,然后将相邻尺度的检测结果进行合并,得到最终的篡改区域,由于该方法使用多尺度超像素分割,因此其时间消耗较大。
为了提高检测准确性,研究人员提出了使用主成分分析(Principal Component Analysis,PCA)[8]和奇异值分解(Singular Value Decomposition,SVD)[9]来估计噪声的方法。ZENG 等[10]提出一种基于PCA的拼接图像检测方法,首先将可疑图像进行规则分块,然后采用PCA 算法逐块估计噪声,最后利用K 均值聚类确定拼接区域,虽然该方法在噪声估计时具有良好的性能,但其仅提取单一特征导致误检率较高。WANG 等[11]将图像划分为顺序块,在彩色空间中利用PCA 算法估计噪声。文献[12]在RGB 三通道中分别利用PCA 算法估计噪声,再将3 个噪声值取平均作为最终特征检测拼接区域。文献[13]在超像素块中提取局部噪声水平和噪声分布特征,以实现篡改检测。文献[14]利用PCA 算法提取图像的噪声特征,然后采用聚类算法定位拼接区域,该方法对拼接区域检测效果良好,但对复杂篡改手段抗鲁棒性不强。文献[15]利用奇异值分解和拉普拉斯算子计算噪声特征,利用模糊聚类检测拼接区域,该方法采用顺序分块策略,在一定程度上丢失了语义信息,因此,对拼接区域边缘的检测效果较差。文献[16]提出利用自适应奇异值分解来估计局部噪声的方法,该方法首先对图像进行分割,其次利用奇异值分解将每个区域分解为多个级别的噪声图像以得到局部噪声特征,同时提出邻域噪声描述符来减小区域间的波动,最后通过支持向量机确定拼接区域。该方法在大多数情况下检测效果较好,但是如果篡改图像中噪声差异较小,则其检测精度将降低。
尽管上述方法在图像拼接区域检测方面表现出一定的可行性,但大多在单个颜色通道或灰度空间中进行检测,忽略了彩色图像的颜色信息。另外,为了定位图像中被篡改的区域,通常需要对待检测图像进行分割,但现有方法采用顺序分块的方式易将篡改区域与原始区域的边缘部分划分在同一个子块中,降低了噪声估计的准确性。为充分利用图像的颜色信息并提高不同大小图像块的噪声估计准确性,本文提出一种基于自适应四元数奇异值分解(Quaternion SVD,QSVD)的噪声估计算法,以对图像拼接进行检测。
LIU 等[9]证明图像能量主要集中在前部分较大奇异值所对应的特征图像,而尾部奇异值主要表示图像噪声。本文验证了不同图像尺寸下噪声估计σ与尾部奇异值均值PM 间的相关性,如图1 所示。当图像尺寸较大时,如512×512 和256×256,线性相关性很明显,而在较小尺寸(16×16 和32×32)图像中,线性相关性不稳定。
图1 不同尺寸图像的尾部奇异值均值与噪声的关系Fig.1 Relationship between tail singular value mean and noise of images with different sizes
在检测拼接伪造时,为了更准确地定位拼接,往往要对图像进行分割,这必然会引入不同尺寸的图像块。为提高噪声估计的精度,本文提出一种基于自适应四元数奇异值分解的噪声估计方法,以在不同大小的超像素中自适应地估计噪声。首先采用SLIC 算法分割图像,并针对每个超像素,利用自适应QSVD 算法估计噪声;其次计算超像素的亮度信息以构建噪声-亮度函数,得到各超像素块到该函数曲线的最小距离,将该距离测度作为表征噪声水平的特征向量。同时,为避免图像噪声差异较小时无法检测的情况,本文根据色温估计算法提取超像素的色温特征,将噪声描述符与色温估计相结合作为最终特征向量,并利用FCM 聚类算法确定初始可疑拼接篡改区域。最后,结合超像素上下文信息进行后处理,得到最终的拼接伪造区域。本文方法流程如图2 所示。
图2 本文方法流程Fig.2 Procedure of the proposed method
为量化描述不同区域特征的差异,本文采用SLIC 算法将具有相似性的像素分组形成超像素块。与规则分块相比,超像素分割包含一定的语义信息,图像块的形状均匀且边缘轮廓更为清晰。另外,在超像素块中提取图像特征能大幅降低后续算法的时间复杂度。分割后的超像素满足式(1):
其中:I表示输入图像;kj表示第k个超像素中所有的像素点。
虽然彩色图像的大多数信息包含在亮度分量中,但是从灰度图像中进行拼接篡改检测忽略了颜色信息。为了充分利用彩色图像三通道的颜色及结构信息,本文利用四元数模型表示RGB 图像。四元数由1 个实部和3 个虚部单位组成,用式(2)表示:
其中:a、b、c、d∈Z;a是四元数的实部;b、c、d分别对应四元数3 个虚部i、j、k的系数。如果实部a=0,则q称为纯四元数。
用四元数模型表示彩色图像时,可将R、G、B 这3 个通道分别作为纯四元数3 个虚部的系数。给定彩色图像的像素(x,y),R(x,y)、G(x,y)、B(x,y)分别表示该像素在R、G、B 通道中的值。对于每一个像素,通过式(3)可获得该点的四元数表示:
将RGB 图像中所有像素点通过式(3)表示,则任意大小的m×n图像可以整合为一个m×n的纯四元数矩阵。
根据篡改图像中噪声不一致性检测并定位拼接区域的方法,大都仅通过提取局部区域的方差来描述噪声,未考虑实际成像过程中周围环境亮度对噪声分布产生干扰的情况,使得所得噪声不准确,并且仅使用方差来检测图像篡改区域会使定位结果含有较多的误检区。为提高噪声估计的准确性和篡改检测的精确率,本文充分考虑亮度与图像噪声之间的关系,在利用自适应QSVD 算法估计超像素噪声水平的同时,计算亮度信息并将其作为影响噪声方差的自变量,通过多项式拟合建立亮度与噪声之间的函数关系。
1.3.1 基于自适应QSVD 的噪声估计和亮度估计
QSVD 无需对彩色图像进行分解,而将3 个通道视为一个整体处理,充分保留图像本身的结构及色彩信息。QSVD 的分解理论跟奇异值分解类似,对任意大小的四元数矩阵A,可以将其分解为式(4)所示的形式[17]:
其中:H 表示共轭转置;U=(u1,u2,…,um)∈qm×m、V=(ν1,ν2,…,νm)∈qn×n分别为A的左、右奇异值矩阵;S是A的奇异值,为一个m×n的对角矩阵。假设R是矩阵A的秩,则奇异值矩阵S的值可表示为si(i=1,2,…,R),且s1>s2>…>sR。
由于超像素的大小各不相同,因此在重构噪声图像时需要根据图像块的尺寸自适应确定奇异值的有效阶次,重构的噪声图像表示如下:
其中:Ur=(0,0,…,0,ur+1,ur+2,…,um)。
本文将重构图像的均方误差(Mean Square Error,MSE)作为衡量标准,其计算公式如式(6)所示,自适应为不同大小的超像素确定阶次,确保截取的奇异值有效阶次r在保留噪声子空间能量的同时尽可能多地去除图像内容信号子空间能量,从而得到准确的噪声水平图像。
其中:f(i,j)=(u1,u2,…,ur,0,…,0)×S×VH为重构的去噪图像的像素值;f0(i,j)为原始图像的像素值。
对于秩为R的图像矩阵,可以进行R次重构。每次重构使用前r个奇异值,则第r次重构图像的均方误差变化曲线如图3 所示。
图3 重构图像的MSE 变化曲线Fig.3 MSE change curve of reconstructed image
从图3 可以看出,随着r的增大,MSE 值减小并逐渐趋于平缓,这是因为MSE 表示重构图像与原始图像差分后的能量误差,而图像能量主要集中在前部分较大奇异值所对应的特征图像,尾部奇异值主要表示图像噪声,因此其包含的图像能量较少。当r增加到一定程度时,前r个重构图像已充分包含图像的能量信息,因此,MSE 的下降幅度开始骤减继而趋于平缓,这个最先趋于平缓的点就是合适的截断有效阶次r。如式(7)所示,本文利用斜率判断法判断连续多段的斜率,若其均小于1,则将最开始趋于平缓的点作为截断的有效阶次r。
在自适应确定r值后,对于重构的噪声图像Ar,其噪声估计如下:
其中:n是第i个超像素中的像素总数;Ar(x,y)表示噪声图像中的像素值是重构矩阵Ar中所有元素的平均值;σi表示第i个超像素的标准偏差。
超像素的平均亮度如下:
其中:q(x,y)表示第i个超像素中的四元数值;n是超像素中的像素总数;bi是第i个超像素的平均亮度。
1.3.2 函数建立
由于亮度会对图像噪声产生干扰,因此本文将其作为影响图像噪声分布的自变量,根据式(10)建立噪声与亮度间的函数关系[18]:
其中:a表示权重系数;b表示各个超像素块的亮度。所有图像块的噪声残差可以表示为:
在噪声-亮度函数拟合完成后,根据式(12)计算每个超像素块到该函数曲线的距离:
其中:f(p)表示亮度信息影响下的实际噪声水平。遍历超像素块并计算其与噪声-亮度函数曲线间的最小距离,得到每个超像素块受该函数曲线的约束程度,将其定量描述为d=min(DDist),每个超像素对应的距离如下:
由于来源不同的图像可能存在某些区域噪声水平相似的情况,当噪声差异较小时将无法检测拼接区域。为了提高检测精度,本文利用色温估计算法提取超像素的色温特征。
不同的颜色空间所表示的颜色特性不同,与RGB 颜色空间相比,YCbCr 色彩空间能够更好地捕获图像光源色温的差异。因此,为了更准确地估计色温,要将图像从RGB 空间转换到YCbCr 颜色空间。色温估计的目标就是估算出图像的平均色差,文献[19]中的相机自动白平衡算法通过迭代整个图像的像素点来计算平均色差。本文考虑到拼接区在图像中仅占部分区域,因此,将传统的全局平均色差计算算法扩展到局部以提取超像素的色温特征。为降低算法的时间复杂度,在实际计算中选择满足约束条件式(14)的像素参与计算。
其中:φ为约束因子;|·|表示绝对值。
对于分割后的超像素块,遍历各个超像素中符合式(14)约束条件的像素并计算平均色差,按照式(15)提取每个超像素块的色温特征:
其中:N表示第k个超像素块中满足约束条件式(14)的像素数量,且k=1,2,…,K;Yi、Cbi、Cri表示像素点i在YCbCr 空间的值。对每一个超像素块进行色温特征提取,结果记为IC={Yk,Cbk,Crk|k=1,2,…,K}。
对每一个超像素,将描述噪声估计的最小距离与色温特征相融合作为最终的特征向量,表示为F={MMindistk,ICk|k=1,2,…,K},其中:MMindistk是噪声的最小距离;ICk是色温特征。本文利用FCM 聚类[20]算法将伪造图像分为拼接区域Sarea 和原始区域Oarea 这2 个部分。由于绝大部分篡改图像中拼接区域所占图像比例小于原始区域,因此本文将聚类结果中包含样本数较少的一类标记为初始可疑拼接区域,定义如下:
其中:index1、index2表示超像素块的分类索引;count(·)是相应标记块的总数。
拼接区域通常是连续或具有完整语义信息的,因此,可结合超像素块间的描述对初步标记结果进行后处理。如图4(a)所示(灰色为原始区,白色为篡改区),首先在集合Sarea 中寻找最大的连通区域,对不连续的标记块进行第一次错误过滤;其次采用孤立块过滤/空洞填充来降低检测误差。具体步骤为:
1)如果一个超像素块k被检测为拼接块,但其相邻的所有图像块被检测为真实块,则将该块从可疑拼接块集合中去除,如图4(b)所示。
2)如果一个超像素块k被检测为真实块,但其相邻的所有图像块被检测为可疑块,则将该块添加到可疑拼接块集合中,如图4(b)所示。使用连接区域孤立块过滤/空洞填充方法得到最终的拼接块集合,从而检测到拼接区域。
图4 超像素块级后处理效果Fig.4 Super pixel block level post-processing effect
图5 举例说明了定位拼接区域的上下文后处理过程,并证明了本文所提后处理方法的有效性。
图5 后处理定位检测结果Fig.5 Post-processing positioning detection results
本文通过可视化视觉分析及像素级定量评估来验证所提方法的检测性能。首先,将本文方法与其他3 种图像拼接篡改检测方法进行比较,并可视化呈现各方法的检测效果,为了使结果更具说服力,同时给出篡改图像像素级的检测精度对比结果;其次,对本文方法在JPEG 压缩、高斯模糊和伽玛校正方面进行鲁棒性分析,并与其他相关方法进行实验对比;最后,分析相关方法检测定位篡改区域的时间性能,时间消耗包括图像分割、特征提取和拼接区域检测定位的时间。
为了验证本文方法的有效性,采用哥伦比亚未压缩拼接图像数据集(Columbia IPDED)进行实验。随机选取Columbia IPDED 数据集中的4幅图像,分别利用本文方法、文献[10,12,7]中的方法进行检测,结果如图6 所示。从图6 可以看出,本文方法对4 幅图像均具有较好的检测及定位效果,而文献[10,12]方法未检测出图像2 和图像3 中的拼接区域,文献[7]方法虽然定位出了篡改区域,但含有较多的误检测区域,这是因为某些篡改区和原始区之间的噪声差异较小,而文献[10,12,7]方法仅使用单一特征噪声进行篡改区域定位,因此,出现了无法检测的情况。本文方法将噪声和色温特征相融合作为混合特征,在噪声差异较小时仍具有较强的检测性能。
图6 4 种方法的检测结果比较Fig.6 Comparison of detection results of four methods
为定量分析本文方法的拼接检测性能,根据式(17)计算图6 中4 幅图像的像素级真阳性率TPR和假阳性率FPR,其中各变量的具体含义如表1 所示,不同方法的检测精度比较结果如表2 所示。从表2可以看出,本文方法相较文献[10,12,7]方法具有较高的TPR 和较低的FPR。文献[10,12]方法整体优于文献[7]方法,但对图6(a)中的某些篡改图像,如第2、第3 幅图像,文献[7]方法具有更好的检测效果,这可能是因为图像背景复杂度影响了算法对特征提取的准确度,使得检测结果不稳定。虽然表2 的实验结果表明本文方法具有较好的检测性能,但为了验证该方法的鲁棒性,需要进一步分析。
表1 混淆矩阵Table 1 Confusion matrix
表2 像素级精度比较结果Table 2 Pixel-level accuracy comparison results %
为了评估各方法对经过后处理变换篡改图像的检测性能,本文随机选取Columbia IPDED 数据集中的几幅图像,分别进行不同窗口大小的高斯模糊、不同因子大小的JPEG 压缩以及不同校正因子的伽马校正后处理。由于所选图像具有随机性,不能充分展示方法的所有检测性能,因此在整个后处理数据集上进行实验并分析各方法的检测效果。
1)高斯模糊
实验首先对篡改图像进行高斯模糊处理,图7中第1 列为拼接图像,第2 列~第4 列分别是未处 理、高斯模糊3×3、高斯模糊5×5 的定位检测结果。
2)JPEG 压缩
实验对数据集中的原始拼接篡改图像分别进行压缩因子为95、85、75 的JPEG 压缩后处理,各方法对压缩后图像的检测结果如图8 所示,第1 列为篡改图像,第2 列~第5 列分别为未压缩、压缩因子95、压缩因子85、压缩因子75 的拼接篡改定位结果。
3)伽马校正
实验对拼接篡改图像分别进行校正因子为0.8、1.2的伽马校正后处理,各方法对校正后图像的检测结果如图9 所示,第1 列为篡改图像,第2 列~第4 列分别为未处理、伽马校正因子为0.8、伽马校正因子为1.2 的检测定位结果。
图9 伽马校正的检测结果Fig.9 Detection results of Gamma correction
从图7~图9 可以看出,本文方法对高斯模糊,JPEG 压缩和伽马校正后处理表现出较好的鲁棒性。由于本文方法采用SLIC 超像素分割算法划分图像,因此对图像的边缘划分效果较好,但该分割策略不可避免地会引入一些面积较小的超像素块,如果这些块恰好落在拼接区域的边缘,则无法通过本文所提初始可疑区域后处理办法进行过滤/填充操作,导致边缘出现一些漏检的情况,如图8(e)所示。尽管如此,与文献[10,12]方法中采用的顺序分块策略相比,本文方法仍呈现出较好的定位效果。各方法对整个Columbia IPDED 图像集的检测精度对比结果如表3 所示。从表3 可以看出,本文方法相较文献[10,12,7]方法具有较高的TPR 及较低的FPR。对于后处理结果,虽然本文方法的误检率高于预期水平,但与其他方法相比仍具有较高的TPR 值,这主要有3 个原因:相较单独提取噪声特征的方法,本文提取噪声和色温的混合特征,当一方差异较小时,仍能够检测拼接区域;本文将彩色图像的R、G、B 三通道利用四元数整合为一个整体,充分保留图像的颜色信息,并在此基础上利用自适应奇异值分解的方法根据图像块大小自适应确定尾部奇异值的有效截断值,最大程度地将图像内容与噪声分离开来;相较顺序分块,本文采用超像素分割策略划分图像,保留了更清晰平滑的边缘轮廓。
表3 Columbia IPDED 图像集后处理前后检测性能比较Table 3 Comparison of detection performance before and after post-processing of Columbia IPDED image set %
本次实验在2.60 GHz CPU 和4 GB RAM 的计算机上使用MATLAB 进行仿真,测试本文方法对Columbia IPDED 中每幅图像的平均运行时间,并与文献[10,12,7]方法进行比较,对比结果如表4所示。从表4 可以看出,文献[7]方法使用多尺度超像素分割方法划分图像,并在每个尺度中定位可疑区域,因此,检测时间较长,本文方法采用超像素分割算法并提取噪声和色温2 种特征进行拼接区域检测,因此,花费时间也较大,但本文方法在Columbia IPDED 数据集上具有较高的检测精确率。
表4 图像拼接定位方法运行时间比较Table 4 Comparison of running time of image splicing positioning methods s
针对拼接图像中噪声分布特性不一致的情况,本文提出一种图像拼接定位检测方法。综合考虑噪声影响因素以及图像噪声差异较小等情况,在超像素中逐块执行自适应四元数奇异值分解以进行局部噪声水平估计,同时计算各个超像素的色温特征,然后将噪声和色温特征进行融合并利用FCM聚类算法分类拼接块和原始块。在Columbia IPDED 拼接图像数据集上的实验结果表明,相较对比方法,本文方法能够在大多数情况下表现出更高的检测性能,但对某些背景复杂的图像的误检率高于预期水平。因此,下一步将着重解决复杂背景的干扰问题,研究能够充分表示不同区域纹理特征的提取方法,实现对相似区域的粗过滤并优化噪声估计算法,从而提高图像检测的精确率并降低误检率。