动态阈值模糊检测在篡改图像检测中的应用
2011-01-31扈文斌
刘 凯, 扈文斌
(上海大学特种光纤与光接入网省部共建重点实验室,上海200072)
数码相机的普及以及数字图像处理软件功能的日益强大,使得人们能够随心所欲地“造”出一幅图像,颠覆了人们“眼见为实”的传统观念.当数字图像篡改和伪造用于政治、军事和司法等敏感领域时,将会对社会的稳定产生重大影响,因此,针对数字图像篡改检测的研究显得尤为重要.
篡改者为了掩盖篡改痕迹通常会人为地模糊篡改区域,因而,可以利用图像局部模糊检测实现对篡改图像的检测.模糊检测的方法大致可以分为两大类:第一类是通过图像复原或者点扩展函数的估计来预先估计出模糊函数[1-3],从而通过模糊函数来判断图像是否经过模糊.这类方法运算复杂度高而且模糊函数估计的正确率不高.第二类方法是通过提取各种特征来区分模糊图像和未模糊图像.例如,文献[4]通过从图像块中提取全局色调率、色调变化率以及异常色调率3个统计特征,并引入图像局部色彩不一致性来检测局部模糊,该方法的检测精度能精确到大致的图像块.文献[5]从图像的色彩、梯度和频域的角度提取特征,不但能够检测模糊区域,而且能区分运动模糊和其他类型的模糊,但是该方法需要利用大量图像进行训练.文献[6]将每个像素周围的图像块进行傅里叶变换,然后计算这些图像块的相关系数并通过阈值判定确定像素是否处在模糊区域内.该方法由于阈值固定,因此,并不适用于所有内容的图像或不同模糊类型等因素.文献[7]利用模糊图像频域的特点,通过估计图像块的功率谱来确定模糊区域.然而,不同图像的功率谱千差万别,阈值更加难以确定.文献[8]基于图像形态学滤波边缘特性的方法检测经过模糊的边缘.文献[9]利用非抽样Contourlet变换分析图像边缘点特征,然后通过统计正常边缘点与模糊边缘点之间的差异鉴别模糊边缘.
本研究基于最小二乘估计得到每个像素的估计误差,然后提取像素及周围像素估计误差的方差作为模糊特征;并针对文献[6-7]中通过固定阈值进行检测的不合理性,结合图像的频域相关和空间域模糊特征,先利用频域的相关系数确定一置信区间,再根据该区间模糊特征的概率分布特性动态确定阈值,从而提高了分离精度和检测正确率.相比较文献[5],本研究提出的方法不依赖于大量的训练图像.
1 模糊特征的提取
针对篡改区域或其边缘通常被人为模糊的现象,通过检测图像中的人为模糊区域来进行篡改图像检测是一个有效的途径.不同模糊类型(例如高斯模糊、圆盘模糊、均匀模糊和运动模糊)的点扩展函数都不相同,然而由于点扩展函数相当于平滑滤波器,因此,经过模糊的篡改区域可以看成是通过了平滑滤波器而得到的.数字图像在成像的过程中,由于数码相机传感器的硬件特性,不可避免地会引入脉冲噪声,而消除图像的脉冲噪声是平滑滤波器的一个典型的应用.因此,可以推断,经过模糊的篡改区域含有相对少的脉冲噪声.
文献[10]基于最小二乘法的自适应预测模型,给出一种判别脉冲噪声点的方法,即假设目标像素点的灰度值为x(彩色图像转化成灰度图像),由最小二乘估计提供一个合理的数学模型以给出该像素点的预测灰度值x^.如果预测误差e=|x-x^|大于一个预先设定的阈值,则该像素点为脉冲噪声点.通常情况下,脉冲噪声点在空间上的分布是不连续的,换个角度讲,非脉冲噪声点在空间上也是不连续的.经过模糊平滑的图像部分的脉冲噪声被大大削弱,导致该部分像素的预测误差在空间上相对连续;而未经过模糊的图像部分的脉冲噪声没有被削弱,因此,相比模糊区域像素的预测误差,未模糊区域像素的预测误差在空间上相对不连续.
本研究提出的算法基于最小二乘法的预测模型,给出每个像素的预测误差,其中模糊区域内的像素具有相对小的预测误差.然而,选取预测误差作为模糊特征是不合理的,因为未模糊区域内的像素也有可能具有非常小的预测误差.实验结果显示,在通常情况下,模糊区域的像素都具有很小的预测误差,而具有很小预测误差的未模糊区域内的像素在空间域上通常是不连续的,所以,将提取目标像素及其周围领域像素预测误差的方差作为该目标像素的模糊特征.图1(a)是一幅经过方差为5的高斯局部模糊的图像,图中的女孩被人为模糊,而图1(b)为对应的模糊特征图.由图可见,模糊区域内像素的模糊特征值小于未模糊区域内像素的模糊特征值,表明所提取的模糊特征具有一定的区分度.
图1 局部模糊图像及模糊特征图Fig.1 Partial blur image and blur feature map
假设在一幅大小为M×N的灰度图像中(彩色图像先转化为灰度图像),目标像素为x(i,j).基于最小二乘法的预测模型,可得出每个像素的预测误差[10],下面给出提取目标像素模糊特征的具体算法.
(1)构造向量x8×1=[x1,x2,…,x8],其中8个元素是目标像素x(i,j)相邻的8个像素;构造向量p25×1=[p1,p2,…,p25],其中各元素是以目标像素x(i,j)为中心,大小为5×5窗口中的像素;构造矩阵Q25×8=[q1,q2,…,q25]T,其中元素qi是大小为1×8的向量,且qi的8个元素是pi相邻的8个像素.计算最优滤波系数d8×1=(QTQ)-1(QTp).
2 动态阈值的确定
为了达到检测模糊区域的目的,一般是通过设定一个阈值来判别像素是否处在模糊区域,即将阈值与第1节所提取的模糊特征v作比较,将小于阈值的像素判定为模糊区域内像素,反之判定为未模糊区域内像素.然而,由于存在一些不确定的因素,比如,五花八门的图像内容、不同类型和不同程度的模糊,这些因素都将导致模糊区域内像素的模糊特征值的变动,过大的阈值将导致“虚警”,而过小的阈值将导致“漏报”,所以选取固定阈值得到的检测结果并不理想.因此,本研究采用动态确定阈值的方法,以最大程度地避免检测结果的“虚警”或“漏报”.
文献[6]对目标像素周围图像块作傅里叶变换,并将计算出的变换后图像块的相关系数作为目标像素的模糊特征,这一特征是从图像频域的角度出发,而第1节中所提取的模糊特征是从图像空间域的角度出发.实验结果显示,模糊区域内的像素既具有较小的模糊特征值又具有较大的相关系数,而相关系数较大的未模糊区域内像素往往没有较小的模糊特征值;具有较小模糊特征值的未模糊区域内像素往往也没有较大的相关系数.基于这一现象,结合频域的相关系数特性,能较准确地确定动态阈值.首先,计算图像中每个像素的频域相关系数[6],并给相关系数设定一个数值区间,从而确定一组相关系数像素集,使得该像素集能够最大程度地包含模糊区域内像素.同时,去除天空等没有任何纹理的区域像素,因为此类像素将对阈值确定产生影响.然后,统计相关系数像素集的模糊特征值,并画出直方图得到其统计特性.从直方图最大值处的横坐标值开始,遍历若干值作为参考阈值.每个参考阈值都确定一组模糊特征像素集,通过分析其和相关系数像素集的分布特性,画出分布曲线.最后,将分布曲线第一极大值点所对应的横坐标值作为模糊特征的阈值.若分布曲线无极大值点,则认为该图像没有经过人为模糊.下面给出确定动态阈值的具体算法.
(1)计算灰度图像中每个像素的相关系数c.
(2)用第1节给出的方法计算每个像素的v值,由此得到模糊特征图像Γ.
(3)找出所有满足0.80≤c≤0.95的像素,得到二值图像γ,其中满足条件的像素值为1.画出这些像素variance_e的直方图,定义向量α=[x1,x2,…,xi,…,xend]是直方图的x轴坐标,其间隔为0.005 (xi+1-xi=0.005),定义向量β=[y1,y2,…,yi,…,yend]中的元素yi代表variance_e为xi附近的像素个数.
(4)找出向量β中最大的元素,假设这个元素为ym=max(y1,y2,…,yend).定义向量 α'=[xm,xm+1,…,xi,…,x500].对于每个下标i(i∈[m,500])作如下计算:① 获取二值图像Ψi=(Γ<xi),该表达式代表将特征图像的每个元素与xi作比较,满足条件的像素值为1;②数出Ψi中值为1的像素的个数vi;③ 数出γ和Ψi中相同位置处值都为1的像素个数ci;④定义pi=ci/vi以及zi=pi×ci.
(5)构造向量z=[zm,zm+1,…,zi,…,z500].定义向量z'=[z'm,z'm+1,…,z'i,…,z'499],其中z'i=zi+1-zi(i∈[m,499]).找到第一个元素满足z't<0,记录下标t.由此得到v的动态阈值xt.
步骤(1)中相关系数的计算方法由文献[6]给出,实验结果显示,大多数模糊区域内像素的相关系数大于0.8.因而在步骤(3)中,二值图像γ为1的像素既包含模糊区域内像素也包含未模糊区域内像素.天空或者没有任何纹理的墙壁区域内的像素相关系数值通常大于0.95,这些像素会影响动态阈值的确定,因而被忽略.步骤(4)中不同图像将得到不同的直方图,所以向量α,β的维数是不确定的,这里定义它们为1×end维向量.取向量α的前500个元素,在[0,500×0.005]区间内计算m(v值通常落在该区间内).得到下标m意味着大多数模糊区域内像素的v值在xm左右,也就是说阈值的大小一定大于xm,其中ym为xm对应的纵坐标.此外,随着下标i的增大,vi显然也变大.这里假设最佳阈值为T,当xi<T时,二值图像Ψi和Ψi+1的相差像素大多为模糊区域内像素,因为模糊区域内像素有较小的v和较大的相关系数;当xi>T时,Ψi和Ψi+1的相差像素大多为未模糊区域内像素,因为对于未模糊区域内的像素,较小的v并不意味着有较大的相关系数.所以,在xi<T的情况下ci+1-ci的值远大于在xi>T情况下的值.进一步揭示结论,当xi在最佳阈值T附近很小的一个范围内,xi<T时,zi增大;而当xi>T时,zi减小.步骤(5)中,利用一阶导数找到z的第一个极大值,从而可确定阈值.画出向量z的曲线,如果曲线没有极大值点,那么判定检测图像为未模糊图像.图2(a)为未模糊图像,图2(b)中一朵白色的花被人为模糊,图2(c)和图2(d)分别为相应的z曲线图.
图2 未模糊图像和局部模糊图像的z曲线图Fig.2 z curve of sharp image and partial blur image
3 实验结果
为了验证本研究算法的有效性,从图像库UCID[11]中选取1 000幅图像进行检测,这些图像涵盖了大量不同场景下的内容.利用 Matlab和Photoshop来制作拼接图像,对拼接图像进行不同类型、不同程度的模糊.表1~表4给出了4种模糊类型以及不同程度模糊的检测正确率、虚警率和漏报率(表中括号内为文献[6]中算法的检测正确率),其中虚警率和漏报率的定义如下:
虚警率=(被检测出的模糊区域远远大于实际模糊区域的图像数+未被局部模糊的图像但被检测出有模糊区域的图像数)/检测图像总数;
漏报率=(被检测出的模糊区域远远小于实际模糊区域的图像数+被局部模糊的图像但未被检测出有模糊区域的图像数)/检测图像总数.
表1 平均模糊检测Table 1 Detection of average blur
表2 高斯模糊检测Table 2 Detection of Gaussian blur
表3 圆盘模糊检测Table 3 Detection of disk blur
表4 运动模糊检测Table 4 Detection of motion blur
实验结果显示,本研究提出的算法对平均模糊、高斯模糊、圆盘模糊和运动模糊都能进行有效的检测,和括号内文献[6]中算法的检测正确率相比,本研究算法在各种模糊类型和不同模糊程度下的检测正确率都更高.图3是相同条件下的检测结果对比图,图3(a)和图3(e)是原始未模糊图像,图3(b)和图3(f)是拼接区域经过模糊处理的拼接图像,图3(c)和图3(g)是本算法的检测结果,图3(d)和图3(h)是文献[6]中算法的检测结果.由图可见,本研究算法几乎完整地分离出了模糊区域,分离精度较文献[6]中的算法有所提高.
4 结束语
本研究提出了一种检测局部模糊的新方法,并将其应用于篡改图像的检测上.采用本方法取得的模糊特征具有很高的分离度,同时根据频域相关系数和空间域模糊特征的概率分布特性能够准确地确定动态阈值,用以满足各种模糊情况.分离模糊区域的精度能达到像素级,检测正确率也有所提高.
图3 篡改图像的检测结果Fig.3 Result of forgery image detection
[1] GIANNAKISG B,HEATHR W.Blind identification of multichannel FIR blurs and perfect image restoration[J].IEEE Transaction on Image Processing,2000,9 (11):1877-1896.
[2] LAGENDIJKR L,BIEMONDJ.Basic methods for image restoration and identification[M]∥ BOVIK A C.Handbook of image and video processing.New York:Academic Press,2000.
[3] YOUY L,KAVEHM.A regularization approach to joint blur identification and image restoration[J].IEEE Transaction on Image Processing,1996,5(3):416-428.
[4] 王波,孔祥维,尤新刚.图像伪造中模糊操作的异常色调率取证技术[J].电子学报,2006(12A):2451-2454.
[5] LIUR,LIZ,JIAJ.Image partial blur detection and classification[C]∥CVPR.2008:1-8.
[6] 王睿,方勇.一种图像局部模糊检测方法及其在被动图像认证中的应用[J].高技术通信,2009,19(7):718-723.
[7] HSIAOD Y,PEIS C.Detection digital tampering by blur estimation[C]∥ Proceeding of the First International Workshop on Approaches to Digital Forensic Engineering.2005:264-278.
[8] 周琳娜,王东明,郭云彪,等.基于数字图像边缘特性的形态学滤波取证技术[J].电子学报,2008,36(6):1047-1051.
[9] 王俊文,刘光杰,戴跃伟,等.基于非抽样Contourlet变换的图像模糊取证[J].计算机研究与发展,2009,46 (9):1549-1555.
[10] LIX.Blind image quality assessment[C]∥Proceedings of the 2002 International Conference on Image Processing.2002:449-452.
[11] SCHAEFERG,STICHM.Uncompressed color image database[DB/OL].[2009-10-06].http:∥www-staff.lboro.ac.uk/~cogs/datasets/UCID/ucid.html.