基于变换域的数字水印技术的研究学士学位.doc

上传人:龙*** 文档编号:4120226 上传时间:2019-09-27 格式:DOC 页数:30 大小:904.50KB
下载 相关 举报
基于变换域的数字水印技术的研究学士学位.doc_第1页
第1页 / 共30页
基于变换域的数字水印技术的研究学士学位.doc_第2页
第2页 / 共30页
基于变换域的数字水印技术的研究学士学位.doc_第3页
第3页 / 共30页
基于变换域的数字水印技术的研究学士学位.doc_第4页
第4页 / 共30页
基于变换域的数字水印技术的研究学士学位.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、基于变换域的数字水印技术的研究 1. 引言 1.1 数字水印技术提出的背景 二十一世纪是数字时代,通信技术的迅速发展和计算机网络的普遍运用,使 人们可以通过互联网收发信息,可以随时上传自己创作的数字图象、音乐、视频 等作品,可以进行学术交流。 然而,也正是由于网络的这种便捷性、传播迅速的优点使其很容易被非法拷 贝,导致数字产品的版权、完整性、有效性得不到保证,严重损害了创作者的利 益。而一些具有特殊意义的数字信息,如涉及司法诉讼、政府机要等信息,更是 遭到了不法分子地恶意攻击和随意篡改等,这一系列问题给当今科学家带来了巨 大挑战。 基于以上类似问题,数字水印技术可以说是信息时代的特有产物,是一

2、种可 以在开放网络环境下保护版权和认证来源及保障信息完整性的新型技术,在音频、 图像、视频制品中迅速得到广泛的研究和发展。 1.2 数字水印的基本特点 数字水印是加在数字图象、音频或视频中的微弱信号,这个信号是人们能够 建立产品所有权、辨认购买者或提供数字产品的一些额外信息。具体说来,它们 都具有以下共同的特征: 1. 不可感知性 对于数字水印的嵌入,应该对观察者没有视觉障碍,理想情况应该是水印图 像与原始图像没有丝毫差别。 2. 鲁棒性 鲁棒性是指一个数字水印能够承受攻击的能力,一般来说数字水印方法是针 对特定的攻击进行设计。 3. 安全性 水印技术的安全性是其最重要的特性,由于它的商业性,

3、其算法必须公开, 算法的安全性完全取决于密钥,而不对算法进行保密。 4. 计算复杂度 不同应用中,对于水印的嵌入算法和提取算法的计算复杂度要求是不同的, 复杂度直接与水印系统的实时性相关。 5. 水印容量 水印容量是指载体数据字中可嵌入水印信息位的多少,可以从几兆到几个比 特不等。 1.3 数字水印的应用 1 数字水印是以不可感知的方式嵌入到数字信息中的,总体来说它有以下应用: 数字产品产权保护 这是数字水印最广泛的应用,将秘密的数字信号嵌入到有价值的数字文件中, 这些数字信号是产权的标识,在不破坏数字文件的情况下不能被盗版者出去,起 到了保护产权的作用。 1. 数据库标识 有时一些文件中提示

4、数据的标识信息往往比文件本身更重要或者一些音像文 件需要将说明注释(如字幕等)与音像本身结合起来,这就可以通过数字水印技 术加以解决。 2. 文件内容鉴定 水印技术在鉴定数据建立者和鉴别数据内容有着特殊的运用,目的是检测数 据是否被修改过或是否经过特殊的处理。 3. 系统升级 日常生活中常常涉及到旧装系统升级情况,这可以通过将“增强层”嵌入到 所发送的数据中来给传统的信号发射系统升级。 4. 商务交易中的票据防伪 随着高质量图像输入输出设备的发展,使得货币、支票以及其他票据的伪造 变得更加容易。目前,美国、日本以及荷兰都已开始研究用于票据防伪的数字水 印技术。 5. 媒体侦破 这一运用的目的是

5、提取对原始信号进行处理过的信息。例如,鉴定方法可以 发现一幅图像被篡改过,但无法发现是怎样篡改的。媒体侦破技术就可以指出图 像的哪部分被篡改了,指出被插入到原图像中的新对象等等。 1.4 数字水印技术的研究动态 随着多媒体技术和因特网技术的迅猛发展,一系列有关产权保护和信息安全 的问题等亟待人们解决。数字水印技术便是二十世纪九十年代初出现的为解决这 些问题的一门崭新的技术,也是近几十年来国内外专家和学者研究的一大热点。 1. 数字水印技术的研究现状 1) 空间域数字水印研究 最初提出的数字水印嵌入方法是在空间域上实现的。 1995 年,Btuyndoncky 等提出了一个基于空域分块的方法,通

