基于混沌和小波的数字水印算法研究与实现

2015-07-13 08:23莫末周凤
电脑知识与技术 2015年13期
关键词:数字水印

莫末 周凤

摘要:该文讨论了基于混沌和小波的数字水印算法的研究和实现。研究内容如下:首先实现了基于混沌和小波的数字水印嵌入以及提取的算法。然后对水印的算法进行检测。同时本文利用了混沌技术和置乱技术,很好的保证了水印的安全性。

关键词:数字水印;混沌序列;离散小波变换

中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2015)13-0232-02

随着时代的发展,我们身边周围的信息来源都出自于多媒体。可是凡事都是一把双刃剑,有利也有弊。有很多个人或团体擅自进行篡改、拷贝、传播以及销售某些未经允许的作品,这一系列的行为大大的损害了这些作品的所有者的版权利益。为了对数据的安全性的保护,现在有很多学者正在寻找新的技术和方式。现在有很多方法去保护数据的安全性和版权,首先是利用密码技术来使数据不会被非法阅读;用数字签名来保证数据的真实性;利用数字水印技术来保护数据的版权。数字水印是一种不可见的特制标记,用特殊的方法将数字水印嵌入到数字图像、视频、音频等数据中,由此可以确定该作品的版权所有者、认证数据来源的真实性、认证购买者、提供数据的其他信息以及跟踪侵权行为。

1 混沌和置乱的基本理论

1.1 混沌的概述

在确定的系统中产生类似随机的一种不规则运动,这就叫混沌。它是一个确定性的系统,但是其运动是不规则的,即不可重复、不确定和不可预测的。

混沌具有良好的特性:混沌的构造简单,最主要的是混沌系统对初始值很敏感,内随机性,该系统就会产生不可预测性,当初始条件的发生了极小的变异就能对后面产生巨大的影响,混沌系统还有很多特性,例如整体稳定局部不稳定、遍历性等等。那么我们利用混沌系统对初始值的敏感性就能重构混沌序列,这样就增加了破解的难度,这样就提高了信息的安全性。

我们可以通过一下方法来判别一个系统是否发生了混沌:

1)Lyapunov指数法。在相空间中有两条相邻轨迹的收敛或发散的比率叫Lyapunov指数。对于某个系统[xn+1=f(xn)]来说,那么该系统的Lyapunov指数λ就应该是:

[λ=limn→01nl=0n-1lnf′(xl)] (1)

如果[λ<0],那么该系统就收敛于不动点;如果[λ>0](且有限),那么系统既不会稳定在不动点,也不存在稳定的周期解,使系统趋于不稳定,此时说明该系统进入混沌;如果[λ=0],那么分叉点相应于稳定轨迹的边界。

2)直接观测法。这种方法要根据数值所运算出来的结果,在相空间中画出状态变量随着时间变化的历程图和相轨迹随着时间变化的变化图。结果的分析以及对比,在相空间中,封闭的曲线是周期运动,而在一定的区域内随机分离的永不封闭的轨迹则是混沌运动。

3)功率普法。周期性运动的基振和一系列的谐振的叠加可以看作一个周期性运动,而且各个谐振的振幅与频率是离散谱线的关系;非周期运动的频率谱是连续的。如果一个系统的频率谱连续而且可以重现,那么该系统出现混沌现象。

1.2 置乱的基本概念及其原理

1.2.1 置乱概述

置乱就是打乱图像中的二值信息序列,将某一个像素位置移动到另一个像素的位置上,使其变得杂乱无章无法辨认、没有意义的序列,这样做的目的就是为了提高数字水印的安全性,加强水印抵抗攻击能力,即使置乱后的数字水印图像被非法截获了,不知道恢复的方法,那么截获者也是无能为力。数字水印通过置乱技术打散错误比特来提高其鲁棒性,也提高了图像的安全性。置乱有很多种方法,如Arnold变换,幻方置乱等。

1.2.2 置乱的原理

图像置乱算法的思想:

1)首先对原图像固定一个模板,将原图像各个像素位排列好,如图1所示;

2)然后再做一个置乱模板,这个模板与原图像固定模板不一样,在该模板中把原图像中的像素位也按照一定的顺序填入其中;

3)最后把置乱模板中各个像素位再按照从左至右和从上至下的特定的顺序放回到原图像模板,就得到置乱后的图像模板,如图2所示。

2 基于混沌和小波变换的数字水印技术实现

2.1 基于混沌和小波变换的数字水印算法实现

2.1.1 数字水印图像加密

在水印图像嵌入到载体图像前,为了保证数字水印的保密性,那么就要对经过Arnold置乱的水印图像用混沌序列进行加密。过程如下:

1)在对二值水印图像进行混沌加密之前,首先要通过Arnold置乱将水印图像作预处理,根据Arnold变换公式将水印图像作置乱操作。

2)首先通过Logistic序列公式[xk+1=1-μ?x2k]。

3)将得到的一维混沌序列转换成二维矩阵;

