数字水印是一种嵌入到图像_第1页
数字水印是一种嵌入到图像_第2页
数字水印是一种嵌入到图像_第3页
数字水印是一种嵌入到图像_第4页
数字水印是一种嵌入到图像_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

1、摘 要数字水印是一种嵌入到图像、视频或者音频数据中的标志,通过对水印信息的检测可以达到保护多媒体数据版权的目的。近年来,数字水印技术得到了较大的发展,基于变换域特别是基于DCT的水印技术是目前研究的热点,并且目前DCT编码在JPEG、MPEG、H.26x等编码标准都中有着广泛的应用。本课题针对基于DCT的视频水印算法进行研究,在简要介绍本课题研究背景与本课题的国内外研究动态的基础上,随后介绍了数字水印技术的应用、特点和攻击方法与视频水印的特点及其国内外发展动态。本文重点对基于DCT的低频水印算法、基于DCT的中频水印算法和基于DCT的自适应视频水印算法进行了深入分析与研究,使用伪码对这三种算法

2、进行了简单的实现。对基于DCT的中频水印算法进行了改进,在改进算法中对水印序列进行了扩频,并对DCT变换后中频系数的处理进行了改进。最后,在MATLAB中对水印的嵌入 、水印的检测与水印的剪切攻击进行了实验。关键词:DCT;水印;视频;低频;中频; AbstractDigital watermarking techniques have been proposed as a solution to the problem of copyright protection of multimedia documents. Digital watermark is mark embedded in

3、digital image, video or audio documents, which can be detected to protect copyright of multimedia data. Digital watermarking techniques have greatly developed in recent years. Watermarking techniques based on the transformation domain has become a heated issue in the academic research of the field,

4、and DCT (Discrete Cosine Transform) transforming coding has been widely used coding standards such as JPEG, MPEG and H.26x at present. The subject is mainly propose the DCT-based video digital watermarking,in briefly introduced the background research and domestic and foreign research dynamic of the

5、 subject. Afterwards introduced the application, the characteristic and the attack method of digital watermarking technology and the video digital watermarking characteristic and its the domestic and foreign development tendency. The article principally researches and analyzes an intermediate freque

6、ncy DCT-based watermarking algorithm, a low frequency DCT-based digital algorithm and a DCT-based transforming watermarking algorithm, To has made an improvement to the DCT- based intermediate frequency watermarking algorithm, has carried on the wide frequency to the watermark sequence in the improv

7、ement algorithm, and has made an improvement to intermediate frequency coefficient processing after the DCT transformation. Finally, haven the experiment in MATLAB about imbedding watermarking, detecting watermarking and cutting attacks.Key words: DCT;Watermarking;video; 目 录摘 要IAbstractII1 绪论11.1 本课

8、题研究背景11.2 本课题的国内外研究现状11.3 本课题的主要内容32 数字水印技术42.1数字水印的概念42.2水印的应用42.3 水印的特征52.4水印攻击63 视频水印技术83.1 视频水印技术的特点83.2 目前视频水印的主要嵌入和提取方案84基于DCT的低频水印算法144.1 算法的基本原理144.2 代码实现154.3 算法分析215 基于DCT的中频水印算法225.1 算法的基本原理225.2 原始算法代码实现235.3 原始算法分析285.4 算法改进294.5 改进算法代码实现306 基于DCT的自适应视频水印方案326.1 基本原理326.2 代码实现347 总结与展望3

9、6参考文献39致 谢401 绪论1.1 本课题研究背景数字水印技术是近几年国际上提出的一种全新信息安全领域的技术,正广泛应用于视频、音频等其他数字媒体。由于它在版权保护、真伪鉴别、秘密通信和隐含标注等领域有着广泛的应用前景,因此日益成为一个非常重要的研究领域。视频水印是最有应用前景的数字水印技术。传统的加密方法对多媒体内容的保护和完整性认证具有一定的局限性。加密方法只用在通信的信道中,一旦被解密,信息就完全变成了明文,因此访问控制和加密技术只能对数据进行有限的保护,无法防止数据的非法复制和鉴别数字媒体的知识产权。对于数字产品的版权保护通常采用标记法1。这种方法不修改数字产品的内容,而是将版权声

