中图分类号:TP309.7文献标识码:A文章编号:1009-2552(2009)06-0077-04基于小波变换的数字水印及Matlab仿真实现蔚立磊,王俊飞,李新锋(黑龙江科技学院计算机与信息工程学院,哈尔滨150027)摘要:数字水印技术是近几年发展起来的一种高效的信息安全技术,它以独到的安全性、隐蔽性、鲁棒性等特点在版权保护、盗版跟踪、图像认证等领域具有十分广阔的应用前景。概括了数字水印的研究现状和基本原理,分析了基于小波变换的数字水印算法的优势,阐述了小波域水印嵌入与提取的过程,最后由Matlab仿真实现,结果证明基于小波变换的数字水印具有较强的掩蔽性和鲁棒性。关键词:数字水印;小波;Matlab;鲁棒性StudyofdigitalwatermarkonwavelettransformandtherealizationonMatlabsimulationYULilei,WANGJunfei,LIXinfeng(SchoolofComputer&InformationEngineering,HeilongjiangUniversityofScience&Technology,Harbin150027,China)Abstract:Thetechniqueofdigitalwatermarkwhichisbeingdevelopedduringtheseyearsisakindofeffectivetechnologytopromiseinformationsecurity.Withthecharacteristicsofsecurity、hidingandrobust,ithasverywideapplicationprospectincopyrightprotection、piratingtrack、imageauthenticationandotherdomains.Thispapersumsupthestatusofthetechniqueofdigitalwatermarkanditsfundamentalthenweanalyzetheadvantageofthedigitalwatermarkonwavelettransformandexpatiatetheprocessofembedorgetwatermark.Finally,thispapergivestheexperimentofthealgorithmbasedonwavelettransformonMatlab,andtheresultprovesthemaskingandrubustnessofthisalgorithm.Keywords:watermark;wavelet;Matlab;rubustness0引言在计算机网络与信息技术飞速发展的今天,人们的许多创作成果和文艺作品都以数字的形式存储和传播。计算机网络的发展和信息媒体的数字化确实为信息的存取提供了快速、高效和方便的途径,但因为图像、音频、视频、文本等形式的数字作品极易得到非法复制和拷贝,使得盗版侵权日益猖獗并成为当今社会数字化产业发展的最大威胁。数字水印(digitalwatermarking)技术也称为数字指纹技术,它将具有特定意义的水印标记不可感知地嵌入到被保护的数字产品中,在产生版权纠纷时,通过相应的算法提取该水印,用以证明作者对该数字产品的所有权,并可作为鉴证、起诉非法侵权的证据。数字水印技术基本上应当满足隐蔽性、安全性、鲁棒性和水印容量等几个方面的要求。研究数字水印技术的最初目的是用于保护数字产品的版权,但随着研究的进一步深入,它在信息安全保护领域的应用越来越广泛,并在广播检测、图像认证、盗版跟踪、数字签名、交易水印、拷贝控制、标题与注释等各个领域产生了许多新的用途。数字水印从正式提出到现在虽然时间不长,但它与传统的密码学相比有明显的优越性,为解决版权保护和内容完整性认证、来源认证、篡改认证、网上发行、用户跟踪等一系列问题提供了一个崭新的研究方向,因此它在数字产品的知识产权保护、商务交易中的票收稿日期:2009-04-07作者简介:蔚立磊(1982-),男,黑龙江科技学院在读硕士研究生,主要研究方向为计算机图像处理。77据防伪、声像数据的隐藏标识和篡改提示、隐蔽通信及其对抗等方面具有十分广阔的应用前景。1数字水印技术的基本原理数字水印的基本原理是将作为标识数据的水印信息嵌入到被保护的宿主数据中,使得水印在宿主数据中不可感知并且足够安全。通常的水印算法包括三个基本方面:水印的生成、嵌入和提取,并会涉及到水印的选择、水印的验证、基于视觉特性的水印等几项关键技术。(1)水印的生成水印信号分为无意义水印信号和有意义水印信号两种。无意义水印信号的产生通常基于伪随机数发生器或混沌系统,产生的水印信号往往需要进一步的变换以适应水印嵌入算法的需要。有意义水印信号包括二值图像、灰度图像和彩色图像等。有意义的图像可以直接作为水印嵌入到载体数据中,但是为了增强水印的安全性,一般需要先对水印进行加密预处理,处理的方法包括使用m序列进行扩频、对水印信号进行位分解、利用图像的置乱对水印进行预处理等。数字水印生成过程的一般流程如图1所示。为水印嵌入的固定深度)将水印嵌入V,得到Vc=(V1,V2,,Vn),在以V代替V,重构后得到包含水印的图像,完成水印的嵌入过程。数字水印嵌入过程的一般流程图如图2所示。图2数字水印嵌入过程一般流程图(3)水印的提取与检测水印的提取与检测是一个在有噪信道中弱信号的检测问题,最终目的在于判断水印信号是否存在或把水印提取出来。在对提取的水印和原始的水印进行判断和检测的过程中,可以通过输出一个0-1决策来判断水印有无。设C为相关检测函数,W为原始水印,W*为提取水印,K为密钥,d为决策阈值,则有:C(W,W*,K,d)=1w存在0w不存在水印提取与检测过程的一般流程图如图3所示。图1数字水印生成过程一般流程图(2)水印的嵌入水印的嵌入从数字通信的角度看,可以理解为在一个宽带的信道上用扩频通信技术一个窄带信号,会涉及到嵌入的方法、嵌入的位置、嵌入的信息量等问题。小波水印嵌入算法首先将原始图像的二维信号进行小波变换,将水印信息嵌入小波分解的高频子带HLi,LHi,HHi(i=1,2)中可以满足隐蔽性的要求,但增加分解层次会对人类视觉产生很大的影响。同时水印嵌入到低频系数或者高频系数,均难以同时满足不可感知性和鲁棒性要求。比如将水印嵌入到第一层的中频子带。设水印信号是长度为n的随机序列X=(X1,X2,,Xn),其中Xi(i=1,2,,n)服从高斯分布,先将原始图像进行小波分解得到低频子带图像LLi和高频子带图像HLi,LHi,HHi(i=1,2),然后从高频子带图像中抽取若干系数构成宿主序列V={V1,V2,,Vn},按照Vi=Vi+aXi(其中的参数a图3数字水印提取检测过程一般流程图2数字水印技术的研究现状目前,数字水印的研究从结构层次上可以分为基础理论研究、应用基础研究和应用技术研究三个层次。自1994年R.G.Schyndel等人第一次明确提出数字水印的概念以后,在国外掀起了现代信息隐藏技术研究的高潮。在我国,虽然数字水印技术的研究起步较晚,但我国学术界也已经有相当一批有实力的科研机构投入到这一领域的研究中来。2.1数字水印的经典算法数字水印算法可以分为空间域数字水印算法和变换域数字水印算法两大类。空间域数字水印算法就是通过改变某些像素的灰度将要隐藏的信息嵌入到其中,把数字水印直接加载到数据上。这种方法具有算法简单、容易实现、信息隐藏量大和计算速度快等优点,并且许多算法在提取水印和验证水印存在时都不需要原始图像,78但通常因为抵抗图像的几何形变、噪声和图像压缩的能力较差而具有较差的鲁棒性。空间域数字水印的经典算法包括:LSB算法(最低有效位法),Patchwork方法及纹理映射编码方法、文档结构微调方法等。变换域数字水印算法是当前数字水印技术领域研究的热点。它是基于图像的变换利用一个信号可以掩盖另一个较弱的信号这种频率掩盖现象在频域变换中嵌入水印,这些常见变换包括离散余弦变换(DCT)、小波变换(WT)、傅氏变换(FT或FFT)以及哈达马变换等。相对于空间域数字水印技术来说,变换域水印算法有更好的不可感知性、安全性并对图像有损压缩、常见的图像滤波以及各种噪声有更强的鲁棒性。这种算法往往可以嵌入大量比特数据而不会导致可察觉的缺陷,基于傅里叶变换域的方法抗几何攻击性能很好,嵌入的信息量很大,信号的健壮性也很好,但是在这种方法抗剪切攻击能力较低而且抗JPEG压缩能力也很差;基于DCT变换域的方法与当前的国际数据压缩标准相兼容,所以这种水印的鲁棒性较好,可以经受一定程度的JPEG压缩、滤波、DA及AD转换等信号处理,具有很多方法所不具备的优越性。变换域的算法是未来水印算法的趋势和主流。在基于傅里叶变换域、DCT变换域和小波变换域三种频域变换的变换域数字水印算法中,DCT变换域和小波变换域是当前研究的热点,但基于小波变换的数字水印算法具有许多独特的优势。2.2基于小波变换的数字水印算法的优势随着新一代图像压缩标准JPEG2000的提出,小波变换越来越受到重视。作为一种全新的时间尺度分析方法,它在数字图像处理领域取得了很好的应用效果,在数字水印研究领域出现了许多优秀的小波变换算法。小波变换相对于DFT和DCT有诸如良好的时间频率局部性、多尺度变换、较小的计算复杂度等独特的优点。基于小波变换的数字水印具有突出的抗滤波和压缩攻击的能力,同时保留了空域特性,而且一幅图像小波分解后所得到的子带和人类的视觉系统(HVS)模型相符合,提高了算法的鲁棒性。3小波域数字水印算法及Matlab实现3.1图像的小波分析小波变换是现代谱分析工具,就是将信号分解成时域和尺度域的一种变换,它既能考察局部时域过程的频域特征,又能考察局部频域过程的时域特征,它能够将图像变换为一系列小波系数,这些系数可以被高效压缩和存储。与傅里叶变换相比,小波变换是时间(空间)频率的局部化分析,它通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,成功地解决了傅里叶变换的困难问题,成为继傅里叶变换以来在科学方法上的重大突破。图像经过一级小波变换后分解成四个子图:低频系数逼近子图、水平高频系数细节子图、垂直高频系数细节子图和斜线高频系数细节子图。低频系数逼近子图还可以继续分解,产生二尺度下的四个子图。图4为使用函数dwt2对图像进行单尺度分解所生成的四个子图。图4单尺度图像分解图像经过小波分解后,数据的总量并没有发生变化。只不过按照频率信息的不同,重新进行了分组和排列,便于信号的处理。但分解后小波图像具有与原图像不同的特性,表现在低频逼近子图LL中集中了原始图像的绝大部分信息,中高频细节子图LH,HL和HH保持了原始图像的垂直边缘细节、水平边缘细节和对角边缘细节,它们刻画了原始图像的纹理和边缘细节特征。3.2Matlab实现下面给出了一种典型的基于小波变换的数字水印算法。(1)水印的生成为了便于计算说明,水印选择为均值为0,方差为1,即满足N(0,1)正态分布的伪随机序列。高斯白噪声信号具有理想的自相关特性,根据香农定理,原始图像可以看作通信信道,水印可以看作是在通信信道中传递的信息,所以使用高斯白噪声作为水印信号是合适的。(2)水印的嵌入Step1载入原始图像I。79Step2使用小波函数db2对I进行二维离散Daubechies小波变换。Step3定义一个阈值T,在I中嵌入水印。选择小波分解的高频系数矩阵,如果系数矩阵的每一个元素值大于阈值T,则将这个值加上一个均值为0方差为1的伪随机序列,否则不改变系数矩阵中的元素值。Step4使用小波分解的低频系数和改变后的高频系数矩阵进行小波反变换,重构图像并输出。原始图像和嵌入水印后的图像如图5所示。(3)水印的提取与检测。将待检测图像和原始图像同时进行小波变换,图5原始图像