基于小波系数比较的抗打印扫描数字水印算法

2012-02-28 05:10韩天明尚晓辉
网络安全与数据管理 2012年15期
关键词:数字水印分块含水

韩天明 ,魏 维 ,周 华 ,尚晓辉

(1.西安通信学院 研究生管理大队,陕西 西安 710106;2.91876部队,河北 秦皇岛 066023;3.西安通信学院 指挥信息系统系,陕西 西安 710106;4.61711部队,新疆 喀什 844000)

近年来,计算机技术、网络和多媒体技术发展迅速,然而大部分重要文件如商业文档、证书、机密文件等仍然以印刷品的形式存在,印刷品的版权保护和防伪问题日益引起人们的关注。抗打印扫描数字水印技术作为信息隐藏领域新的研究方向,为印刷品的版权保护和来源鉴别提供了一种有效途径。设计合适的数字水印算法,可使嵌入水印的图像在经过打印扫描造成图像失真的情况下仍能检测到所嵌入的水印[1-2]。打印扫描过程涉及D/A和A/D两次转换,综合半色调攻击、低通滤波攻击和旋转、缩放、剪切等一系列几何变换,由于设备和人为因素,图像的输出和扫描过程会产生进一步失真[3],这就要求数字水印算法具有很好的鲁棒性。本文根据图像小波变换的特性,在小波域实现水印算法。实验结果证明,该算法能免疫于图像的打印、复印、扫描和一般的几何变换、噪声干扰的有限影响,具有很好的不可见性。

1 在小波域嵌入水印

小波变换的基本思想就是将图像进行多分辨率分解,分解成不同时空、不同频率的子图像,相比 DCT(离散余弦变换)和DFT(离散傅里叶变换),DWT 变换能够对图像的局部特征进行很好的定位,更符合人眼的视觉机制。DWT可以在不同尺度下将图像逐层(第k层)分解为三个高频细节子带:水平LHk、垂直HLk、对角HHk和一个低频逼近子带LLk,逼近子带LLk可以按照这种方式继续分解成 LHk+1、HLk+1、HHk+1和 LLk+1。 其中低频带表示由小波变换分解级数决定的最大尺度、最小分辨率下对原始图像的最佳逼近,它的统计特征和原图像相似,图像的大部分能量集中在此;高频带系列则分别是图像在不同尺度、不同分辨率下的细节信息。分辨率越低,其中有用信息的比例就越高。

由于打印—扫描对图像DWT的细节分量变化的影响较小[4],可以将水印信息嵌入到三级DWT的细节分量中。目前的水印算法一般是将水印信息单一嵌入在宿主图像的低频区域或者高频区域[5-6],由于人眼对低频信息的敏感度要远远大于高频信息,如果在低频区域嵌入大容量的水印信息,势必造成图像画质的下降,而高频区域的抗压缩性较差,水印在受到有损压缩时易受破坏,从而降低图像的鲁棒性。为解决上述问题,本文提出了一种在LH3、HL3和HH3分别嵌入水印的方法,这三个区域虽然不像LL3具有大量的低频能量,但却是LL2再次经过小波分解后得到的,都是LL2低频能量的一部分,在这些区域嵌入水印能在不可见性和鲁棒性之间得到一个较好的平衡。

2 基于强鲁棒性和高嵌入量的算法设计

对原始图像进行大小相等的分块,算法的嵌入容量与图像分块的数量成正比,鲁棒性与分块数量成反比。在确保算法鲁棒性的前提下,将图像分块尽可能减小以提高嵌入量。为提高算法的鲁棒性,在每块图像三级小波变换后的中高频子带中重复嵌入一位相同的水印信息,提取过程中按照择大判决原则从各子带提取的水印中确定最终水印。

2.1 水印嵌入算法

设原始灰度宿主图像为X,水印信息为W,在每一块图像三级DWT后的中高频细节子带中,利用比较的方法将二值水印序列嵌入到每一块中,设定k为嵌入过程中的控制因子,算法具体描述如下:

(1)生成水印。取出水印信息的ASCII码依次排列为{0,1},得到水印序列 Wi。

(2)读入原始宿主图像 X,将 X分解成大小相同的子块,这样,相比对整幅原图像进行小波变换,时间复杂度将大为降低。分块的数量即为水印的嵌入容量。

(3)对每一块采用Haar小波进行三级DWT变换,得到低频系数矩阵LL3和高频系数矩阵LH3(水平方向)、HL3(垂直方向)、HH3(对角方向)。

(4)算法选择在 LH3、HL3和 HH3三个细节子图中嵌入水印。以 LH3为例,在 LH3中选取两个系数 LH3(X1,Y1)和 LH3(X2,Y2),逐位 读 入 水 印信息,当 水 印 信 息位为 0 并且 LH3(X1,Y1)LH3(X2,Y2)时 ,交换 LH3(X1,Y1)和 LH3(X2,Y2),在 此 基础上实现水印信息的嵌入。具体如下:

(5)根据Wi的值对 HL3和 HH3中的系数做同样的修改,对修改了系数后的块进行逆小波变换,完成水印的嵌入。

(6)移动到下一块,重复步骤(3)~(5),最终完成水印的嵌入,得到含水印图像。

2.2 水印提取算法

数字水印的提取是嵌入的逆过程。扫描含水印的文档,对扫描后的含水印图像XW进行预处理,包括倾斜纠正、边缘裁切和比例缩放,将扫描后图像的尺寸调整到与原图像X相同。

(1)读入含水印的图像 XW,按照嵌入时的分块方法对水印图像进行大小相等的分块。

(2)对每一块进行三级 DWT变换,分别在 LH3、HL3和 HH3三个细节子图中通过比较(X1,Y1)和 (X2,Y2)位置上系数的大小得到要提取的水印信息 W1(i)、W2(i)和W3(i), 即 :