6、过改变均值来 嵌入水印。1996 年,Patchwork 等人提出了一种算法( Patchwork 算法) ,该算法 随机选取图像的 N 对像素点,通过增加其中一个点的亮度值而相应降低另一个点 的亮度来隐藏信息。1998 年,Darmstaedter 等人提出了一种新的空域水印算法, 该算法是基于图像的 88 块的空间域分解进行的。 不过上述的一些空域法普遍存在着可嵌入水印能量不好控制、鲁棒性差等缺 点,现在已经很少有人使用,人们逐渐将水印的嵌入和检测转到频域上进行。 2) 频域数字水印研究 频域法大体有三类:DFT 域、DCT 域和 DWT 域。 Ruanaidh 和 Pun 利用傅立叶域对

7、全局性的旋转,平移和缩放变换具有不变性 的特点,将水印嵌入到傅立叶域来达到对这些攻击的鲁棒性。 1999 年,Hsu 和 Wu 等人提出了基于可视化模型的算法,该算法具有很强的 鲁棒性。2000 年,黄继武、易开样等人还提出了一种 DCT 域数字水印算法:首 先把图像分成 88 的不重叠像素块,经过分块 DCT 变换后,得到有 DCT 系数组 成的频率块,然后随机选取一些频率块,水印信号嵌入到由密钥控制选择的一些 DCT 系数中。2004 年,王向阳等提出了一种 DCT 域自适应彩色图像二维数字水 印算法,将灰度图像嵌入到原始彩色图像中。其实 ,很多国内外研究人员提出 的其他 DCT 域数字水

8、印算法,采用的多是基于 DCT 的 88 图像块。 总的来说,基于图像特征的方法是探索性的,很难用目前现有的模型进行理 论分析,限制了这种方法在需要有严格性能规定的实际商业中的应用。 2. 数字水印技术的前景与意义 从国际、国内对数字水印研究现状和重视程度,可见数字水印对社会的应用 是多么重要,所以它的研究前景是十分广阔的。数字水印技术是近十年来横跨信 号处理、数字通信、密码学、计算机网络技术等多学科的新兴技术,具有潜在的 应用市场和良好的应用前景。 从研究意义来看,对它的研究具有重要的学术、经济和军事价值。一方面, 它将促进多媒体技术、网络技术、通信技术、信号处理技术等多门新兴技术的有 机结

9、合,促进多媒体网络的进一步繁荣;另一方面,它将有助于多媒体信息版权 保护及其冲突问题的解决。同时,它将促进隐蔽通信技术、信息安全技术的提高。 2. 数字水印技术概况 数字水印技术是利用数字产品普遍存在的冗余数据与随机性,将水印信息嵌 入在数字产品本身中,从而起到保护数字产品版权或者完整性的一种技术。 2.1 数字水印的分类 数字水印技术根据不同的根据有不同的分类方法,一般有如下分类: 依据其特性来分可以将数字水印分为鲁棒数字水印和脆弱水印两种。前一种 要求嵌入的水印对常用的编辑处理或恶意攻击有一定的抵抗性;而后一种则要求 对信息的改动有很强的敏感性。 按水印的用途分类可将其分为版权水印、图像认

10、证水印、隐藏标识水印、防 止复印水印等。 按检测的过程来划分数字水印有非盲水印系统和盲水印系统。一般而言,非 盲水印的鲁棒性较强,而其应用受到存储成本的限制。不过,目前学术界研究的 数字水印大多数是盲水印。 根据内容划分水印又可以分为有意义水印和无意义水印。二者区别在于前者 本身也是个图像或者音频片段的编码;而后者却是一个序列号。 按数字水印的隐藏的位置划分,数字水印又有空(时)域数字水印、频域数 字水印、时/频域数字水印和时间/尺度域数字水印。 2.2 数字水印系统的模型 4 现在学术界对数字水印算法的理解都是将一些不易察觉的具有随机特性的数 据嵌入到图像频域或空域的系数上。从信号处理的角度

11、看,嵌入水印可以看成是 在强背景下迭加一个弱信号,由于人类视觉系统的分辨率受到一定的限制,只要 迭加的信号幅度不超过 HVS 的对比门限,人眼就无法感觉到信号的存在,所以 可以通过对原始图像进行一定调整,在不影响视觉效果的情况下嵌入一些水印信 息。 数字水印系统的一般模型如图 1 所示: 图 1 数 字 水 印 系 统 基 本 模 型 水印嵌入器的输入量有三个:水印信号 M,宿主信号 S 和密钥 K。 水印信号 M 是指原始水印(图像或一个数字序列)通过一定的方法经过调制 将嵌入到宿主信号中的数字信号。 宿主信号 S 是指被嵌入水印的信号(原始信号) 。 密钥 K 则指用于提高水印系统安全性的

