版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-. z.单片机应用实习任务书学生:专业班级:指导教师:工作单位:题目:数字水印算法设计初始条件:计算机;matlab软件等。要求完成的主要任务:通过课程设计,培养学生根据需要选学参考书,查阅手册,图表和文献资料的自学能力,通过独立思考深入钻研有关问题,学会自己分析解决问题的方法。培养严谨的工作作风和科学态度,使学生逐步建立正确的生产观点,经济观点和全局观点。每个学生在课程设计选题中选做一个专题,学会用MATLAB 语言编写信号与系统及数字信号处理的仿真程序;认真分析每个题目的具体要求;上机前初步编好程序,上机时认真调试程序;课程设计完毕时提交符合格式要求的课程设计报告。学习掌握一种数字水印算
2、法,选择两幅图像分别作为图像和水印图像,采用水印嵌入算法成生含水印图像。采用水印提取算法,提取出嵌入水印。并对水印算法的鲁棒性进展测试。时间安排:2012年6月20日-2012年7月5日指导教师签名:年月日系主任或责任教师签名:年月日摘要.I Abstract . II1引言. 11.1选题背景. 11.2数字水印技术的研究动态. 22数字图像水印技术综述. 32.1数字水印的定义和根本原理. 42.2基于DCT域的数字水印技术. 52.3工具选择. 73系统实现. 93.1水印的嵌入算法. 93.2水印的提取算法. 94.MATLAB仿真. 94.1水印嵌入与提取程序运行结果. 104.2水
3、印攻击实验. 106总结. 147参考文献. 15附录:. 16随着数字技术和互联网技术的迅速开展,许多媒体都采用了数字化的储存方式,并且通过互联网来发布,这给信息的传播带来了很大的便利。但是数字媒体很容易被非法复制,其保护逐渐成为需要迫切解决的问题。数字水印技术被认为是解决此问题最有效的方法,作为保护的重要手段而得到了广泛的研究和应用,是信息领域的一个研究热点。数字水印技术涉及到大量图像处理算法数学计算工具等,用普通编程工具实现上述算法将要花费大量的时间。MATLAB语言是Math Works 公司推出的一种简单高效功能极强的高级语言,具有高性能数值计算能力和可视化计算环境许多复杂的计算问题
4、只需短短的几行代码就可在中实现。本文基于典型的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 brou
5、ght great convenience.However, digital media can be illegally copied, its copyright protection has bee 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 wid
6、ely 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 i
7、s Math Works pany introduced a simple efficient and highly functional language, with a high performance numerical ability and visual puting environment many ple* puting problems in only a few lines of code can realize in the.Based on the typical DCT discrete cosine transform digital watermarking alg
8、orithm, using MATLAB realize digital watermarking embedding and e*tracting and attack test.Keywords: digital watermarking, DCT, MATLAB1引言1.1选题背景数字水印技术是目前信息平安技术领域的一个新方向,是一种可以在开放的网络环境下保护和认证来源及完整性的新型技术。它是信息隐藏学的一个重要分支,它用信号处理的方法在多媒体数据中嵌入特制的隐蔽的标记,这种标记的嵌入不会引起宿主媒体主观质量下降,不易发觉,人们无法从外表上感知水印,只有专用的检测器或计算机软件才可以检测
9、出隐藏的数字水印,并且水印具有很强的对抗非法破解的能力。为了保护版机人的经济利益在数字作品上直接标识人的信息会明显损害作品的质量,而利用文件的附加信息标识又很不平安。相比之下,在不过多损害作品质量的前提下,使用数字水印技术将管理信息秘密嵌入数据中,是一个非常理想的解决方案。从学术研究角度而言,数字水印技术是一项横跨信息处理、图像处理、多媒体技术、密码学等多学科领域的高新技术前沿课题,包括数字水印在的信息隐藏技术尚未形成完整的学科理论体系。因此,这是一项重要的应用根底研究。同时它又是一项与实际应用密切结合的高新技术,其成果将成为拥有自主知识产权的技术,开展为具有自身特色的软件产品和专用芯片,随着
10、信息产业的开展,有着一份广阔的应用市场。数字水印的提出引起了学术界极大的兴趣,到现在短短的几年时间,就有大量的数字水印算法被提出来。则,如何既方便又高效的实现这些算法呢?数字水印算法涉及大量图像处理、数学计算等,如果仅仅采用普遍编程工具所提供的功能严实再次地花费大量的时间用在上述算法的编程及调试上。因此选择一种高性能的科学与工程计算软件是很在必要的。目前,在工程计算上应用十分广泛的MATLAB软件是首选的编程语言。MATLAB是一个适合多个学科使用的功能强大的软件,含有十分浩大的函数,MATLAB语言是Mathworks公司推出的一种简单、高效、功能极强的高级语言,具有高性能数值计算能力和可视
11、化计算环境。许多复杂的计算问题只需短短的几行代码就可在MATLAB中实现。本文介绍典型的数字水印算法,用MATLAB实现数字水印的嵌入、提取和攻击测试的方法。1.2数字水印技术的研究动态数字时代的到来,多媒体数字世界丰富多彩,数字产品几乎影响到每一个人的日常生活。信息媒体的数字化为信息的存取提供了极大的使得,同时也显著地提高了信息表达的效率和准确度。计算机网络通信技术特别是互联网的蓬勃开展,使得数据的交换和传输变成了一个相对简单且快捷的过程。人们借助计算机、数字扫描仪、打印机等电子设备可以方便、迅速地将数字信息传到达世界各地,在国际互联网上发布自己的作品,传递重要的信息,进展各种学术交流和电子
12、商务活动等等。如何保护这些与我们息息相关的数字作品,如保护、信息平安、数据认证以及访问控制等等,就被日益重视并变得迫切需要了。借鉴普通水印的含义和功用,人们采用类似的概念保护诸如数字图像、数字音乐、数字文本等这样的数据,因此数字水印在今天的计算机和互联网时代大有可为。数字水印技术是近十年才开展起来的,它是信息隐藏学的一个分支如图1.1。随着国信息化程度的提高和电子商务逐渐走向实用,数字水印技术将会拥有更加广阔的应用前景。图1.1信息隐藏技术的分类2数字图像水印技术综述数字水印是一种数字标记,可以是数字、序列号、文字、图像标志等标识或信息,一般包括所有者的标记或代码,以用能证实用户合法拥有数据的
13、用户代码等根本信息,将它秘密地嵌到数字产品中可能帮助识别确定产品的容、著作权、使用权、完整性等。水印技术与传统的信息加密都是把信息的保护转化为对密钥的保护。因此,水印技术沿袭了传统加密技术的一些根本思想和概念,但两者采用的保护信息手段不同:传统的加密算法一般是基于文本数据设计的,它把一段有意义的数据流转换成看起来没有意义的数据,如DESData Encryption Standard和RSA以三个创造者的首位字母命名。由于将明文数据加密成密文数据,使得在网络传递过程中非法拦截者无法从中获得信息,从而到达的目的。虽然,我们可以把媒体数据作为文本数据流一样对待,使用传统的加密算法进展加密,但是,多
14、媒体数据流具有的特性与文本数据的特性有很大不同。因此,目前的传统加密方法如DES、3-DES或RSA等也很难满足多媒体应用中的实时性等要求。而数字水印技术则是把一个有意义的信息隐藏在另一个称为载体信息的公开信息中,而可能的监测者或非法拦截者难以从公开信息中判断信息是否存在或截获信息,从而保证信息的平安。2.1数字水印的定义和根本原理从信号处理的角度看,在载体图像中嵌入数字水印可以视为在强背景即原始图像下叠加一个视觉上看不到的弱信号水印,由于人的视觉系统HVS,分辨率受到一定的限制,只要叠加信号的幅度低于HVS的比照度门限,HVS就无法感觉到信号的存在,因此,通过对载体对象作一定的调整,就有可能
15、在不引起人感知的情况下嵌入一些信息。所有水印系统都包括两个根本的构造模块:水印嵌入模块和水印提取或检测模块。数字水印技术实际上是通过对水印载体媒质的分析、嵌入信息的预处理、信息嵌入点的选择、嵌入方式的设计、嵌入调制的控制等几个相关技术环节进展合理优化,寻求满足不可感知性平安可靠性稳健性等诸条件约束下的最优化设计问题。水印嵌入模块水印嵌入模块就是把水印信号w嵌入到原始图像I,从而得到含水印信号Iw。水印嵌入过程如图2.1所示。图 2.1 水印嵌入框图水印提取或检测模块水印提取或检测就是判断*一数据中是否含有指定的水印信号,并可能恢复出水印信息。提取或检测算法主要是设计一个相应于嵌入过程的检测算法
16、。检测的结果或是原水印如字符串或图像等,或是基于统计原理的只能判断水印存在与否。检测方案的目标是使错判与漏判的概率尽量小。为了给攻击者增加去除水印的难度,目前大多数水印制作方案都在水印参加、提取时采用密钥,只有掌握密钥的人才能读出水印。水印的提取过程如图2.2所示,检测过程如图2.3所示。图2.2 水印提取框图图2.3 水印检测框图2.2基于DCT域的数字水印技术离散余弦变换Discrete Cosine Transform属于正交变换图像编码方法中的一种。正交变换图像编码始于1968年。当时安德鲁斯Andrews等人发现大多数自然图像的高频分量相对幅度较低,可完全舍弃或者只用少数码字编码,提
17、出不对图像本身编码,只对其二维傅立叶DFT系数进展编码和传输。但DFT是一种正交变换,运算量很大,常常使实时处理发生困难,第二年他们就用Walsh-Hadamard变换WHT取代DFT可以使运算量明显减少,这是因为WHT变换只有加减法而无需乘法。但是更有意义的是离散余弦变换和离散正旋变换的出现,它们具有快速算法,准确度高。其中最重要的是1974年提出的DCT,因为其变换矩阵的基向量很近似于托伯利兹矩阵的特征向量,而托伯利兹矩阵又表达了人类语言及图像信号的相关性。因此,DCT常常被认为是语音与图像信号变换的准最正确变换。图像是二维的,所以在研究时主要用到二维DCT,以及二维IDCT来对图像进展处
18、理。离散余弦变换DCT的定义数字图像*m,n是具有M行N列的一个矩阵。为了同时减弱或去除图像数据相关性,可以运用二维DCT,将图像从空间域转换到DCT变换域。根据定义,二维离散余弦变换DCT定义如下:Y(k,l)2MNM1N1c(k)c(l)*(m,n)cos(2m1)k2Mcos(2n1)l2N(1)m0n0式中m,k=0,1,M-1; n, l=0,1,N-1。其中函数c(k)11c(l)12k02k0k1,2,M1k1,2,N1二维逆离散余弦变换IDCT的定义如下: *(m,n)2MNM1N1K0L0c(k)c(l)Y(k,l)cos(2m1)k2Mcos(2n1)l2N(2)式中:m,
19、k=0,1,M-1; n,l=0,1,N-1。离散余弦变换的特点在基于DCT的变换编码中,图像是先经分块88或1616后再经DCT,这种变换是局部的,只反映了图像*一局部的信息。当然也可以对整幅图像的特点,但是运算速度比分块DCT要慢。图像经DCT后,得到的DCT图像有三个特点:一是系数值全部集中到0值附近从直方图统计的意义上,动态围很小,这说明用较小的量化比特数即可表示DCT系数;二是DCT变换后图像能量集中在图像的低频局部,即DCT图像中不为零的系数大局部集中在一起左上角,因此编码效率很高。三是没有保存原图像块的精细构造,从中反映不了原图像块的边缘、轮廓等信息,这一特点是由DCT缺乏时局域
20、性造成的。图像DCT变换后大局部参数接近于零,只有左上角的低频局部有较大的数值,中频局部参数值相对较小,而大局部高频参数值非常小,接近于零。2.3工具选择2.3.1 简介Matlab是当前在国外十分流行的工程设计和系统仿真软件包。它是MathWorks公司于1982年推出的一套高性能的数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一人方便的、界面友好的用户环境。Matlab的推出得到了各个领域专家、学者的广泛关注,其强大的扩展功能为各个领域的应用提供了根底。由各个专家学者相继推出了MATLAB工具箱,其中的信号处理(signal processing)、控制系统
21、(control system)、神经网络(neural network)、图像处理(image processing)、鲁棒控制(robust control)、非线性系统控制设计(nonlinear system control design)、系统辨识(system identification)、最优化(optimization)、模糊逻辑(fuzzy logic)、小波(wavelet)、通信(munication)、统计(statistics)等工具箱,这些工具箱给各个领域的研究和工程应用提供了有力的工具,借助于这些巨人肩上的工具,各个层次的研究人员可直观、方便地进展分析、计算及设
22、计工作,从而大节省了时间。研究数字水印的优点集成了DCT、DWT等函数有丰富的小波函数和处理函数,这不仅方便了研究人员,而且使源程序简洁明了、易实现。强大的数学运算功能。能够方便、高效地实现音频、视频中的大量矩阵运算。提供了图像处理工具箱、小波分析工具箱、数字信号处理工具箱。用来编制跨数字图像处理技术、数字信号处理等多学科的数字水印技术是非常好的选择。 MATLAB与目前最强大的编程工具Visual C+具有良好的接口。2.3.3 MATLAB函数介绍在介绍函数之前,我们必须明确一点:作水印程序时,处理的图像数据是二维信号,而声音信号是一维信号。这里,我们仅仅简单介绍与水印有关的函数。数据输入
23、输出函数imread和imwrite:可以读写bmp,jpg/jpeg, tif/tiff, png, hdf, pc*, w*d格式文件。读索引文件时,还可以得到相应的调色板数据。auread、auwrite、wavread和wavwrite:可以方便地读写au和wav文件,并可控制其中的位及频率。图像显示imshow():显示一幅图像;imfinfo():可以得到读入图像的信息。如文件的大小、格式、格式版本号、图像的高度、宽度、颜色类型真彩色,灰度图还是索引图等。变换频函数对信号采用不同的变换,是实现频域法水印的至关重要的一步,MATLAB中对一维信号和二维信号分别提供了各种变换和逆变换函
24、数。离散余弦变换DCTdct(),dct2():分别实现一维信号和二维信号的DCT离散余弦变换;idct(),idct2():分别实现一维信号和二维信号的IDCT逆向离散余弦变换;攻击函数对算法进展攻击测试是对水印鲁棒性检测的一种重要手段,一个好的水印算法必须经过各种攻击测试才能对之做出客观的评价。MATLAB中的许多函数可以直接用来做攻击测试。剪裁:imcrop()可以按准确定位的各点坐标进展剪裁;jpeg压缩:imwrite()中jpg和quality参数能对图像进展可控jpg压缩;加各种噪声:imnoise()可以对图像参加各种噪声,如白噪声、椒盐噪声等,参加噪声是对水印鲁棒性考验的一种
25、常见的攻击;放大/缩小:imresize()可以以指定的插值方法来对图像进展放大和缩小 3系统实现3.1水印的嵌入算法设*=f*,y为原始宿主图像,大小为McNc;flag为水印图像,大小为MmNm。Mc、Nc分别是Mm、Nm的偶数倍。水印的嵌入步骤如下: Step1:将原始宿主图像分成互不覆盖的子块,块的大小为8*8,记为*m=fm(*,y)。其中m=1,2,Mc/8*(Nc/8),0*,y8。mStep2:并根据载体图像的块数,将大小为M覆盖的子块,块的大小为M、Nm水印图像w(*,y)分成互不*8/Mc*(Nm*8/Nc),记为Wm=wm(*,m y)。Step3:将载体图像块逐一DCT
26、变换,记为Ym=DCT(*m)=Fmu,v,其中Fm(u,v)为第m个图像离散余弦变换后空间频率u,v处的大小。Y为从Fm(u,v)中频选出的加载的位置,1rM为水印Wm= wm(*,m*8/Mc*(Nm*8/Nc);Wb(r) y)位置坐标。按照加法准则,将水印块嵌入其中。公式如下:YrWb(r)。其中,为强度因子,然后用Yr来代替嵌入水印后的DCT中频系数。Step4:对各子块DCT反变换,得到嵌入水印后的图像*f(*,y)。 3.2水印的提取算法水印提取是水印算法中的关键局部,是水印嵌入的逆过程。水印提取过程如下:首先将含水印图像分别分成互不覆盖的子块,块的大小为88,记为*m=f(*,
27、y)。其中m=1,2, Mc/8*(Nc/8),0*,y8对每一个子块进展二维DCT反变换,然后提取水印嵌入位置的中频系数,利用公式wb(r)=Yr/计算出水印信息,最后合并成整图。4.MATLAB仿真MATLAB中对一维信号和二维信号分别提供了各种变换和逆变换函数。例如dct()、dct2()分别实现一维信号和二维信号的DCT离散余弦变换,idct()、idct2()分别实现一维信号和二维信号的IDCT(逆向离散余弦变换)。它们是实现频域水印算法必不可少的工具。下面以256256的灰度图像lena为原始宿主图像、以3232的二值图像flag为水印图像为例,给出利用MATLAB实现数字水印的过
28、程。4.1水印嵌入与提取程序运行结果原始公开图像水印图像含水印的图像提取的水印图4.1水印嵌入与提取比拟【含水印的图像】和【原始公开图像】,仿真结果说明,嵌入水印后图像仍有很好的视觉效果,水印对原始图像的视觉表达几乎没有影响,以至于不易觉察。比拟【水印图像】和【提取的水印】,仿真结果说明,从图像中提取出来的水印图像可以清晰精准识别,验证了嵌入和提取算法的稳定性和有效性。4.2水印攻击实验由于数字水印在实际应用中可能会遭到各种各样的攻击,因此对算法进展攻击测试是衡量一个水印算法优劣的重要手段,并测定提取前后水印的峰值信噪比PSNR和相关性。压缩攻击imwrite(J1,watermarked1.
29、jpg,jpeg,quality,40)没受攻击的图像压缩攻击后的图像原始水印图像压缩攻击后提取的水印图4.1 压缩攻击实验相关系数为: 0.98265 信噪比为: 64.00000攻击后的图像及压缩攻击后提取出的水印清晰可辨,相关系数趋近于1,信噪比也较高,说明算法的抗压缩攻击性能良好噪声攻击1高斯噪声攻击实验I2=imnoise(J2,gaussian,0,0.002);没受攻击的图像加高斯噪声攻击后的图像原始水印图像加高斯噪声攻击后提取的水印图4.2 高斯噪声攻击实验相关系数为: 0.91698 信噪比为: 10.89362参加均值为0,方差为0.002的高斯噪声后图像微变模糊,攻击后提
30、取出来的水印有较大变化,虽然模糊但仍可辩认,相关系数接近1,信噪比为10.89362,说明算法具有较好的抗高斯噪声性能。2椒盐噪声攻击实验I3=imnoise(J3,salt & pepper,0.02);没受攻击的图像加椒盐噪声攻击后的图像原始水印图像加椒盐噪声攻击后提取的水印图4.3 椒盐噪声攻击实验相关系数为: 0.83024 信噪比为: 6.02353参加强度为0.02的椒盐噪声后,图像出现许多黑白小斑点,攻击后提取的水印也出现许多斑点,但仍勉强可以识别出来,相关系数为0.83024,信噪比6.02353,说明算法能有效抵抗椒盐噪声的攻击。剪切攻击I4(1:100,1:100)=255
31、;没受攻击的图像剪切攻击后的图像原始水印图像剪切攻击后提取的水印图4.4剪切攻击实验相关系数为: 1.00000 信噪比为: 29.25714对图像进展剪切攻击,剪切去图像的一个角,提取出的水印清晰可辨,但也缺了一个角,相关系数到达1,信噪比高达29.25714,说明算法抗剪切攻击性能良好,但剪切程度越高,水印也会丧失越高。缩放攻击1缩小攻击实验I5=imresize(J5,0.5);图4.5缩小攻击实验相关系数为: 1.00000 没有噪声对图像进展缩小处理后,提取出来的水印清晰可辨,相关系数到达1,说明算法具有优秀的抗缩小攻击性能。2放大攻击实验:没受攻击的图像放大攻击后的图像原始水印图像
32、放大攻击后提取的水印图4.6放大攻击的图片图4.7 放大攻击实验结果相关系数为: 1.00000 没有噪声对图像进展放大处理后,提取出来的水印清晰可辨,相关系数到达1,说明算法具有优秀的抗放大攻击性能。6总结数字水印技术在多媒体,尤其是图像的容认证中得到了广泛的使用,也引起了人们越来越多的重视。本文针对DCT域的图像数字水印进展了全面的学习和研究,实现了一个基于DCT域的图像数字水印,并模拟各种攻击验证该水印算法的鲁棒性。在实验过程中,学习MATLAB的使用和编程;详细了解了数字水印的知识,从数字水印的开展历史到目前最新的研究方向,数字水印的特点、分类以及几种主要的算法都有涉及到;针对本课题,更主要的掌握了关于DCT域水印算法的设计和实现的相关知识,基于变换域的水印算法的设计方法,HVS在基于变换域水印算法设计中的应用,通用的水印测试方式和主要采取的攻击方式等等。实验说明,基于DCT域的水印算法,可保证水印的不可见性,保持的强健性,并易于应用。总之,数字水印技术的研究是近几年开展很快也很活泼的领域,随着研究的深入,数字水印技术正在开展成一门颇有现实意义的技术学科,我们有理由认为,作为一门新的迅猛开展的技术
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论