(3)按 照 择 大 判 决 原 则 , 从W1(i)、W2(i)和 W3(i)中 确 定最 终 水 印 信 息 W(i)=(W1(i)+W2(i)+W3(i))/2。

(4)移动到下一块,重复(2)、(3),得到提取的水印信息的ASCII码值序列W。

3 实验结果及分析

实验主要分析水印的不可察觉性和算法的鲁棒性,以验证本文提出算法的有效性。在打印复印扫描实验前建立了一些攻击模型,即对水印图像添加噪声、剪切、缩放等用来分析算法的抗攻击性,最后进行了打印复印扫描实验。

3.1 实验结果

实验在Matlab7.1平台下实现,水印的载体图像为512×512 bit的标准 lena图像,根据算法的鲁棒性,将载体图像分成 256块、大小为32×32 bit的图像块,嵌入强度的控制因子 k为 50,水印信息为 256位 0、1随机序列,小波变换用的是haar小波。采用峰值信噪比(PSNR)来客观评价水印图像的质量[7]。

用归一化相关系数(NC)来客观比较提取水印与原水印的相似度,将嵌有水印的图像分别进行噪声攻击、剪切、缩放和打印、复印、扫描,其中对扫描后的图像进行预处理再提取水印。图3所示为原始载体图像与嵌入水印后的图像,峰值信噪比为33.078 6 dB。

图1 原始载体图像与嵌入水印后图像

对含水印的图像还进行了噪声攻击、几何变换和打印、复印、扫描等实验,结果如图2所示。

图2 对含水印的lena图像进行的各种攻击

图 2(a)~(d)是在 Matlab中对含水印的图像进行各种攻击后的效果,(e)、(f)分别是水印图像经过打印扫描及打印复印扫描后的效果,其中扫描分辨率为75 dpi,复印次数为 1次。从图 2中可见,各种攻击给图像带来了视觉上的明显改变,在上述各种攻击强度下,水印信息仍能完全正确提取,各种攻击的参数均为该算法可抵抗的临界值。算法对打印扫描和一次复印扫描具有很好的鲁棒性,并且对扫描分辨率不敏感,在扫描分辨率为75 dpi的情况下仍能完全正确提取水印,实验过分辨率在300 dpi、600 dpi和1 200 dpi下扫描图像,结果表明,高分辨率的扫描只会带来数据处理容量的增大,并不会带来检测效率的提升。算法对75 dpi以上的分辨率具有鲁棒性,提高了算法的应用范围。表1为水印经过各种实验后的提取情况,相比之下,算法对剪切相对敏感,水印提取的正确率有所下降。实验中发现,在打印-复印-扫描实验中,当载体图像大小不同时,水印提取的正确率有时会达不到100%,如当图像大小为256×256 bit和384×384 bit时, 水印的提取正确率均为98.44%,原因尚需进一步研究。

表1 各种实验下水印的提取情况

3.2 结果分析

(1)不可察觉性分析。从主观和客观两方面进行分析,通常PSNR达到25以上就可以达到客观不可察觉的要求[8]。实验中PSNR是33.078 6,客观不可察觉性要求可以满足;主观方面主要通过人自身的感官感觉,本实验图像在视觉上有一个比较满意的效果。

(2)鲁棒性分析。实验中通过设计各种攻击来提取水印,通过提取的二值水印序列和原水印序列的相似度来表征抗攻击能力。由实验结果可知,水印在多种攻击下仍能正确提取,且适用于75 dpi以上的各种扫描分辨率。

本文提出了一种小波域的数字水印算法,该算法可以实现水印的全盲检测,具有一定的水印嵌入量,算法兼具较好的不可察觉性和鲁棒性,对75 dpi以上的扫描分辨率均能正确提取水印,并对打印和一次复印后扫描具有一定的鲁棒性。文中所述算法还有很多需要改进的地方,如抗大面积剪切、抗旋转等性能。因此,设计并实现具有更强鲁棒性的抗打印复印扫描的数字水印算法仍需进一步研究和改进。

[1]ANU P.Multiple domain watermarking for print-scan and JPEG resilient data hiding[C].The 6th International Workshop on Digital Watermarking, Guangzhou, 2008.

[2]万晓霞.基于多层次误差扩散加网的数字水印算法研究[J].武汉大学学报,信息科学版,2007,33(11):1056-1059.

[3]SOLANKI K,MANJUNATH B S.Print and scan resilient data hiding in images[J].IEEE Transactions On Information Forensics And Security, 2006,1(4):464-478.

[4]谭论正.基于文档图像的抗打印-扫描数字水印技术[J].计算机应用研究,2007,24(12):199-200.

[5]黄晓生.一种基于DWT和DCT的数字图像水印算法[J].微计算机信息,2009,25(11-3):15-16.

[6]张莹雪.一种改进的基于小波域的图像盲水印算法[J].信息安全与通信保密,2009(9):43-145.

[7]金聪.数字水印理论与技术[M].北京:清华大学出版社,2008:130-139.

[8]龚利明.基于数字水印技术的印刷品防伪算法研究[D].厦门:厦门大学,2007.

猜你喜欢
数字水印分块含水
钢结构工程分块滑移安装施工方法探讨
镇北油田某油藏延长低含水采油期技术研究
含水乙醇催化制氢催化剂研究
分块矩阵在线性代数中的应用
基于网屏编码的数字水印技术
复杂孔隙结构低阻油层含水饱和度解释新方法
基于FPGA的数字水印提取系统设计研究
反三角分块矩阵Drazin逆新的表示
基于数字水印的人脸与声纹融合识别算法
基于两级分块的文件同步方法