- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于改进Zigzag置乱DWT图像水印算法
基于改进Zigzag置乱DWT图像水印算法 摘 要:信息的隐藏和伪装技术是图像安全方面的重要研究方向。常用的置乱算法较为复杂,为了兼顾算法速度和解密的复杂性,提出使用m序列改进Zigzag变换来满足上述两个要求。由于在各种图像处理过程中,有损压缩对数字水印的生存打击较大,故使用DWT分解来满足抵抗有损压缩的攻击;同时,图像的矩阵的奇异值有很好的鲁棒性,所以为了尽可能的提高图像水印抵抗攻击的稳定性,可以把图像的SVD分解应用于DWT变换中。实验结果证明,水印是不可见的,可抵御多种攻击,具有很好的鲁棒性;并且水印提取不需要原图像参与,是盲水印方案。
关键词:数字水印 DWT 奇异值分解 Zigzag置乱
中图分类号:TP309.2 文献标识码:A 文章编号:1003-9082(2012)12-0006-04
互联网的飞速发展,使得大量的数字作品在网上传播,再加上数字作品容易复制修改,造成大量的盗版问题,打击了原作者的创作积极性。近年来数字水印的发展,一定程度上遏制了盗版问题,它通过在被保护的数字对象(如视频、音频、图像)中嵌入某些标志性的秘密信息——水印(watermark)来证明版权归属或者跟踪侵权行为。它通过一定的算法将水印直接嵌到多媒体内容中,同时不影响原内容的使用和价值,并且水印不能被人的感知系统发觉,数字水印必须很难被清除。
数字水印可以是文本,图像,一串数字,当这些水印要求保密时,可以通过将水印置乱来隐藏信息。常用的置乱方法有:Tangram算法、幻方变换、Hilbert曲线变换等等,以上算法较为复杂,计算时间较长。Zigzag置乱虽然简单,但是它本身存在一个致命的缺陷,被置乱的矩阵首端和末端总有几个元素无法移动位置,故本文提出了用m序列改进Zigzag来实现水印图像的置乱。奇异值分解(singular value decomposition,SVD)是一种特殊的矩阵变换。SVD矩阵具有许多优良特性,例如奇异值对矩阵扰动不敏感、奇异值旋转不变性、奇异值比例不变性等等。把SVD应用于图像处理中,当图像受到轻微影响时,奇异值不会发生明显变化;或者当相对较小的奇异值发生扰动时,图像不会出现较大变化。使用小波域水印方法的主要优点在于三个方面:1、在“JPEG2000”有损压缩下水印不会被去除;2、将图像编码研究中关于视觉特性的研究成果用于水印技术;3、有可能提供在压缩域中直接嵌入水印的方法。基于以上考虑,提出了Zigzag变换和SVD结合应用于DWT中。
一、Zigzag置乱
1.Zigzag描述
从矩阵左上角的元素开始(如图1),按照“之”字形的顺序提取元素。提取的元素放入一个一维数组中,再将此数组转换成矩阵。这样原矩阵就经过了Zigzag变换置乱。
图1 Zigzag变换
2.Zigzag的改进
从图1可以看出,无论经过多少次变换,置乱前和置乱后总有那么几个位置的元素无法移动。例如:使用r方式将一维数组换成矩阵的时候,可以看到第1个和第16个元素位置没移动过。而图像的置乱追求所有元素的位置都移动,越乱越好,因此单纯使用Zigzag无法满足置乱要求。
m序列是由带线性反馈的移位寄存器产生的周期最长的一种序列。由反馈移位寄存器的“和”、“异”、“或”门组成的环形计数器即可产生m序列伪随机码。伪随机序列的长度取决于移位寄存器的多少。
m序列的特征方程表示为:
知道此方程后也就知道了反馈多项式,从而求出反馈寄存器的m序列。当n=3时,特征方程为f(x)=1+x+x3,初始状态s为(1,0,0),则接下来的状态为(1,1,0)、(1,1,1)、…(1,0,1)共k=2n-1=7个二进制数,化为十进制为4、6、7、3、5、2、1。这7个数是唯一的且不重复,可以用来作为地址对经Zigzag变换后的一维数组进行置乱。首先将待置乱的一维数组分为m组,每组长度等于寄存器产生的一维数组长度k,然后将每组元素都按照移位寄存器的地址进行排序,得到的新一维数组就是所要的结果。如按上述寄存器产生的7个十进制数值排序,则新的一维数组中每组第一个元素是待置乱数组中每组元素的第4个元素,第二个元素是待置乱数组中每组元素的第6个等等。如果待置乱数组的长度不是移位寄存器十进制数个数的整数倍,则意味着待置乱数组中最后一组元素长度小于移位寄存器产生的数组长度,假设最后一组长度是a,去除寄存器数组中大于a的值,接下来再按上述方法排序。排序公式如下:
Ai(j)=Wi(mseq(j)) j=1,2,3,…,2n-1 i=1,2,3,…,m
其中A是经置乱后的一维数组,W是水印经Zigzag置乱后的信息,mseq是寄存器数组,j是寄存器数组元素下标,i是分组下标。再把上述一维数组
文档评论(0)