12、密码信息,它独立于宿主信号。密钥 有私有密钥和公共密钥之分,前者指攻击者在明确了水印嵌入方法但又不知道密 钥的情况下,水印不会被破坏或盗取;后者是指攻击者对宿主信号(如内容标识、 语言字幕等)不感兴趣的情况下,密钥也就不存在保密性,可以作为公共密钥。 2.3 数字水印算法 1. 水印嵌入算法 数字水印技术涉及到了多门学科:信号处理、数字通信、密码学、模式识别 等,研究人员从各个角度对水印嵌入算法进行了研究。以下简要介绍几种典型的 算法。 1)空域水印嵌入算法 空域水印嵌入算法包括最低有效位算法 LSB、Patchwork 方法、纹理映射编 码方法等。其中最低有效位算法 LSB 是指首先把一个密

13、钥输入一个 m-序列发生 器来产生水印信号,然后将其重新排列成 2 维水印信号,并按象素点逐一插入到 原始图像象素值的最低位。由于水印信号被安排在了最底位上,是不可见的,基 于同样的原因,可以轻易的被移去,所以它的鲁棒性很差。而 Patchwork 方法是 一种基于统计的数字水印嵌入方法,是通过增加一个象素点的亮度值,再相应的 减少另一个象素点的亮度值来隐藏信息。纹理映射编码方法则是将数字信息隐藏 于数字图象的任意纹理部分,该算法对于滤波、压缩和旋转等操作具有抵抗能力。 2)变换域水印嵌入算法 5 变换域中能量分布集中,有利于保证水印的不可见性,提高了水印的鲁棒性, 所以这一算法得到了广泛的应

14、用。图 2 是变换域水印算法的过程 图 2 变换域水印嵌入过程图 变换域算法中有一种典型的算法 DCT 域数字水印算法,该算法是通过对选 定的 DCT 系数进行微小变换以满足特定的关系,来表示一个比特的信息。在水 印信号提取时,则选取相同的 DCT 系数,并根据系数之间的关系抽取比特信息。 其特点是数据改变幅度较小,且透明性好,但是其抵抗几何变换等攻击的能力较 弱。另外基于 DFT 和 DWT 算法与上述算法具有相似的原理。 目前 DWT 域的算法还不多见,但小波域具有良好的空频分解特性,而且嵌 入式零树小波编码将在新一代的压缩标准中被采用,迎合着国际压缩标准,小波 域的水印算法具有良好的发展

