数字水印技术算法研究_第1页
数字水印技术算法研究_第2页
数字水印技术算法研究_第3页
数字水印技术算法研究_第4页
数字水印技术算法研究_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字水印技术算法研究刘冉

课题背景

数字水印技术是指将创作者的创作信息和个人标志通过数字水印系统以人所不可感知的水印形式嵌入在多媒体中,人们无法从表面上感知水印,只有专用的检测器或计算机软件才可以检测出隐藏的数字水印,从而用以证明创作者对其作品的所有权,并作为鉴定、起诉非法侵权的证据,同时通过对水印的检测和分析保证数字信息的完整可靠性,从而成为知识产权保护和数字多媒体防伪的有效手段。通常,水印会永久地驻留在图像中,在必要的时候通过专门的检测算法检测水印,以确认所有权和跟踪侵权行为。数字水印系统的基本原理

通用的数字水印算法包含两个基本方面:水印的嵌入和水印的提取或检测。

设I为数字图像,W为水印信号,K为密码,则处理后的水印W'由函数F定义如下:W′=F(I,W,K)

(2-1)

若水印所有者不希望水印被其他人知道,则函数F应该是不可逆的,如经典的DES加密算法等。这是将水印技术与加密算法结合起来的一种通用方法,目的是提高水印的可靠性、安全性和通用性。水印的嵌入过程如图2-1所示,设有编码函数E,原始图像I和水印W'(W'由2-1定义),那么水印图像表示见公式(2-2):I′=E(I,W′)=E(I,F(I,W,K))

(2-2)设I为数字图像,W为水印信号,K为密码,则处理后的水印W‘由函数F定义如下:

W′=F(I,W,K)

(2-1)

数字水印系统的基本原理

在完整性确认和篡改提示应用中,必须能够精确的提取出嵌入的水印信息,从而通过水印的完整性来确认多媒体数据的完整性。所以水印提取框图如图2-2。数字水印系统的基本原理

水印检测是水印算法中最重要步骤。一般来说,水印检测首先是进行水印提取,然后是水印判决。若将这一过程定义为解码函数D,那么输出的可以是一个判定水印存在与否的0-1决策,也可以是包含各种信息的数据流,如文本、图像等(图2-3)。如果已知原始图像I和有版权疑问的图像I',则水印提取及检测分别见公式(2-3)和(2-4)。W*=D(I′,I)(2-3)数字水印系统的基本原理

其中W*为提取出的水印,K为密码,函数C做相关检测,δ为决策阈值。可取水印和原始水印的相关性[14][15]来测试,计算由公式(2-5)可得:数字水印系统的基本原理数字水印系统的基本原理

其中w,w′分别表示为原始水印信息和提取出的水印信息。Corr取值在[-1,1]之间,如果这一相关值依赖一个给定的阈值,当Corr超过这个阈值,则可以判定图像中含有此水印。这实际上是一个假设检验或水印相似性检验的问题。检测器的输出结果如果充分可信,则可在法庭上作为版权保护的潜在证据。那么这要求水印的检测过程和算法应该完全公开。对于假设检验的理论框架,可能的错误有如下两类:第一类错误是检测到水印但水印实际上不存在,即虚警问题。该类错误用误识率(probabilityoffalsealarm)P衡量;fa第二类错误是没有检测到水印而水印存在,即漏报问题。用拒绝错误Prej表示。总错误率为Peer=Pfa+Prej,当Prej越小检测性能越好。但检测的可靠性只与误识率Pfa有关。注意到两类错误实际上存在竞争行为。水印的特性及应用

数字水印(DigitalWatermarking)是往多媒体数据(如图像、声音、视频信号等)中添加某些数字信息(水印)而不影响原数据的视听效果,并且这些数字信息可以部分或全部从混合数据中恢复出来,以达到版权保护等作用。这里水印的嵌入载体可以是图像、声音、视频信号,还可以是文本格式,本文讨论的对象是数字图像。水印信息也可以是各种媒体,本文选用了图像,不过通过适当的调整就可以适应其他类型水印信息的嵌入。水印的特性1.不可感知性2.安全性3.鲁棒性4.可证明性5.不可检测性6.无歧义性7.计算有效性水印的应用1.数字作品的版权保护2.商务交易中的票据防伪3.声像数据的隐藏标识和篡改提示4.隐藏通信及其对抗数字水印面临的攻击1.简单攻击2.IBM3.StirMark4.马赛克攻击5.串谋攻击水印系统的评估标准