10、明以附加信息的方式存放在数字产品的头部,或是存为单独的文件,并与产品一起发送给客户,数字签名是其中的典型例子。这种方法的最大缺陷是由于版权信息与作品内容分离,所以很容易被非法去除。在这种情况下,近几年提出了数字水印技术,它将具有确定性和保密性的信息直接嵌入到原始数据,并作为原始数据的一部分而保存在其中,因而即使在原始数据解密之后仍可以跟踪数据的复制和传输,对媒体数据进行有效的保护,这种信息通常是不可见的,只有通过专用的浏览器或阅读器才能提取。基于变换域特别是基于DCT的水印技术是数字水印技术的热点。1.2 本课题的国内外研究现状数字水印技术既充分利用了网络和数字媒体的便利,又能在一定程度上克服

11、了传统信息安全方法的局限性,为多媒体信息提供有效的保护,因此得到了国内外众多学者的广泛关注,自 1993 年以来,它已引起工业界的浓厚兴趣,并日益成为国际上非常活跃的研究领域。全球支持或开展此项研究的政府机构和研究部门很多,包括美国财政部、欧洲电信联盟、麻省理工学院、微软公司、朗讯贝尔实验室等机构,同时,IBM、日立、NEC、Pionee和Sony五家公司还宣布联合研究基于信息隐藏的数字水印。与此同时,一些公司已逐步推出了有关水印技术的商用软件系统。我国学术界对数字水印技术的反应很快,有相当一批有实力的科研机构投入到这个领域的研究中来。为了促进数字水印技术的研究与应用,1999年12月,我国信

12、息安全领域的何德全院士、周仲义院士、蔡吉人院士与有关应用研究单位联合发起召开了我国第一届信息隐藏学术研讨会。2000年1月,由国家“863”智能专家组和中科院自动化模式识别国家重点实验室组织召开了数字水印学术研讨会。随着研究的深入,人们发现数字水印在其他领域中可以有诸多重要应用。在多媒体中加入数字水印,可以确立版权拥有者、认证多媒体来源的真实性、识别购买者、提供有关数字内容的其他附加信息、确认所有权认证和跟踪侵权行为。它在篡改鉴定、数据的分级访问、数据跟踪和检测、商业和视频广播、能够提供普遍指导意义的理论基础,但就目前而言,这项工作还远远没有达到令人满意的地步。视频水印方法主要有两种:空间域方

13、法和变换域方法。与空间域方法相比,变换域尤其是DCT域上的水印方法主要有以下优点:一是,在变换域中可以有效地利用人类视觉系统的某些特征,在高频分量嵌入数据,以增强水印的鲁棒性(水印嵌入强度);二是,可选择低频分量嵌入数据,使能量扩散到空间域的所有像素上,提高水印图像质量(不可感知性);三是,可与国际数据压缩标准如MPEG等兼容,同时在DCT域实现的水印算法,计算复杂性也往往较低。Cox等提出了基于全局DCT的水印算法,他们的重要贡献是将通信理论中的扩频原理引入了水印技术,并提出了水印应该嵌入在感知重要的分量上(主要对应于DCT的低频系数)以增强算法的稳健性。水印信号根据系数的大小作对应尺度的调

14、整,这实际上是一种简单的感知加权算法。Cox等还认为Gaussian 随机序列产生的水印相比于其它序列具有更好的稳健性,因为它们具有更大的自相关性。Wolfgang等应用JPEG中所采用的视觉模型,提出了图像自适应的DCT域水印算法。这一类算法还很多。由于这种算法是自适应的,自然,在不可感知性与稳健性方面都要好于其它算法。Hartung等提出利用扩频的思想在MPEG-2压缩视频中嵌入水印的算法,水印信号经过扩展、放大和调制,得到一个拟随机序列;然后对其进行8×8的DCT ,并将DCT系数叠加到MPEG-2码流的8×8的DCT系数上,它主要考虑两个问题7:(1)由于MPEG-

15、2的DCT系数是用变长编码进行编码的,系数在添加水印前后的编码长度会发生变化。因此,如果要求不增加视频码流的长度,那么,在出现添加水印后DCT系数的编码比特数增加了的情况时,则仍将保留原有的系数。(2)MPEG-2编码方式中,帧间编码帧(P帧和B帧)是从其他帧预测得到的,用一个运动补偿向量来从其它帧重建当前帧,P帧本身也可能作为其他帧的预测参考一个帧内的微小变化会在时间、空间上传播开来。因此,在水印信号之外,需要添加一个偏移补偿信号来补偿前一帧的水印信号。Simitopoulos等提出了一种在MPEG流压缩域嵌入水印的算法,把视觉分析和块分类技术结合起来,自适应地选择I帧亮度模块DCT域的量化

