您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 造纸印刷 > 数字图像水印学习笔记
数字水印学习笔记2010.7.30~第一章基础理论应用范围与相关技术:1密码技术来保证数字内容不被非法阅读。2采用数字签名技术来保证数字内容不被冒充和篡改。3数字水印技术用来保护数字内容的产权数字水印技术广发应用于数字内容篡改鉴定,数据的分级访问,数据的跟踪和检测、商业和视频广播,Internet数字媒体的付费服务,电子商务认证鉴定等等。水印嵌入模型:目前的水印系统分为嵌入系统和恢复系统。水印信号的一般嵌入模型如下:数字水印从本质上来说是一种通信方式(从水印嵌入器向水印接收器传输信息,将水印系统看做信道)。水印传输的信道模型:Coasta,Moulin,Cohen与Lapidoth,Somekh—Baruck模型,并行高斯模型。密钥载体数据水印信息水印嵌入算法水印载体数据水印相关检测:由于水印检测出来的和原来的有差别,所以为了有一个很好的品质度量。1线性相关:在通信过程中一般计算Zic与特定阈值进行比较,来检测接收到的信号中是否存在已发送信号,这个过程称之为匹配滤波。2归一化相关:线性相关检测的弊端主要在于,检测值很大程度依赖于从作品中提取的向量的幅度,这个表明对于图像的亮度或者音乐的音量的改变不具备鲁棒性,线性相关检测的虚警率也是很难拿预测的,对参考标志先进性归一化,使之成为单位向量,就可以解决这个问题。3相关系数:先将两个向量的均值都减到0,然后计算归一化相关,保证了水印对作品中的直流变化具有鲁棒性。??水印评价的指标:1嵌入水印的有效性2透明性3盲检测4带辅助信息的检测5虚警率6鲁棒性7安全性8水印密钥9多水印10水印容量11计算量(也就是水印算法效率)水印鲁棒性的实现方法:1冗余嵌入:当载体发生失真时并非所有的特征出现同样的失真,所以将水印冗余冗余嵌入式对抗各种失真的通用策略,缺陷是隐藏容量成倍减少,并且相对同等容量下嵌入引入的噪声增大。2扩频编码:频域的冗余嵌入。3在鲁棒性系数中嵌入:一旦确定了水印嵌入的变换域,可以预计水印承受预期的失真的情况,对于其他类型的失真,则需要试验来确定。4在感知上最重要的系数中嵌入:让感知系数的变化不超过人的可感知门限就行了。水印攻击:stirmark攻击:以轻微程度对图像进行拉伸,剪切,旋转以及几何变形,对图像进行重新采样攻击.拷贝攻击:是未经授权的潜入的一种形式,通过非线性降噪滤波器去除水印,得到原始作品的近似C1,估计附加水印的模板,最后对作品C2附加该水印模板,得到了潜入水印的作品。敏感性攻击:假设攻击者拥有检测器对水印进行未经授权的攻击的去除技术,使用检测器分析水印作品到检测区域边沿的最短路径方向,言辞方向变化后将水印从作品中去除。敏感性攻击的核心是估计作品检测区域发现的近似方向,一般采用迭代技术完成。梯度攻击:要求攻击者用友检测器,能够得到确切的检测值,对给定的水印作品,以任意策略确定局部最大下降梯度,从而沿该梯度方向对作品进行变化,刚好移出检测区域的边界,实现水印的去除。水印的攻击与防护(1)几何攻击:这里所说的攻击包括时间和空间上的延迟,缩放和剪切,还包括仿射变换,载体遭到几何攻击之后,失去了水印的同步,检测水印最直接的方法就是穷举搜索。计算量与虚警率是限制穷举搜索的实际因素。(2)同步攻击:对抗同步攻击比较可取的办法就是在载体数据中嵌入一个参照物,然后提取水印时,先对参照物进行提取,得到参照物数据所有精力的攻击的明确判断,然后对载体进行翻转处理(不过貌似巨麻烦的样子)。目前为止,最复杂的同步攻击是基于Jittering的,也常常用来衡量一个水印技术是否实用。Jittering攻击将数据切割、除去、复制和组合,那么,攻击后的数字作品将只有很细微的改变,甚至没有改变。已有实验证明,这种能非常有效的破坏大多数水印算法中正常的水印提取过程.(3)混淆攻击:混淆攻击是试图生成一个伪源数据、伪水印化数据来混淆含有真正水印的数字作品的版权,由于最早由IBM的Craver等人提出,也称IBM攻击。一个例子是倒置攻击,虽然载体数据是真实的,水印信号也存在,但是由于嵌入了一个或多个伪造的水印,混淆了第一个含有主权信息的水印,失去了唯一性。这种攻击实际上使数字水印的版权保护功能受到了挑战,如何有效地解决这个问题正引起研究人员的极大兴趣。在混淆攻击中,同时存在伪水印、伪源数据、伪水印化数据和真实水印、真实源数据、真实水印化数据。要解决数字作品正确的所有权,必须在一个数据载体的几个水印中判断出具有真正主权的水印。一种对策是采用时间戳(timestamps)技术。时间戳由可信的第三方提供,可以正确判断谁第一个为载体数据加了水印。这样就可以判断水印的真实性。另一种对策是采用不可逆水印(noninvertiblewatermarking)技术。构造不可逆的水印技术的方法是使水印编码互相依赖。如使用单向哈希函数(one-wayhashfunction)。水印载体质量评价:平均误差均值(MSE)MSE=𝟏𝐌𝐍∑(𝐈𝐦,𝐧−𝐈𝐦,𝐧,)𝐦,𝐧^𝟐信噪比(SNR)SNR=∑𝐈𝐦,𝐧𝟐𝐦,𝐧∑(𝐈𝐦,𝐧−𝐈𝐦,𝐧,)𝟐𝐦,𝐧⁄峰值信噪比(PSNR)MN*max(SNR)标准互相关(NC)NC=∑𝐈𝐦,𝐧𝐈𝐦,𝐧,𝐦,𝐧∑𝐈𝐦,𝐧𝟐𝐦,𝐧⁄其实单纯用峰值信噪比来描述图像的效果不是很合适,因为人眼是一个比较复杂的系统,根据光照等情况的变化,人眼的分辨率会不同,而峰值信噪比只能反映处理之后的统计变化,无法准确反映人眼的复杂视觉特性。典型的空间域水印算法:LSB:水印容量大,但是很脆弱。Patchwork:增加一个点的亮度同时降低另外一点的亮度,不易察觉,鲁棒性很强。数据量低.变换域隐藏:DFT:变换后包含虚部和实部,一般讲水印嵌入在DFT系数的幅度分量中。能够抵抗平移和缩放攻击。水印攻击数字水印攻击分为四类:1未经授权的检测:未经授权检测载体中是否存在水印信息或者试图解码水印信息。在没有检测器和水印密钥的情况下,解码水印信息也是可能的。根据韩水印作品在特征子空间会暴漏水印信息的思想,采用独立成分分析方法分解水印图像,用共谋的方法估计小块内的水印,最后可能得到整个估计的水印。2未经授权的嵌入:将他人的含水印的最品种嵌入自己的信息或者将他人合法的水印作品中提取水印,然后嵌入到另外的图像中,也成为拷贝攻击。这种攻击可以通过非对称密钥加密或者密码签名这两种方法进行解决。3未经授权的去除:顾名思义提出作品中的水印信息或者使得水印信息无法被检测出来。4系统攻击:这个貌似现在受重视很少,包括水印协议攻击(歧义攻击和拷贝攻击)一般来说盲检测水印算法的鲁棒性较差。抗几何攻击的方法:1.借助原始图像进行校准从而提取水印2.利用几何不变量的抗几何攻击。Fourier-mellin3.基于内容特征的水印嵌入4.嵌入模板的抗几何攻击第二章图像水印DCT水印鲁棒性比较差的水印就先不介绍了,先从DCT水印开始吧。DCT水印的效果比较好,人眼几乎无法感觉水印内容的潜入,不仅支持二值图像水印还支持灰度水印和多只隐藏。二值图像水印二值图像水印算法:首先确定水印的隐藏位置,该位置在图像黑色区域的边界上,同样也可以隐藏在白色区域的边界上,在使用时只要先把源图像进行反色处理就。由于图像的不同,这两种加载方法的效果也会不同。在满足以下条件的位置不能隐藏数据:1该像素既是其所在区域的左边界,同时又是右边界。2还像素既是其所在区域的上边界又是下边界3该像素只是左边界,右边界,上边界,下边界的4中边界的一种情况。4该像素的周边8个像素中雨该像素同色的所有像素都是既是左边界或右边界,同时又是上边界或者下边界。设二值图像为I,其图像像素值矩阵为A(M,N);数字水印为W,W为一个长度为L的二进制比特流;W={w1,w2,w3……}(貌似是分段处理过的)。定义A(i;j,s;t)为矩阵的第i行到j行,从第s列到底t列的子矩阵数据隐藏算法如下:(1)计算图像的边界。Left=A(0:(M-1),0:(N-2))-A(0:(M-1),1:(N-1))Right=A(0:(M-1),:(N-1))-A(0:(M-1),0:(N-2))Top=A(0:(M-2),0:(N-1))-A(1:(M-1),0:(N-1))Bottom=A(1:(M-1),0:(N-1))-A(0:(M-2),0:(N-1))并将Left,Right,Top,Bottom中值为-1的元素置为0,得到新的矩阵NewLeft……;(2)筛选隐藏点。计算:B=NewLeft+NewRight+NewTop+NewBottom。BLR=NewLeft+NewRight;BTB=NewTop+NewBottom;则矩阵BLR或BTB中的元素值可能为0,1,2。值为2的元素代表的像素同时为左右边界或上下边界。矩阵B的元素值可能为0:4。值为3,4的元素表示的像素肯定同时为左右边界活上下边界。值为2的元素可能同时为左右边界活上下边界。可以根绝BLR或者BTB的元素值加以区分。至此可以在筛选的这些点里面隐藏数据了。(3)数据隐藏数据隐藏依赖于上面计算出来的B“,选定一个遍历矩阵诸元素的方法,然后按照该顺序将处理后的水印数据隐藏到像素矩阵中去。如果B’’(i,j)=0那么像素的值不变,如果B’’(I,j)=1,那么将该像素替换为w(l),l=M*i+j。该算法的安全性由于算法的局限性,该水印几乎没什么鲁棒性可言。模数运算数字水印:基于分块DCT的模运算的数字水印算法公钥水印。。。渐进流的数字水印:图像的渐进传输实际上以一副灰度bmp来说,每个像素位深为8,每次显示一层加到原来的上面。厄其实和LSB差不多。Gabor变换水印:人类视觉具有多通道和多分辨率的特性,Gabor滤波器是窄带带通滤波器,具有明显的方向选择和频率选择特性。能在空域和频域同时达到最优的联合分辨率。视频水印:视频水印的性能要求:1由于视频的信息量一般都很大,所以不能参考源视频进行检测,这样比较麻烦,一般都是直接进行盲检测2算法简单易行,高效。3可以抵抗帧插入重组等攻击。4充分考虑视频编码。防止在编码过程中产生的水印丢失。首先一般的视频都是经过编码处理后的,在加入水印之前都需要解编码,这里先介绍两个比较好的解码工具:AVIEdit:可以很方便的把AVI解码为图片序列,也可以反向将图片序列做成AVI格式视频。VirtualDub:也是一个可以将AVI转到MPEG2,也可以直接将Mpeg2直接转化为图片序列以供后期处理。根据嵌入帧类型的不同,又可以将给予视频编码的水印分为三种情况:I帧嵌入,P帧嵌入,B帧嵌入。I帧嵌入是无运动预测补偿的嵌入,P帧和B帧嵌入则是有运动补偿的嵌入,MPEG2对I帧的处理类似于JPEG压缩过程。所以在I帧中嵌入水印大多是通过修改DCT系数来实现,相对于P帧和B帧,I帧的数量巨大,单帧可嵌入的水印量要远远大于P和B帧的。但是I帧的个数少,所以嵌入的水印总量其实不大,B帧和P帧中包括预测误差数据和运动信息数据,因此在P帧和B帧中嵌入谁又能可以利用这两部分数据,一个是在预测误差中嵌入,另一个是在运动信息中嵌入。但是MPEG对P帧和B帧压缩时的保护远远不如I帧,随着压缩比例的增大,那么预测误差数据的丢失也增大,所以这种嵌入的嵌入量也不大。由于运动矢量反映的是当前编码帧中北预测宏块与参考帧中最佳匹配宏块的运动位移信息,与宏块的具体内容无关,因此这类嵌入方法能很好的抵抗对视频内容的攻击。就运动速度与嵌入位置在P帧中各宏块的位置处置一起对应的运动矢量得到的是P真的运动矢量图,而置以气对应的运动速度得打偶的图就是P帧的运动速度图,需要说明的是;运动速度图中的运动速度是矢量,在比较大小关系时取其幅值。在运动速度图中,以“+”字型嵌入方案代替常用的自行嵌入方案,这样如果运动速度图的大小为10*7,则嵌入的位置如下图标注:P1
本文标题:数字图像水印学习笔记
链接地址:https://www.777doc.com/doc-3208940 .html