基于盲取证技术的图像真伪检测方法的研究
2022-07-06华蓓陈前黄汝维苏志磊
华蓓,陈前,黄汝维,苏志磊
(广西大学计算机与电子信息学院, 广西南宁530004)
0 引言
互联网技术和图像处理技术的快速发展,为人们的生活带来了极大的便利与乐趣,但它们同时也是一把双刃剑,一些不法分子对图像进行篡改并在网络上传播,严重影响了人们对事情真相的判断,导致了数字媒体的失信。
图1所示是对工程项目图像进行篡改的例子,图1(a)是工程图像的原图,图1(b)是用图像处理软件修改后的图像,可以看出笼长原来是15.35 m,经过软件篡改后变成15.02 m,而且用肉眼完全看不出是经过修改的。工程影像档案能够用于工程项目的施工监督、溯源和事故追责,如果发生了篡改,不仅影响工程项目的正确施工,甚至会严重威胁公众的生命和财产安全。
(a) 原图像
1 相关研究
图像真伪检测技术可分为主动式检测技术和被动式检测技术。所谓主动式检测技术,就是预先主动地对图像数据进行处理,对图像加入某种信息,例如数字签名或水印等,在接收端可以通过事先约定好的方式判断中间图像数据是否遭到篡改。主动式鉴别技术需要对图像进行预先的水印嵌入或数字签名处理,而工作生活中大部分的照片是没有经过这些处理,因此适用范围有限。为了提高图像检测技术的应用范围,科学家们开始研究被动式检测技术,即数字图像的盲取证技术。盲取证技术的核心是盲取证类算法,盲取证类算法是指不需要对图像进行任何预先的处理,直接跟据待检测图像本身具有的特性进行分析取证的鉴别过程[1],因此,被动式盲取证算法是适应性更好、应用范围更广、研究价值更高的图像真伪识别方式。
在数字图像的盲取证技术的研究中,Shah等[2]提出利用图像的单尺度和多尺度表示来组合各种特征,以识别伪造和真实的图像。Zhou等[3]提出了一个双流Faster R-CNN网络,并对其进行端到端训练,以检测给定图像的篡改区域。陈佳等[4]通过级联深度卷积神经网络提取档案图像的特征点,然后通过协方差描述子来作为特征描述点符,最后根据特征点的匹配来判断篡改区域。苏文煊等[5]根据插值图像和理想全色图像的频谱差异分块提取频谱变化和色度失真特征以反映 CFA 插值特性,计算重插值前后的插值特性变化作为特征,使用SVM分类并根据相邻块间取证特征的不一致来鉴别图像真伪。邢楠等[6]通过小波滤波来提取反映相机本身物理特性的噪声特征,然后通过广义高斯分类器和人工神经网络算法判断图像是否被篡改。Sadeghi等[7]提出的方法基于SIFT提取局部图像特征,然后根据它们的欧氏距离搜索相似的关键点,识别图像篡改区域。王萍[8]针对拼接方式篡改的图片,基于经过模糊处理的图像边缘宽度是大于自然图像的边缘宽度这一特征,通过对边缘像素斜率的计算,检测出拼接篡改的区域。
2 相关概念
2.1 图像噪声
图像噪声通常表现为孤立的像素或像素块,会对图像产生强烈的视觉效果。噪声信号与要研究的对象无关,它以无用信息的形式出现,扰乱了图像的可观察信息。 从广义上讲,噪声使图像不清晰,图像噪声如图2所示。
图2 图像噪声 Fig.2 Image noise
2.2 噪声提取
图像噪声提取一般是先将彩色图转化为灰度图,然后将灰度进行高斯滤波,把灰度图与高斯滤波后的图做差得到残差图[9]。因为图像的边缘区域影响噪声的提取,所以要进行扩频扩大边缘区域,最后再提取非边缘区域的噪声。噪声提取过程如图3所示。
图3 噪声提取过程Fig.3 Noise extraction process
2.3 灰度图转化
灰度化就是将图像由彩色转化为灰色的过程。一般来讲,彩色图像可以分为R、G和B 3个数量。其中,R代表红色,G代表绿色,B代表蓝色,数值分别由r、g、b表示。彩色图像灰度化是使红色、绿色、蓝色三色相等的过程。图像的各种颜色,取决于每个像素的灰度值不同,灰度最大值为255,显示为白色,最小灰度值为0,显示为黑色,灰度图像对应每个像素(的)灰度值,灰色比例在0~255。公式(1)是灰度图转化常用的公式,
fgray=0.299r+0.587g+0.114b。
(1)
在实际应用中,希望避免浮点运算,可以将它们缩放1 000倍来实现整数运算,即
(2)
一般来讲RGB的精度是8位而且可以缩放1 000次,所以上面的操作是32位整数运算, 但是要注意的是除法是整数除法,所以需要添加500才能实现四舍五入,即
(3)
2.4 高斯滤波
高斯噪声是噪声的一种,其概率密度函数服从高斯分布,简单来说就是正态分布。高斯滤波器是一种线性平滑滤波器,基于高斯函数的形状来选择权重。高斯平滑滤波器在抑制遵循正态分布的噪声方面非常有效。一维零均值高斯函数为
(4)
式中σ为高斯函数的宽度。二维高斯函数为
(5)
从理论上来讲,高斯分布需要无限卷积核,因为它在所有域上都具有非负值。实际上,只需将该值取为平均值左右标准偏差的3倍,另一部分可以直接删除。标准差决定着图像进行高斯滤波后的平滑的程度,因此,它的平滑效果更柔和,相较于平均滤波器,其能够更好地保留图像的边缘。将高斯滤波用作平滑滤波器的主要原因是它是低通滤波器,大多数卷积平滑滤波器是低通滤波器。高斯滤波步骤为:
①移动相关核心的中心元素,使其直接位于输入图像的待处理像素上方。
②用相关内核乘图像的像素值。
③把前面两步所得的结果相加并且输出。
2.5 Canny边缘检测
Canny边缘检测算子是John F.Canny于1986年开发出来的一个多级边缘检测算法[10],其目的是找到最优的边缘检测算法,即:
①最优检测。算法尽可能地识别图像中的实际边缘,并且丢失真实边缘的概率和非边缘的错误检测概率尽可能小。
②最佳定位标准。检测到的边缘点的位置与实际边缘点的位置最接近,或者在噪声的影响下检测到的边缘偏离物体的真实边缘的程度最小。
③边缘点与检测点互相对应。检测到的边缘点必须要与实际边缘点一一对应。
2.6 图像EXIF信息
可交换图像文件格式(EXIF)专为数码相机的照片而设计,可以记录数字照片的属性信息和拍摄数据。EXIF最初由日本电子工业发展协会于1996年开发,版本为EXIF 1.0。1998年,EXIF 1.0升级到EXIF 2.1,增加了对音频文件的支持,2002年3月,EXIF 2.2发布,EXIF 2.2可以附加JPEG,TIFF,RIFF和其他文件,以添加有关数码相机拍摄信息和索引图或图像处理软件的版本信息的内容。
3 算法设计
本文提出了一图像真伪检测算法,算法设计了一种噪声特征的表现形式,建立EXIF信息特征矩阵,通过训练权值矩阵建立二者之间的关系,并根据此关系判断图像是否发生篡改。此算法相对于需要利用深度卷积神经网络获取图像特征的算法来说实现更加容易,并且不需要很多训练样本即可完成训练。
算法首先通过提取清晰度残差,保留图像的非边缘区域,然后利用去噪过滤器将图像进行一些简单的计算处理,构造图像噪声特征向量。根据图像EXIF信息,利用曝光等式分别计算快门速度向量K、感光度向量G、光圈值向量Q、亮度值向量L、曝光值向量B,然后拼接成EXIF信息特征矩阵Y。利用EXIF信息特征矩阵Y和图像噪声特征向量通过训练得出权值矩阵W(图4)。
测试时将待检测图像传入,提取图像的噪声特征和EXIF信息,在权值矩阵W条件下计算评价值,根据评价值来判断该图像是否已经被篡改(图5)。
3.1 图像噪声与图像EXIF信息相关性
图6 数字信号强度与图像噪声的关系Fig.6 Relationship between digital signal strength and image noise
光子传输曲线说明了图像噪声与数码相机信号强度之间的关系,如图6所示[11]。数码相机的信号强度也是传感器在打开快门时接收的有效光子量。因为相机信号强度和图像的EXIF信息和感光值,亮度值等有很多的联系,所以可以建立图像统计噪声特性与EXIF参数之间的相关性,每个图像的EXIF信息可以表示图像的噪声特性的加权组合[12]。
3.2 图像噪声提取过程
首先将一张彩色图像转化为灰度图像A,然后对灰度图像进行降噪得到平滑图B,最后将灰度图与平滑图B相减得到残差图P。这时从残差图中可以得到图像的经验阈值g,进行二值化,如公式(6)所示。
(6)
残差图二值化之后就变成了1或0的矩阵。二值化之后,为了获取网格统计图,首先要把图像变为256×256的矩阵,然后将矩阵水平、竖直各分为8份,分别统计每一份中像素点为1的个数,将这些统计的值组合在一起构成8×8的特征矩阵,最后将二维的矩阵转化为一维的向量X1×64。
3.3 提取EXIF信息
EXIF可以记录更多的图像捕获信息。由于拍摄的既定特征,图像验证过程是第一次测试,除非使用特殊的修改工具,否则图像信息和EXIF信息不会同时被修改,因此,EXIF参数信息的真实值与估计值的比较为识别篡改图像提供了可能性[13]。
算法将提取与数字光信号强度相关的EXIF的几个参数,用来完成实验需要建立的模型。为了达到实验所需要的功能,使用修改的曝光等式提取EXIF信息,并且计算K、G、Q、L、B、曝光时间t、感光速率I、光圈数N。
(7)
最后得到EXIF信息矩阵Y=[KGQLB]。
3.4 图像噪声与图像EXIF信息建立相关性
从前面两节可以知道第i幅图像的噪声特征向量为Xi,EXIF信息特征向量为Yi。接下来以第i幅图的快门速度为例,快门速度为
(8)
式中:Xij为网络模型输入;Wj1为第i幅图的第j个特征对快门速度的估计的权重;di1是估计的误差。
建立网络模型,通过训练学习使得di1趋近于0,使得误差最小。
(9)
(10)
通过一定量的图像训练,可以得到训练后的权值矩阵。
3.5 篡改检测
从前面的过程可以知道,第一步要做的就是先对图像的特征进行提取,设图像噪声特征为X1×64,EXIF信息特征向量为Y1×5,它们的提取方式和训练时提取的方式相同,根据前面的理论可以设EXIF信息估计的误差为
|dj|=|Yj-XWj|,j=1,2,…,5,
(11)
之后将|dj|与阈值pj进行比较,
(12)
如果Uj=1说明该参数检测结果为正确,否则,检测结果为错误。阈值pj是经过大量训练得到的。
最后综合5个EXIF的信息估计他们的误差得到一个综合的判断U[13],
(13)
(14)
如果U=1说明该参数检测结果为未篡改图像,如果为U=0,则检测结果为已篡改图像。p为经验阈值。
4 实验
4.1 实验过程
本文的模型算法由MATLAB实现。在构建此模型算法时,使用的测试数据是CASIA图像篡改数据库,这些图像是经过各种各样的篡改方式制作而成的,并且还包括很多不同的拍摄环境、不同的光照条件、不同的曝光环境等。1 570张真实图像用于训练权重,1 170张真实图像训练经验阈值,540张真实图像和600张篡改图像用于测试。
实验步骤如下:
①灰度化。当拿到一张图像的时候图像是彩色的,为了处理方便,首先要将一张彩色图像转化为灰度图像A,在灰度化之前图像是三维(的),在灰度化后是二维的。
②去噪。通过高斯滤波去噪,去噪后得到一幅平滑的图像B,如图7所示。
③求残差图。将灰度图像A与平滑的图像B做差得到残差图C,残差图如图8所示。
④图像的二值化。二值化是将整个图像呈现出明显的黑白效果的过程,使图像中数据量大为减少,从而能凸显出目标的轮廓,简单来说就是将数组转换为0和1的形式。在转换之前,需要设置一个阈值,一般来说使用整幅图像的平均灰度值作为阈值。对于大于此阈值的像素,将其设置为1,并且像素小于此阈值,将其设为0,二值化后的图像如图9所示。
图7 去噪后平滑的图像Fig.7 Smoothed image after denoising
图8 残差图Fig.8 Residual map
图9 二值化后的图像Fig.9 Binarized image
⑤获取网格特征数字统计图。在图像二值化之后要获取网格特征数字统计图,也就是噪声的特征。首先将二值化后的矩阵水平平均划线分成8份,竖直平均划线分成8份,然后分别统计每一份中像素点为1的个数,最后将每份统计值组合在一起,构成8×8的统计矩阵见表1。
表1 统计矩阵Tab.1 Matrix chart
⑥将二维的统计表转化为一维的特征向量,构成图像的噪声特征向量,如图10所示。
⑦提取图像EXIF信息。
⑧用循环重复步骤①~⑦1 570次,最后得到所有图片的噪声特征值特征矩阵X1 570×64,EXIF信息参数矩阵Y1 570×5。
图10 噪声的特征向量Fig.10 Characteristic vector of noise
⑨建立网络模型,通过一定量的图片训练,得到训练后的权值矩阵,得出权重W1、W2、W3、W4、W5,然后把5个权重存入文件。
⑩利用1 170张真实照片训练阈值pj,最后根据阈值pj(j=1,2,…,5)得出p。
4.2 实验结果分析
①用1 570张照片进行训练得到权重,如11图所示。该矩阵总共有5列,每列对应一个EXIF参数权重。
②通过大量的误差训练得到阈值,如表2所示
表2 经验阈值Tab.2 Empirical threshold
③篡改检测。本实验用2幅被篡改的图像进行分析,原图的光圈数N=3.6,感光速率I=85, 曝光时间t=1/60,利用提出的实验算法对图片进行检测,得到的误差数据见表3。
对图像进行篡改之后并不会改变图像EXIF信息。接着,对1 000幅篡改图像和1 000幅真实图像运用该算法进行检测,并预测图像的EXIF信息,然后与真实的图像的EXIF信息进行对比,具体的实验数据见表4。其中,真阳率是指在真实的图像样本中,被正确识别的样本比例;假阳率是指在真实的图像样本中,被误认为是篡改图像的样本比例;真阴率是指在篡改的样本中,被正确识别的样本比例;假阴率是指在篡改的样本中,被误判断为是真实样本的比例。综合判断是在阈值为p的情况下,真阳率为86%,真阴率为77%,假阳率为14%,假阴率为23%。当使用快门速度、光圈值、感光度、亮度值和曝光值作为估计指标时,差异是不同的。
表3 真实值与估计值对比Tab.3 Comparison of real value and estimated value
表4 检测结果分析Tab.4 Analysis table of detection results %
5 结语
近年来,由于互联网和图像处理技术的快速发展,图像篡改的现象更频繁了,对人们的生活和国家发展都带来了恶劣的影响,因此图像真伪识别技术显得更为重要了。本文提出了基于图像噪声与图像EXIF信息相关性的图像真伪识别方法。通过建立图像噪声与图像EXIF信息的相关关系,利用计算出的权重来估计EXIF信息,并且过滤掉边缘区域的影响。经实验证明,本方法实现简单、计算效率高。下一步工作可以分别针对图像拼接篡改方式、图像copy-move篡改方式,研究图像真伪检测的盲取证方法。