2. 邢台学院 数学与信息技术学院, 河北 邢台 054001;
3. 北京邮电大学 智能通信软件与多媒体北京市重点实验室, 北京 100876
针对现有的局部特征提取算法,如尺度不变特征变换、加速稳健特征等对面积较小的篡改区域和平滑区域无法准确提取特征点进行复制粘贴篡改检测的问题,提出了一种基于色调、饱和度、明度(HSV)颜色空间和限制对比度自适应直方图均衡化(CLAHE)的2阶段篡改检测方法.第1阶段,将待检测图像从红、绿、蓝颜色空间转换到(HSV)颜色空间进行加速稳健特征提取;第2阶段,针对平滑区域的篡改,通过CLAHE算法对图像进行特征增强之后,再采用加速稳健特征进行特征提取;然后利用广义2近邻算法进行特征匹配,并利用随机抽样一致性算法剔除错误的匹配点;最后通过形态学操作实现篡改区域的标示定位.实验结果表明,该算法能抵抗小面积区域和具有非显著视觉特征的平滑区域复制粘贴篡改,并对旋转、缩放等后处理攻击具有一定的鲁棒性.
2. School of Mathematics and Information Technology, Xingtai University, Hebei Xingtai 054001, China;
3. Beijing Key Laboratory of Intelligent Telecommunication Software and Multimedia, Beijing University of Posts and Telecommunications, Beijing 100876, China
The existing local feature point-based methods such as scale-invariant feature transform (SIFT) and speeded up robust features (SURF) cannot be accurately extracted as feature points especially in terms of forgeries involving small areas and smooth regions. A two-stage forgery detection method which is based on the hue, saturation and value (HSV) color space and contrast limited adaptive histogram equalization (CLAHE) was proposed. In the first stage, the tested image is converted from red, green and blue (RGB) color space to HSV and then SURF features were extracted in this space. In the second stage, in order to resist tampering in smooth regions, CLAHE algorithm was used as a preprocessing stage to the SURF algorithm. After feature extraction, generalized 2 nearest neighbor (g2NN) matching skills were used in the matching step. At last, the random sample consensus (RANSAC) was used to remove the false matches. The location of the tampered area is achieved by morphological operations. Experiments show that the proposed algorithm not only can resist copy-move forgeries in small areas and flat regions with non-significant visual features but also robust to post-processing operations such as rotation, scaling and so on.
针对同幅图像的复制粘贴篡改盲取证技术主要有基于图像块的匹配算法和基于特征点的匹配算法2种.基于图像块的算法时间复杂度较大且对后处理操作的鲁棒性较差,因此在实际应用中受到了限制.基于特征点的算法比较常用的有尺度不变特征变换(SIFT,scale-invariant feature transform) 算法[1]和加速稳健特征(SURF,speeded up robust features) 算法[2].现有的大部分基于特征点的算法,首先需要将待检测图像转化为灰度图像再进行特征提取,这势必会丢失图像的大部分颜色信息,从而导致对于复制区域面积较小的篡改图像无法检测;另外,对篡改图像中存在大面积的平坦或相似区域的情况,如大面积的天空、草地和水域等,由于平滑区域梯度的变化较小,基于局部梯度特征的检测方法如SIFT、SURF等很难提取到特征点,从而导致检测失败.
针对上述2种情况,笔者提出了一种基于特征增强的2阶段篡改检测算法.通过将待检测图像从红、绿、蓝(RGB,red, green and blue) 颜色空间转换到色调、饱和度、明度(HSV,hue, saturation and value) 颜色空间,然后采用SURF提取特征点,即使对面积较小区域的复制粘贴篡改,也能有效识别;针对纹理信息较少的平滑区域,通过限制对比度自适应直方图均衡化(CLAHE,contrast limited adaptive histogram equalization) 算法对图像进行特征增强之后,再进行特征提取,即使在相对平滑的区域也能提取到足够多的特征点.
1 相关工作 1.1 HSV颜色模型一般情况下,数字图像大都在RGB模型下,但RGB颜色空间不直观,从RGB值中很难判断该值表示的颜色,其次RGB颜色空间是不均匀的颜色空间,2个相近的颜色其R、G、B值可能相差很大.相对于RGB,HSV颜色空间更能表示出感知颜色的联系,这种表示方法类似于人类感知颜色的方式,具有较强的感知度,并在计算中保持简单性.它把颜色分为3个独立的参量,色调H表示色彩的基本属性;饱和度S表示色彩的纯度,越高色彩越纯,低则逐渐变灰;明度V表示色彩的明亮程度.
Silva等[3]采用HSV颜色空间中的V通道进行SURF特征提取以降低篡改检测的错误匹配率.虽然检测效果优于RGB空间,但由于使用V通道进行特征提取,对面积较小区域的篡改检测效果较差.另外,V通道对相似物体的区分度较低,故不同于文献[3],笔者采用HSV中的H和S两个通道进行特征提取.
1.2 限制对比度自适应直方图均衡化CLAHE结合了自适应直方图均衡化(AHE,adaptive histogram equalization) 和对比度受限2项技术的优点,能有效克服AHE过度放大噪音的问题.
Olvera等[4]将CLAHE算法与SIFT算法结合用于建筑物识别,对恶劣照明条件下拍摄的建筑物图像用CLAHE算法特征增强后,利用SIFT算法进行特征提取,能明显增加特征点的数量.笔者首次将CLAHE算法用于图像篡改取证,为了提高算法的检测速度,笔者采用SURF算法代替SIFT算法进行特征提取.
2 基于HSV和CLAHE的算法经典的SURF算法仅使用了图像的灰度值,没有充分考虑图像的颜色信息导致纹理信息相似的彩色图像匹配率降低.笔者提出了一种基于HSV和CLAHE的复制粘贴篡改检测算法,该算法保留了SURF运算速度快、鲁棒性强等特点,且弥补了SURF算法在面积较小区域和平滑区域的复制粘贴篡改检测方面的缺陷.该算法总共分为3步:1) 2阶段特征提取;2) 特征匹配;3) 滤除误匹配,篡改区域定位.笔者算法的整体流程如图 1所示.
笔者算法分为2个阶段进行特征提取.第1个阶段对待检测图像在HSV颜色空间中提取SURF特征点;第2个阶段针对图像中的平滑区域,通过CLAHE特征增强后提取SURF特征点.
1) 基于HSV颜色空间的SURF算法
在HSV三个颜色通道中,人眼对于色调H比较敏感,其次是饱和度S,为了减少光照变化的影响,笔者仅采用前2个通道进行特征提取.首先把待检测图像从RGB颜色空间转换到HSV颜色空间,利用SURF算法分别提取H、S两个通道的特征点并生成相应的64维特征描述子.然后合并得到的2个特征点集合,并剔除重复的特征点.不妨假设合并后的特征点集合为X={(x1, y1), (x2, y2), …, (xn, yn)}, 相应的特征描述子F={f1, f2, …, fn}, 其中n为特征点的个数.
如图 2所示,图 2(a) 是篡改图像测试集[5]中名为“wading_copy”的篡改图像(尺寸为3 888×2 592),岸边的3个行人被复制并粘贴到水中轮船附近,如图 2中红色圆圈标注所示.
图 2(b)为通过颜色空间转换后提取的SURF特征点示意图,从中可以看出,在纹理信息丰富的区域(非平滑区域) 特征点非常密集,在纹理信息较少的地方(平滑区域) 特征点比较稀疏.这是由于平滑区域梯度的变化较小,基于局部梯度特征的特征提取方法如SIFT、SURF等很难提取到特征点.
基于HSV颜色空间的SURF算法虽能有效地检测到面积较小区域的篡改,但对平滑区域篡改无效;而基于CLAHE的SURF算法虽可有效地检测到平滑区域的复制粘贴篡改,但对面积较小区域的篡改无效.
因此,笔者提出了结合HSV和CLAHE的2阶段篡改检测算法.对于纹理信息丰富的区域,在HSV颜色空间进行特征提取;对于平滑区域,通过CLAHE特征增强后再进行特征提取,从而保证整个图像都能提取到足够多的特征点进行篡改检测.
2) 平滑区域标示
不妨假设待检测图像大小为M1×N1,A为平滑区域映射矩阵,初始化A(i, j)=1,1≤i≤M1, 1≤j≤N1,以SURF特征点为中心的c×c的非平滑块标记为黑色,即
$ \begin{array}{l} \boldsymbol{A}\left( {{x_i} - \frac{c}{2}:{x_i} + \frac{c}{2},{y_i} - \frac{c}{2}:{y_i} + \frac{c}{2}} \right) = 0,\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;1 \le i \le n \end{array} $ | (1) |
然后对由式(1) 得到的二值图像A进行数学形态学中的腐蚀和膨胀操作,同时删除面积较小(小于给定阈值Sthresh) 的平滑区域,最终得到的平滑区域如图 2(c) 所示的白色区域.
3) 基于CLAHE的平滑区域特征提取
为了提高算法的处理速度,只对平滑区域采用CLAHE进行特征增强处理,然后再使用SURF算法进行特征提取. 图 2(d)为平滑区域特征提取示意图.由图可见,采用CLAHE对平滑区域特征增强之后,平滑区域也能提取到足够多的特征点.
2.2 特征匹配分别对2.1节1) 和3) 中所得到的特征点和特征描述子进行特征匹配.现以2.1节1) 中的特征点集为例,对广义2近邻(g2NN,generalized 2 nearest neighbor) 特征匹配算法进行说明.为了解决多重匹配问题,Amerini等[6]提出了g2NN匹配算法.算法的基本思想为:依次计算fi(i=1, …, n) 与其他特征描述子f1, …, fi-1, fi+1, …, fn之间的欧式距离,并按照从小到大的顺序排序,得到距离向量D={d1, d2, …, dn-1},依次计算Ti=
一般来说,仅由初始匹配点集P还不能完全确定图像是否存在篡改.这是由于在自然图像中也可能存在一个或多个成对的高度相似区域,如真实场景中的相似目标、建筑物中的重复模式等,这不可避免地会导致误匹配.因此,算法需要进行有效的区分来滤除误匹配.采用文献[6]中的聚类算法对初始匹配点集进行聚类,滤除掉点数少于3的类.进一步利用随机抽样一致性(RANSAC,random sample consensus) 函数滤除错误匹配.当检测到至少含有2类,且类间匹配对数目不少于3对时,判定图像被篡改.最后,利用数学形态学中的腐蚀和膨胀等操作实现篡改区域的标示定位.
3 实验结果与分析实验在Matlab R2013a上进行,运行环境是Intel (R) Core (TM) i7-4790 CPU@ 3.60 GHz、16 GB内存的PC.通过大量的实验,得到实验中使用的参数如表 1所示.
对于图 2(a),虽然篡改区域为纹理信息丰富的区域,但是相对于整个图像来说篡改区域面积较小,Amerini等[6-7]检测不到篡改,而笔者算法由于添加了颜色信息,具有更高的篡改检测能力,能准确地识别出篡改区域,检测结果如图 3所示.
图 3(a)为笔者算法检测结果,图 3(b)为相应的篡改区域定位. 图 3(a)′为文献[3]的检测结果,图 3(b)′为其篡改区域定位图.由于Silva等[3]采用HSV空间的V通道进行篡改检测,没有考虑到图像的颜色信息,仅能检测到其中1个人被复制,另外2个人被漏检,从而检测失败.
笔者采用准确率、召回率和综合指标(F1-score) 来评估算法的性能.其中准确率表示1幅被检测为经过篡改的图像确实系经过篡改的概率,而召回率表示1幅篡改图像能正确被检测为篡改的概率.准确率和召回率是反映算法综合性能的2个重要指标,且这2个指标间相互制约,在某种情况下甚至相互矛盾. F1-score综合考虑准确率和召回率的结果,当某算法的F1-score值较高时,则可认为该算法相对较好.
实验使用Christlein等[5]的篡改图像测试集进行算法性能检测.
3.1 平移篡改检测使用测试集中的48张原始图像和48张未经过后处理操作的平移篡改图像进行算法性能检测,并与文献[6-7]中的检测结果进行对比,对比结果见表 2.由表 2可以看出,笔者算法在综合检测性能上均优于前2种算法.
图 4给出了测试集中3组篡改图像的实例和不同算法检测结果对比图.第1组图像(对应图 4中第1行) 是针对小面积区域的篡改,第2、3组图像(对应图 4中第2、3行) 是针对平滑区域的篡改.其中,图 4(a)是篡改图像,图 4(b)是相应的篡改区域示意图,图 4(c)是笔者算法的检测结果,图 4(d)给出了笔者算法对篡改区域的准确定位,图 4(e)、图 4(f)分别为文献[6-7]的检测结果.
由图 4可以看出,笔者算法能有效检测出小面积区域的篡改和平滑区域的篡改,而Amerini等[6]仅能检测出第2组图像中的某一部分篡改,但图像中另外2部分篡改完全漏检,导致检测失败,从而Amerini等[6-7]对3组图像均检测失败.
3.2 后处理篡改检测下面对旋转和缩放后处理操作的鲁棒性进行检验.
1) 旋转
采用测试集中的rot子集进行鲁棒性测试.该子集中每一幅图像对篡改区域分别进行了2°~10°(间隔为2°) 的旋转操作.检测结果如图 5所示.由图 5可以看出,虽然随着旋转角度的增加笔者算法检测效果有所下降,但是对于小角度的旋转,综合性能始终高于另外2种算法.
2) 缩放
采用测试集中的scale子集进行鲁棒性测试.该子集中每一幅图像对篡改区域分别进行了91%~109%(缩放间隔为2%) 的缩放操作.检测结果如图 6所示.由图 6可以看出,当缩小篡改区域时,笔者算法检测效果有所下降,当放大篡改区域时检测效果不变.对小尺度的缩放,笔者综合性能始终高于另外2种算法.
主要创新点:1) 首次将CLAHE算法应用于图像篡改取证;2) 提出了2阶段特征提取算法:针对纹理信息丰富和纹理信息较少的区域分别采用HSV和CLAHE两种不同的处理方法进行SURF特征提取,既保证了在整个图像都能提取到足够多的特征点,同时又减少了计算复杂度.实验结果表明,笔者算法能有效检测出面积较小区域和平滑区域的篡改,不仅如此,笔者算法对旋转、缩放等后处理操作仍然具有较好的鲁棒性.
[1] | Lowe D. Distinctive image feature from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91–110. doi: 10.1023/B:VISI.0000029664.99615.94 |
[2] | Bay H, Tuytelaars T, Gool L V. SURF:speeded up robust features[J]. Computer Vision and Image Understanding, 2006, 110(3): 404–417. |
[3] | Silva E, Carvalho T, Ferreira A, et al. Going deeper into copy-move forgery detection:exploring image telltales via multi-scale analysis and voting processes[J]. Journal of Visual Communication and Image Representation, 2015, 29: 16–32. doi: 10.1016/j.jvcir.2015.01.016 |
[4] | Olvera R D P, Zeron E M, Ortega J C P, et al. A feature extraction using SIFT with a preprocessing by adding CLAHE algorithm to enhance image histograms[C]//International Conference on Mechatronics, Electronics and Automotive Engineering.[S. l.]:IEEE, 2015:20-25. |
[5] | Christlein V, Riess C, Jordan J, et al. An evaluation of popular copy-move forgery detection approaches[J]. IEEE Transactions on Information Forensics and Security, 2012, 7(6): 1841–1854. doi: 10.1109/TIFS.2012.2218597 |
[6] | Amerini I, Ballan L, Caldelli R, et al. A SIFT-based forensic method for copy-move attack detection and transformation recovery[J]. IEEE Transactions on Information Forensics and Security, 2011, 6(3): 1099–1110. doi: 10.1109/TIFS.2011.2129512 |
[7] | Shivakumar B L, Baboo S. Detection of region duplication forgery in digital images using SURF[J]. International Journal of Computer Science Issues, 2011, 8(4): 199–205. |