基于局部感知Hash 的图像篡改取证算法∗

2019-11-29 05:14毕秀丽
计算机与数字工程 2019年11期
关键词:分块特征向量矢量

赵 杰 毕秀丽

(1.商洛学院电子信息与电气工程学院 商洛 726000)(2.重庆邮电大学计算智能重点实验室 重庆 400065)

1 引言

互联网和多媒体技术的迅速发展使得数字图像、视频、音频的内容安全性、真实性成为社会的热点问题。传统数字内容认证的主要方式为数字水印,在版权保护领域应用广泛,取得了一些成绩,但局限性也很明显[1]。近年来,图像被动取证技术得到人们的重视。数字图像篡改方式多种多样,人们也提出了针对性的算法[2~5]。Copy-Move 是最常见的一种篡改操作。最直接的方法是穷举搜索法,但时间复杂度过高。Jessica Fridrich 等提出利用量化DCT 系数来进行块匹配检测的办法,而文献[6]提出了改进算法,通过Zig-zag 扫描选取图像块的一部分DCT 系数,该方法可以抵抗JPEG 压缩和模糊攻击。文献[7]提出对图像中每个圆形块进行对数极坐标变换,然后对变换结果再做傅里叶变换来提取特征,该方法虽然对旋转和缩放攻击具有鲁棒性,但是不能抵抗常见的后处理操作。文献[8]运用灰度归一化和不变矩阵提取各个对象的盲取证特征。文献[9]提出一种采用尺度不变特征变化(SIFT)的方法,当复制区域经过旋转和尺度缩放,这种方法仍能成功检测出篡改区域,然而,其缺陷在于其仅利用匹配的特征点对篡改区域进行标记,特征向量较长。而文献[10]则将图像转换到HSV空间再运用SIFT 特征点检测篡改。有学者提出采用kernel PCA(KPCA)算法提取分块特征,得到的基于KPCA 的特征对于加噪和JPEG 压缩有较好的鲁棒性[11]。此外还有很多方法利用方向梯度直方图、SVD 等[12~15]。本文提出一种利用局部图像感知Hash 的Copy-Move 篡改检测方法,首先提取图像块的分块特征,然后进行特征向量排序,并进行相似匹配,得到初步标记结果,然后滤除误匹配块,从而得到最终检测结果。

2 本文算法

主要检测步骤如下:

1)如果输入图像为彩色图像,则首先将其转换为灰度图像。

2)假设输入图像大小为M×N ,将灰度图像划分为互相重叠的小块,分块大小为B×B,则共有(M-B+1)×(N-B+1)个分块。B越大分块数越少,检测越快,但漏检的几率也增大;B 越小分块数越多,检测越慢,准确性会增加,但虚警率也有可能增加。

3)将每个分块归一化为规格大小,计算直流分量及分块感知Hash 值,将其作为该分块的特征向量,特征向量长度记为L。

4)特征矩阵由每个图像块的特征向量组成,大小为(M-B+1)(N-B+1)×L。

5)对特征矩阵进行字典排序,计算排序后特征矩阵中相邻两行感知Hash 值的相似度,如果相似度大于阈值Tc,则计算这两行的位移矢量。如果这两行代表的图像块左上角像素点坐标为(i1,j1)和(i2,j2),其位移矢量为

为减小误匹配块,只选择图像块左上角像素点间距离D大于距离阈值Td的两行对应的位移矢量,并对相同的位移矢量进行计数。像素点间距离可用欧式距计算,即

6)特征矩阵遍历完成之后,会得到若干位移矢量,每种位移矢量有若干计数值。由于区域复制后有可能会进行旋转操作,因此,统计近似的位移矢量的计数值之和C,如果C大于阈值Tf,则将满足条件的对应图像块进行标记。

7)对初步标记的结果进行滤波,消除错误匹配块,得到最终标记结果。

整体流程如图1所示。

图1 基本过程

3 仿真测试

实验仿真通过Matlab R2014 完成,进行基本Copy-Move 篡改测试,复制原图中部分区域,粘贴至其他区域,形成Copy-Move 篡改,然后对篡改图像进行检测。选取两幅图片的测试结果如图2 所示。

图2 基本Copy-Move篡改检测结果

对篡改后图像分别进行色彩缩减、模糊、亮度调整、对比度调整、JPEG 压缩等后操作,然后进行检测,结果分别如图3~图7所示。

图3 Copy-Move+图像色彩缩减检测结果

图4 Copy-Move+图像模糊检测结果

图5 Copy-Move+图像亮度调整检测结果

图6 Copy-Move+图像对比度调整检测结果

还有可能出现复制区域后多处粘贴的篡改情况,利用本文算法对该类型进行测试,结果如图8所示。

图7 Copy-Move+图像JPEG压缩检测结果

图8 多处粘贴检测结果

4 结语

本文采用分块的方式,利用各块的感知Hash对Copy-Move的图像区域进行检测与匹配,虽然重叠分块较多,但每块的特征矢量构建简单,运算复杂度较低。实验结果该方法对模糊、对比度、亮度调整等多种润饰的Copy-Move篡改有一定效果,对多次粘贴仍然可以标记出篡改区域。

猜你喜欢
分块特征向量矢量
面向量化分块压缩感知的区域层次化预测编码
一种矢量信息重构的最优双矢量定姿算法
钢结构工程分块滑移安装施工方法探讨
克罗内克积的特征向量
高中数学特征值和特征向量解题策略
一种适用于高轨空间的GNSS矢量跟踪方案设计
矢量三角形法的应用
一种面向不等尺寸分块海量数据集的并行体绘制算法
分块矩阵初等变换的妙用
三个高阶微分方程的解法研究