量化水印(源代码,绝对可以实现).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
量化水印 背景知识 在数字水印中,我们知道,设计的水印算法有时要对保真度、鲁棒性等主要性能进行折中,而从保真度和鲁棒性这两个基本的特征出发,要求水印嵌入后满足以下两个条件: 从保真度出发,要求水印嵌入后,有水印的载体数据与原始载体数据近似相等。 从鲁棒性出发,要求嵌入水印后的载体数据具有非连续性,以确保可以对抗干扰。 最初将量化运用于水印,就是为解决这方面的问题而出发的。从数学的角度来看,量化可以表示如下: Y=fstep(x)=step*[x/step]=step*round(x/step) 式中,x是待量化的数据,step是量化步长,Y是量化结果;[]和round均表示进行四舍五入取整;fstep( )是量化函数。 显然,量化函数fstep( )是一个多对一函数,是不可逆的,因此量化一般运用于不可逆水印,而且,由于量化结果均为整数,因此输出为离散值,并且误差满足|Y-x|=step/2,即在量化步长step不是特别大的情况下,Y与x是近似相等的,所以量化满足上述两个条件,可以运用于数字水印中。 量化水印的算法 设计量化水印系统的关键在于选择实时可行的量化器集合,将不同的待嵌入的水印信息与不同的量化器相对应起来,然后用相应的量化器将载体数据进行量化,就可以得到含有水印的载体数据。由于大多数情况下,水印信息都是二进制的,因此下面以研究如何嵌入二进制水印信息为例来进行说明。 二进制信息中,有0和1两种不同的数据,因此,需要两个不同的量化器,分别用A和B来表示。假设当发送水印信息为0时,用量化器A来对载体数据进行量化;当发送水印信息为1时,用量化器B来对载体数据进行量化,这样就可以得到两组不同的量化数据。在量化器中,量化器选择与原始载体数据最接近的数据来代替原始载体数据,从而保证不可感知性,即保真度;而且,A、B两个量化器之间的数据没有重叠,从而保证不同水印数据的不连续性,即使得水印系统具有一定的鲁棒性。提取水印时,根据待检数据与不同量化数据之间的距离,就可以恢复出嵌入的信息。 一种常用的二进制量化水印算法可以用公式表示如下: Q(x,s)+s*3/4 , w=1 Y= Q(x,s)+s*1/4 , w=0 式中,s代表量化步长,w表示水印信息,x表示原始载体数据,Q(x,s)是量化函数,Y是量化后的数据。Q(x,s)可如下表示 Q(x,s)=floor(x/s)*s floor()表示向下取整函数。 水印提取过程,可以用如下公式来表示: 1 , 如果 Y - Q(x,s) s/2 W= 1 , 如果 Y - Q(x,s) s/2 可见,只要干扰对Y的攻击在(-s/4,s/4)的范围内,嵌入的水印信息就可以正确的提取。上式中,s越大,水印系统鲁棒性越好,但是保真度会越差,这也从一个方面说明,鲁棒性和保真度这两个特性是互相矛盾的;当s=2时,如果是在时域进行量化,相当于LSB算法。 量化水印算法根据水印嵌入位置不同,有时域量化和频域量化两种。时域量化直接通过修改载体数据时空域值来嵌入水印,这种算法容易且直观,但是鲁棒性和保真度都很差;频域量化通过修改载体数据频域系数值来嵌入水印,这种算法是把水印信号能量分散到所有或部分载体频带上,因此鲁棒性和保真度都较时域量化好。 当然,量化水印算法有很多种,上述算法只是最基本的一种,其他量化水印算法还有比如抖动调制算法(DM)、扩展变换抖动调制算法(STDM)、带失真补偿的抖动调制算法(DC-DM)等。 量化水印具有如下优点: 水印检测时多为盲检测,不需要原始载体数据。 载体不影响水印的检测性能,在无干扰的情况下,可以完全恢复出嵌入的信息。 Matlab仿真 下面以最基本的量化水印算法来进行仿真设计,算法是基于时空域的,其M代码如下: clear; clc; %=====================读入并显示载体图形===================== p_lena=rgb2gray(imread(lena.jpg)); figure; subplot(2,2,1); imshow(p_lena); [m1,n1]=size(p_lena); %=====================读入并显示二值水印图片===================== w_pict=imread(jnu.bmp); subplot(2,2,2); imshow(w_pict);

文档评论(0)

xciqshic + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档