一种抗JPEG压缩的图像零水印算法

2014-07-25 07:43刘陈硕王美清
网络安全与数据管理 2014年14期
关键词:透明性数字水印子图

刘陈硕,王美清

(福州大学 数学与计算机科学学院,福建 福州 350116)

数字水印是一种解决数字图像版权问题的有效方法。它有两方面的要求:透明性和鲁棒性。透明性是指嵌入水印后的图像在视觉效果上不能有明显的变化;鲁棒性是指水印可以抵抗常规的数字信号处理操作(如JPEG压缩、滤波和直方图均衡化等),即含水印的图像经过这些处理后仍然可以提取出水印[1]。

JPEG格式是网络上最常见的图像格式。任何水印算法都必须对JPEG压缩具有一定的鲁棒性。LIN S D[2]提出了一种基于DCT的水印算法。该算法的鲁棒性强弱取决于一个模数M,M越大鲁棒性越强,但透明性越差。所以模数M不宜取值太大,这一点限制了算法的鲁棒性强度。RUN R S[3]提出了一种可信的SVD水印算法。该算法的水印大小必须是原始图像的1/4,且原图像越大,算法的计算效率越低。叶天语[4]提出了一种鲁棒的零水印算法,该算法先对图像进行分块处理,分解出的数据块越大,图像特征的鲁棒性就越强,但所提取的特征信号就越少,容易违背哈希性。

与一般的水印算法相比较,上述文献提出的算法有较强的抗压缩能力。然而,在面临高压缩比的JPEG压缩时,水印图像受损严重。另外,参考文献[2]和参考文献[3]都是嵌入式的水印算法,在拥有抗压缩能力的同时,破坏了原始图像的视觉效果。所以,有必要提出一种既能保证图像质量,又能抵抗高强度压缩的水印算法。

1 背景

1.1 零水印

传统的数字水印算法的鲁棒性增强时,透明性就会减弱。近几年,零水印技术很好地解决了数字水印的透明性和鲁棒性之间的矛盾[5-7]。零水印不修改原始图像的数据,而是把图像自身的特征与待嵌入的实际水印相结合形成零水印信息后,再将零水印信息注册到可信的水印注册机构中。以后对图像的版权存在争议时,只需提取被检测图像的图像特征,利用该图像特征与注册机构中的零水印信息生成实际水印。最后,检测生成实际水印与原作者手中的水印的相似度,若相似度极大,则判定版权归原作者所有。由于零水印算法没有对图像进行修改,因此保证了原始图像的完好性。

1.2 DWT

使用离散小波变换(DWT)可以对图像进行多分辨率分解,从而得到4个不同频率、不同方向的子图:低频逼近子图(LL)、水平细节子图(HL)、垂直细节子图(LH)和对角线细节子图(HH)[8]。本文的零水印构造算法需要分别对4张子图提取图像特征,这样做的目的是提高算法的鲁棒性。在同一种攻击下,不同子图的受损程度不同,对于受损程度小的子图,其图像特征变化不大。

2 本文算法

图1 “点”或“点”的示意图

2.1 零水印构造算法

对图像I进行DWT变换,得到4张子图,即I⇒{ILL,ILH,IHL,IHH}。算法具体步骤如下:

(1)把子图Ik的像素值调整到-128~127之间,k={LL,LH,HL,HH}。

(2)对子图Ik进行 8×8分块 DCT变换。

(3)利用一对种子S=(s1,s2)生成一个随机坐标的集合,选择随机坐标对应的数据块。

(5)若图像特征(由若干组成)的值小于水印W,则扩展(如平铺扩展),使其值与水印相同。然后对图像特征进行Arnold置乱。

(6)用图像特征与水印W作XOR运算,得到零水印信息。

2.2 零水印检测算法

在版权判定时,待检测图像很可能是原图遭受攻击后的图像。对图像进行DWT变换,得到4张子图。即I′⇒{ILL′,ILH′,IHL′,IHH′}。

(1)对子图Ik′执行零水印构造算法的步骤(1)~步骤(3),k={LL,LH,HL,HH}。

(2)利用所选择的数据块的DC系数来提取图像特征。记 DC系数为C,提取出来的特征信号为′,则′=,这里的M′为零水印构造算法中所确定的合适模数。

(3)扩展并 Arnold 置乱图像特 征′(′由若干′组成)。

(4)用图像特征′与零水印信息作 XOR运算,得到水印Wk′。

2.3 用PSO算法寻找合适的模数M′

对选择好的数据块提取DC系数,凑成一个矩阵L。设L的大小为m×n。

设Δ为m×n矩阵,该矩阵由DC系数对应的模数M组成。求最佳Δ的方法如下(用PSO算法求解下面的优化问题):

目标函数:min{best_mod(Δ)}