4)对得到的二维混沌矩阵进行矩阵调制,设置阈值函数c(x,y),这个阈值的大小是通过混沌序列的均值决定的。当二维矩阵中的某个元素的值大于等于该阈值,则该元素就置为“1”;当这个元素的值小于该阈值时,那么这个元素就置为“0”。

5)将二值化的水印图像与得到的二维混沌矩阵进行异或运算得到加密后的水印。

2.1.2 水印的嵌入

将水印信号嵌入到载体图像中有两种准则:

其中,[wk]为数字水印信号,[i0k]为载体图像,参数为嵌入水印的强度因子。公式(2)为加法准则,公式(3)为乘法准则。在此,本章采用的是乘法准则,水印的嵌入过程如下:

1)首先将原始图像进行两次小波变换,经过两次小波变换图像就生成了高频部分的图像信息、中频部分的图像信息以及低频部分的图像信息;

2)加密过的水印信号如果该元素值为“0”,那么就将乘法准则中的w(k) 数字水印信号置为“-1”,否则就将乘法准则中的w(k) 数字水印信号置为“1”,然后利用乘法准则的公式(3)将水印嵌入到载体图像的低频部分,本文中的强度因子a=0.03;

3)然后再通过小波逆变换,得出嵌入水印后的图像。

2.1.3 水印的提取

本文算法是非盲水印算法,即在提取水印需要原始图像,而且完整提取水印后,来确定该多媒体数据的完整性。因为在很多恶意的攻击之下,很难完整的提取出完整的水印。水印提取的过程如下:

1)首先将待提取的图像和原始图像分别进行两次的小波变换,去得到它们的低频部分以及水平、垂直和对角方向的中高频部分;

2)在利用公式:

计算出[wk]数字水印信号,如果计算出的数字水印信号小于“0”,那么水印信号置为“0”,否则水印信号置为“255”,这样就提取出水印密文;

3)在利用上面的二维混沌序列矩阵对水印密文以及Arnold逆变换进行解密,得到嵌入的二值水印图像。

2.1.4 实验结果

选取大小为256×256的Lena图像作为原始图像;水印图像是大小为64×64的二值图像。水印的加密、嵌入、提取以及解密都在Matlab R2009a的环境下进行的。

通过计算PSNR值以及NC值对已经嵌入水印后的图像进行评估,此时[NC=i=1Nωωiωii=1Nωω2ii=1Nωω2i=0.9981],[PSNR=10?log10MAX2lMSE=37.7319],结果如下图所示,图3是原始载体图像,图4是二值化的水印图像,图5是嵌入水印后的图像,图6是提取的水印图像。

以下是对于水印的嵌入以及提取的整个过程:

如图7所示是二维混沌调制信号,将这个调制信号与水印图像进行异或。然后就得到了加密过的水印图像,如图8所示。

密过的水印图像嵌入到载体图像当中,得出嵌入水印的图像。

最后通过提取算法对嵌入水印的图像进行提取,将加密过的水印图像从嵌入水印的图像中提取出来,之后进行一系列的解密操作就得到了水印图像。如图9所示是提取出来未解密的水印图像,图10所示是通过解密操作得到的水印图像。

3 总结

对于网络技术的发展,人们获取重要信息的方法有很多,特别是多媒体成为了其中重要的一个部分。所以数字水印技术在保护数字多媒体的版权起到了相当大的作用。

本文的算法不是盲水印算法,且通过一系列的数字水印攻击测试,说明算法还有欠缺:

1)通过对算法的安全性、攻击抵抗性、鲁棒性等的研究,与数字信号处理技术相结合,找出更好的数字水印技术。

2)进一步研究基于混沌的数字水印技术的算法,然后通过相同的攻击测试,来和本文的算法进行比较,然后综合两种算法各自的优点,找出更优秀的数字水印算法。

参考文献:

[1] 葛秀慧,田浩,郭立甫,等. 信息隐藏原理及应用[M].北京:清华大学,2008.

[2] 杨义先,钮心忻. 数字水印理论与技术[M]. 北京:高等教育出版社,2006.

[3] 王颖,肖俊,王蕴红. 数字水印原理与技术[M]. 北京:科学出版社,2007.

[4] 杨义先. 数字水印基础教程[M]. 北京:人民邮电出版社,2007.

[5] 王炳锡,彭天强. 信息隐藏技术[M]. 北京:国防工业出版社,2007.

[6] 杨高波,杜青松. MATLAB图像/视频处理[M]. 北京:电子工业出版社,2010.

猜你喜欢
数字水印
基于遗传优化的自然语言文本数字水印方法
基于网屏编码的数字水印技术
分形压缩在数字水印技术中的应用研究
基于小波变换的数字水印技术
基于数字水印的人脸与声纹融合识别算法
一种多传感器图像融合与数字水印技术
基于图像纹理复杂度的小波域数字水印算法
Haar小波在数字图像水印算法上的探究
多重加密的数字水印生成方法
基于矩阵分解和混沌置乱的数字水印算法