基于Matlab的数字水印设计——基于DCT域的水印实现课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要
数字水印(Digital Watermark)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。随着数字水印技术的发展,数字水印的应用领域也得到了扩展,数字水印的基本应用领域是版权保护、隐藏标识、认证和安全不可见通信。
当数字水印应用于版权保护时,潜在的应用市场在于电子商务、在线或离线地分发多媒体内容以及大规模的广播服务。数字水印用于隐藏标识时,可在医学、制图、数字成像、数字图像监控、多媒体索引和基于内容的检索等领域得到应用。数字水印的认证方面主要ID卡、信用卡、ATM卡等上面数字水印的安全不可见通信将在国防和情报部门得到广泛的应用。
本文主要是根据所学的数字图象处理知识,在MATLAB环境下,通过系统编程的方式,建立并实现基于DCT域的数字水印加密系统。该系统主要包含数字水印的嵌入与提取,仿真结果表明,数字水印算法具有有效性、可靠性、抗攻击性、鲁棒性和不可见性,能够为数字媒体信息在防伪、防篡改、认证、保障数据安全和完整性等方面提供有效的技术保障。
关键词:数字水印;MATLAB;DCT
目录
1 课程设计目的 (1)
2 课程设计要求 (2)
3 数字水印技术基本原理 (3)
3.1 数字水印基本框架 (3)
3.2 算法分类 (3)
3.2.1 DCT法 (4)
3.2.2 其他方法 (4)
3.3 实际需要考虑的问题 (4)
3.3.1 不可见性 (4)
3.3.2 鲁棒性 (5)
3.3.3 水印容量 (5)
3.3.4 安全性 (5)
4 基于DCT变换仿真 (6)
4.1 算法原理 (6)
4.1.1 准备工作 (6)
4.1.2 选取8*8变换块 (7)
4.1.3 边界自适应 (7)
4.1.4 DCT变换与嵌入 (7)
4.1.5 恢复空域 (8)
4.2 嵌入算法扩展 (8)
4.2.1 RGB彩色图像三个矩阵的划分 (8)
4.2.2 八色彩色水印 (8)
4.3 水印的提取 (9)
4.4 仿真程序 (9)
5 结果分析 (14)
结束语 (16)
参考文献 (17)
1 课程设计目的
数字水印技术是用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。
在数字水印技术中,水印的数据量和鲁棒性构成了一对基本矛盾。从主观上讲,理想的水印算法应该既能隐藏大量数据,又可以抗各种信道噪声和信号变形。然而在实际中,这两个指标往往不能同时实现,不过这并不会影响数字水印技术的应用,因为实际应用一般只偏重其中的一个方面。如果是为了隐蔽通信,数据量显然是最重要的,由于通信方式极为隐蔽,遭遇敌方篡改攻击的可能性很小,因而对鲁棒性要求不高。但对保证数据安全来说,情况恰恰相反,各种保密的数据随时面临着被盗取和篡改的危险,所以鲁棒性是十分重要的,此时,隐藏数据量的要求居于次要地位。
数字水印技术是通过一定的算法将一些标志性信息直接嵌到多媒体内容当中,但不影响原内容的价值和使用,并且不能被人的知觉系统觉察或注意到。水印信息可以是作者的序列号、公司标志、有特殊意义的文本等,可用来识别文件、图像或音乐制品的来源、版本、原作者、拥有者、发行人、合法使用人对数字产品的拥有权。
与加密技术不同,数字水印技术并不能阻止盗版活动的发生,但它可以判别对象是否受到保护,监视被保护数据的传播、真伪鉴别和非法拷贝、解决版权纠纷并为法庭提供证据。总的来说,数字水印可以携带有版权保护信息和认证信息,保护数字产品的合法拷贝和传播。
2 课程设计要求
利用所学的数字图像处理技术,建立并实现基于DCT的数字水印加密系统,利用MATLAB软件系统来实现水印的嵌入和提取,并对算法的不可见性、鲁棒性进行测试。
具体要求:
(1)熟悉和掌握MATLAB程序设计方法;
(2)学习和熟悉MATLAB图像处理工具箱;
(3)学会运用MATLAB工具箱对图像进行处理和分析;
(4)能对图像jpg格式进行打开、保存、另存、退出等功能操作;
(5)利用所学数字图像处理技术知识、MATLAB软件对图像进行水印的嵌入和提取;
(6)在程序开发时,清楚主要实现函数目的和作用,需要在程序书写时做适当注释说明,理解每一句函数的具体意义和使用范围;
(7)每个程序都必须做到功能仿真成功,运行结果以图片的形式粘贴到报告中。
3 数字水印技术基本原理
3.1 数字水印基本框架
一个数字水印系统一般包括三个基本方面:水印的生成、水印的嵌入和水印的提取或检测。数字水印的嵌入和提取的一般过程基本框架如图3.1,图3.2所示。
图3.1 水印嵌入的一般过程基本框架
图3.2 水印检测的一般过程基本框架 3.2 算法分类
根据水印实现方法不同,数字水印可分为空(时)域数字水印和频域数字水印。
空域数字水印是直接在信号空间上叠加水印信号,而频域法加入数字水印的原理是首先将原始信号(语音一维信号、图像二维信号)变换到频域,常用的变换一般有DWT 、DCT 、DFT 、WP 和分形。然后,对加入了水印信息的信号进行频域反变换(IDWT 、IDCT 、DFT 、WP ),得到含有水印信息的信号。
频域法检测水印的原理是将原始信号与待检测信号同时进行变换域变换,比较两者的区别,进行嵌入水印的逆运算,得出水印信息。如果是可读的水印,那么就此结束,如果是不可读水印,如高斯噪声,就将得出的水印与已知水印作比较,由相关性判断,待检测信号含不含水印,故水印的检测有两个结束点。
频域法有以下优点:嵌入的水印信号能量可以分布到空域的所有像素上,有利于保证水印的不可见性;视觉系统(HVS )的某些特性(如频率的掩蔽特性)可以更方便地结合到水印编码过程中;频域法可与国际数据压缩标准兼容,从而水印生成算法(G) 数字水印(W )
原始载体数据(J) 水印嵌入算法(E ) 私钥/公钥(K)
嵌入水印后的数据(I W ) 待检测数据(I W ) 水印检测算法(D ) 私钥/公钥(K)
估计水印(W )/相似度检测(Sim ) 数字水印(W)/原始数据(I )