APP下载

一种可区分内容或水印篡改的图像认证算法

2013-11-10杨军彦

网络安全与数据管理 2013年21期
关键词:二值子带含水

秦 娜,杨军彦

(西北师范大学 计算机科学与工程学院,甘肃 兰州 730070)

近年来,随着数字水印技术的快速发展,出现了大量基于水印的图像认证算法,当图像真伪性受到怀疑时,提取的水印就可以作为验证篡改是否发生的依据。其中,在Contourlet变换域嵌入水印的图像认证算法受到重视[1-3],这些算法大都将水印嵌入到能量较大的Contourlet变换方向子带中,较好地利用了方向子带的纹理特性,满足水印的不可见性和鲁棒性要求。这些算法通过将提取的水印与原始水印相对比,能判断该图像是否发生了篡改,并对篡改区域进行定位,但不足之处在于它们仅能指出图像的篡改位置,而不能区分是图像内容被篡改还是水印被篡改,或者两者都被篡改。

由于对图像内容的篡改会破坏原始图像的使用价值,因此,认证算法必须检测出此类篡改并精确定位,以确保认证的可靠与有效;而对水印的篡改一般不影响原始图像的使用价值,这种仅水印被篡改的情况应能通过认证。如果不加区分地一律不通过认证,一方面将会使本来真实可信的图像变得不可信,从而降低数字图像的利用效率,并妨碍数字图像认证技术的推广与应用;另一方面攻击者可以通过仅篡改水印来伪造对图像内容的篡改,使本来真实的图像不能通过认证,达到恶意攻击的目的。因此,能区分是图像内容还是水印被篡改的认证算法成为图像认证技术推广与应用必须解决的问题。

针对现有基于水印的图像认证算法对区分图像内容还是水印被篡改研究的不足,本文提出了一种可区分内容或水印篡改的图像认证算法。首先由载体图像的Contourlet低频系数生成恢复水印,将其嵌入对应的4个中频子带;恢复水印全部嵌入后,再在载体图像Contourlet低频子带嵌入认证水印。双水印的嵌入可以作为判断图像内容被篡改还是水印被篡改的依据。该算法不分块,避免了块效应和基于分块独立性产生的量化攻击,能够与现有的压缩标准(如 JPEG、JPEG 2000)结合起来,能较好地检测出发生的篡改并定位,同时区分篡改类型,在一定条件下还可以恢复被篡改的区域。

1 算法分析

1.1 恢复水印的生成与嵌入

生成与嵌入恢复水印的具体步骤如下。

(1)采用 Contourlet变换对原始灰度图像 I进行 2级拉普拉斯金字塔变换和最精细子带8方向分解,提取其低频子带系数矩阵 b(i,j)。

(2)求低频系数矩阵 b(i,j)的均值,通过比较低频子带各系数与均值的大小关系,将各系数量化为小于16的非负整数,并用4位二进制数表示,对所有低频子带系数处理后得到一维二值序列s。

(3)将 s排列为 4行 m×m列 (m×m是中频子带大小)的二维矩阵 wr,则wr的每一列对应 4位二进制数的高位到低位,而每一行对应一个位平面。

(4)对每一个中频子带,通过奇偶量化中频子带系数 a(i,j)嵌入恢复水印,使一个中频子带嵌入 wr的一行数据,具体如下。

