首页 > 范文大全 > 正文

基于离散余弦变换的数字图像水印技术研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于离散余弦变换的数字图像水印技术研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:数字水印是一种全新的数字产品保护技术,是信息隐藏技术的一种,这种技术将数字水印嵌到各种数字产品中,最终达到保护信息安全的目的。数字图像水印算法分空域和变换域,其中变换域具有更好的视觉效果和鲁棒性,其中基于离散余弦变换(DCT for Discrete Cosine Transform)的数字图像水印算法就是最常用一种,它具有鲁棒性强、隐蔽性好的特点。该系统是一种对原始图像作分块DCT变换后选取直流分量嵌入水印和提取水印的算法,利用离散余弦变换嵌入的数字图像水印具有感官上的不可见性,并且原图像信息丢失量少,根据离散余弦变换抗几何变换的性质,使水印图像能够抵抗噪声和剪切等一系列攻击。

关键词:DCT;数字图像水印;离散余弦;鲁棒性

中图分类号:TP309

1 数字水印技术研究的意义

由于科学技术的发展,很多的数字化产品易于加工,非法的复制和拷贝也比较容易,这样严重损坏了数字产品的完整性以及数字产品作者的版权。为了解决这一问题,因而提出了数字水印技术。

数字水印技术,从1993年Caronni正式提出数字水印到现在,无论国内还是国外对数字水印的研究都引起了人们的关注。在国外方面,由于有大公司的介入和美国军方及财政部的支持,虽然在数字水印方面的研究刚起步不久,但该技术研究的发展速度非常快。1998年以来,《IEEE图像处理》、《IEEE会报》、《IEEE通信选题》、《IEEE消费电子学》等许多国际重要期刊都组织了数字水印的技术专刊或专题新闻报道,SPIE和IEEE的一些重要国际会议也开辟了相关的专题。IBM公司、日立公司、NEC公司、Pioneer电子公司和Sony公司等五家公司还宣布联合研究基于信息隐藏的电子水印。国内方面,我国的数字水印技术,也已经取得了一定的研究成果,而且从学术领域的研究成果来看,我国的研究与世界水平相差的并不远,并且有自己的独特研究思路。

数字水印的主要用途可以分为以下几类:(1)版权标识水印。数字水印将各种信息放在各种需要保护的数字产品中,即使经过噪声干扰、滤波、剪切、压缩、旋转等攻击,水印仍可以继续存在。例如Adobe公司在其著名的PS软件Corel Draw图像处理软件中集成了Digimarc公司的数字水印插件。(2)篡改提示水印。检测数字产品是否被修改、伪造等的处理的过程。(3)隐蔽标识水印。在一些数字产品中,可以将数字水印嵌入作一些隐式注释。(4)票据防伪水印。随着现代各种先进输出设备的发展,使得各种票据的伪造变得更加容易,数字水印技术可以增加伪造的难度。因此,研究数字技术非常有必要性。

2 基于DCT数字图像水印技术的研究

2.1 数字水印的概念

数字水印技术是指用信号处理的方法在多媒体数据中嵌入某些能证明版权归属或跟踪侵权行为的隐蔽的信息,这些信息通常是不可见的,不容易被人的知觉系统觉察或注意到,这些隐藏在多媒体内容中的信息只有通过专用的监测器或阅读器才能提取。通过这些隐藏在多媒体内容中的信息,可以达到确认内容创建者,购买者或判断内容是否真实完整的目的。水印系统所隐藏的信息总是与被保护的数字对象或它的所有者有关。

2.2 DCT数字图像水印的基本理论

其中图像二维DCT变换(M取8或16)有许多优点:

图像信号经过变换后,变换系数几乎不相关,经过反变换重构图像信道误差和量化误差将像随机噪声一样分散到块中的各个像素中去,不会造成误差累积,并且变换能将数据块中的能量压缩到为数不多的部分低频系数中去(即DCT矩阵的左上角)。对于给定图像f(m,n)存在两种DCT变换方法:一种是把图像f(m,n)看成一个二维矩阵直接对其进行DCT变换,然后嵌入水印,Cox[3]采用此种方法;另一种方法是与JPEG压缩标准相统一,先把图像分成8*8的不同小块,再分别对每一块进行DCT变换,进而嵌入水印,本文采用后一种方法嵌入水印。

一般数字水印应具有如下的特征:无论经过怎样复杂的操作处理,通过水印算法仍能检测到数字水印作品中的水印能力。即所谓的稳健性;通过水印算法,嵌入水印后不能最终导致图像的质量在视觉上发生明显变化,即视觉的不可感知性;通过数字水印算法能够抵御非授权人的攻击,同时检测可以检测到水印的概率,具有较高的安全性及有效性。

3 基于DCT的数字图像水印算法系统的设计与实现

3.1 MATLAB软件的介绍

MATLAB是目前最强大的编程工具之一,本文将利用MATLAB7.0软件进行基于DCT的数字水印算法的系统的设计和实现。