主观评价:

主观评价是从人类视觉的角度来考虑的。

要进行公平合理的评估和比较,在评估过程中就要考虑水印的可感知性。当使用主观测试包括两个步骤:

第一步:将失真的数据集按照从最好到最坏的次序排列;

第二步:挑选的测试人员对每个数据集进行评定,描述所处理对象的可感知性。主观评价

这种评定可基于ITU-RRec.500质量等级级别,表1-1列出了等级级别和相应的可感知性以及质量。

主观测试对最终的质量评价和测试是有实用价值的,但在研究和开发情况下并不是很有用。客观评价

到目前为止,仍然没有一个良好的客观衡量手段来对数字水印算法做出合理的评估。一种数字水印算法的隐形性如何,受到攻击的稳健性、安全性如何,这种算法是否实用,所有这些问题都需要客观的评价手段。 1.方差MSE(MeanSquareError) 2.信噪比SNR(Signal-to-NoiseRatio) 3.峰值信噪比PSNR(PeakSignal-to-NoiseRatio) 4.掩膜峰值信噪比MPSNR(MaskedPeakSignal-to-NoiseRatio) 5.相似性系数NC(NormalizedCorrelation)基于DCT域的数字水印算法

近年来DCT已广泛应用于图像压缩编码中,是国际静止图像压缩标准JPEG的基础,国际序列图像压缩标准MPEG-1和MPEG-2也是采用DCT变换方法,所以在数字图像的DCT域中嵌入水印信息,是最常见的嵌入方法之一。本文提出一种基于DCT的鲁棒数字水印算法,该算法利用了HVS来选择最佳的水印嵌入区域和嵌入水印信号的最大强度。实验结果表明,本算法具有很强的鲁棒性,有利于版权保护。图像置乱 Torus自同构映射给定一幅图像,Torus自同构映射[42]可以将其彻底的打乱,从而产生一幅完全混乱的图像。实际上,Torus自同构映射对这些像素进行了如下公式所示的变换:

如此反复重复下去,此过程可归纳为AN(k):Torus自同构映射

在上式中,(xn,yn)是二维空间上的一点,是对(x0,y0)作用自同构映射n次后的结果。Torus自同构映射的参数是k、n、N、K。其中K为自同构映射的最小整周期。文献给出了广义Gray变换理论周期的计算。计算表明,当k=1,N=64时,K=64;当k=12,N=32时K=64,k的值由使用者任意指定,n和N则分别代表了Torus自同构映射的重复次数和给定图像的像素数(0<n<K)。Torus自同构映射对给定图像可重复进行,以改变图像中像素的相对位置。需要注意的是尽管像素的相对位置改变了,Torus自同构映射并未改变每一个像素的颜色值。Torus自同构映射可以看作二维变换,可由一个2×2的矩阵来描述。有时人们也直接称该矩阵为Torus自同构映射。人类视觉特性

人类视觉频域特性:

人眼对图像信息的处理并不是逐点来进行的,而是抽取空间、频率或色彩的特征进行神经编码.人的视觉感知特点与统计意义上的信息分布并不一致,即统计上需要更多信息量才能表述的特征对视觉感知可能并不重要,从感知的角度来讲无须详细表述这部分特征.文献[44]中提出了一种人眼视觉系统模型(HVS),并给出了视觉系统的频率响应函数

其中ω为视角正对的径向频率,单位为周/度(cycle/degree),a、b、c为决定HVS曲线形状的常数。HVS曲线的形状表示式见公式(3-8)

其中当ωmax=3周/度时,HVS曲线取得峰值。

人类视觉频域特性

图像信号的DCT变换只是DFT变换的一部分,为了可以直接将视觉响应函数与DCT变换相结合,文献[44]中对仅适用于DFT变换的视觉响应函数提出了矫正函数见公式(3-9):

人类视觉频域特性

其中α=11.636度?1,这样视觉系统的响应函数H′(ω))见公式(3-10):

采用文献[45]中给出的公式(3-11): ω(周度)=ωd(周像素)?ωs(像素度) (3-11)

人类视觉频域特性

可将二维DCT系数(u,v)对应的径向频率ω的值由公式(3-12)求出为:

2N由上面公式可知,ωs是依赖于观测距离的采样函数,N是DCT变换块的大小。这里,ωs可以取不同的值。选择不同的ωs值,对应选择不同的DCT系数。可以根据实际要求和图像的特征来选择ωs。在本章里,在本文的实验中,参考文献[45]中所述,取ωs=48,从而求得每个(u,v)对应的径向系数。[46]

