已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理工大学信息处理课群综合训练与设计课程设计说明书 课程设计任务书学生姓名: 龚静 专业班级: 通信0906 指导教师: 黄铮 工作单位: 武汉理工大学 题 目:数字水印算法设计初始条件:计算机;matlab软件等。要求完成的主要任务: 通过课程设计,培养学生根据需要选学参考书,查阅手册,图表和文献资料的自学能力,通过独立思考深入钻研有关问题,学会自己分析解决问题的方法。培养严谨的工作作风和科学态度,使学生逐步建立正确的生产观点,经济观点和全局观点。每个学生在课程设计选题中选做一个专题,学会用MATLAB 语言编写信号与系统及数字信号处理的仿真程序;认真分析每个题目的具体要求;上机前初步编好程序,上机时认真调试程序;课程设计结束时提交符合格式要求的课程设计报告。 学习掌握一种数字水印算法,选择两幅图像分别作为版权图像和水印图像,采用水印嵌入算法成生含水印图像。采用水印提取算法,提取出嵌入水印。并对水印算法的鲁棒性进行测试。时间安排:2012年6月20日-2012年7月5日指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录摘要IAbstractII1引言31.1设计任务及要求31.2选题背景31.3数字水印技术的研究动态42数字图像水印技术综述52.1数字水印的定义和基本原理52.1.1水印嵌入模块52.1.2水印提取或检测模块62.2 DCT数字水印算法72.3工具选择83系统实现93.1水印的嵌入算法93.2水印的提取算法94 MATLAB仿真104.1水印嵌入及提取程序运行结果104.2水印攻击实验114.2.1压缩攻击114.2.2噪声攻击124.2.3剪切攻击144.2.4缩放攻击155总结186参考文献19附录:201水印嵌入算法程序202水印提取算法程序2122摘要随着数字技术和互联网技术的迅速发展,许多媒体都采用了数字化的储存方式,并且通过互联网来发布,这给信息的传播带来了很大的便利。但是数字媒体很容易被非法复制,其版权保护逐渐成为需要迫切解决的问题。数字水印技术被认为是解决此问题最有效的方法,作为版权保护的重要手段而得到了广泛的研究和应用,是信息领域的一个研究热点。数字水印技术涉及到大量图像处理算法数学计算工具等,用普通编程工具实现上述算法将要花费大量的时间。MATLAB语言是Math Works 公司推出的一种简单高效功能极强的高级语言,具有高性能数值计算能力和可视化计算环境 许多复杂的计算问题只需短短的几行代码就可在 中实现。本文基于典型的DCT 离散余弦变换数字水印算法过程,用MATLAB实现数字水印的嵌入提取和攻击测试。关键词:数字水印,DCT, MATLABAbstractAlong with the digital technology and the rapid development of Internet technology, many media have adopted digital storage, and through the Internet to release, which give information transmission has brought great convenience.However, digital media can be illegally copied, its copyright protection has become an urgent need to address the problem.Digital watermarking technology is considered to be the most effective method to solve this problem, as an important means of copyright protection has been widely studied and applied, is a research hotspot in the field of information.Digital watermarking technology involves a large number of image processing algorithms mathematical tools, using ordinary programming tools to achieve the above algorithm will have to spend a lot of time.The MATLAB language is Math Works company introduced a simple efficient and highly functional language, with a high performance numerical ability and visual computing environment many complex computing problems in only a few lines of code can realize in the.Based on the typical DCT discrete cosine transform digital watermarking algorithm, using MATLAB realize digital watermarking embedding and extracting and attack test.Keywords: digital watermarking, DCT, MATLAB1引言1.1设计任务及要求设计任务:学习掌握一种数字水印算法,选择两幅图像分别作为版权图像和水印图像,采用水印嵌入算法成生含水印图像。采用水印提取算法,提取出嵌入水印。并对水印算法的鲁棒性进行测试。设计要求:(1)掌握一种数字水印的嵌入与提取算法原理。(2)编写出水印嵌入算法的matlab程序,并给出水印嵌入前后的版权图像,并对嵌入效果进行分析说明。(3)编写出水印提取算法matlab程序,并给出水印原图和提取出的水印图像,并对水印的提取效果进行分析说明。(4)进行水印的抗攻击实验,噪声攻击,剪切攻击,缩放攻击,压缩攻击等。测定提取前后水印的峰值信噪比(PSNR)和相关性(NC)。1.2选题背景数字水印技术是目前信息安全技术领域的一个新方向,是一种可以在开放的网络环境下保护版权和认证来源及完整性的新型技术。它是信息隐藏学的一个重要分支,它用信号处理的方法在多媒体数据中嵌入特制的隐蔽的标记,这种标记的嵌入不会引起宿主媒体主观质量下降,不易察觉,人们无法从表面上感知水印,只有专用的检测器或计算机软件才可以检测出隐藏的数字水印,并且水印具有很强的对抗非法破解的能力。为了保护版机人的经济利益在数字作品上直接标识版权人的信息会明显损害作品的质量,而利用文件的附加信息标识版权又很不安全。相比之下,在不过多损害作品质量的前提下,使用数字水印技术将版权管理信息秘密嵌入数据中,是一个非常理想的解决方案。从学术研究角度而言,数字水印技术是一项横跨信息处理、图像处理、多媒体技术、密码学等多学科领域的高新技术前沿课题,包括数字水印在内的信息隐藏技术尚未形成完整的学科理论体系。因此,这是一项重要的应用基础研究。同时它又是一项与实际应用密切结合的高新技术,其成果将成为拥有自主知识产权的技术,发展为具有自身特色的软件产品和专用芯片,随着信息产业的发展,有着一份广阔的应用市场。数字水印的提出引起了学术界极大的兴趣,到现在短短的几年时间,就有大量的数字水印算法被提出来。那么,如何既方便又高效的实现这些算法呢?数字水印算法涉及大量图像处理、数学计算等,如果仅仅采用普遍编程工具所提供的功能严实再次地花费大量的时间用在上述算法的编程及调试上。因此选择一种高性能的科学与工程计算软件是很在必要的。目前,在工程计算上应用十分广泛的MATLAB软件是首选的编程语言。MATLAB是一个适合多个学科使用的功能强大的软件,含有十分浩大的函数,MATLAB语言是Mathworks公司推出的一种简单、高效、功能极强的高级语言,具有高性能数值计算能力和可视化计算环境。许多复杂的计算问题只需短短的几行代码就可在MATLAB中实现。本文介绍典型的数字水印算法,用MATLAB实现数字水印的嵌入、提取和攻击测试的方法。1.3数字水印技术的研究动态数字时代的到来,多媒体数字世界丰富多彩,数字产品几乎影响到每一个人的日常生活。信息媒体的数字化为信息的存取提供了极大的使得,同时也显著地提高了信息表达的效率和准确度。计算机网络通信技术特别是互联网的蓬勃发展,使得数据的交换和传输变成了一个相对简单且快捷的过程。人们借助计算机、数字扫描仪、打印机等电子设备可以方便、迅速地将数字信息传达到世界各地,在国际互联网上发布自己的作品,传递重要的信息,进行各种学术交流和电子商务活动等等。如何保护这些与我们息息相关的数字作品,如版权保护、信息安全、数据认证以及访问控制等等,就被日益重视并变得迫切需要了。借鉴普通水印的含义和功用,人们采用类似的概念保护诸如数字图像、数字音乐、数字文本等这样的数据,因此数字水印在今天的计算机和互联网时代大有可为。数字水印技术是近十年才发展起来的,它是信息隐藏学的一个分支(如图1)。随着国内信息化程度的提高和电子商务逐渐走向实用,数字水印技术将会拥有更加广阔的应用前景。信息隐藏隐藏信道稳健版权标记版权标记隐写入匿名技术易碎水印数字水印不可见水印指纹技术可见水印图1信息隐藏技术的分类2数字图像水印技术综述数字水印是一种数字标记,可以是数字、序列号、文字、图像标志等标识或版权信息,一般包括版权所有者的标记或代码,以用能证实用户合法拥有数据的用户代码等基本信息,将它秘密地内嵌到数字产品中可能帮助识别确定产品的内容、著作权、使用权、完整性等。水印技术与传统的信息加密都是把信息的保护转化为对密钥的保护。因此,水印技术沿袭了传统加密技术的一些基本思想和概念,但两者采用的保护信息手段不同:传统的加密算法一般是基于文本数据设计的,它把一段有意义的数据流转换成看起来没有意义的数据,如DES(Data Encryption Standard)和RSA(以三个发明者的首位字母命名)。由于将明文数据加密成密文数据,使得在网络传递过程中非法拦截者无法从中获得信息,从而达到保密的目的。虽然,我们可以把媒体数据作为文本数据流一样看待,使用传统的加密算法进行加密,但是,多媒体数据流具有的特性与文本数据的特性有很大不同。因此,目前的传统加密方法如DES、3-DES或RSA等也很难满足多媒体应用中的实时性等要求。而数字水印技术则是把一个有意义的信息隐藏在另一个称为载体信息的公开信息中,而可能的监测者或非法拦截者难以从公开信息中判断机密信息是否存在或截获机密信息,从而保证机密信息的安全。2.1数字水印的定义和基本原理从信号处理的角度看,在载体图像中嵌入数字水印可以视为在强背景(即原始图像)下叠加一个视觉上看不到的弱信号(水印),由于人的视觉系统(HVS),分辨率受到一定的限制,只要叠加信号的幅度低于HVS的对比度门限,HVS就无法感觉到信号的存在,因此,通过对载体对象作一定的调整,就有可能在不引起人感知的情况下嵌入一些信息。所有水印系统都包括两个基本的构造模块:水印嵌入模块和水印提取或检测模块。数字水印技术实际上是通过对水印载体媒质的分析、嵌入信息的预处理、信息嵌入点的选择、嵌入方式的设计、嵌入调制的控制等几个相关技术环节进行合理优化,寻求满足不可感知性安全可靠性稳健性等诸条件约束下的最优化设计问题。2.1.1水印嵌入模块水印嵌入模块就是把水印信号w嵌入到原始图像I,从而得到含水印信号。水印嵌入过程如图2所示。密匙(K)水印信息(w)原始信号(I)嵌入过程含水印信号()图2 水印嵌入框图2.1.2水印提取或检测模块水印提取或检测就是判断某一数据中是否含有指定的水印信号,并可能恢复出水印信息。提取或检测算法主要是设计一个相应于嵌入过程的检测算法。检测的结果或是原水印(如字符串或图像等),或是基于统计原理的只能判断水印存在与否。检测方案的目标是使错判与漏判的概率尽量小。为了给攻击者增加去除水印的难度,目前大多数水印制作方案都在水印加入、提取时采用密钥,只有掌握密钥的人才能读出水印。水印的提取过程如图3所示,检测过程如图4所示。数字水印(w)/原始数据(I)待检测数据()私匙/公匙(K)水印提取算法水印信息图3 水印提取框图数字水印(w)/原始数据(I)待检测数据()私匙/公匙(K)水印检测算法估计水印(w)/相似性检测(Sim)图4 水印检测框图2.2 DCT数字水印算法目前的数字水印算法可以分成两类:空域水印算法和频域水印算法。空域水印算法是指将水印信号直接嵌入在原始数据中,而频域水印算法首先将原始的数据进行DCT或小波变换,在频域上嵌入水印信息,然后经反变换输出。在检测水印时,也要首先对信号作相应的数学变换,然后通过相关运算检测水印。本文以DCT域为例,介绍如何用MATLAB实现数字水印的嵌入、提取及各种攻击实验。离散余弦变换简称DCT,是基于实数的正交变换,类似于离散傅里叶变换,但是只使用实数。离散余弦变换相当于一个长度大概是它两倍的离散傅里叶变换,这个离散傅里叶变换是对一个实偶函数进行的。在数字图像的处理中,采用的是二维DCT,数字图像S(x,y)是具有N行N列的一个矩阵,它的DCT变换公式为: (公式1) 它的离散反余弦变换公式为:(公式2) 图像的二维DCT变换有许多优点:图像信号经过变换后,变换系数几乎不相关,经过反变换重构的图像,信道误差和量化误差将像随机噪声一样分散到块中的各个像素,不会造成误差积累;并且变换能将数据块中的能量压缩到为数不多的部分低频变换系数中支,那么其他部分的数据有很大的冗余度,可以在这里嵌入更多信息。2.3工具选择MATLAB是一种用于科学工程计算的高效高级语言,是当前在国内外十分流行的工程设计和系统住址软件包。在数字水印领域,MATLAB显示了强大的生命力,它有如下几个特点:1、 集成了DCT、DWT等函数有丰富的小波函数和处理函数,这不仅方便了研究人员,而且使程序简洁明了、易实现,方便了数字水印算法设计和编码的实现。2、 提供了强大的数学运算功能特别是矩阵运算功能,能够方便、高效地实现数字音频、视频处理过程中需要进行的大量矩阵运算。3、 提供了图像处理工具箱、小波分析工具箱、数字信号处理工具箱。4、 能与Visual C+等语言有良好的接口,方便了开发设计出有实际价值的数字水印产品。5、 编程效率高。 3系统实现3.1水印的嵌入算法设X=f(x,y)为原始宿主图像,大小为;flag为水印图像,大小为。、分别是、的偶数倍。水印的嵌入步骤如下:Step1:将原始宿主图像分成互不覆盖的子块,块的大小为8x8,记为Xm=fm()。其中m=1,2,(/8)x(/8),0,8。Step2:并根据载体图像的块数,将大小为、水印图像w(x,y)分成互不覆盖的子块,块的大小为(x8/)x(x8/),记为Wm=wm()。Step3:将载体图像块逐一DCT变换,记为Ym=DCT(Xm)=Fm(u,v),其中Fm(u,v)为第m个图像离散余弦变换后空间频率(u,v)处的大小。Y为从Fm(u,v)中频选出的加载的位置,1r(x8/)x(x8/);Wb(r)为水印Wm= wm()位置坐标。按照加法准则,将水印块嵌入其中。其中,为强度因子,然后用来代替嵌入水印后的DCT中频系数。Step4:对各子块DCT反变换,得到嵌入水印后的图像3.2水印的提取算法水印提取是水印算法中的关键部分,是水印嵌入的逆过程。水印提取过程如下:首先将含水印图像分别分成互不覆盖的子块,块的大小为88,记为Xm=f(x,y)。其中m=1,2, (/8)x(/8),0x,y8对每一个子块进行二维DCT反变换,然后提取水印嵌入位置的中频系数,利用公式wb(r)=Yr/计算出水印信息,最后合并成整图。4 MATLAB仿真MATLAB中对一维信号和二维信号分别提供了各种变换和逆变换函数。例如dct()、dct2()分别实现一维信号和二维信号的DCT(离散余弦变换),idct()、idct2()分别实现一维信号和二维信号的IDCT(逆向离散余弦变换)。它们是实现频域水印算法必不可少的工具。下面以256256的灰度图像lena为原始宿主图像、以3232的二值图像flag为水印图像为例,给出利用MATLAB实现数字水印的过程。下面是嵌入与提取水印的程序运行的实例。4.1水印嵌入及提取程序运行结果如图5:图5 水印嵌入与提取比较【含水印的图像】和【原始公开图像】,仿真结果表明,嵌入水印后图像仍有很好的视觉效果,水印对原始图像的视觉表达几乎没有影响,以至于不易觉察。比较【水印图像】和【提取的水印】,仿真结果表明,从图像中提取出来的水印图像可以清晰精准识别,验证了嵌入和提取算法的稳定性和有效性。4.2水印攻击实验由于数字水印在实际应用中可能会遭到各种各样的攻击,因此对算法进行攻击测试是衡量一个水印算法优劣的重要手段。测定提取前后水印的峰值信噪比(PSNR)和相关性(NC)。4.2.1压缩攻击程序运行结果如图6:图6 压缩攻击实验另外:相关系数为: 0.98265信噪比为: 64.00000攻击后的图像及压缩攻击后提取出的水印清晰可辨,相关系数趋近于1,信噪比也较高,说明算法的抗压缩攻击性能良好4.2.2噪声攻击1)高斯噪声攻击实验仿真结果如图7:图7 高斯噪声攻击实验另外:相关系数为: 0.91698信噪比为: 10.89362加入均值为0,方差为0.002的高斯噪声后图像微变模糊,攻击后提取出来的水印有较大变化,虽然模糊但仍可辩认,相关系数接近1,信噪比为10.89362,说明算法具有较好的抗高斯噪声性能。2)椒盐噪声攻击实验仿真结果如图8:图8 椒盐噪声攻击实验另外:相关系数为: 0.83024信噪比为: 6.02353加入强度为0.02的椒盐噪声后,图像变模糊,攻击后提取的水印变模糊,但仍勉强可以辨认出来,相关系数为0.83024,信噪比大于1,说明算法能有效抵抗椒盐噪声的攻击。4.2.3剪切攻击剪切攻击实验仿真结果如图9:图9 剪切攻击实验另外:相关系数为: 1.00000信噪比为: 341.33333对图像进行剪切攻击,剪切去图像的一个角,提取出的水印清晰可辨,相关系数达到1,信噪比高达341.33333,说明算法具有优秀的抗剪切攻击性能。4.2.4缩放攻击1)缩小攻击实验仿真结果如图10和图11:图10 缩小攻击实验结果图11 缩小攻击后的图像另外:相关系数为: 1.00000没有噪声 对图像进行缩小处理后,提取出来的水印清晰可辨,相关系数达到1,说明算法具有优秀的抗缩小攻击性能。2)放大攻击实验仿真如图12和13:图12 放大攻击实验结果图13 放大后的图像另外:相关系数为: 1.00000没有噪声对图像进行放大处理后,提取出来的水印清晰可辨,相关系数达到1,说明算法具有优秀的抗放大攻击性能综上,本设计中的水印算法对压缩,噪声,缩放,剪切攻击都具有较好的抗攻击性,检测和提取易于实现,算法设计达到设计要求,设计任务完成。5总结 数字水印技术在多媒体,尤其是图像的内容认证中得到了广泛的使用,也引起了人们越来越多的重视。本文针对DCT域的图像数字水印进行了全面的学习和研究,实现了一个基于DCT域的图像数字水印,并模拟各种攻击验证该水印算法的鲁棒性。 在实验过程中,学习MATLAB的使用和编程;详细了解了数字水印的知识,从数字水印的发展历史到目前最新的研究方向,数字水印的特点、分类以及几种主要的算法都有涉及到;针对本课题,更主要的掌握了关于DCT域水印算法的设计和实现的相关知识,基于变换域的水印算法的设计方法,HVS在基于变换域水印算法设计中的应用,通用的水印测试方式和主要采取的攻击方式等等 。实验表明,基于DCT域的水印算法,可保证水印的不可见性,保持的健壮性,并易于应用。 总之,数字水印技术的研究是近几年发展很快也很活跃的领域,随着研究的深入,数字水印技术正在发展成一门颇有现实意义的技术学科,我们有理由认为,作为一门新的迅猛发展的技术,数字水印技术必将拥有一个美好的明天。6参考文献【1】.王炳锡,陈琦,邓峰森.数字水印技术.西安电子科技大学出版社.2003.7【2】.王家文,曹宇编著.MATLAB6.5图形图像处理.国防工业出版社.2004.7【3】.飞思科技产品研发中心编著.MATLAB6.5辅助图像处理.电子出版社.2003.1【4】.王爱铃等编著.MATLAB R2007.电子工业学出版社.2008.1【5】.杨忠泽.MAT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年哈尔滨幼儿师范高等专科学校单招职业适应性测试必刷测试卷及答案解析(名师系列)
- 2026年吉林省松原市单招职业倾向性测试题库及答案解析(夺冠系列)
- 2026年广东生态工程职业学院单招职业适应性考试必刷测试卷附答案解析
- 2026年上海师范大学单招职业适应性测试必刷测试卷附答案解析
- 2026年宁波大学科学技术学院单招职业技能测试必刷测试卷及答案解析(夺冠系列)
- 2026年浙江万里学院单招综合素质考试必刷测试卷带答案解析
- 2025年二手奢侈品售后服务五年体系建设报告
- 2026年杭州医学院单招职业倾向性考试题库附答案解析
- 2026年云南省迪庆藏族自治州单招职业适应性测试必刷测试卷及答案解析(夺冠系列)
- 2026年扬州工业职业技术学院单招综合素质考试题库及答案解析(夺冠系列)
- 9.2奉献社会我践行 课件-2025-2026学年统编版道德与法治八年级上册
- 委托购买股票协议书
- 口腔医师聘用协议书
- NCCN宫颈癌指南(2026.V2)解读报告课件
- 2024年全国职业院校技能大赛高职组(研学旅行赛项)考试题库(含答案)
- 提升员工工作积极性的方法与策略
- 2025南海农商银行秋季校园招聘笔试备考题库附答案
- 农村办酒场合同范本
- 2025年四川省拟任县处级领导干部任职资格试题及参考答案
- 全科医学科慢性病管理规范指南
- 化工反应器设计课件
评论
0/150
提交评论