16、交流(AC)系数,嵌入水印8。水印系数是伪随机序列。和对应的量化嵌入标志、分类标志(分别由视觉分析和块分类过程产生)的乘积加到每个被选量化参数上,加入水印后的系数如公式4.1所示: (1.1)该算法的优点是:在对DCT系数量化之后嵌入水印,由于量化之后执行MPEG编码是无损操作,因此任何嵌入的信息不会在后续处理过程中丢失1这样,当执行检测过程时,水印信息就会完整地存在于量化系数中。Busch等、Hsu等、Dittmann等都提出了基于DCT系数的视频水印技术,他们中的一些借鉴了Koch和Zhao的静态图像水印算法,同时考虑了人类视觉系统的特性,使嵌入的水印满足不可感知性。李华,朱光喜,朱耀庭2

17、000年根据人眼视觉频率响应函数提出了一种基于人眼视觉感知模型域数字水印隐藏方法。这两种方法都增强了水印的强度和不可觉察性,并引入了自适应水印的概念。因为DCT变换的AC中低频系数集中了图像的绝大部分能量,而高频部分的信息在量化过程中往往会丢失,所以目前大多数基于DCT变换域的数字水印模型都把水印信号嵌入到中低频分量上。1.3 本课题的主要内容本课题主要讨论的是基于DCT的视频水印算法, 在简要介绍本课题的研究背景与本课题的国内外研究动态的基础上,介绍了数字水印技术的应用、特点和攻击方法与视频水印的特点及其国内外发展动态。论文重点分析了三种基于DCT的视频水印算法,最后指出水印技术以及基于DC

18、T的视频水印技术必将有一个广阔的发展前景。文中重点针对基于DCT的低频水印算法、基于DCT的中频水印算法和基于DCT的自适应视频水印算法进行了深入分析与研究,分析了在中低频部分嵌入水印的优点,对三种算法进行了比较与算法复杂度的分析,最后对基于DCT的中频水印算法进行了改进,并使用伪代码简单实现了原始算法与改进算法。2 数字水印技术2.1数字水印的概念数字水印是一种数字标记,可以是数字、序列号、文字、图像标志等标识或版权信息,一般包含版权所有者的标记或代码,以及能够证实用户合法拥有数据的用户代码等基本信息,将它秘密地内嵌到数字产品中可以帮助识别确定产品的内容、著作权、使用权、完整性等。水印系统通

19、常由嵌入器和检测器组成,如图1.1所示1。嵌入器有两个输入:一个是要编码为水印的信息,另一个是要嵌入水印的载体作品。水印嵌入器的输出通常会被传输或记录。然后,把嵌入器输出的作品(或其他一些未经水印嵌入器处理的作品)输入到水印检测器中,大多数检测器将设法检测水印是否存在,若存在,则输出水印编码的信息。图1.1 水印系统2.2水印的应用防止拷贝和版权保护是水印领域研究的主要驱动力量,但是目前许多其他的应用中也都在使用或建议使用水印。水印有着广阔的应用前景,目前已经提出的或者实际的水印应用归纳如下:(1)广播监视:通过识别嵌入到作品中的水印来鉴别作品是何时何地被广播的。数字作品有类似的主动技术,这种

20、技术是在文件头中储存标识码。1(2)所有者鉴别:嵌入代表作品版权所有者身份的水印。因为水印可以不被感知且和包含它们的内容密不可分,所以它们可能比文本更适合与所有者鉴别。如果作品的使用者拥有水印检测器,那么他们就能确定带水印作品的拥有者,甚至是在使用了可消除文本版权标志的方法修改了作品后。目前,加入版权标志的正确形式具有合法性,那么水印里的版权标志可能就没有能力取代包含标准“©”的标志。然而这个系统使诚实的人很容易查明要使用一个作品时,他们应该和谁联系。(3)所有权验证:在发生所有权纠纷时,用水印来提供证据。水印的诱人之处在于它不仅能鉴别版权所有者,而且能证明实际所有者。这是文本提示所