人类视觉频域特性

图3-3为人类视觉频率响应函数曲线,其中横轴表示径向频率ω的值,纵轴表示视觉系统的相应函数H(ω)的值。

人类视觉频域特性

人类视觉频域特性

由此曲线可以看出,人眼对8<ω<12之间的区域最敏感,对此区域对应的图像的像素即使作很小的改动,也会引起人眼的注意;然而对0<ω<8和12<ω区域响应较低,其中12<ω<22之间为中频部分,22<ω区域为高频部分。另一方面,根据JPEG有损压缩原理:一般将DCT变换的高频系数变为零,然后再将剩下的DCT系数进行编码,来完成图像的压缩。所以如果在原始图像的高频DCT系数中嵌入水印信息,很可能在进行JPEG有损压缩时擦除水印信息。早期的DCT变换域的水印算法是把水印嵌入到原始图像的低频中,这里采用一种改进方法:把水印嵌入到中频(12<ω<22)分量上以调节水印的稳健性与不可见性之间的矛盾。

在实际计算中,我们先将原始图像分成8×8子块,然后将每个8×8的子图像块分别进行DCT变换,并将DCT系数进行Zig-Zag排列,然后根据公式(3-11)、(3-12)将DCT系数变换成相应的ω值来选取每个子块的嵌入区域。在图3-4中,图a)是一个8×8的DCT块经过Zig-Zag扫描后的排列图,图b)是根据公式将DCT系数变换为相应的径向频率ω的值的排列图。

人类视觉频域特性

由图3-4中的图b)矫正后的视觉响应函数,本章算法嵌入水印的区域选取如图3-5。为了增强算法的稳健性,本算法利用了多重嵌入技术。即pij,i=0,L,5用来嵌入一比特的水印信息,同理p2,p3,p4,i=0,L,5分iii别用来嵌入一比特的水印信息,具体见3.4节。所以每个8×8的子块可以用来隐藏4比特的水印信息。

人类视觉频域特性人类视觉掩蔽特征

在图像数字水印技术中,可以利用人类视觉系统(HVS)的掩蔽现象导出的JND(JustNoticeableDifference)值来确定在图像的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量。利用视觉模型的亮度掩蔽特征和对比度掩蔽特征来确定与图像相关的调制掩模,然后再利用其来插入水印,这一方法同时具有良好的透明性和稳健性。

在JPEG标准中,Ahumada等在文献[47]中提出了基于亮度的DCT域最小量化步长矩Qmin(i,j)阵,该矩阵与具体图像无关。Watson等人在文献[48]中通过亮度遮蔽和对比度遮蔽等视觉特性对其进行了优化: (1)由图3-6表示出:人类视觉掩蔽特征 (2)引入亮度遮蔽来修正Qmin(i,j)的公式如公式(3-13):

其中k是图像第k个分块,(i,j)为DCT系数在分块中的坐标,分块的左上角为(0,0),Qk′(i,j)为修正后的量化矩阵。Xk(0,0)为第k个分块的直流(DC)系数,X(0,0)为所有分块DC系数的平均值,参数a取0.649。人类视觉掩蔽特征 (3)在亮度掩蔽公式的基础上引入对比度遮蔽特征,公式见(3-14):

Qk(i,j)为最后得到的第k个分块的量化矩阵,R(i,j)是一个常数矩阵,R(0,0)等于0,其它元素都为0.75。人类视觉掩蔽特征水印算法实现过程

在充分考虑了人眼视觉模型(HVS),并将其与宿主图像的DCT变换相结合来选择嵌入水印信息的DCT系数,我们提出了一种基于DCT域的鲁棒数字水印算法。基本思想:先将原始图像分成8×8的子块。并分别对每一子块进行离散余弦变换,然后根据人类视觉模型频率响应函数来选取每一水印待嵌入的DCT变换系数的位置,再利用最小可察觉误差(JND)来确定在图像的每一子块所能嵌入的数字水印信号的最大强度,把已经过预处理的水印信息自适应地嵌入到原始图像,然后将嵌入水印信息的DCT系数的子块进行逆DCT变换,最后合成为嵌入水印图像。提取算法与嵌入算法相似。嵌入算法