当 mod(floor(a(i,j)/q),2)的值与恢复水印信息不一致时,按如下规则修改中频子带系数:若(a(i,j)-(floor(a(i,j)/q)×q)>q/2,则 a(i,j)=floor(a(i,j)/q)×q+1.5q;否则,(a(i,j)=floor(a(i,j)/g)×g-0.5g;当 mod(floor(a(i,j)/q),2)的值与恢复水印信息一致时,不作修改。其中,mod表示取余运算,floor表示下取整,q为每个中频子带系数的量化参数,E为子带能量值。

(5)对所有中频系数都按步骤(4)处理,完成恢复水印的嵌入。

1.2 认证水印的嵌入

嵌入认证水印的具体步骤如下。

(1)采用二值图像 wa作为认证水印,首先对其采用Arnold变换得到置乱的认证水印图像wa1,将置乱次数作为密钥保存,增强水印系统的安全性。

(2)对原始灰度图像I进行2级拉普拉斯金字塔变换和最精细子带8方向分解,提取其低频子带系数矩阵b(i,j),并用式(1)和式(2)计算低频系数的量化参数 q1。

(3)根据水印信息,量化 b(i,j)得到嵌入水印后的低频系数矩阵 b′(i,j):

(4)认证水印嵌入后,进行 Contourlet逆变换得到含水印信息的图像。

1.3 水印提取与认证

提取与认证水印的具体步骤如下。

(1)对被检测图像进行与水印嵌入前相同的Contourlet变换,得到低频系数矩阵 b1(i,j),按照式(4)从中提取认证信息 wa′(i,j),将其反置乱后得到提取的二值水印

(2)根据式(5)从 4 个中频子带的系数 a1(i,j)中提取恢复水印 wr′,并将其组成 4行 m×m列的二值矩阵wr′′(m×m 是中频子带大小)图像 wa1′(i,j)。

(3)对篡改的检测及认证过程为:首先,若嵌入的认证水印与提取的认证水印相等,则含水印图像即可通过认证;若不相等,就比较计算得到的恢复水印和从Contourlet变换4个中频子带提取的恢复水印。若两者相等,就说明含水印图像先前没通过认证的原因在于其认证水印被篡改,此时含水印图像仍然可以通过认证,因为只有认证水印被篡改,大多情况下并不影响图像的使用价值,否则就不能通过认证。即:

若 wa=wa′,通过认证;

若 wa≠wa′,wr=wr′,通过认证;

若 wa≠wa′,wr≠wr′,不 通 过 认 证 。

2 仿真实验

实验时采用大小为 256×256、位深为 8 bit/pixel的Lena灰度图像和64×64的二值图像进行各种测试。Matlab仿真实验中,Contourlet变换的 LP采用“9-7”金字塔滤波器。Contourlet变换的DFB采用“pkva”方向性滤波器。对输入图像lena进行2级LP分解,得到一个近似图像2I和两个带通子图像1B、2B,其中1B为最精细子带图像,2B为次精细子带图像。然后,分别对1B、2B进行8方向分解和4方向分解。如图1所示,图1(a)为原始图像,图 1(b)为二值水印图像,图 1(c)为只嵌入恢复水印的图像,图1(d)为嵌入了恢复水印和认证水印的图像,图 1(e)为从图 1(d)提取出的水印图像。

图1 只嵌入恢复水印图、嵌入双水印图及提取的水印

2.1 不可见性测试

实验时,含双水印图像与原始图像相比,其峰值信噪比PSNR=38.180 1;只嵌入恢复水印图像与原始图像相比,其PSNR=39.862 5;提取出的水印图像与原始水印图像相比,其相关系数NC=1.00。实验结果表明,嵌入水印后对图像的视觉质量影响小,并且在载体图像未遭受任何攻击时,该算法完全可以正确地提取出水印图像。

2.2 区分水印篡改或内容篡改

在传输过程中,数字图像受到的篡改攻击包括篡改嵌入的水印信息、篡改图像内容及同时篡改水印和内容3种。下面通过实验来验证算法对篡改类型的区分情况。

对含水印图像进行处理,使提取的认证水印与原始认证水印相比,各位值取反。如图2所示,图2(a)是认证水印被篡改的图像,图2(b)是其认证结果。由于只篡改水印信息并不影响原始图像的使用价值,因此这种情况通过认证。

图3 水印被篡改的认证

对含水印图像进行了裁剪和替换等处理,结果如图4所示,从认证结果可以清晰地看出篡改发生的位置。由于此时图像的内容发生了篡改,破坏了原始图像的使用价值,因此这种情况不能通过认证。同时,通过事先嵌入的恢复水印,对被篡改区域进行了恢复。

本文提出了一种可区分水印或内容篡改的图像认证算法,该算法在原始图像Contourlet变换域的中频子带嵌入量化的低频信息作为恢复水印,而在图像的低频子带嵌入认证水印。仿真实验表明,该算法在保证不可见性的同时,具有较好的鲁棒性;双重水印的嵌入使得算法可以区分水印被篡改或内容被篡改,并可对图像内容被篡改区域进行定位与近似恢复。

[1]李海峰,宋巍巍,王树勋.基于 Contourlet变换的稳健性图像水印算法[J].通信学报,2006,27(4):87-94.

图4 裁剪和替换操作的认证及恢复

[2]JAYALAKSHMI M,MERCHANT S N,DESAI U B.Digital water-marking in Contourlet domain[C].The 18th International Conference on Pattern Recognition, 2006 (3):861-864.

[3]BOUZIDI A,BAAZIZ N.Contourlet domain feature extraction for image content authentication[C].Proceedings of the 2006 International Conference on Intelligent Information Hiding and Multimedia Signal Processing, 2006:202-206.

猜你喜欢

二值子带含水
一种基于奇偶判断WPT的多音干扰抑制方法*
镇北油田某油藏延长低含水采油期技术研究
含水乙醇催化制氢催化剂研究
子带编码在图像压缩编码中的应用
面向网络边缘应用的新一代神经网络
基于二值图像数字水印算法研究
复杂孔隙结构低阻油层含水饱和度解释新方法
基于稀疏表示的二值图像超分辨率重建算法
基于曲率局部二值模式的深度图像手势特征提取
基于虚拟孔径扩展的子带信息融合宽带DOA估计