21、不能做到的事,因为它很容易伪造。(4)操作跟踪:用水印来鉴别合法获得内容但非法重新发送内容的人。(5)内容认证:将签名信息嵌入到内容中以待日后检验内容是否被窜改。(6)拷贝控制:使用水印来告知录制设备不能录制什么内容。如果每个录制设备都安装了水印检测器,那么无论什么时候在输入中检测到禁止拷贝的水印,设备都会禁止拷贝,这个功能有时被特定称为拷贝控制。(7)设备控制:设备根据其在内容中检测到的水印做出相应的动作。(8)指纹应用:为避免未经授权的拷贝非法销售,所有者或销售商将不同的用户识别码或序列号作为不同的水印(指纹)嵌入作品的合法拷贝中,非法拷贝一经发现,就可以通过提取水印确定它的来源。2.3

22、水印的特征水印系统可以由一些限定特性描述其特征,我们可以根据给定水印系统的以下特性来判断此水印系统是否适用于给定应用2:(1)嵌入有效性:成功地将水印嵌入到随机选定的作品中的概率。人们总是期望100的有效性,但是实际这种目标常常需要在其他特性方面付出非常高的代价。因此,根据实际应用,为了在其他特性方面获得更好的性能,我们宁愿牺牲一些有效性。(2)保真度:原始载体作品和水印版本的载体作品在感觉上的相似程度。在某些应用中,为了获得高鲁棒性和低成本,我们可以接受适度的可感知的水印。(3)数据有效载荷:单位时间内或在一个作品中水印编码的比特数。对于照片而言,数据有效载荷指的是在图像中编码的比特数;对于

23、音频而言,指的是每秒传输的比特数;对于视频而言,则指的是每域(或每帧)的比特数或者是每秒的比特数。(4)盲检测或辅助信息检测:(a)盲检测 不需要任何有关原始作品信息的情况下,水印检测器就能检测出作品中的水印。(b)辅助信息检测 检测器需要原始未加水印作品的信息,才能检测出水印。还可以指只需要原始作品的部分信息,而不是整个作品信息。(5)虚警率:在未加水印的作品中错误地检测出水印的频率的期望值。(6)鲁棒性:在经过常规的信号处理操作后,仍能够检测到水印的能力。对图像的常规操作的例子包括空间滤波、有损压缩、打印和扫描,以及几何失真(旋转、平移和图像缩放等);音频水印需要对诸如时间域滤波、音频磁带

24、录制、录音重放速度的变化(该变化会导致抖动和颤动)等过程具有鲁棒性;视频水印除了要对很多相同的变换具有鲁棒性之外,还需要对视频磁带的录制和帧频变化具有鲁棒性。(7)安全性:水印抵抗敌手企图使水印效用失效的能力。健壮的水印安全是一种机制,它在原始内容的基础上创建了一条通信信道,这条通信信道复合在原始内容中,并且,水印安全要求做到以下两点:(a)经过水印处理的内容与原始内容相比,在视觉和听觉上的降质是微小的,即不易察觉的;(b)水印信道内容的衰减量是经水印处理的内容的降质的平滑函数。(8)密码和水印密钥:系统运用(a)密码密钥来控制信息加密,或运用(b)水印密钥来控制嵌入和检测。在现代加密算法中,

25、只需要对密钥进行保密,而不需要保密整个算法就可以确保安全。(9)修改和多水印:在一幅作品中修改已嵌入的水印或嵌入数个水印的可能性。(10)成本:嵌入器和检测器的计算成本。部署水印嵌入器和检测器的经济学问题极其复杂,并且依赖于相关的商业模式。从技术角度看,两个主要关注的问题是执行嵌入和检测的速度以及需要部署的检测器和嵌入器的数目。其他的问题包括是否使用专门用途的硬件、应用软件或插件来实现检测器和嵌入器。2.4水印攻击一个有效的水印攻击方法,是在不伤害水印载体内容的前提下,通过处理,使得水印检测系统不能正确恢复水印信号或者无法检测到水印的存在,以及使得水印无法提供法律上的可证明性,从而导致水印无效

26、。我们可以把水印攻击分为以下四种情况:(1)简单攻击 简单地对整个加水印数据进行处理,而不是去识别并分离水印,旨在削弱水印信号。典型例子包括线性和一般非线性滤波,诸如JPEG和MPEG等有损压缩,附加噪声,量化,D/A 转换,GAMME校正等。(2)同步攻击 攻击方法试图破坏相关性水印的相关性,使得水印检测器无法恢复水印信号。大多数有几何失真,如比例缩放,空间或时间方向上的移位、旋转、剪切、移去。此类攻击的特点是一般水印还留在被攻击过的数据中,随着检测器性能的改进与提高,水印还是可以被恢复的。(3)“混淆”攻击 通过伪造原始数据或伪造加水印数据而造成混淆,使得原来的水印不能被判断和不再说明任何

