1、编号本科生毕业设计(论文)题目: 基于离散小波变换的数字水印算法 物联网工程 学院 电子信息工程专业摘 要随着网络通信的飞速的发展以及多媒体技术的广泛应用,数字产品版权的保护问题变得越来越重要。数字水印技术已成为解决数字多媒体版权问题的主要工具。目前基于小波域的算法有很多,有简单的直接在经过小波变换的分量中嵌入水印,有两域结合的水印算法等,其中基于小波变换(DWT)和奇异值分解(SVD)结合的算法可以充分利用DWT的多分辨率特性和SVD所固有的特征小波变换的多分辨率特性可根据各自的重要程度对图像进行分级处理,奇异值分解的奇异值的稳健性是一种内蕴特性,都增强了水印的不可见性和鲁棒性本文分析讨论了
2、数字水印技术的基本原理、典型算法几数字水印攻击方法,研究了一种基于离散小波变换的数字水印算法。该算法使用推广的Arnold变换对水印进行置乱,提高了水印的安全性;利用人类视觉系统确定水印的嵌入强度,提高了水印的不可感知性;实现了树荫的忙提取,增强了算法的适用性。本文对所提出的算法进行了仿真实验,并进行了性能分析。实验结果表明,本文所研究的算法具有良好的鲁棒性,同时也很好地保证了水印的不可感知性。关键字:数字水印;离散小波变换;图像置乱;人类视觉特性AbstractABSTRACTWith the rapid development of network communication and br
3、oad appkication of multimedia techniligy,copyright protection of digital median work is becoming more and more important.Digital watermarking is viewed as an effective tool for copyright protection of multimedia data.Now algorithms based on DWT have many, including embedding watermark directly after
4、 DWT,combining two domains and so on.The algorithms based on DWT and SVD can take full account of characteristic of the multi-resolution of DWT and inherent factors of SVD.The characteristic of the multi-resolution of DWT can process an iamge at rated according to their important points,and the valu
5、es of SVD is very robust.All which enhance the invisibility and robustness.At first the principle,typical algorithms and attack analysis of digital watermark is described.Then,a watermarking algorithm based on DWT is proposed.the watermark image is scrambled by a generalized Arnold transform so as t
6、o improve the security of the watermark;the watermark is embedded into the middle-frequency subband which guarantees the robustness of the algorithm;In order to implement the blind extraction,this paper improves an embedding algorithm based on HVS,which enhances the applicability of the algorithm.Th
7、is paper tests the algorithm,and quantity of experiment data shows that algorithm has good robustness,and the imperceptibility of watermark can be guaranteed at the same time.Keywords: digital watermark;DWT;image scrambling;HVS目录目 录摘 要IABSTRACTII目 录I第1章 绪论11.1选题背景及意义11.2 数字水印概述11.2.1数字水印的基本特征21.2.2
8、数字水印的国内外研究现状31.3本文的研究内容3第2章 数字图像水印算法与抗攻击性能分析52.1 数字图像水印系统的基本模型52.2水印攻击62.3 水印的检测与评价6第3章 基于DWT-SVD分解的水印算法的设计93.1小波变换的基本理论93.1.1小波分析93.1.2小波变换对信号的处理103.2 基于DWT-SVD分解的水印嵌入算法103.3 基于DWT-SVD分解的水印提取算法13第4章 MATLAB仿真结果154.1 仿真实验154.2 抗攻击性能分析184.3 小结24第5章 结论与展望255.1结论255.2不足之处及未来展望25参考文献27致 谢28附录A: 程序代码29373
9、7基于离散小波变换的数字水印算法第1章 绪论1.1选题背景及意义随着多媒体数据在网上交易和传送的日益增多,由于数字信息极易被篡改、复制与散布,如何对数字作品的知识产权进行保护已经成为迫切需要解决的问题。对数字产品的保护最初是通过加密来完成的,但这种方法至少有两个问题:首先,加密算法存在被破解的可能性,而且一旦被破解,将没有办法证明产品的所有权。另外,加密将影响数字产品的传播,限制了数字产品迅速发展的优势。新近出现的水印技术正好对这方面的问题进行了很好的探索,它是将具有确定性和保密性的信息直接嵌入到原始数据并作为原始数据的一部分而保留在其中,因而即使在解密之后仍可以跟踪数据的复制和传输,对媒体数
10、据进行有效的保护。 作为数字水印嵌入方法,离散小波变换(DWT)越来越受到研究人员的重视,DWT方法的优点是不仅可以将图像分解到频域中,同时还保留了图像在空间上的分布。这对于加强数字水印以及有损压缩和局部剪裁等的鲁棒性是非常有效的,另一方面小波变换的多分辨率分析和人的视觉特性能较好匹配,因此,从水印可见性的角度讲,DWT也更接近HVS的要求。数字水印技术可以对多媒体信息进行有效地保护,但由于该技术的研究涉及了图像和信号处理、密码学、现代通信技术、编码理论以及神经审理学等众多领域,是一门多学科交叉的学科,因此给研究工作带来了一定的难度。尽管目前国内外数字水印技术的研究者正在努力建立一个相对完善的
11、、能够提供普遍指导意义的理论基础,但就目前状况而言,这项工作还远远没有达到令人满意的地步。无论是在国内还是在国外,数字水印技术的研究都还不成熟,从理论导刊应用都还处于发展的初级阶段,还有很多问题有待于解决。因此,不论从理论角度还是从应用角度来看,开展数字水印技术的研究,不仅具有重要的学术意义,还有机器重要的经济意义。1.2 数字水印概述Cox等把水印定义为“不可感知地在作品中嵌入信息的操作行为”2;杨义先等认为“数字水印是永久镶嵌在宿主数据中的具有可鉴别性的数字信号或模式,并且不会影响宿主数据的可用性”3大部分学者认为所谓数字水印技术,就是将数字水印嵌于一个宿主载体中,不被觉察到或者不易被注意
12、到,而且同时不影响宿主载体的视觉效果和使用价值,宿主载体可以是图像、声音、文字、符号和数字等一切可以作为标记和标识的信息数字水印技术实际是利用数字产品的信息冗余性,把与多媒体内容相关或不相关的一些标识信息直接或间接嵌入多媒体内容中,通过对水印的检测和分析保证数字信息的完整可靠性,从而成为知识产权和数字多媒体防伪的有效手段1.2.1数字水印的基本特征不同的用途,对于数字水印的要求各不相同,通常我们要求数字水印应具有如下基本特征4 5:(1) 安全性数字水印能抵抗各种蓄意的攻击,主要是指水印不容易被复制和伪造的能力,以及不易被非法检测的能力必须能够唯一地标志原始图像的相关信息,任何第三方都不能伪造
13、他人的水印图像(2) 不可感知性在宿主数据中隐藏的数字水印应该是不能被感知的,即加入水印后宿主数据不能有视觉质量的下降,与原始数据对比,很难发现二者的差别不可感知包括两方面的含义,一个是指感官上的不可感知,一个指的是统计上的不可感知感官上的不可感知就是指从人类的感官角度看,嵌入水印的数据与原始数据之间完全一样,通过人的视觉、听觉无法觉察宿主数据中因嵌入数字水印而引起的变化统计上的不可感知性是指,对大量的用同样的方法经过水印处理过的数据产品,即使采用统计方法也没有办法确定水印是否存在(3) 可证明性数字水印能够为宿主数据的产品归属问题提供完全和可靠的证据数字水印可以是已经注册的用户号码产品标志或
14、者有意义的文字等,它们被嵌入到宿主数据中,需要时可以将它们提取出来,判断数据是否受到保护,并能够监视被保护数据的传播以及非法复制,进行真伪鉴别等一个好的水印算法应该能够提供没有争议的版权证明(4)水印容量水印容量又称为数据有效载荷,是指在单位时间内或在一个作品中,在某些场景下有效编码的比特数大多数的算法水印容量都比较小,大的水印容量加大了算法设计的难度为抵抗各种变换,水印通常需要在数字媒体中按照一定的排列方式反复加入多次,当水印信息本身较大时,会导致重复次数减少,同时就会导致检测结果的不可靠(5) 鲁棒性数字水印应该很难被去除在不能得到水印的全部信息(如水印数据、嵌入算法、嵌入位置、嵌入密钥等
15、)的情况下,只知道部分信息,应该没有办法完全去除水印,任何试图完全破坏水印的操作将对载体的质量产生严重破坏,使得载体数据无法使用一个好的水印算法应该对信号处理、通常的几何变形,以及恶意攻击具有鲁棒性衡量一个水印算法的鲁棒性,通常使用下面这样一些处理滤波、平滑处理水印应该具有低通特性,低通滤波和平滑处理应该无法删除水印数据压缩处理图像、声音、视频等信号的压缩算法是去掉这些信号中的不重要部分通常水印的不可感知性就是将水印嵌入在宿主数据对感知不敏感的部位,而这些不敏感的部位经常是被压缩算法所去掉的部分所以,一个好的水印算法应该将水印嵌入在宿主数据的最重要部分,使得任何压缩处理都无法将其去除当然这样做
16、可能会降低宿主数据的质量,但是只要适当选取嵌入水印的强度,就可以使得水印对宿主数据质量的影响尽可能的小,不至于引起察觉几何失真目前的大部分水印算法对几何失真处理都非常脆弱,水印很容易被擦除几何失真包括图像尺寸大小的变化、图像旋转、裁剪、删除或添加等量化与增强水印应该能够抵抗对宿主数据信号的A/D、D/A转换、重采样等处理,以及一些常规的图像操作,如图像在不同灰度级上的量化,亮度与对比度的变化、图像增强等,都不应该对水印产生严重的影响1.2.2 数字水印的国内外研究现状在国外,自从1994年的IEEE国际图像处理会议上,R.G.sehyndel等人第一次明确提出了“数字水印”的概念以来,数字水印
17、技术有着突飞猛进的发展,1992年的关于水印文章只有两篇,到1998年就猛增到103篇并且越来越多有影响的国际会议(如IEEE ICIP、IEEE ICASSP、ACM Multimedia等)以及一些国际权威杂志(如Proceedings of IEEE、Signal Processing、Communications ofACM等)相继出版了数字水印的专辑研究数字水印的机构,如麻省理工学院的媒体实验室、明尼苏达大学、普林斯顿大学、南加州大学等,以及NEC公司、IBM公司等,都一直在致力于信息隐藏技术方面的研究,并已取得了大量研究成果基于小波变换的数字水印同时也在不断的发展和进步,Kunde
18、r等人最早提出将水印嵌入到DWT(DiscrctewaveletTransform)域,其算法首先将图像和水印进行小波变换,然后将特定子带的水印信号缩放后嵌入到相应图像子带上,最后经过小波逆变换得到嵌入水印后的图像现在基于DWT域的数字水印不仅能够应用于图像,以及在语音和视频文件中也有较好的效果而且小波变换和基于空域的水印算法比较,在抗干扰,鲁棒性等方面有更好的效果在国内,小波变换的研究也很广泛文献9通过对图像矩阵奇异值分解( SVD) 的分析,提出一种基于SVD的数字水印方案该方法将高斯随机序列作为水印进行嵌入, 通过相关检测判断水印存在与否,对几何攻击具有很强的鲁棒性周波提出了基于奇异值分
19、解的抗几何失真的数字水印算法,算法很新颖,但是该算法在抵御其它一些攻击上效果不是很理想,如噪声攻击和JPEG压缩等陶锋提出了基于DWT-SVD的图像盲水印研究,将水印嵌入到一级DWT变换后的低频分量进行分块再作奇异值分解的奇异值当中张割,左运兴提出的基于DWT- SVD 分解的数字水印方案,将载体图像进行一级DWT变换后,将水印的奇异值嵌入到低频和高频分量当中1.3本文的研究内容本文研究一种新的基于小波变换和奇异值分解的水印方案:对载体图像进行多尺度小波变换,将作为水印的灰度图像先作Arnold变换的置乱处理,将变换后水印图像的奇异值嵌入到载体图像的最后一级小波变换的不同分量的奇异值中并且考虑
20、到奇异值的第一个值对载体图像有很大的影响,对第一个奇异值的破坏不能过大而采用嵌入强度小于其它系数的技术手段将经过置乱的水印图像进行奇异值分解的奇异值嵌入到小波变换的低频和中高频的奇异值中,嵌入的信息量少,鲁棒性更强,安全性更好实验表明,该方法抗几何失真,对一般的图像处理操作具有较强的鲁棒性在误码率较高的情况下,仍能达到较高的峰值信噪比和相关性并且对水印图像采用了置乱技术,加强了安全性基于离散小波变换的数字水印算法第2章 数字图像水印算法与抗攻击性能分析2.1 数字图像水印系统的基本模型图像数字水印系统的基本思想是在一幅宿主图像(原始图像)中嵌入一个秘密信息(即水印),而且要保证水印是不可觉察而
21、且安全的,在知道水印嵌入过程中所有或部分密钥的情况下,应该可以恢复或检测出嵌入的秘密信息数字图像水印处理过程主要包括水印生成、嵌入和检测三个步骤而整个水印系统还应该包括外界的攻击过程整个数字图像水印系统的基本模型如图2-1所示,图中的虚线表示对应项可以参与操作也可以不参与操作数字水印生成过程G的输入为原始信息m、原始图像和水印生成密钥K1,输出为待嵌入载体的数字水印w当然,在水印生成过程中也可以直接由密钥生成水印序列而不需要原始信息人们通常采用的水印形式是二进制序列,例如:由伪随机序列发生器产生的伪随机二进制序列信号有时候,数字水印并不是通过生成算法生成的,而是直接将给定有意义的图形或图标作为
22、数字水印在水印嵌入过程中,原始图像x,水印w以及嵌入密钥K2经过嵌入函数E,生成含水印图像xw需要注意,尽管图中的生成密钥和嵌入密钥都有虚线表示,但是为了保证水印算法的安全性必须确保至少有一个过程使用密钥通常,嵌入函数E用插入操作符作用在一组特征集F(x)来描述,见式(2-1): (2-1)在变换域算法中,位于特征集F(x)中的特征是图像的变换域系数(例如离散余弦变换、离散傅立叶变换或小波系数等)而在空域算法中,水印被嵌入在图像的亮度或色度分量中一旦生成含水印图像xw,该图像将在一定的媒介中传输或流通,一定会受到一些有意或无意的攻击,从而得到可疑图像通常把根据检测密钥K3(有时还需要原始图像x
23、和原始水印w)判断可疑图像是否存在水印的过程称为水印检测,而把根据提取密钥 K3 (有时还需要原始图像x)提取可疑图像中的水印的过程称为水印提取通常,在包含水印生成的水印处理系统中,在提取出水印后有时还需要根据水印生成密钥K1对应的解码密钥K4恢复所嵌入的信息,这个过程就是水印的解码过程有时,提取的水印没有感知上的含义,这时需要计算水印和原始水印w之间的相关系数来判断水印的有无,这个过程相当于先提取后检测为了描述方便,通常人们把这三个概念统称水印解码或水印检测检测或提取密钥K,可以与嵌入密钥K2相同也可以不相同;解码密钥K4也可以与生成密钥相同也可以不相同在水印提取情况下,解码函数D作用于需要
24、确定版权的可能受损的图像,并从的特征中恢复水印,见式(2-2): (2-2)同时,在水印恢复的过程中,是否要求助于原始图像,对数字水印的鲁棒性以及安全性等方面都有不同的影响明检测(有原始图像参与检测)的水印算法具有较强的鲁棒性14.原始 图像x原始信息m生成算法G嵌入算法E攻击算法A检测/提取/解码算法D生成密钥K1嵌入密钥K2检测/提取密钥K3解 码密钥K4直接给定水印水印存在?2.2水印攻击对含有水印图像的常见的攻击方法分为有意攻击和无意攻击两大类有意攻击一般分为以下几类:伪造水印的抽取,多重水印,伪造的肯定检测,统计学上的水印抽取无意攻击是可以通过改善水印系统来解决的,依照Stirmar
25、k和Checkmark等常用的水印测试基准程序,无意攻击通常有:剪切,亮度和对比度的修改,增强,模糊和旋转,在图像中添加噪声,有损压缩,如JPEG压缩,放大、缩小和旋转等对于这些攻击,好的水印系统需要具有一定的鲁棒性,即经过这些攻击还能够保证水印的正确检测和提取,从而能达到保护的目的2.3 水印的检测与评价数字水印的基础就是人眼对图像信号的不敏感性人眼对图像有很大的感觉冗余,图像信息隐藏就是要求在视觉没有异常感觉的情况下,将信息嵌入到图像中,水印嵌入隐藏的信息是水印信息,可以看作是信息隐藏的一个特例一般来说,对于相同的隐藏算法,载体图像中嵌入的信息量越大,对宿主数据的修改就越大,图像的视觉效果
26、就越差换句话说,对于同一个嵌入算法,载体图像数据的改变程度与嵌入的数据量是成正比关系的,嵌入的数据量大,载体图像的视觉效果改变就大,嵌入的数据量小则载体图像的视觉效果改变就小但是对于不同的嵌入算法,嵌入的数据量大小就不一定与载体图像视觉效果有特别直接的关联也就是说,对于不同的嵌入算法,可以做到嵌入的数据量有多有少,对载体图像数据的改变程度也不一样,但二者最后得到的视觉效果却可以相差不大因此,一个好的水印嵌入算法,应该是能够在引起视觉感知最小的情况下嵌入较多的信息要对一个水印算法的优劣评价,应该建立对水印的评价准则它不仅包括对水印鲁棒性的评价,还应该包括水印的嵌入而引起的载体失真的主观和客观评价
27、水印的鲁棒性取决于这样几个因素:水印嵌入强度,嵌入信息的数量等嵌入的信息越多,水印的鲁棒性就越低水印嵌入的强度越大,则鲁棒性越高而水印的嵌入强度和水印的可感知性之间有一个折衷,水印健壮性高,就需要更强的嵌入,这反过来提高了水印的可感知性误码率是表征鲁棒性强弱的一个指标,它能够直观的给出水印的鲁棒性强度因此,设计水印算法时要有一个公平合理的评价和比较,评价过程中要考虑水印的可感知性通常有两种方法对水印的可感知性进行评价,一个是主观测试,另一个是客观度量本文是将视觉上可以直观认知的灰度图像作为水印,所以人眼的主观评价可以作为水印抽取的一个评价标准除此之外,本文主要从三个方面来比较全面和比较可观地检
28、测和评价水印的性能(1) 相关性相关系数nc是一个作为评价水印抽取算法的客观标准,设原始水印为W,提取出来的水印为,相关系数如式(2-3)所示: (2-3)相关系数在0,1之间,其值越大,水印鲁棒性越好如果该相关系数nc超过某一个阈值,就判定图像中存在此灰度水印图像(2) 峰值信噪比一般来说,信噪比SNR(Signal to Noise Ratio)与峰值信噪比PSNR(Peak Signal to Noise Ratio)是最通行的评定信号品质的指标由于水印模型是与通信系统模型紧密联系的,相对与原始作品来说,水印信号可以认为是随机噪声,有噪声就会影响原始作品的品质,也自然存在SNR和PSNR
29、在具体应用中,由于SNR的计算比较复杂,所以一般用PSNR代替SNR,主观上可以容忍的PSNR值都在20dB以上在图像处理和水印不可见性评价中,用式(2-4)对加水印的图像的PSNR进行定义 (2-4)其中,D是信号的峰值,M和N分别是图像矩阵的行列数,是原始图像坐标上的像素值,是含水印图像坐标上的像素值(3)误码率本文还选用另外一个指标,即误码率(Bit Error Rote)来评价水印的鲁棒性就是指攻击后含提取水印图像错误比特位数占原水印总比特位数的比例,如式(2-5)所示: (2-5)式2-5中,D表示含水印图像攻击后和攻击前不同比特位的数目N为水印图像的总比特位数目基于离散小波变换的数
30、字水印算法第3章 基于DWT-SVD分解的水印算法的设计3.1小波变换的基本理论3.1.1小波分析小波变换是一种信号的时间-尺度(时间-频率)分析方法,它具有多分辨率分析(Multiresolution Analysis)的特点小波分析方法是一种窗口大小(即窗口面积)固定但其形状可改变,时间窗和频率窗都可以改变的时频局部化分析方法在低频部分具有较高的频率分辨率和较低的时间分辨宰,在高频部分具有较高的时间分辨率和较低的频率分辨率,所以它被誉为数学显微镜正是这种特性使小波变换具有对信号的自适应性原则上讲,传统上使用傅里叶分析的地方,都可以用小波分析取代设表示平方可积的实数空间,即能量有限的传导空间
31、,其傅里叶变换为当 满足允许条件(Admissible Condition)式(3-1): (3-1)时,可以称为一个基本小波或母小波(Mother Wavelet)将母函数经伸缩和平移后,就可以得到一个小波序列对于连续的情况,小波序列如式(3-2): (3-2)式中,a为伸缩因子,b为平移因子对于任意的函数的连续小波变换的描述如式(3-3)所示: (3-3)其逆变换如式(3-4)所示: (3-4)对于离散的情况,小波序列如式(3-5)所示: (3-5)如果成立,则可以称系数的集合为函数f的离散小波变换3.1.2小波变换对信号的处理(1) 二维小波变换二维小波变换的基本思想就是把数字图像进行多
32、分辨率分解,分解成不同空间、不同频率的子图像,然后再根据各个子图像的特点有针对性的进行处对一幅图像的三级小波分解示意如图3-3 所示HL2HL3HH1LH1HL1HH2LH2HH3LH3LL3图3-3三重小波分解示意图 每一级分解都把图像分解为四个频带:水平(HL)、垂直(LH)、对角(HH)和低频(LL),其中低频(LL)部分还可以进行下一级的分解一幅图像经过分解之后,图像的主要能量主要集中于低频部分,这也是视觉重要部分; 而图像的高频部分即图像的细节部分所含能量较少, 分布在HL,LH,HH 三个子图中,主要包含了原图的边缘和纹理部分信息基于小波分析的数字水印算法的基本思想是把水印嵌入到图
33、像小波变换后的低频子带或高频子带系数中图像的低频子带携带了图像的大部分信息,因此可以嵌入更多的水印信息,使水印更加鲁棒,但同时也产生了问题,即图像低频子带的变化容易导致较大的图像失真相反,高频子带携带的是图像的边缘和纹理信息,人眼对这部分信息不敏感,因此,在这分嵌入水印,可以避免引起图像的失真,但同时水印容易遭到破坏(如有损压缩等),鲁棒性不是很强因此,一个有效的小波域水印算法必须在鲁棒性和图像的失真度之间取得平衡3.2 基于DWT-SVD分解的水印嵌入算法水印嵌入模型如图3-4所示小波分解Arnold变换载体图像水印图像含水印的图像水印嵌入SVD分解SVD分解图3-4水印嵌入算法(1)水印图
34、像的置乱数字图像置乱就是将一幅给定图像按照一定变换规则在空域或频域将其变换为一幅杂乱无章的图像,从而隐藏其图像本身图像的置乱变换既可以是局部的,也可以是全局的局部置乱变换必须加大置乱块的大小,但对于比较平滑的图像,即使扩大置乱块,置乱后的图像中仍会保留原图像的大部分信息;而全局的置乱变换,却能得弥补这一缺陷,能达到较好的效果在水印预处理中,这种全局的置乱变换就能较好地分散错误比特的分布,提高数字水印的视觉效果来增强水印的鲁棒性此外,图像置乱还可增加水印信号的保密性,即使水印信号被攻击者识破并提取出来,如果不知道置乱密钥和置乱方法,攻击者也无法恢复出隐藏的图像水印信号目前已存在多种图像置乱方法,
35、如基于位操作、幻方、FASS 曲线、Arnold 变换、Gray 码变换、骑士巡游、Hibe 变换、几何变换等其中Arnold 变换易于实现,易于恢复,无需多次变换就能达到令人满意的效果,而且实现起来比较简单,比较适合于实际应用因此本文采用Arnold 变换的置乱方法Arnold 变换定义:假设对于平面单位正方形内的所有点,作式(3-13)变换 (3-13)其中,k 为正整数,x,y 是平面某点的坐标,x,y 是变换后的坐标,可见Arnold变换实际是一种点的位置移动,并且这种变换是一一对应的根据数学理论,只要平面点的有限性,很明显这种变换一直做下去,就会存在周期的问题考虑到数字图像的需要,我
36、们把以上的Arnold 变换改写为式(3-14): (3-14)其中,N为水印图像大小,水印大小为NN在Arnold 变换中,式中的k与次数N构成数对(N,k)恰好可以成为置乱的密钥Arnold变换是图像置乱技术中的一种,通过多次迭代计算,使原始图像的像素点位置发生变化,导致原始图像已经完全不是按照原来的规律排列,并且只要知道迭代计算的次数就可以逆变换得到原来的图像所以置乱的次数可以当作密钥,不知道密钥的人很难得到原始图像,这样做在某种程度上是对原来的图像的一种安全保护现研究的水印图像多采用二值图像,这样的图像的像素值只有两个,比较简单并且提取水印时通过取定阀值很容易得到原来的像素值,从而不易
37、失真,鲁棒性较强本文采用实际应用中经常用到的灰度图像(大小为128128),具有普遍性读取水印图像,限制水印图像为方形,本文所选水印图像为自己绘制的128128的灰度图像代码如下:arnold_image=Arnold(watermark_source,10,0);Arnold是按照Arnlod原理编写的一个Matlab函数,迭代次数选10,即上文所说的k,置乱密钥(2)载体图像的小波变换对图像的小波变换就是二维的小波变换,一重小波分解,得到四个分量:低频分量包含了绝大部分能量,反映了原图像的主要特征另外三个分量分别为水平高频分量、垂直高频分量和对角线高频分量,它们含有较少部分的能量,反映的是
38、原始图像的边缘和轮廓特征二维小波变换的函数有很多,如表3-1所示表3-1 二维小波变换函数函数名函数功能dwt2二维离散小波变换wavedec2二维信号的多层小波分解idwt2二维离散小波反变换waverec2二维信号的多层小波重构wrcoef2由多层小波分解重构某一层的分解信号upcoef2由多层小波分解重构近似分量或细节分量detcoef2提取二维信号小波分解的细节分量appcoef2提取二维信号小波分解的近似分量upwlev2二维小波分解的单层重构dwtpet2二维周期小波变换idwtper2二维周期小波反变换本文采用经典的elaine图像作为载体图像使用二维离散小波函数,如式(3-15
39、)所示: cA,cH,cV,cD=dwt2(X,wname) (3-15)对载体图像进行小波变换,使用小波反变换函数,如式(3-16)所示:X=idwt2(cA,cH,cV,cD,wname)(3-16)其中的小波基函数 wname使用Haar Haar小波性能优良,而且Haar小波的支撑长度最短,它的分解和重构计算复杂度低于其它小波,同时Mallat算法是针对无限信号的,而实际中的图像是有限的,因此需要延拓而对Haar小波而言,则比较特殊,边界不需要延拓因此本文中选用Haar小波作为水印实验的小波基代码如下:origne_image=imread(elaine.bmp);LL1,LH1,HL
40、1,HH1=dwt2(origne_image,haar);%对载体图像先进行一阶dwt变换LL2,LH2,HL2,HH2=dwt2(LL1,haar); LL3,LH3,HL3,HH3=dwt2(LL2,haar);经过对载体图像进行三阶小波变换之后,得到了多个分量通过实验数据比较,发现LL3,HH3两个分量的奇异值和水印图像的奇异值比较接近,如果将水印嵌入到这两个分量当中,不仅是将水印嵌入到载体图像的低频分量当中,具有较强的鲁棒性,而且由于给载体图像像素值带来比较小的变化,载体图像不会出现明显的失真,从而不可见性很好(3)奇异值分解一个二维矩阵经过奇异值分解后将得到三个矩阵中的U和V都是正
41、交矩阵: ,为对角矩阵,其中计委分解后得到的奇异值在图像处理中应用(SVD)的主要背景是:(1)图像奇异值的稳定性很好,即当图像被施加小的扰动时,图像的奇异值不会有大的变化;(2)奇异值所表现的是图像的内蕴特性而非视觉特性Matlab自带的函数SVD,使用形式如:U,S,V = svd (X) ,结果返回一个与X 同大小的对角矩阵S,两个正交矩阵U 和V(4)嵌入将水印奇异值按比例嵌入到载体图像的不同分量的奇异值中经过SVD分解后的奇异值在对角矩阵中呈数值递减的规律排列并且可以很重要的一点,即一副图像主要能量的SVD分解得到的奇异值中的第一个与后面一个奇异值几乎相差一个数量级,而且经过实验得这
42、个奇异值对图像的影响最大,对它进行较小的改变,图像的失真度比相对于其它值的变化将大很多,因此在水印的嵌入过程中必须考虑这非常重要的一点,使得水印的嵌入能达到最佳效果由于奇异值体现的是图像的内蕴特性,使得图像的稍微改变,奇异值的变化很小,从而比较稳定因此本文选择将水印图像的奇异值按照不同嵌入因子嵌入到载体图像小波变换后的不不同分量的奇异值中3.3 基于DWT-SVD分解的水印提取算法水印提取检测模型如图3-5所示含水印图像原始图像检测结果原水印图检测水印提取水印图像Arnold反变换SVD分解SVD分解小波变换小波变换图3-5水印提取算法水印的提取过程就是水印嵌入过程的逆过程,本文的水印提取就是
43、先对嵌入水印的图像和原始图像进行小波变换,奇异值分解后,按照嵌入时的嵌入因此提取出嵌入的水印 (1)含水印图像和原始图像的DWT变换对载体图像和原始图像进行小波变换,代码如下:o_LL1,o_LH1,o_HL1,o_HH1=dwt2(origne_image,haar);%对载体图像先进行dwt变换o_LL2,o_LH2,o_HL2,o_HH2=dwt2(o_LL1,haar);o_LL3,o_LH3,o_HL3,o_HH3=dwt2(o_LL2,haar);w_LL1,w_LH1,w_HL1,w_HH1=dwt2(watermarked_image,haar);%对含水印图像先进行dwt变换
44、w_LL2,w_LH2,w_HL2,w_HH2=dwt2(w_LL1,haar);w_LL3,w_LH3,w_HL3,w_HH3=dwt2(w_LL2,haar);(2)对分量进行奇异值分解提取水印同时对原始图像和嵌入水印的图像三阶小波变换之后的分量o_LL3,o_HH3,w_LL3,w_HH3进行奇异值分解,得到四组奇异值,然后按照嵌入时所给定的不同位置的奇异值进行不同比例的提取水印图像的奇异值,最后对得到的图像进行Arnold反变换即得到水印图像第4章 Matlab仿真结果 4.1 仿真实验本文的实验结果是由MATLAB2010a仿真得到的本算法使用MATLAB来做水印嵌入以及提取的实验主
45、要是因为:本算法选择的载体是图像,MATLAB处理图像、音频和视频这些信号非常方便,尤其是图像矩阵运算更是方便快捷另外MATLAB内置有数量庞大的函数工具箱,可以帮助我们在信号处理等方面能快捷完成实验利用这些内置函数可以避免对一些信号基本操作编程,将实验的注意力完全放在水印算法的实现和性能分析上,提高了实验效率8图4-1给出的是灰度水印嵌入和未经攻击提取的实例将 elaine图像作为原始图像,灰度图像作为水印嵌入水印的图像质量的客观评价采用峰值信噪比PSNR来度量,水印检测结果的客观评价用相关系数nc来衡量,水印的鲁棒性采用误码率来评价从图4-1中可看出,水印嵌入后,具有很好的不可见性,峰值信噪比PSNR= 32.0490 dB,提取出的水印与原始水印的相关系数nc=