15、前景。 2. 水印检测算法 水印检测是上述嵌入过程的逆过程,以下详细介绍一下水印相关检测技术。 待测试图像 与原始图像的差为:),(*yxf (2-1)8,0),(),(,10yxeyxfekK 对 进行域变换,再利用下式提取水印序列:),(yxk (2-2)alfvuFxkki /),(/),( 得到了可提取的待测试序列: (2-3) 10*0,wNkWi 待测序列中假设有 n 个数据值与原始水印序列 中对应位上的值不相同,则 定义误码率: (2-4)WNn 则有相关系数: (2-5))()(2*2iiNC 从而可以得到相关系数和误码率的关系: (2-6)21wNCn 根据误码率的值可判断图

16、像中是否含有水印信号,从而达到版权保护的目的。 判定准则为:事先设定阈值 。 若 ,可以判定被测图像中含有水印 ; 否则,TW 没有水印 。 阈值 的选择要同时考虑虚警概率和漏警概率。虚警概率是指待测W 图像中不包含水印而检测器输出结果却表明含有水印的概率;漏警概率是指待测 图像中包含水印而检测器输出结果却表明不含有水印的概率。 增大,则漏警概T 率降低而虚警概率提高;反之亦然。 若 与 不相关, 的概率等于具2*W 有 Gaussian 分布的随机变量超过其均值 T 倍方差的概率。 图 3 是典型的水印检测/提取系统 7 图 3 水印检测提取系统 3. MATLAB软件的介绍 MATLAB

17、语言是一种非常强大的工程语言,被广泛应用于包括信号与图象 处理、控制系统设计、通信、系统仿真等诸多领域。 3.1 MATLAB 研究数字水印的优点 8 MATLAB 语言有不同于其他高级语言特点,它在研究数字水印有如下特点: 1. 编程效率高 MATLAB 语言是用数学形式的语言编写程序,用 MATLAB 编写程序犹如在 演算纸上排列公式与求解问题。由于它编写简单,所以编程效率高,易学易懂。 2.用户使用方便 与其他语言相比,MATLAB 能在同一画面上进行灵活操作,快速排除输入 程序中的书写错误、语法错误甚至语意错误,从而加快了用户编写、修改和调试 程序的速度,便于操作。 3. 扩充能力强,

18、交互性好 MATLAB 语言库函数丰富,用户还可以根据自己的需要方便地建立和扩充 新的库函数,提高 MATLAB 使用效率和扩充功能。良好的交互性使程序员可以 使用以前编写过的程序,减少重复性工作。 4. 移植性好,开放性好 MATLAB 是用 C 语言编写的,而 C 语言的可移植性很好。于是 MATLAB 可以很方便地移植到能运行 C 语言的操作平台上。 5. 语言简单,内涵丰富 MATLAB 语言中最基本最重要的成分是函数,同一函数名,不同数目的输 入变量及不同数目的输出变量,代表着不同的含义。这不仅使 MATLAB 的库函 数功能更丰富,而且大大减少了需要的磁盘空间,使得 MATLAB

19、编写的 M 文件 简单、短小而高效。 6. 方便的绘图功能 MATLAB 软件中有一系列绘图函数,在运用 MATLAB 软件时只需要调用不 同的绘图函数,即可在图上标出图题、XY 轴标注。 7. 功能强大的工具箱是 MATLAB 的另一特色。 MATLAB 工具箱中的信号处理、控制系统、神经网络、图象处理、鲁棒控 制、非线性系统控制设计、系统辨识、最优化、模糊逻辑、小波、通信、统计 (statistics 等工具箱) ,这些工具箱给各个领域的研究和工程应用提供了有力的工 具。 8. MATLAB 的缺点 它和其他高级程序相比,程序的执行速度较慢。由于 MATLAB 的程序不用 编译等预处理,也

20、不生成可执行文件,程序为解释执行,所以速度较慢。 3.2 MATLAB 函数介绍 9 在研究水印技术时,我们处理的图像数据是二维信号,而声音是一维信号, 所以在这里,我门只简单介绍与水印有关的函数。 1. 数据输入输出函数 imread()和 imwrite():可以读写 bmp, jpg/jpeg, tif/tiff, png, hdf, pcx, wxd 格式文 件。读索引文件时,还可以得到相应的调色板数据。 2. 图象显示 imshow():显示一幅图像;imfinfo():可以得到读入图像的信息。如文件的 大小、格式、格式版本号、图像的高度、宽度、颜色类型(真彩色,灰度图还是 索引图)

21、等。 3. 变换域函数 对信号采用不同的变换,是实现频域法水印的至关重要的一步,MATLAB 中的一维信号和二维信号分别提供了各种变换和逆变换函数。 1) 离散余弦变换(DCT) (1) dct(),dct2() :分别实现一维信号和二维信号的 DCT(离散余弦变换) ; (2) idct(),idct2() :分别实现一维信号和二维信号的 IDCT(逆离散余弦变换) ; 2) 离散傅立叶变换(DFT) (1) fft(),fft2() :分别实现一维信号和二维信号的 DFT(离散傅立叶变换) ; (2) ifft(),ifft2() :分别实现一维信号和二维信号的 IDFT(逆离散傅立叶变换

22、) ; 4. 攻击函数 对算法进行攻击测试是对水印鲁棒性检测的一种重要手段,一个好的水印算 法必须经过各种攻击测试才能对之做出客观的评价。 MATLAB 中的许多函数可以直接用来做攻击测试: 1)旋转:rotate()可以对图像进行任意角度的旋转; 2)剪裁:imcrop() 可以按精确定位的各点坐标进行剪裁; 3)滤波:filter()和 filter2()可实现对一维信号和二维信号的滤波; 4)加各种噪声:imnoise()可以对图像加入各种噪声,如白噪声、椒盐噪声等。 4. 基 于 DCT 域 的 数 字 水 印 技 术 离散余弦变换,简称 DCT,是一种实数域变换,其变换核为实数的余弦

