基于多小波变换和分块SVD的彩色图像水印算法
2010-01-01韩绍程罗长杰张兆宁王玉松
韩绍程, 罗长杰, 张兆宁, 王玉松
(1. 中国民航大学基础实验中心,天津 300300;2. 中国民航大学空中交通管理学院,天津 300300)
随着计算机技术和网络技术的飞速发展和广泛应用,数字多媒体信息的存储、复制与传播变得非常方便,数字化产品的产权保护成为急需解决的问题。数字水印作为一种潜在的解决方案成为国内外学术界研究的热点[1]。彩色图像应用广泛,且同灰度图像相比具有更大的信息量,这使得彩色图像的版权保护显得更加重要。
多小波可以同时拥有正交性、对称性、紧支撑性等良好的性质,与单小波相比具有更多的优越性。文献[2]较早地提出一种基于多小波变换(DMWT)的数字水印算法,其考虑到图像多小波变换后,同一尺度且同一方向上两个细节子图之间存在极强的相似性,利用比较法嵌入一幅二值图像,水印提取不需要原始图像;随后一些研究表明,基于多小波变换的水印算法较单小波具有更好的鲁棒性[3-4]。虽然基于多小波变换的水印算法已经取得了一定成果,但是这些算法不能抵抗几何失真,而且水印大多为随机序列或二值图像。文献[5]提出了一种基于分块奇异值分解的抗几何失真数字水印算法,当载体图像尺寸比较大时,该算法较传统的奇异值分解方法,具有时空效率高和鲁棒性强的优点,不足在于是在空域内进行分块奇异值分解,水印嵌入前没有经过预处理,而且载体图像是灰度图像,使其应用受到很大限制。
目前,彩色图像水印算法的研究大多基于RGB 彩色空间和YCrCb/YIQ 彩色空间进行分析。HSI 彩色模型是基于人类视觉感知原理的色彩空间,数字图像HSI 彩色模型中饱和度分量及色度分量并不受亮度分量变化而发生任何变化,同时色度信息代表色彩的本质属性,其改变对图像的可见性影响较大[6]。本文选择图像的饱和度分量作为水印的嵌入域,提出了一种多小波变换和分块奇异值分解相结合的彩色图像水印算法,将置乱后的水印嵌入到图像饱和度分量多小波变换后的不同中频区域中,保证了算法的不可见性和鲁棒性。
1 相关理论
1.1 多小波变换
多小波变换与小波变换相比更具一般性,首先,其滤波器系数是矩阵而不是标量;其次,可以构造尺度因子大于2 的多小波。一般地,多小波含有r个尺度函数和与其对应的r个小波函数,r=2 时多小波的尺度函数和小波函数可以用以下向量的形式分别表示
这里 ( )tΦ 被称作多尺度函数, ( )tΨ 被称作多小波函数。和单小波一样,多小波也有双尺度方程
1.2 图像奇异值分解
从线性代数的角度看,任意一幅数字图像都可以看成一个N×N 的实矩阵,给定一个大小为N×N 的实矩阵A,其SVD 分解可以表示为
其中 U 和V 分别为N×N 大小的正交矩阵, S = diag(λ1, λ2, …, λr,0, …,0)为非负对角矩阵,其对角线元素iλ 即为矩阵A 的奇异值,且满足 λ1≥ λ2≥ …≥ λr>0,r 为S 的秩,它等于非零奇异值的个数[7]。
2 算法实现
2.1 水印嵌入
水印嵌入的具体过程如下:
(2) 对灰度级水印图像进行Arnold 置乱,置乱后的结果记为W,并将其按以下方式分成4个部分:W1=W(1∶32, 1∶32);W2=W(1∶32, 33∶64);W3=W(33∶64, 1∶32);W4=W(33∶64, 33∶64)。
图1 系数选择方案
(6) 对1SI 进行多小波逆变换,得到含水印的饱和度分量 IS1,最后结合其它两个彩色分量转换到RGB 彩色空间,得到含水印的彩色图像 IW。
2.2 水印提取
水印提取是水印嵌入的逆过程,水印提取的具体步骤如下:
(1) 将含水印的RGB 彩色图像WI 进行HIS 颜色变换,提取出饱和度分量,对进行2 层多小波分解,得到相应的系数子块、、、。
(4) 利用Arnold 的周期性对W*进行逆置乱处理,得到提取出的水印图像W**。
3 仿真实验
仿真实验基于 Matlab7.5 环境,选用CARDBAL2 多小波。原始载体图像是大小512×512 的24 位Lena 图像,如图2(a)所示,水印图像是标识为“民航大学”字样64×64 大小的二维灰度图像,如图2(c)。Arnold 置乱次数取24,嵌入强度α1=α2=0.8,α3=α4=0.6。利用峰值信噪比(PSNR)来衡量嵌入水印后的载体图像的视觉质量,PSNR 值越大,对载体图像的破坏就越小;以归一化相似度(NC)来表示提取出的水印图像W*和原始水印图像W 之间的相似性,NC值越大,则两者越相似。PSNR 和NC 的定义如下
其中 公式(8)中 k = 1,2,3分别对应R、G、B 三个不同的颜色分量,M 表示图像的大小,D 是信号的峰值;公式(9)中 w( i )代表原始水印信息,w∗(i)表示提取出的水印信息, NW为水印的大小。
图2(b)为嵌入了水印后的图像,PSNR 值为33.5638。对于彩色图像,当PSNR 值大于30 时人的视觉很难分辨出原图和重构图像之间的差异,可见采用该算法嵌入的水印具有很好的不可见性。图2(d)为未经历任何攻击时提取出的水印,NC 值为0.9991 和原始水印几乎完全一样。含水印的图像经历攻击后的PSNR 值和提取水印的NC 值如表1 所示,图3 为与表1 相对应的提取水印实例。
为突出多小波应用于该算法较单小波更具优势,这里针对不同纹理的图像,选择了几种典型的攻击方式,进行了比较测试。测试图像除了采用Lena图外、还采用Baboon、House和Airplane三幅图像,如图4 所示。攻击方式选择为以下几种:JPEG 压缩、旋转(左30°)、椒盐噪声(强度0.05)、剪切(左1/2)、平移(右100),亮度增强(+80)。图5 是对应这两种算法的抗攻击比较曲线。由图5 可知,由于嵌入强度的选择不具有自适应性,在不同图像中嵌入水印经历攻击后的结果并无统一变化规律,但明显可以看出,采用多小波的方法优于单小波。
图2 水印嵌入及提取实例
表1 攻击后图像PNSR 值和提取水印NC 值
图3 与表1 相对应的提取水印实例(n)
图4 另外三幅测试图像
图5 图DMWT 和DWT 算法抗攻击比较曲线
4 结 论
本文将多小波变换和分块奇异值分解的优点结合起来,提出了一种以灰度级图像作为水印的彩色图像水印算法,选择彩色图像饱和度分量作为水印的嵌入域。仿真实验表明,该算法对噪声、JPEG 压缩、典型几何攻击及常见的Photoshop处理均具有很好的鲁棒性,而且通过比较得知,该算法采用多小波实现比单小波更具优势。算法不足之处在于,该算法是一种非盲的水印算,水印提取需要用到原始图像和水印信息。
[1] Hartung F, Kutter M. Multimedia watermarking technique[C]//Proceedings of the IEEE, 1999: 1079-1107.
[2] 张 军, 王能超, 曹 奎. 一种基于多小波的盲的数字图像水印技术[J].小型微型计算机系统, 2002, 23(2): 148-152.
[3] Serdean C V, Ibrahim M K. Wavelet and multiwavelet watermarking [J]. IET Image Prcess, 2007, (2): 223-230.
[4] Mahmoud I Khalil. Digital image watermarking: scalar wavelet versus multiwavelet [C]//The 2006 International Conference on 5-7 Nov, 2006: 320-323.
[5] Zhou Zude, Tang Bing, Liu Xinhua. A block-SVD based image watermarking method [C]//Proceedings of the 6th World Congress on Intelligent Control and Automation, 2006: 10347-10351.
[6] 张力之, 周激流, 杨柱中, 等.基于HSI 模型的彩色图像数字水印[J].四川大学学报,2008, 45(1): 76-80.
[7] 周 波, 陈 健. 基于奇异值分解的、抗几何失真的数字水印算法[J]. 中国图像图形学报, 2004, 9(4): 506-512.