MATLAB语言简洁紧凑,库函数丰富,程序书写形式自由,运算符丰富,使用方便灵活。MATLAB具有结构化的面向对象编程的特性,可移植性好,且具有较强的图形编辑界面和功能强大的工具箱。同时,MATLAB中的源程序具有开放性,可以通过对其的修改使其变成新的程序。不足之处是,MATLAB的程序执行速度较慢。利用MATLAB研究数字水印技术集成了DCT等函数,方便了研究人员编写源程序,易实现。使用了MATLAB中很多的工具箱。

3.2 基于DCT的数字图像水印算法系统的设计与实现

3.2.1 需求分析

离散余弦变换(Discrete Cosine Transform)简称DCT,基于DCT域的数字水印算法,可以分为两大类,一类是直接对整幅图像进行DCT整体计算,然后嵌入水印。另一类是先将整幅图像分成块,对每一块分别进行DCT计算,最后再嵌入水印。由于分块DCT计算速度比整体DCT计算速度快得多,因此目前DCT域的水印方法大多数是采用的分块DCT方法。

基于DCT的数字图像水印算法系统的设计与实现,可以提供用户一个良好的交互手段,用户可以利用本系统进行水印的嵌入、提取、攻击等,本系统的可交互的,可视化的特点为用户研究基于DCT的数字图像水印算法提供了方便。

3.2.2 系统功能模块设计

(1)水印生成。通常是通过伪随机数发生器或混沌系统来产生水印信号,通常需要对水印进行预处理来适应水印嵌入算法。

(2)水印嵌入。水印嵌入的准则常用的有三种,分别为加法准则、乘法准则、加法乘法混合准则,混合准则近年来引起了人们的广泛关注。

(3)水印提取。指水印被提取出来的过程。

(4)水印检测。水印检测是指判断数字产品中是否存在水印的过程。

3.2.3 系统实现

一个完整水印系统的设计通常包括水印的生成、嵌入、提取和检测四个部分。

通过选取实验图片,点击导入图片,然后进行水印的嵌入,再对嵌入水印的图片进行高斯噪声、滤波、剪切、旋转等攻击实验后,可以继续提取水印,进行水印信号的检测。

(1)嵌入水印的过程。论文采用的是分块DCT算法,水印嵌入步骤如下:

1)将灰度宿主图像分成互不覆盖的8×8的块,然后对每一块都进行DCT变换,得到与宿主图像相同尺寸的DCT域;

2)我们用密钥生成长度为NW的Gaussian白噪声作为水印信号:W~N(0,1);

3)将每个8×8的DCT系数矩阵从每一块的中频段取出((64×Nw)/(M×N))个系数CK(i,j),k=1,2,…Bnum;

4)根据公式W′=W(1+alfa*mark)嵌入水印,其中alfa为尺度因子,mark为水印信息,W为原图象的分块DCT系数。

5)用得到的新的DCT系数对原来位置的DCT系数进行置换。

6)对新的DCT系数矩阵进行DCT反变换,得到了嵌入水印信号后的图像。

4 结束语

本论文是在应用了MATLAB7.0软件,设计和实现了完整的数字图像水印处理系统,包括水印的嵌入、提取与验证过程。所提出的方案均在该系统中进行了验证。

数字水印技术的发展时间虽然不长,但其在版权保护、内容的完整性以及认证方面都做出了一定的贡献。未来,数字水印在知识产权的保护、内容认证等方面会有一个更好的应用前景。我们应该抓住信息时代对于数字版权保护的迫切需求,开发出自己的水印产品。

参考文献:

[1]孙锐,孙洪,姚天任.多媒体水印技术的研究进展与应用[J].系统工程与电子技术,2003,25(6):772-776.

[2]王丙锡,陈琦,邓峰森.数字水印技术[M].西安:西安电子科技大学出版社,2003.

[3]余成波,杨菁,杨如民,周登义.数字信号处理及MATLAB实现[M].北京:清华大学出版社,2005.

[4]王家文,李仰军.MATLAB7.0图形图像处理[M].北京:国防工业出版社,2006.

[5]张问银,梁永全.基于DCT的一种数字图像水印策略[J].山东:山东科技大学学报,2002.

[6]肖力.一种基于DCT域的数字水印的实现[J].鄂州大学学报,2005.

[7]Rafael C.Gonzalez,Richad E.Woods.阮秋琦,阮宇智译.数字图像处理[M].北京:电子工业出版社,2003.

[8]耿永军,朱雪芹.基于离散余弦变换的数字水印算法[J].郑州大学学报,2005.

[9]M.jiang,Z.jiang.A New Searchless Fractal Image Encoding Method Based on Wavelet Decomposition.Proceedings of the 6th World Congress on Intelligent Control and automatiaon,(2006):83-86.

作者简介:黄俊霞(1981-),女,山西运城人,助讲,研究方向:计算机教学。

作者单位:运城幼儿师范高等专科学校,山西运城 044000