23、函数, 计算速度较快,是一种近似最佳变换,很适合于做图象压缩和随机信号处理,它 对常用的图象压缩有较强的鲁棒性。 基于 DCT 域的数字水印算法,一般而言有两种算法。一种是直接对整幅图 像进行 DCT 计算,选取合适频段的系数,嵌入水印。另一种是,首先将整幅图 像分成块,对每一块分别进行 DCT 计算,在每一块中选取合适频段的系数,将 水印信息分散嵌入到每一块所选取的 DCT 系数中。这种方法称为分块 DCT,这 种方法非常适合于 88 的图像块 DCT 变换。目前,DCT 域的水印方法大多数是 采用分块 DCT 方法。 4.1 二维 DCT 概述 3 一般而言,数字图象 ,其二维 DCT 变

24、换用矩阵NnMmnS0,),( 表示,其定义式如下式所示:S (4-1))21(cos)21(cos),()(2),( 210 ljkijilkNMlkij 二维 IDCT 定义 如下: 8 (4-2))21(cos)21(cos),()(2),( 210 NljMkilkSjiSkl 其中 并且,1,.20,1,.20, NljMki (4-3) ,.,)(1kc1,.2,0)(2Nlc 我们最常用到的是 88 分块 DCT,也就是首先将大小为 MN 的图像分成 的非重叠的大小为 88 的块,然后对每一块作64/)()/(8/NM DCT。根据式(4-1)和式(4-2) ,88DCT 的定义

25、如下: (4-4))162cos()162(cos),(2)(),(701 ljkijiSlklSijc 88IDCT 的定义如下: (4-5))162(cos)162(cos),(2)(),(701 ljkilkSjiSkl 其中, 并且,., (4-6) 7,.21,)(1kc7,.21,0)(2l 4.2 基于 DCT 域数字水印嵌入算法 DCT 域的水印嵌入过程,就是首先对宿主图像 S 进行分块 DCT 运算,选取 出要嵌入的 DCT 系数 C,并且对宿主图像用 HVS 模型进行分析,得到感知系数 掩蔽模板,用其来控制水印嵌入强度,再将编码后的水印信号 W,用一定方式嵌 入到选好的系数

26、中。用嵌入水印的系数替代原来位置的系数,再进行逆 DCT(Inverse Discrete Cosine Transform,IDCT)变换,就得到了含有水印的图像 X。DCT 域水印系统的水印嵌入过程框图如图 4 所示: 图 4 DCT 域水印嵌入过程方框图 水印嵌入步骤如下: 1. 将宿主图像 分成 88 的块,每一块都进),.21;,.21(), NjMijS 行 DCT 变换,得到与宿主图象相同尺寸的 DCT 域系数矩阵 。),.;,.21(),NjMijS 2. 产生两个不相关的伪随机序列,并设定一个密钥 key。 3. 将每个 88 的 DCT 系数矩阵,从每一块的中频段取出 个系

27、数 。)/()864(),.21(),numKBkjiC 4. 然后嵌入水印,嵌入规则为当水印图像元素为 0时, 按照式子 (其中 alpha 为尺度因子,mark 为随机序列, 为原图)*1( marklphW W 像的分块 DCT 系数) ,将一个随机序列与原始图像块的幅度谱对应元素进行乘性 叠加;为1时,用另一个伪随机序列与幅度谱对应元素进行乘性叠加。 5. 用得到的新的 DCT 系数对原来位置的 DCT 系数进行置换。 6. 对新的 DCT 系数矩阵进行 DCT 逆变换,得到了嵌入水印信号的图像。 4.3 基 于 DCT 域 数 字 水 印 检 测 提 取 算 法 DCT 域水印的验证

28、过程(即包括水印的检测和提取过程) ,就是将待测图像 Y(注意此时的图像也许已经遭受了图象处理或恶意攻击)进行 DCT 运算;然后 按着嵌入水印时选取的 DCT 系数,选取其含有水印的系数,进行水印提取,然 后利用相关检测法判断水印是否存在。如果水印检测器输出结果显示水印存在, 则根据需要可以用水印解码器对提取的水印进行解码,恢复水印。水印检测提取 过程如图 5 图 5 DCT 域数字水印检测提取框图 水印检测提取步骤如下: 1. 对含有水印图像进行 88 的块 DCT 变换。 2. 对每一块的 DCT 系数进行“之”字型排列,从我们已知的嵌入位置取出 可能含有水印的系数 , 将所有提取出的系