27、意义。这种攻击仅在水印作版权证明时有用,例如攻击者可以通过再次添加一个水印,使原所有者的可信用度无效,因为检测器无法说明到底那一个是原始水印,谁是合法的版权拥有者。(4)水印移去攻击 对加水印数据进行分析,估计出水印或载体数据,从而将水印从载体中分离出来,去掉水印。统计平均和共谋攻击通过统计分析的方法,得到近似无水印的载体或原水印信号,从而能达到基本移去水印的目的。以上四种水印攻击的分类之间并没有绝对清晰的界限。具体方案中,有时往往一种攻击方法包含着以上两种甚至更多的种类。针对视频水印来说,它的载体数据有一个时间上的动态因素,对它的攻击除参考对静止图像的攻击种类外,还存在一些特殊攻击形式,如:

28、视频剪切的帧删除、子抽样、帧重组等,还有帧率的改变、格式的转换对水印检测都会造成影响。因此视频水印攻击又可分为:(1)空间域攻击 破坏水印信号在视频序列单帧上的存在,基本上可以借鉴静态图像的水印攻击方法。(2)时间域攻击 破坏水印信号在时间上与对应视频序列之间的同步关系,从而导致水印检测失败。这种攻击对与时间同步信息关联的视频水印有效。3 视频水印技术3.1 视频水印技术的特点视频水印可理解为针对数字视频载体的主观和客观的时间冗余和空间冗余加入信息“既不影响视频质量”又能达到用于版权保护和内容完整性检验目的的水印技术。视频水印除了应具有静止图像水印的一般特点(如安全性、可靠性、鲁棒性、不可感知

29、性)外,还必须有一些区别于静止图像水印的独特要求5:(1)实时处理性水印嵌入和提取应该具有低复杂度。与视频编码标准相结合的视频数据由于其数据量极大,在存储、传播中通常先要对其进行压缩。如果是在压缩视频中嵌入水印,很显然要与视频的压缩编码标准相结合。如果是在原始视频中嵌入水印,由于水印嵌入是利用视频的冗余数据来携带信息,而视频压缩编码则需要除去视频中的冗余数据,如果不考虑视频压缩编码标准而盲目地嵌入水印,则嵌入的水印很可能在编码过程中就完全丢失了。(2)盲水印方案若检测时需要原始宿主信号,则称为非盲水印,否则称为盲水印(Blind Watermark),也称为健忘的水印(Oblivious Wa

30、termark)。(3)进一步的鲁棒性对于视频数据,还存在一些特有的处理和攻击方法,必须保证水印方案对这些处理和攻击的鲁棒性。对视频的任何处理,只要没有将视频破坏到失去使用价值的地步,都应该不会破坏所嵌入的水印。(4)算法简单 作为实时动态的视频流要求考虑到嵌入和检测算法的复杂度以及针对日用消费用户的成本,要能保证视频水印方案的实用性。3.2 目前视频水印的主要嵌入和提取方案目前,比较常见的视频水印的嵌入和提取方案主要分为基于原始视频方法和基于压缩视频方法4。 如图3.1所示。图中的虚线表示,在压缩视频中嵌入和提取水印,既可以在视频编码器中进行,也可以作为单独的模块,直接在编码视频流上进行。前

31、者需要修改视频编解码过程,在编解码中加入水印嵌入和提取功能,适用于可以直接介入视频编码过程的情况,例如,采用自己的编码器,对摄像头捕获的原始视频流进行编码;后者不需要修改视频编码器,但是需要对编码视频流进行分析,在压缩码流中找出需要嵌入水印的数据并完成水印的嵌入,适用于不能直接介入视频编码过程,而只能得到编码视频流的情况,例如,在第三方制作的编码视频流嵌入版权信息。图3.1 视频水印嵌入和提取方案基于原始视频水印方法,如果按嵌入域分,一些方法直接在原始视频数据中嵌入水印,如Hartung和Kalker等,称为空域方法;另一些方法先对原始视频数据进行某种变换,如DCT变换、小波变换等,然后在变换

