基于粒子群优化的多重数字水印算法
张丽娜(西安电子科技大学 数学与统计学院,陕西 西安710000)
摘要:结合粒子群算法,本文提出了一种基于粒子群优化的多重水印算法。首先对原始图像和置乱后的水印图像分别进行三级和二级小波变换,然后对原始图像的低频和高频子带以及水印图像的低频子带做奇异值分解,最后将水印图像的奇异值分别嵌入到原始图像的低频和高频子带中,其中嵌入强度系数通过粒子群算法获得。仿真结果表明本算法很好的满足了水印算法的不可见性要求,而且在遭受常规攻击时,具有较好的鲁棒性。
关键词:粒子群算法 变换 小波变换 奇异值分解
0.引言
随着数字水印技术的发展,各种水印算法层出不穷。由于奇异值分解具有非常好的稳定性,基于奇异值分解的数字水印算法也越来越多。雷蕾等提出将原始图像进行两级小波变换,再将得到的概貌系数进行奇异值分解,然后用加性准则实现水印的嵌入。袁影影提出一种易于实现的基于小波变换和奇异值分解的算法
。张秀娟等提出通过对小波分解层数,水印添加位置等的合理配置,来实现水印嵌入
。现有的数字水印算法都使用固定的嵌入强度系数,因此本文提出将粒子群算法用于优化嵌入系数,以获取自适应的系数。
1.基础知识
1.1变换
一幅图像的
变换公式为:
(1)
其中和
是参数,
和
分别是原始图像和经过置乱后的像素点的位置
。
变换的本质是对原始图像的像素点位置进行置乱。
逆变换公式为:
(2)
对于给定图像,利用公式(1)对其进行次置乱,可以得到置乱图像。为了降低运算复杂度,在对图像进行解密时,本文运用公式(2)对置乱后的图像进行
次逆变换,而不是运用公式(1)对置乱图像做
次变换(其中
为
变换的周期)。
1.2离散小波变换
小波分解的意义在于能够在不同尺度上对图像矩阵进行分解,而且对不同尺度的选择可以根据不同的图像来确定。由于其良好的多分辨分析、能量压缩特性,且兼容压缩标准,对抵抗噪声和压缩攻击有良好的鲁棒性。
小波变换将图像变换为一系列小波系数,这些系数可以被高效压缩和存储。对图像做一级小波变换,可以得到一个低频子带和三个高频子带
,二级小波变换是对
再进行分解,对图像做
级小波分解可以获得1个低频子带和
个高频子带,其中低频子带集中了图像的大部分能量
,其系数分布、统计特性与原始图像相近,稳定性较好;高频是细节子带,反映了原始图像的边缘、轮廓、纹理等信息。
1.3奇异值分解
大小为的矩阵
的奇异值分解为:
(3)
其中和
为正交矩阵,
为奇异值矩阵,
,
。
矩阵的奇异值刻画了矩阵数据的分布特征。数字图像经奇异值分解后,纹理和几何信息都集中在
中,而
中的奇异值则代表图像的能量信息
,具有较好的稳定性。
2.基于粒子群优化的多重数字水印算法
为了获得更好的置乱效果,在变换中,本文选择
。
小波比较适合应用于图像水印,因此选用
小波对图像进行小波变换。
2.1粒子群算法
在粒子群算法中,每个寻优问题的解都被想象成一只鸟,称之为“粒子”,所有粒子在一个维空间进行搜索;所有的粒子都由一个
函数确定适应值以判断当前位置的好坏;每个粒子须赋予记忆功能,能记住搜索到的最佳位置;每个粒子有一个决定飞行距离和方向的速度,根据本身的飞行经验和同伴的飞行经验进行更新。
假设在维空间中,有
个粒子
粒子位置:
粒子速度:
粒子的历史最好位置:
群体内所有粒子的最好位置:
每个粒子的速度和位置更新公式如下:
粒子的第
维速度更新公式:
粒子的第
维位置更新公式:
其中和
分别表示第
次迭代粒子
飞行速度和位置矢量的第
维分量;
是学习因子;
是0到1之间的随机数,以增加搜索随机性;
是惯性权重。
2.2嵌入系数的确定
本文选取适应度函数:
(4)
其中表示载水印图像与原始图像之间的峰值信噪比,
表示从遭受第
种攻击的载水印图像中提取出来的水印与原水印图像之间的相关系数。
为攻击种类,每次迭代时,将水印嵌入原始图像,计算
值;并用常见攻击对载水印图像进行鲁棒性测试,计算
值。
用(4)式作为适应度函数,运用粒子群算法来获得最优嵌入强度系数。
2.3水印嵌入
(1)首先对原始图像进行三级小波分解,得到,提取低频系数子带
和高频系数子带
。
(2)对水印图像进行置乱,再做二级小波变换,得到
,
,提取低频系数子带
,并保存置乱次数
。
(3)分别对原始图像的和水印图像的
子带进行奇异值分解,得到
,并保存左右特征矩阵。
(4)将水印图像的奇异值矩阵扩充为与
相同的大小。分别嵌入到
中较大的奇异值中,使用加性准则,如(5)
(5)
其中嵌入强度系数通过2.2中的算法求出,进行水印的双重嵌入。
(5)分别对嵌入水印后的低频和高频部分做奇异值逆分解,得到相应的低频和高频子带。
(6)再做小波逆变换,得到嵌入水印后的图像。
2.4水印提取
(1)对载水印图像进行二级小波分解,得到,提取低频系数子带
和高频系数子带
。
(2)分别对进行奇异值分解,得到两个奇异值矩阵
。
(3)结合密钥提取水印图像的奇异值矩阵,
(6)
然后做奇异值逆分解和小波逆变换。
(4)最后对提取出来的水印图像做变换,得到两个水印图像,计算与原始水印图像的相关系数,取
值较大的作为最终提取出来的水印。
3.实验结果及分析
本文在系统下的
上进行仿真实现。原始图像选用大小为
的
灰度图像,水印图像选取大小为
的西安电子科技大学灰度图像。
嵌入水印后的图像质量用峰值信噪比来衡量,提取出的水印图像质量用相关系数
来衡量。
3.1水印不可见性分析
图1:水印嵌入前后图像对比
其中为原始载体图像,
为原始水印图像,
为嵌入水印后的图像,
为提取出来的水印图像。
载水印图像与原始载体图像之间的峰值信噪比,说明本文算法不可见性较好。提取出来的水印与原水印之间的相关系数
。
3.2鲁棒性分析
为了验证算法的鲁棒性,我们对载水印图像进行各种常见攻击,再进行水印的提取,攻击后的图像及提取出的相应水印如图2:
压缩(质量因子为10) 窗口
标准差为0.8的高斯滤波
旋转45度 标准差为0.05的椒盐噪声
标准差为0.03的高斯噪声 减去左上角1/4
图2:不同攻击下提取出的水印
不同攻击下提取出的水印图像的相关系数如下表:
表1:各种攻击下提取出的水印值
综合图2和表1,我们可以看出:载水印图像在遭受压缩、旋转、高斯低通滤波、椒盐噪声、高斯噪声、剪切攻击时,均可以提取出较为清晰的水印图像,说明本文算法具有较强的抗攻击能力。
3.3对比试验
通过对载水印图像进行旋转、剪切、高斯噪声、椒盐噪声、高斯低通滤波、压缩这6种攻击,将本文算法与文献[3]、[4]、[5]进行对比。
表2:旋转攻击下水印的值
表3:裁剪攻击下水印的值
由表2和表3可以看出:相比于文献[3]、[4]、[5],本文算法抗旋转攻击性能更优,抗裁剪能力更好。
表4:高斯噪声攻击下水印的值
表5:椒盐噪声攻击下水印的值
由表4和表5可以看出:与文献[3]、[4]、[5]相比,本文算法抵抗噪声的能力更强。
表6:高斯低通滤波攻击下水印的值
由表6可以看出:图像在受到高斯低通滤波攻击时,本文算法提取出来的水印更好。
表7:压缩攻击下水印的
值
由表7可以看出:图像在遭受压缩时,四种方案提取出来的水印图像都较好。
4.总结
针对之前固定嵌入强度系数的水印算法,本文提出基于粒子群优化的多重数字水印算法,通过仿真实验和对比实验,分析可知相比于以前的水印算法,本文算法具有很好的不可见性,并且在遭受常见攻击时,具有非常好的鲁棒性。说明本文算法在满足不可见性要求的条件下,鲁棒性有所提高。
参考文献:
[1] 牛海静.基于DWT和SVD的多重鲁棒数字水印算法[D].华南理工大学:2013.
[2] 赵蒙蒙.基于粒子群优化的DWT-SVD数字水印算法[D].山东科技大学:赵蒙蒙, 2017.
[3] 雷蕾, 郭树旭, 王雷.基于小波变换的SVD数字图像水印算法研究[J].计算机仿真, 2013, 30(9): 169-172
[4] 袁影影.基于DWT-SVD的抗几何攻击水印算法[J].信息通信, 2016, (7): 8-9
[5] 张秀娟, 朱春伟.一种基于DWT-SVD的图像数字水印算法[J].数字技术与应用, 2017:104-107.
[6] 温正.精通MATLAB智能算法[M].清华大学出版社: 2015. 106-135
[7] Asna Furqan,Munish Kumar.“Study and Analysis of Robust DWT-SVD Domain Based Digital Image Watermarking Technique Using MATLAB”,2015 IEEE International Conference on Computational Intelligence & Communication Technology
[8] 陈希, 张建伟.一种基于SVD分解的小波域数字水印算法[J].信息安全, 2007, 23(43): 83-87
[9] K. W. Cheah,“Robust DWT-SVD image Watermarking With Hybrid Technique For Embedding Data In All Frequencies”, M.Sc.(Maths) Dissertation, Universiti Sains Malaysia, 2014.
作者简介
张丽娜,西安电子科技大学数学与统计学院硕士,专业为计算数学,研究方向是信息安全,主要是数字水印和图像加密。曾获全国大学生数学竞赛二等奖,全国大学生数学建模竞赛省三等奖等。