设原始图像和待嵌入水印图像分别为I(N1×N2),W(M1×M2)。为了方便计算,取M1=N14,M2=N24。第一步:用Torus图像置乱技术将二值水印图像置乱(可逆),然后转换成一维二值序列,记为w(i),i=1,2,L,M1×M2。第二步:将原始图像I分为互不覆盖的8×8的子块fm(i,j),,nm=N18,n=N28,i,j=1,2,L8。对每个子块分别进行DCT变换,见公式(3-15):嵌入算法第三步:根据人类视觉频域特性结论,适当选取第二步完成后得到的子块系数矩阵中的(64×M1×M2)N1×N2各中频系数作为嵌入水印的位置(为了增强算法的稳健性,本算法利用了多重嵌入技术,即选择嵌入的区域多于嵌入的水印比特数,在本算法中,每8×8子块嵌入的水印4比特,选取的嵌入区域24个)。第四步:根据人类视觉掩蔽特征公式求得每块图像里被选定区域的水印嵌入强度Qm(i,j)。第五步:相应的从二值序列中按顺序取出4比特水印,运用公式(3-16)嵌入到选定的区域上。其中Qm(i,j)为系数Fm(i,j)对应的步长或嵌入强度。第六步:对加入水印后DCT系数矩阵进行DCT逆变换,得到嵌入水印后的图像I′。嵌入算法嵌入算法%watermarkW应该为64*64的图像%对W进行Torus变换%将水印存入w中%将原图分成8*8的小块,共32*32块分别做dct变换%求出每块图像里被选定区域的水印嵌入强度%将水印嵌入到选定的区域上每小块嵌入4bit的水印信息%得到嵌入水印后的图像嵌入算法嵌入算法提取算法第一步:将加入水印的图像I′分为互不覆盖的8×8子块Fm′′,(i,j),nm=N18,n=N28,i,j=1,2,L8,对每个子块分别进行DCT变换,见公式(3-17):第二步:同样按照前面的结论选择出子块DCT系数矩阵中嵌入水印信号的中频系数位置,根据其所对应的嵌入强度利用公式(3-18)从嵌入位置上得到嵌入的水印分量:

其中w′(i)为水印分量。提取算法第三步:当对所有嵌入水印的子块处理完后,所提取出的水印分量可构成一个二值序列,(如果在水印嵌入之前将水印信号置乱过,此时要用置乱逆运算对该序列处理一下),将该二值序列转换成二维矩阵,从而得到水印图像W′。提取算法%将水印提取出来到一维数组w里面提取算法提取算法相似度检测

观察者可以通过直接观察,主观的比较检测出的水印图像与原始图像的相似程度。但是,这种比较容易受观察者的经验、实验等条件因素的影响。并且嵌入水印图像经过一些处理、变换或侵权人的恶意破坏后,提取的水印可能不会与原始水印完全相同。这就需要一个判决标准来判定版权信息存在与否,或水印的提取程度。为了更确切的判定水印的提取程度,我们用提取水印与原始水印的相似度。

计算相似性,其中W为M1×M2的原始水印图像,W′为提取的水印图像,定义相似度如公式(3-19):相似度检测

为了更确切的计算出提取水印和原始水印的相似程度,我们计算相似度时,对W和W′进行了如下修改:

对于NC我们可以设定一个阀值T,如果检测结果大于这个阀值T就说明水印已经被检测出来了。相似度检测相似度检测%原始水印%待检测水印%将NC的值与阀值比较得出结论相似度检测水印攻击 hust.bmp为原始水印 lena.jpg为原始图像

experiment1.m为嵌入水印并将嵌入后得到的图像保存在watered.bmp中。 experiment2.m为提取水印,并显示。

可人为对watered.bmp进行各种处理然后运行experiment2.m看水印的变化,即检测相似度。实验结果和讨论

实验中使用的原始图像为256×256的256灰度级标准“lena”图像,水印图像为64×64的具有“HUST”字样的二值水印图像。实验一,图为水印信息的嵌入与提取,在计算机屏幕上,嵌入水印前后两幅图像在视觉上是没有差别的。满足水印信息的不可见性。a)为原始“lena”图像,b)待嵌入的水印图像,c)为嵌入水印后的图像(PSNR=38.43),d)为提出的水印图像。实验二,图为算法对剪切鲁棒的实验。a)剪切1/4后的水印图像,b)剪切1/4后的水印提取,c)剪切1/16后的水印图像,d)剪切1/16后的水印提取。实验结果和讨论实验三,图3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论