约 束条 件 :lb≤Mij≤lb+p,for 1≤i≤mand 1≤j≤n,其中,lb是预先设定的模数下界,而p是参数,用来确定上界。

用PSO求解上面的优化问题而得到的Δ,即为合适的模数矩阵。

3 实验结果与分析

3.1 水印图像和原始图像

实验中用到的原始图像是大小为512×512的灰度图Lena、Woman、Airplane、Baboon, 原始水印是一张大小为64×64的二值图像,如图2所示。

图2 水印图像和原始图像

本文采用相关系数,即 NC(Normalized Correlation)来判断鲁棒性强度。NC值越大,算法的鲁棒性越强。其计算公式如下:

其中,W表示原始水印图像,W′表示提取出的水印图像。由于本文算法是零水印算法,保持了原始图像的完好性,因此比较透明性是没有意义的,只需比较鲁棒性即可。

3.2 PSO算法的参数

选择惯性权值线性递减的PSO算法。PSO算法所涉及的参数如下设置:

(1)加速因子 c1和 c2均设为 2。

(3)决策变量的变化范围:lb≤Mij≤lb+p,for 1≤i≤m and 1≤j≤n。 这里的 lb和 p 因DWT的子图不同而异,如表1所示。

表1 不同子图的lb和p

(4)最大速度设为 0.2×p。

(5)最大迭代次数设为7 000。

(6)粒子数设为50。

3.3 鲁棒性测试

利用本文算法对原图像的4张子图提取图像特征,并且生成4个零水印信息。所以在检测零水印时,可以提取出4张水印,并以效果最好(即NC值最大)的水印来认证图像版权。

将本文算法与现存的算法 (即参考文献[2],参考文献[3]、参考文献[4])作比较。对嵌入水印的图像进行不同程度的JPEG压缩,然后使用4种算法提取水印,实验结果如图3和图4所示。图中的QF(Quality Factor)表示品质因子,取值范围为[0,100],取值越小,压缩越强,图像受损越严重。从图3和图4可知,本文算法所提取的水印效果优于其他算法,特别是在QF=10、8、6时的高强度的JPEG压缩下,本文算法提取出的水印依然清晰可辨。

图5是不同JPEG压缩下,4种算法的平均NC值的比较结果。可以看出,本文算法的平均NC值始终在0.82以上,说明本文算法对JPEG压缩具有很强的鲁棒性。相比之下,当QF=30时,其他算法表现出较强的鲁棒性。但随着QF逐渐减小,其平均NC值也明显降低。这说明对高强度的JPEG压缩而言,其他算法的鲁棒性不佳。

本文提出了一种抗JPEG压缩的零水印算法。在不破坏图像质量的前提下,它可以有效地抵抗JPEG压缩。由于零水印不会降低透明性,因此零水印构造算法中的模数M可以取更大的值,使得算法对压缩攻击拥有更强的鲁棒性。实验结果表明,在抗JPEG压缩方面,本文算法效果良好,且优于现有的算法。

图3 在不同的JPEG压缩下,使用4种方法提取水印的结果比较(Lena和Woman)

图4 在不同的JPEG压缩下,使用4种方法提取水印的结果比较(Airplane和Baboon)

图5 4种算法的平均NC值的比较结果

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

[2]LIN S D,SHIE S C,GUO J Y.Improving the robustness of DCT-based image watermarking against JPEG compression[J].Computer Standards&Interfaces,2010,32(1):54-60.

[3]RUN R S,HORNG S J,LAI J L,et al.An improved SVD-based watermarking technique for copyright protection[J].Expert Systems with Applications,2012,39(1):673-689.

[4]叶天语.抗JPEG压缩和几何攻击的鲁棒零水印算法[J].光 子 学 报,2012,41(2):210-217.

[5]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报,2003,31(2):214-216.

[6]马建湖,何甲兴.基于小波变换的零水印算法[J].中国图像 图 形 学 报 ,2007,12(4):581-585.

[7]宋伟,侯建军,李赵红,等.一种基于 Logistic混沌系统和奇异值分解的零水印算法[J].物理学报,2009,58(7):4449-4456.

[8]韩天明,魏维,周华,等.基于小波系数比较的抗打印扫描数字水印算法[J].微型机与应用,2012,31(15):75-77.

猜你喜欢
透明性数字水印子图
日本建筑师蛇形画廊展馆的透明性特征探析
透明性理论与其在建筑设计中的体现
基于网屏编码的数字水印技术
临界完全图Ramsey数
不含3K1和K1+C4为导出子图的图色数上界∗
关于l-路和图的超欧拉性
网络安全审查中的透明性研究*
基于FPGA的数字水印提取系统设计研究
基于频繁子图挖掘的数据服务Mashup推荐
基于离散小波变换和奇异值分解的版权保护视频水印算法研究