一种基于纠错编码的小波域数字图像水印技术
扫描二维码
随时随地手机看文章
关键词:纠错编码;小波变换;图像置乱:混沌序列
1 引言
多媒体数据在网上交易和传送日益增多,由于数字信息极易被篡改、复制与散布,因此如何对数字作品的知识产权进行保护已经成为迫切需要解决的问题。近年来迅速发展的数字水印技术为解决该问题提供了新的有效途径。数字水印是以噪声的形式,向数字产品中嵌入版权信息,在不影响视觉和听觉效果的前提下达到版权保护的目的。
小波变换域上的数字水印方法兼有时空域方法和DCT变换域方法的优点,基于DWT域的数字水印技术是目前主要的研究方向。盲水印的检测只需要密钥,不需要原始数据,而且盲水印的检测更方便和安全,是研究的重点。目前,国内外提出了许多有关盲水印的算法,但这些算法大都需要提供原始图像的部分信息,如水印的嵌入位置信息等,因此不是真正意义上的盲水印。笔者提出一种小波域的盲水印算法,该算法利用鲁棒性小波嵌入理论在小波变换的低频区域嵌入,并且水印在检测和提取过程中不需要任何来自原始图像的信息。为了进一步提高盲水印的鲁棒性,引进了简单的纠错编码技术。
2 纠错原理和纠错码的编码方法
2.1 纠错原理
本算法采用(7,4)汉明码。(7,4)汉明码的最小码距do为3,它是可以纠正单个随机错误的高效率分组码。
2.2 纠错编码
2k个n重集合C称为线形分组码,当且仅当它是n维线性空间Vn中的1个k维子空间。
(n,k)线性分组码的编码问题是指在满足一定条件下根据k个信息元求得n-k个校验元。由于(n,k)线性分组码字组成了维线性空间Vn中的一个k维子空间,因此这2k个码字完全可由k个线性无关的矢量组成,设k个码字分别为:cl,c2……,ck,则
码中任一码字均可由基底的线性组合生成,即Ci=miG,其中mi为信息元。
2.3 译码
设发送端发送yHT=(c+e)HT,接收端得到码字xi=(xn-1,xn-2,……x0)。由G可以得到一致校验矩阵H:
产生错误无非是由1变成0或是由0变成1,因此用错误图样e=(en-1,en-2……e0)来表示,当传送的码字的某位发生错误时,相应的e中该位为1,无错就为0。
3 水印图像的生成
设二值水印图像W={Wij, 0≤i<M,0≤j<N},其中wij∈{O,1}。因为编码时用(7,4)汉明码,所以这里设M×N=4L。
(1)对水印图像做置乱处理
采用Anode矩阵置乱法把K和变换次数作为密钥传递,并把置乱后的水印图像按行序变换为一维序列W’(i)={0≤i<MxN},与置乱后水印图像一一对应。
(2)对水印图像进行纠错编码
首先把W’(i)分为L组长为4的码组,然后对每个码组进行纠错编码。假设信息元为a6a5a4a3,由生成矩阵:
可得监督码元a2a1a0。信息元和监督码元组成水印信号经纠错编码后的码元:a6a5a4a3a2a1a0。水印信息变为W”(i)={O≤i<7xL}。
(3)对生成的水印信息进行加密
采用Logistic混沌序列对水印信息进行加密处理,产生长度与水印信号相等的序列,再对序列傲二值化处理,最后与水印信息进行异或运算,提高水印的安全性。
4 水印信息的嵌入
假设载体图像为X(i,j)={0≤i<p,0≤j<q}(一般p>M,q>N)。Cox等人认为图像水印应放在视觉上最重要的分量上。由于视觉上重要的分量是图像信号的主要成分,图像信号的大部分能量都集中在这些分量上,在图像有一定失真的情况下,仍能保留主要成分,即视觉上重要的分量的抗干扰能力较强,因此将水印嵌入在这些分量上,可获得较好的鲁棒性。笔者选择在低频系数中嵌入水印信息,算法如下:
对原始图像进行二级小波变换,根据人眼视觉特性计算出低频各个点的视觉误差门限。根据门限选取与水印尺寸相同的门限的小波系数,并根据门限的大小选取1个阈值把系数分成二类,大于门限的为I类,小于门限的为Ⅱ类。
对于I类将水印信息嵌入在小波系数整数部分的第四位,Ⅱ类则嵌入在整数部分的第三位。具体算法如下:如果嵌入位置数据与水印值相同,则不改变小波系数;如果系数值为1且水印值为0,则改变系数值并且把低位整数部分变为l,如果系数值为O且水印值为1,则改变系数值并把低位整数部分变为1。
5 水印信息的提取
提取过程是嵌入过程的反过程。首先对图像进行相同级数的小波变换,再通过计算视觉门限得到水印信息的嵌入位置,根据嵌入时小波系数的关系提取水印信息。根据提取的水印信息对提取的信息元进行纠错。由G得校验矩阵H:
最后生成与加密处理相同的混沌序列解密,再对图像进行反置乱处理以获得检测到的水印图像。
6 实验结果与分析
笔者利用上述算法进行了计算机仿真实验。原始载体图像为256×256的Lena灰度图像,如图1(a)所示。水印图像为32x32的“武汉理工”字样的二值图像,如图l(b)所示。进行二级小波变换时,混沌加密序列初始值:x01=0.613,μ1=3.784。
本算法在Matlab 6.5环境下实现。图1(c)是嵌入水印后的图像。图l(d)是经置乱加密后的水印图像。图l(f)是对含有水印的图像加入强度为O.02的椒盐噪声后的图像,图1(f)是提取的水印图像。图1(g)是对含有水印图像进行质量因数为60%的JPEG压缩后的图像,图1(b)是提取的水印图像。图1(i)是对含有水印图像竖直方向剪切84列的后图像,图1(j)是提取的水印图像。表l列出在各种攻击方式下检测的图像峰值信噪比PSNR和水印的归一化相似度NC。由实验结果可知,该算法对常见的图像处理攻击具有较好的鲁棒性和可感知性。
7 结束语
本文提出一种基于纠错编码和小波变换的数字水印技术,并且实现了盲检。对水印进行置乱和混沌加密处理,使水印具有很好的安全性。采用纠错编码技术使水印针对一般的攻击具有更好的抵抗性能。实验表明本文算法具有较高的安全性和较大的实用价值。