32、域中嵌入水印,称为频域方法。基于压缩视频水印方法,如果按嵌入位置分,一些方法在离散余弦变换(DCT)系数中嵌入水印,这些方法主要是借鉴了图像的DCT域水印技术;一些方法在运动向量中嵌入水印;一些方法在MPEG-4脸部运动参数中嵌入水印;一些方法在MPEG编码的VOP的图像类型中嵌入水印。而且,随着研究的不断深入,会不断地有研究者提出新的水印嵌入位置。如图3.2所示。图3.2 视频水印的一种分类方法(1)原始视频水印原始视频水印是指直接对未压缩的视频数据进行处理,与视频编码格式无关。因此,可以分为两种情况:可以直接获得原始视频流数据 此时,可以直接在原始的视频流中完成水印的嵌入和提取,这时的处理

33、比较简单;只能得到编码的视频流数据 此时,需要首先对编码视频进行编码,然后再嵌入或提取水印,在水印处理之后,如果有必要再重新压缩,这时的处理相对复杂。如果存在一些特殊的要求,比如要求嵌入水印前后的编码流的长度保持不变,则处理更为复杂。按照水印嵌入和提取之前是否对宿主信号进行某种变换,原始视频水印又可分为空域水印和频域水印两种方法6。空域水印空域水印是指直接在原始视频水印数据中嵌入水印,嵌入的水印信号一般是添加在亮度分量上,有时也有一部分被加入到颜色分量中,或全部加入到颜色分量中。其优点是思想简单、复杂度低,缺点也是明显的,在鲁棒性和不可感知性方面的性能较差。频域水印频域水印是指在原始视频的其它

34、变换域中进行水印的嵌入和提取。常见的变换域包括离散余弦变换(DCT)域、离散傅立叶变换(DFT)域、小波变换域、分形域、哈达玛变换域等。有三种处理方法:一种方法是将视频流看成一个三维信号,其中两维在空间上,一维在时间上,对其进行三维变换,然后进行水印处理;第二种方法是将视频流看成静态图像的序列,采用图像水印技术进行水印处理,因此有很多文献声称他们的图像水印算法可以应用于视频序列;第三种方法是按块进行频域变换,由于视频编码标准中同样也是按块进行频域变换(多为DCT变换),因此,这种方法大多是与视频编码器相结合进行,这将在压缩视频水印中介绍。(2)压缩视频水印正如在图像中嵌入水印多考虑JPEG编码

35、标准一样,在视频中嵌入水印一般考虑MPEG编码标准。在MPEG标准中,有三种图像类型:内部编码帧(I帧)、前向预测帧(P帧)和双向预测帧(B帧)。I帧的编码类似于JPEG,利用帧内相邻像素间的空域冗余来压缩信息;P帧编码时要用到先前的帧,当前的帧又可以作为后面的预测帧的参考帧;B帧的数据压缩效果最显著,它在预测时需要先前和后续的信息,且自身不能作为其它帧的预测参考帧。接下来按水印的嵌入位置对压缩水印进行讨论。嵌入DCT系数在这里主要介绍DCT变换的原理与一般表达式,基于DCT的视频水印算法将在本文的后面两个部分作详细介绍。(a)DCT变换的原理离散余弦变换(Discrete cosine Tr

36、ansform)简称DCT。DCT是先将整体图像分成N×N像素块,然后对N×N像素块逐一进行DCT变换。由于大多数图像的高频分量较小,相应于图像高频成分的系数经常为零,加上人眼对高频成分的失真不太敏感,所以可用更粗的量化,因此传送变换系数所用的数码率要大大小于传送图像像素所用的数码率。到达接收端以后再通过反离散余弦变换回到样值,虽然会有一定的失真,但是人眼是可以接受的。N代表像素数,一般N=8×8的二维数据块经DCT后变成8×8个变换系数,这些系数都有明确的物理意义:U代表水平像素号,V代表垂直像素号。如当U=0,V=0时,T(0,0)是原来的64个样值

37、的平均值,相当于直流分量,随着U、V值增加,相应系数分别代表逐步增加的水平空间频率分量和垂直空间频率分量的大小。如图3.3所示。图3.3 DCT变换示意图(b)DCT变换的表达式序列s的离散余弦变换(DCT)定义为3:逆离散余弦变换(IDCT),也叫反DCT变换,定义为:其中,若u=0,则 ;否则 。DCT的好处是,只要序列s是实数,也为一列实数。在图像处理中使用的是二维DCT:如此,二维离散变换就可以用两次一维变换实现。DCT系数的量化原理基于DCT的视频水印算法是将水印信号的随机序列和MPEG2码流进行8×8的DCT变换,变换系数相叠加11。量化器由包含64个分量的量化表组成,每