29、数,按顺序组成新的系数序列),(jiCk 。 ),.21(),wNlC 3. 用密钥生成水印信号 )1,0(NW 4. 将含水印的系数序列与水印信号进行相关计算,得到归一化相关系数 。NC 4.4 实验结果及分析 以下是尺度因子 alpha=30 时的实验结果,以及受到各种攻击后所提取到的水 印图像及其与原始水印图像的相关系数 :NC 图 6 原始图像和嵌入水印后的图像 此时,alpha=30 图 7 没 有 受 到 攻 击 的 图像及 提 取 到 的 水 印 图像 此时相关系数 =1NC 图 8 加入白噪声后的图像、原始水印和提取的水印图像 此时相关系数 =0.99969NC 图 9 高 斯

30、 低 通 滤 波 后 的 图像及 提 取 的 水 印 图像 此时相关系数 =0.99058NC 图 10 剪 切 后 的 图像及 提 取 的 水 印 图像 此时相关系数 =0.93909NC 图 11 旋 转 10 后 的 图像及 提 取 的 水 印 图像 此时相关系数 =0.48383NC 从以上结果可以看出:当图像(宿主信息)受到加噪、高斯低通滤波、剪切等攻 击后,其可视度、提取的水印图像与原始水印图像的相似度(都在 90%以上) 都是非常令人满意的;当受到旋转攻击后,其提取的水印图像与原始水印图像的 相似度(不足 50%)却令人感到失望,不过仍可证明水印信息的存在。 5 基于傅立叶域变换

31、的数字水印技术 5.1 傅立叶变换概述 6 傅立叶变换(Fourier Transform)是线性系统分析的一个有力工具,是研究 信号的频谱方法,它架起了时域和频域之间的桥梁。使我们能够定量分析诸如数 字化系统、采样点、电子放大器、卷积滤波器、噪声等的作用,把傅立叶变换的 理论同其物理解释相结合,将大大有助于解决大多数图象处理问题。 Fourier 分析理论十分完善,既可以处理连续信号也可以处理离散信号。 计 算机只能处理离散信号, 且在数字图象处理中, 输 入 图 像 和 输 出 图 像 通 常 都 是二维的, 一般表示成二维数字矩阵, 因此这里直接讨论二维离散傅立叶变换 (DFT )和二维

32、快速傅立叶变换(FFT ) 。 1. 二 维 离 散 傅 立 叶 变 换 DFT( Discrete Fourier Transform) 二维离散傅立叶变换对定义式如下: ( 5-1),210;,210,),(),(10)(2 NvMueyxfvuFNyMNvyBxj ( 5-2) 10)(2 ,;,),),(vuvxMiFxf 二维离散傅立叶变换的傅立叶谱、相位、功率谱分别如下: 傅立叶谱: ( 5-2122),(),(),(vuIRvuF 3) 相位: ( 5-),(,),(Iarctg 4) 功率谱: ( 5-),(),(),(),( 22vuIRvuFE 5) 式子(5-1)可以分离

33、为: ( 5-6) 101022),(),(NyMxuxMjvyj eyfevuF 式子(5-2)可以分离为: ( 5-7) 101022),(),(NvuuxMjvyj evFexf 由上两式可知,二维傅立叶变换可由连续两次一维傅立叶变换得到 , 从而将 二维 DFT 分解为水平和垂直两部分运算,上式中方括号中的项表示 在 图像的行 上计算的 DFT,方括号外边的求和则实现结果数组在列上的 DFT,这种分解使我 们可以用一维 FFT 来快速实现二维 DFT。 2. 二维快速傅立叶变换 FFT(Fast Fourier Transform) FFT 的基本思想是: 令序列 的长度 为 ,如果不

34、满足, 在尾部补零,没有任何影响。)(nfNM2 按 n 奇偶把 分解为两个 N/2 点的子序列: (5-8));2/(,10),()1 Nmfg (5-9)2(h 那么 (5-10)为 奇 数为 偶 数 nknNjnkNj efefkF22)()()( 将(5-8)和(5-9)式代入上式得: (5-11) 2211200()()()NNjkmjkmNmFkgehe 上式右边的两部分恰好是长度(周期)为 N/2 的 的傅立叶变换)(,1hg ,所以:)(,1kHG (5-12))12(,0),()(121 NkHekGFkNj (5-13))(,),()(2(121kj 这样一个长度为 N 的

35、 DFT 就分解为两个长度为 N/2 的 DFT,然后进行 N/2 次复数的蝶式运算,再运用分解-递归思想,分解 次 ,每一次均有 N/2Mlog 个蝶式运算,所以 FFT 的时间复杂度为 。)l(O FFT 在图像运用中的思想是,先将原图 像 进行转置 , 按行对转置后的图像 矩阵做一维 FFT, 将此变换所得的中间矩阵再转置,再按对转置后的中间矩阵做 一维 FFT,最后得到的就是二维 FFT。 5.2 基于傅立叶域的数字水印嵌入算法 这里的嵌入算法大抵同前面所讲的嵌入过程,唯一不同的是傅立叶变换中涉 及到复数运算,所以在嵌入过程中还需要计算一下其变换后的幅度值方可嵌入, 嵌入算法的步骤如下

36、: 1. 将宿主图像 分成 88 的块,每一块都进行),.21;,.21(), NjMijf DFT 变换,得到与宿主图象相同尺寸的 DFT 域图象系数矩阵 。(,)kFij 2. 产生两个不相关的伪随机序列,并设定一个密钥 key。 3. 将每个 88 的 DFT 系数矩阵,从每一块的中频段取出 个系数 。)/()864(NMnumKBkjiC,.21),( 4. 由于 DFT 域的幅度谱具有对称性,为了水印嵌入后保持这种对称性 ,也 为了确保恢复图像像素值为实数,嵌入水印时采用对称嵌入。嵌入规则为当水印 图像元素为 0时,按照式子 (其中 alfa 为尺度因子,)*1( arklfW ma

37、rk 为随机序列, 为原图像的分块 DFT 系数) , 将一个随机序列与原始图像 块的幅度谱对应元素进行乘性叠加;为1时,用另一个伪随机序列与幅度谱 对应元素进行乘性叠加。 5. 用得到的新的 DFT 系数对原来位置的 DFT 系数进行置换。 6. 对每一图像块进行 DFT 逆变换,得到含水印图像 。 5.3 基于傅立叶域的数字水印检测提取算法 这里的检测提取算法过程大抵同前面所讲的 DCT 域数字水印检测提取算法, 提取算法步骤如下: 1. 将宿主图像 分成 88 的块,每一块都进行NjMijf ,.21;,.21),( DFT 变换,得到与宿主图像相同尺寸的 DFT 域图象系数矩阵 。Nj

38、MijFk,.;,.1),( 2. 对每一块的 DFT 系数进行“之”字型排列,从我们已知的嵌入位置取出 可能含有水印的系数 ,将所有提取出的系数,按顺序组成新的系数序列),(jiCk 。 wlC,.21),( 3. 计算嵌入水印图像块的幅度谱与两个伪随机序列的相关性,假设嵌入的水 印图像矩阵为0时叠加的是随机序列 A,为 1时叠加的是随机序列 B,则 提取时如果嵌入水印幅度谱与随机序列 A 的相关性大于其 B 的相关性,那么这个 位置嵌入的是水印图像矩阵0元素。按这个规则即可提取出水印图像。 4. 将含水印的系数序列与水印信号进行相关计算,得到归一化相关系数 。NC 5.4 实验结果与分析

39、以下是尺度因子 alpha=260 时的实验结果,以及受到各种攻击后所提取到的水 印图像及其与原始水印图像的相关系数 :NC 图 12 原始图像与嵌入水印后的图像 图 13 没有受到攻击的图像和直接提取的水印图像 此时相关系数 =1NC 图 14 加入白噪声后的图像、原始水印图像及提取的水印图像 此时相关系数 =0.96566NC 图 15 高斯低通滤波后的图像及提取的水印图像 此时相关系数 =0.97311NC 图 16 剪切后的图像及提取的水印图像 此时相关系数 =0.96907NC 图 17 旋转后的图像及提取的水印图像 此时相关系数 =0.91301NC 从以上结果可以看出,由于 DF

40、T 域对全局性的旋转、平移和缩放变换具有不 变性的特点,基于 DFT 域的数字水印技术要比基于 DCT 域的数字水印技术的鲁 棒性要强的多,特别是对于旋转攻击,前者的优势更加突出! 结 论 本文首先对数字水印技术进行了简单的概述,介绍了近些年来,国内外学者 在这一方面所做出的努力和成就,并对其进行了一下客观的展望。其次,分别从 数字水印可能受到的攻击、数字水印技术的嵌入、提取和检测四个方面展开了研 究。 在研究过程中,通过改变尺度因子,进而改变水印信息的嵌入强度,然后比 较嵌入水印信息后宿主图像的可视度来确定最佳尺度因子。经过实验观察,尺度 因子越大嵌入水印后宿主图像的可视度就越小,即图像越模

41、糊不清,却有利于提 高其鲁棒性;反之亦然。 对于数字水印技术,除了通过改进算法来提高鲁棒性外,我们还可以从密码 学角度通过提高攻破密钥所需要的代价来保护我们所传送的信息。另外,还可以 仿照互联网中通过建立标准的协议和方法来进一步改变现状等等。 总之,这是一门崭新而富有挑战的学科,而且,随着网络的发展其前景也是 非常乐观的,它需要各个领域的专家联合攻关共同努力才能取得理想的效果。同 时,也希望自己能在这一领域有所作为! 参考文献 1 朱丹丹.图像数字水印技术要析J .通化师范学院学报.-通化:2008 年 2 月第 29 卷第 2 期:39 2 彭静.数字水印算法检测标准的研究J .电子科技大学

42、学报.-西安:2007 年 6 月第 36 卷第 3 期:567 3 耿永军,朱雪芹 .基于离散余弦变换的数字水印算法J .郑州大学学报.-郑州: 2005 4 刘慧珍.变换域数字水印算法研究J .华侨大学硕士学位论文.-广州: 2006:1617 5 庞小红.图像数字水印理论与技术研究 .哈尔滨工程大学博士学位论文.-哈尔 滨:2006:2930 6 曾满红.傅立叶明文水印及零水印算法的研究.燕山大学硕士学位论文.-北京: 2005:1617 7 庞小红.图像数字水印理论与技术研究 .哈尔滨工程大学博士学位论文.-哈尔 滨:2006:34 8 Rafael C.Gonzalez,Richad

43、 E.Woods.数字图像处理(阮秋琦,阮宇智等译) M. -北京:电子工业出版社,2003 9 飞思科技产品研发中心.MATLAB 6.5 辅助图象处理M .-北京:电子工业出 版社,2003 附录 A(基于 DCT 域的数字水印算法程序) % 嵌入算法 % clear all; clc; % 读取水印图像 % omark=double(imread(muxiao.bmp)/255; mo=size(omark,1); no=size(omark,2); % 以下生成水印信息 % mark=omark; alpha=30; rand1=randn(1,8); rand2=randn(1,8)

44、; % 读取宿主图像 % cimage=imread(lena.bmp); figure(1); subplot(2,3,1),imshow(cimage,),title(原始的宿主图像 ); mc,nc=size(cimage); cda0=blkproc(cimage,8,8,dct2); % 嵌入水印 % cda1=cda0; for i=1:mo for j=1:no x=(i-1)*8;y=(j-1)*8; if mark(i,j)=1 k=rand1; else k=rand2; end cda1(x+1,y+8)=cda0(x+1,y+8)+alpha*k(1); cda1(x+

45、2,y+7)=cda0(x+2,y+7)+alpha*k(2); cda1(x+3,y+6)=cda0(x+3,y+6)+alpha*k(3); cda1(x+4,y+5)=cda0(x+4,y+5)+alpha*k(4); cda1(x+5,y+4)=cda0(x+5,y+4)+alpha*k(5); cda1(x+6,y+3)=cda0(x+6,y+3)+alpha*k(6); cda1(x+7,y+2)=cda0(x+7,y+2)+alpha*k(7); cda1(x+8,y+1)=cda0(x+8,y+1)+alpha*k(8); end end % 嵌入水印后图象 % wimage=

46、blkproc(cda1,8,8,idct2); wimage_1=uint8(wimage); imwrite(wimage_1,withmark.bmp,bmp); subplot(2,3,2),imshow(wimage,),title(嵌入水印后图象 ); % 进行攻击测试 % disp(1加入白噪声 ); disp(2高斯低通滤波 ); disp(3剪切图像 ); disp(4旋转攻击 ); disp(5直接检测 ) begin=input(请选择攻击( 1-5) : ) switch begin % 加入白噪声 % case 1 Aimage1=wimage; Wnoise=20*

47、randn(size(Aimage1); Aimage1=Aimage1+Wnoise; subplot(2,3,4),imshow(Aimage1,),title(加入白噪声后的图象 ); att=Aimage1; imwrite(att,whitenoiseimage.bmp); % 高斯低通滤波 % case 2 Aimage2=wimage; H=fspecial(gaussian,4,4,0.5); Aimage2=imfilter(Aimage2,H); subplot(2,3,4),imshow(Aimage2,),title(高斯低通滤波后的图象 ); att=Aimage2;

48、 imwrite(att,gaussianimage.bmp) % 剪切攻击 % case 3 Aimage3=wimage; Aimage3(1:128,1:128)=256; subplot(2,3,4),imshow(Aimage3,),title(剪切后的图象 ); att=Aimage3; imwrite(att,cutpartimage.bmp); % 旋转攻击 % case 4 Aimage4=wimage; Aimage4=imrotate(Aimage4,10,bilinear,crop); Aimage_4=mat2gray(Aimage4); subplot(2,3,4),imshow(Aimage_4,),title(旋转10 度后的图象 ); att=Aimage_4; imwri

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。