38、一个分量是1255的整数。一般来说,量化表应由用户指定作为输入进入编码器。量化过程就是用相应的量化步长去除每一个DCT系数,再取整,如公式4.2所示: (4.2)其中, 是量化后的DCT系数, 是量化前的DCT系数, 为量化表中的量化值,是对的取整操作。一般情况下, 取值在1530之间。然后,如公式4.3所示, (4.3)其中, 为嵌入水印信息后的DCT系数, 为经DCT变换后的系数,a 是小于用户设定的的值, 为水印信息位(0/ 1)。对改动后的DCT变换数据流进行DCT逆变换,即可得到包含水印的视频流。如果添加水印后,DCT系数的编码比特数增加了,则仍保留原有的系数。此类方案不会增加视频流

39、的数据比特率,因为水印信息仅嵌入在变换域的系数中,可以方便地设计出抗击多种攻击的水印算法。但是,在嵌入水印时,有一个解码、嵌入、再编码的过程,可能会降低视频的质量,影响视频的实时性。嵌入运动向量它是一种直接针对MPEG4编码视频流的水印方法,通过修改运动向量来嵌入信息。嵌入脸部运动参数在MPEG-4脸部运动参数中嵌入数字水印的方法,采用扩频思想,在MPEG4中定义了一个一般的脸部,并能够通过脸 部运动参数(Facial Animation Parameter,FAP)运动起来。该方案存在的主要问题包括:需要原始宿主信号;水印提取出来的速率不是均衡的;水印嵌入和提取的处理如何考虑人类视觉系统的特

40、性。嵌入VOP图像类型这种方法根据水印信息,来选择编码视频帧所谓的图像类型(Picture Type)。但是,如果要从码流中移去或者修改所嵌入的信息,则需要先进行MPEG解码,再重新编码才能实现,而且会对视频质量造成影响。 4基于DCT的低频水印算法频域法是通过改变频域的一些系数的值,采用类似扩频图像的技术来隐藏数字水印信息。它基于常用的图象变换,基于局部或全部的变换,这些变换包括离散余弦变换(DCT) 、小波变换、傅立叶变换以及哈达马变换等等。其中比较有名的基于DCT的算法有Cox、 Hsu等。4.1 算法的基本原理4.1.1 宿主图像的变换对于 N×N 大小的256灰度级的宿主图

41、像进行N×N二维离散余弦变换(DCT),以 ZigZag 方式对于 DCT 变换后的图像频率系数重新排列成一维向量 。从中取出序列中第1到M 的低频系数部分,得到 。4.1.2 数字水印的嵌入假设数字水印为 。 为一服从标准正态分布的伪随机序列(本算法采用的是高斯序列)作为数字水印序列。对原始图像进行DCT变换以后,W对Y序列的低频部分的幅度进行非线性调制,如公式4.1所示: (4.1) 由上式(4.4)可知, 值的大小对数字水印的影响很大,当 值趋于0时,相当于未嵌入水印。 值越小,则视觉透明性越好,但是水印的稳健性越差; 值越大,则水印嵌入得越深,稳健性越好,同时视觉透明性越差。

42、除了找到一个合适的 值外,我们用下面的方法增强水印的鲁棒性:当DCT系数的整数部分为偶数,并且 为1时, ;当DCT系数的整数部分为奇数,并且 为0时, 。经过修改的系数序列 ,进行N×N的DCT逆变换,得到嵌有数字水印的图像 。4.1.3 数字水印的检测可能含有水印的检测图像为 。假设 在传输过程中未受到因图像处理及传输信道等原因丢失大量信息,也就是可以近似认为 。在此假设下,可以运用统计的方法来检测水印。水印的检测主要分以下两个部分进行。(1)待检测水印与待检测图像的低频系数相关性确定此算法是对 进行DCT变换,将变换后的DCT系数排成一维向量 ,由于假设 则 。取出 低频系数部

43、分,如果系数的整数部分是奇数则取值为1;如果系数的整数部分是偶数则取值为0,根据加密后的种子产生一个伪随机二值序列,然后进行调制,得到的序列进行缩频,与产生的m序列进行相关性运算,如公式4.2所示: (4.2)(2)阈值的确定对于X=W情况下的Z值曲线,可以近似认为是正态分布,且可近似认为标准差为 。将 和没有水印存在作为一种情况考虑,也可作同样的近似。从实用角度来考虑,阈值的确定如公式4.3所示: (4.3)综上所述,满足 或者 时,则表明检测到匹配水印。 4.2 代码实现 4.2.1 水印的嵌入 DCT_extract(int width , int height, double *dDa

44、taY)/dDataY存放8×8的DCT块,块的宽度为8,块的长度为8/取边长为 height 的正方形进行DCT变换td new double height * width fd new double height * width for (i0 i<8 i+)for (j0 j<8 j+)/读取8×8块中的数据tdi*8 + j dDataYij if (:DIBDct (td , fd , height , height ) = false )return false /DCT变换/取DCT系数低频部分的32*32 int length 32*32 dou

45、ble *low new double 32*32 for (i0 i<32 i+)for (j0 j<32 j+)lowi*32 +j tdij const int kp8 /扩频int *temp_mline new int 128 /128 m 序列temp_mline MSeries(7,128) int *water new intlength for (i0 i<128 i+)for (ji*8 j<8*(i+1) j+)waterj temp_mlinei delete temp_mline /长度1024的随机序列int *temp_rand new i

46、nt length double p long ori p0.7 ori13579 /密钥for(i0 i<length i+)temp_randiBernull(p,&ori) /用随即序列对 water 序列进行调制int *water_in new int length for (i0 i<length i+)if (temp_randi= wateri )water_ini 0 elsewater_ini 1 delete temp_rand /嵌入水印double q20 /强度for(i0 i<length i+)int select(int)(lowi/

47、q) if( select % 2=0 && water_ini=1)lowi+q else if( select % 2!=0 && water_ini=0)lowilowi-q for (i0 i<32 i+)for(j0 j<32 j+)tdij lowi*32 +j /反DCT变换:DIBIDct (fd , td , height,height,iDCTlevel) /把变换过的 y 分量放回 dDataY 中for (i0 i<height i+)for (j0 j<height j+)dDataYij td i*height

48、 + j return true 4.2.2 水印的检测BOOL DCTextract(int width , int height, double *dDataY)int iDCTlevel3 /取边长为 height 的正方形进行 DCTtd new double height * height fd new double height * height for (i0 i<8 i+)for (j0 j<8 j+)tdi*8 + j dDataYij if (:DIBDct (td , fd , height , height ) = false )return false /

49、DCT变换/取低频部分的 32*32int length 32*32 double *low new double 32*32 for (i0 i<32 i+)for (j0 j<32 j+)lowi*32 +j tdij int M_length 128 int *temp_mline new int M_length /128 m 序列temp_mline MSeries(7,M_length) /提取水印信息int *water_out new int length int q20 for (i0 i<length i+)int select (int)(lowi/q)

50、 if (select % 2 = 0)water_outi 0 elsewater_outi 1 /长度1024的随机序列int *temp_rand new int length double p0.7 long ori13579 for(i0 i<length i+)temp_randiBernull(p,&ori) /用随即序列对提出的水印序列调制int *temp_water new int length for (i0 i<length i+)if (temp_randi =water_outi )temp_wateri 0 elsetemp_wateri 1

51、/对调制后的序列进行缩频int *water new int 128 for (i0 i<M_length i+)int t0 for (ji*8 j< (i+1)*8 j+)tt + temp_waterj if (t>=4)wateri 1 elsewateri 0 /计算相关系数double zdct double temp0.0 double Sz int L1024 double a0.15 for (i0 i< M_length i+)temp temp + m_randi * fdcti+L zdct temp/ M_length /计算阈值temp0.0

52、 for (i0 i< M_length i+)temp temp+ fdcti+L Sz (temp*a)/ M_length CString str,str1 Str.Format(" 检 测 完 成,相 关 性:%f,阈值:%fn",z,Sz) if (z>Sz)str1"含有 DCT 域水印" else str1 "不含有DCT域水印" /DCT检测完成return true 4.3 算法分析本算法在视频流中嵌入的是由用户输入密钥为种子产生的伪随机实数序列,由于视频可以看成是一组连续的图像,因此,我们可以不需要在所有的帧嵌入水印。此算法是对一个N×N256级灰度图像进行水印的嵌入与检测。那么,如果原始图像的分辨率为256×256,根据低频水印算法原理,水印图像的分辨率为32×32,在每一个低频系数上都嵌入了水印,由上述分析可知,水印图像是原始图像大小的1/64。对于DCT变换,由其推导过程我们可以得出其运算的时间复杂度为O( )。对于空间复杂度的分析,在这里只简单对比一下原始图像与嵌入水印以后的图像所占用的存储空间比率,设其值为P

温馨提示

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

评论

0/150

提交评论