一种基于遗传算法的DCT域鲁棒水印技术*

2011-03-06 03:00:10朱宁波李晋国
关键词:分块交叉遗传算法

朱宁波,李晋国

(湖南大学计算机与通信学院,湖南长沙 410082)

一种基于遗传算法的DCT域鲁棒水印技术*

朱宁波†,李晋国

(湖南大学计算机与通信学院,湖南长沙 410082)

提出了一种新的基于DCT域的鲁棒水印技术.算法充分考虑了数字图像局部像素之间的相关性及人类视觉系统(HSV)的特性,通过调制各DCT分块低频系数值并比较非零DCT系数个数,选择合适的DCT分块以完成水印嵌入.嵌入过程完成后,DCT系数在由频域向空域转换时会产生取整误差,这是由于浮点数向整数转换时总是会丢失部分信息.采用遗传算法可以修正这种误差.实验证明,该算法在保证了图像质量及水印不可见的同时,对于常见的图像处理操作具有良好的鲁棒性,并对JPEG压缩攻击具有一定的抵抗能力.

数字图像;离散余弦变换;鲁棒水印;遗传算法

近十几年来,互联网技术发展极为迅速.随着它的日益普及,越来越多的新问题也开始不断凸显出来,特别是网络安全问题得到了广泛的关注.由于数字媒体易于传播和拷贝,其内容常常被恶意篡改和复制.如何有效防止盗版,保护版权所有者的合法利益,已经成为迫切需要解决的重要问题.

数字水印是针对这些问题的重要的信息安全技术,它通过水印嵌入算法将特定的可感知或不可感知的信息嵌入到多媒体中,来确定数字产品的所有权或检验数字内容的原始性.数字水印技术通常具有以下特性:1)鲁棒性;2)可检测性;3)透明性;4)安全性.自从1994年Tirkel等人发表了文章A D igitalWatermark以来,数字水印方面的论文层出不穷[1].

随着水印技术的不断发展,针对DCT域水印嵌入算法的研究已十分普遍,智能算法也开始大量地应用于数字图像水印这一领域,很多文献采用了遗传算法来提高水印算法的性能,但是针对DCT转换过程中产生的取整误差只有极少的一些研究.

Shih和W u等人使用遗传算法为整幅原始图像计算出了一个导航位图(guiding bitmap)[2].这个导航位图用于决定像素值的舍入,以此替代简单的取整操作,但是整个算法的性能过于依赖导航位图的设计.文献[3]提出了一种启发式的算法,用于改善被提取水印的质量.算法中,原始图像被分成多个不重叠的块,而所有的像素值通过使用相关系数值进行调制.A slantas等人采用了多种智能算法来处理取整误差,遗传算法是其中之一[4].该算法采用8×8分块DCT变换,并为每个DCT分块生成了一个变换图(translation map),利用变换图来决定像素值的舍入,对Shin和Wu提出的算法进行了改进.然而算法没有充分考虑到局部像素之间的关联性.以上算法均是基于脆弱水印及灰度图像的.本文提出的算法是基于彩色图像及鲁棒水印的,实验证明,本文算法对普通图像处理及JPEG压缩攻击具有较好的鲁棒性,水印的准确性明显优于一般的DCT鲁棒水印算法.

1 DCT变换中的取整误差

基于DCT域的水印嵌入算法,一般是通过调制某些DCT系数进行水印嵌入的.在嵌入过程完成之后,将含有水印信息的数据由频域向空域转换时,总会产生一定的误差.这是由于DCT系数是浮点型的,而图像的像素信息是整型的,由浮点型数据向整型数据转换总是会丢失部分信息.这种因为浮点数取整而造成的数据丢失就是取整误差.

这种取整误差将会严重影响水印提取的准确性,甚至可能造成提取出来的水印信息与原有信息完全相反[4].

目前针对这种取整误差的研究还极为有限,而且大多是基于灰度图像和脆弱水印进行研究的,本文将其中一些方法如水印嵌入位置选择算法、智能算法等进行改进,重新设计出一套针对彩色图像的鲁棒水印算法,尽可能地降低取整误差的影响,以提高水印的准确性和鲁棒性,实验证明,新设计的算法取得了较好的效果.

2 提出的水印算法

2.1 水印嵌入算法

假定图像大小为M×N,水印大小为M W× NW,论文所提出的水印嵌入算法如图1所示,具体步骤如下:

第1步,YUV变换:利用式(1)将原始图像从RGB颜色空间转换到YUV颜色空间.

然后对亮度分量Y进行8×8分块处理:

YUV是编译true-color颜色空间(color space)的种类,“Y”表示明亮度(Luminance,Luma),“U”和“V”则分别表示色度、浓度(Chrom inance,Chroma),YUV通常用来描述类比讯号,现今已经在电脑系统上广泛使用.文献[5]证实了YUV格式下,水印嵌入的优越性.而在RGB格式下,3个颜色通道具有高度相关性,不适用于水印嵌入.

图1 嵌入算法Fig.1 Embeded algorithm

第2步,水印预处理:以某一特定系数α将图像水印W各点像素值调制到值域[0,1],由于像素值大小一般在0~255之间,α不妨取值256:

随后对图像水印进行2×2分块处理,并对各个分块进行zigzag扫描,假设分块总数是L:

第3步,嵌入位置选择:将各亮度分块按照纹理复杂度大小进行降序排列,由大到小选择L个分块,并将这些分块的位置B1,B2,…,BL记录下来.

数字图像中,像素值不同的点越多,各点之间的像素值差异越大,人眼对该图像的噪声就越不敏感.水印信息在该图像的透明性就越好.在YUV格式下,图像的亮度分量Y也具有这种特性,亮度值不同的像素点越多,各像素点之间的亮度值差异越大,人眼对该图像的噪声容忍程度就越大,姑且把这种像素点的特性称为纹理复杂度.

亮度分量Y经过8×8分块DCT变换后,用各个分块的非零DCT系数个数z来表示各个分块的纹理复杂度,其计算式为:

若两个分块具有相同个数的非零DCT系数,则进一步比较它们的DC系数,因为DC系数与该分块的所有像素值之和具有一一对应的关系.此时纹理复杂度的计算式为:

第4步,水印嵌入:首先对各亮度分块进行zigzag扫描:

随后将各水印分块数据嵌入到选择出来的L个亮度分块的第T+1至T+4位几个低频位,这里T的取值为10.

最后对各亮度分块进行逆zigzag扫描和逆DCT变换完成水印嵌入过程.

一般认为,人眼对于图像的低频成分的改变是比较敏感的.但是,由于图像低频分量的幅度远大于中、高频分量(因为空间频率越高,系数的平均振幅越小),因而具有较大的感觉容量.尽管低频分量的改变比例中、高频分量要小,但允许改变的绝对幅度却要大得多.文献[6]对该理论进行了论证.Cox等的论文中,水印也是嵌入在低频分量的[7-8].因此本文在低频位进行水印嵌入.

第5步,取整误差处理:用遗传算法对逆DCT变换后得到的各个8×8亮度分块进行取整优化,减小取整误差.详见2.2节.

第6步,逆YUV变换:将经过取整误差处理的Y分量与原有的UV分量结合,得到YUV格式的图像,利用式(1)将该图像还原成RGB格式.

2.2 处理取整误差

通常情况下,遗传算法首先都是从一系列编码组成的初始群体开始的,每段编码代表一个解决方案.这些编码通过一个适应度函数反复进化,进化过程主要包括选择、交叉、变异几个环节,这个过程将重复多次直至达到终止条件,最终使整个群体的质量得以提高.

1)编码设计:针对一个逆DCT变换后得到的8 ×8数据分块,应用遗传算法来处理它的取整误差,首先要对它的取整方案进行编码.编码是由64个二进制编码组成的,每段编码都有与之相对应的变换矩阵.多个变换矩阵就组成了遗传算法的初始群体.假设编码X=x1,x2,…,x64,则xi(1≤i≤64)对应着如图2所示的8×8的变换矩阵中的元素.该变换矩阵所表示的编码X1如下:

各个分块数据从浮点型转换到整型,需要根据最优取整方案所对应的变换矩阵进行,各分块数据的取整规则如下(tranc表示只取整数部分):

图2 变换矩阵Fig.2 Transform matrix

2)适应度函数:首先按取整方案X提取出2×2的水印块,计算该水印块与原始水印块的差分图像:

随后对差分图像进行DCT变换:

最后用变换后得到的DCT系数值组成表达式,作为适应度函数:

根据式(15)计算出的适应值越小,说明提取的水印块与原水印块差异越小,取整方案X就越好,而对于常规的遗传算法,适应值越大,个体越好,因此把式(15)略作修改,最终的适应度函数为:

为了确保计算精度,在这里β取值为20.

本文的适应度函数是结合差影法进行设计的,目的是利用差分图像来衡量提取的图像水印块与原图像水印块之间的差异程度,并以这种差异程度作为适应值.但是差分图像并不能直接作为适应值,必须将它数值化,利用DCT变换可以实现这个目标.因为差分图像经过DCT变换后,其DC系数DiffDCT(1,1)与它所有点的像素值之和具有一一对应的关系,而其他的AC系数与DiffDCT(1,1)差值能进一步体现出差分图像各点像素值的差异.A slantas提出的函数[4]实际上并未考虑到像素之间的相关性,而新设计的函数正是针对这一不足之处进行改进的.

2.3 水印提取算法

本文的水印提取算法步骤如下:

第1步,将含有水印的图像从RGB格式转换成YUV格式,并对Y分量进行8×8分块DCT变换处理.

第2步,利用记录下来的水印嵌入位置B1,B2,…,BL,从各相应嵌入块的低频位置T+1,T+2,…,T+4提取出水印信息.

第3步,利用嵌入算法中用到的特定系数α将提取的水印数据还原到值域[0,255],得到图像水印.

3 实验仿真及抗攻击性能分析

3.1 遗传算法参数的确定

遗传算法的性能通常要受到交叉概率、变异概率、交叉变异方式及进化代数(generation number)等参数的影响,为了得到较好的遗传算法参数,本实验以512×512的标准彩色lena图像及64×64的BMP格式灰度图像水印(如图3所示)为测试数据,使用多种参数进行测试.

1)交叉方式、交叉概率及变异方式的确立:设置遗传算法的进化代数为30,以逆DCT变换后得到的第B3和B35块数据为测试数据,用不同的交叉方式、交叉概率及变异方式进行仿真,得到的适应值均值与标准差结果见表1和表2.

图3 lena(左)及水印(右)Fig.3 Lena(left)and w atermark(right)

适应值均值可以体现出整个群体的质量,均值越高,整个群体质量越好,而标准差体现的是群体的离散程度,标准差越小,群体离散度就越小,适应值较大的个体就越多,整个群体就越优秀.观察数据块B3和B35的测试结果见表1和表2,综合比较各种情况下的适应值均值和标准差,可以发现总体上双点交叉比单点交叉性能优越,变异概率均匀分布比高斯分布性能优越,最终选定参数如下:交叉概率取0.3,变异概率采用均匀分布(通常情况,均匀分布下的变异概率等于交叉概率除以编码长度,以确保每个个体的变异概率近似接近0.5),交叉方式用双点交叉.

2)进化代数的确立:使用数据块B3作为测试数据,设置交叉概率为0.3,变异概率采用均匀分布,交叉方式用双点交叉,在不同的进化代数下进行仿真,结果如图4所示.

图4 不同进化代数下的适应值Fig.4 The fitnesses for differentgeneration number

比较不同进化代数下数据块B3的最佳适应值及平均适应值,综合考虑优化效果和算法的运算效率,最终决定采用的进化代数为75.

3.2 水印算法性能对比

分别以512×512的lena,F-16,baboon,peppers标准彩色测试图像以及图3中的图像水印作为测试数据,比较直接取整[5]与基于遗传算法的取整方法的仿真效果,结果见表3.

表1 对B3数据块采用不同的交叉方式、交叉概率及变异方式的遗传算法运行效果Tab.1 Theeffect of the crossover types,crossover rates andmutation types of GA based method on the B3 block

表2 对B35数据块采用不同的交叉方式、交叉概率及变异方式的遗传算法运行效果Tab.2 The effecto f the crossover types,crossover rates andmutation types of GA based method on the B35 b lock

表3 遗传算法与普通取整方法[5]的效果Tab.3 The effectofmethods based on simp le rounding and GA

使用普通的取整方法处理数据[5],通过观察可以看到提取的图像水印存在大量的噪点,而应用遗传算法进行优化处理后,这种噪点得到明显的减少.由于两种方式下嵌入的水印信息量相同,因此载体图像质量几乎一样,即PSNR值几乎相等,但应用遗传算法优化的方法,使得水印的NC值有了一定程度的提高.实验结果说明经过优化后提取的水印更为精确可靠.

PSNR值和水印的NC值计算公式如式(17)和式(18):

式中:I和IW分别为原始图像和含有水印的图像的亮度分量;Wo和We分别为原始水印和提取出来的水印.

3.3 抗攻击性能分析

1)常见的图像处理攻击:使用本文的算法,对512×512的标准彩色lena图像进行水印嵌入,随后对含有水印的lena图像进行多种常见的图像处理攻击,其结果见表4.

表4 常见的图像处理攻击效果Tab.4 The ef fect of common image processing attacks

对比实验数据发现,经过本文算法处理的图像对锐化及色调均化攻击的抵抗能力稍差,对于其他如裁剪、高通滤波等各种攻击抵抗能力较好,NC值均达到了0.9以上.实验结果表明,本算法对于常见的图像处理攻击具有较好的鲁棒性.

接下来对含有水印的lena图像进行不同质量因子下的JPEG压缩攻击,其结果见表5.

表5 JPEG压缩攻击效果Tab.5 The ef fect of JPEG compression attack

2)JPEG压缩攻击:通过观察发现,质量因子在87以下时,图像的抵抗效果不太理想,水印无法辨认,而质量因子在88以上时,图像的鲁棒性较好,在90以上时,NC值基本上都在0.9以上.实验结果证实,本文的算法对于JPEG压缩攻击也具有一定的抵抗能力.

4 结 语

本文提出了一种基于彩色图像的鲁棒水印算法,设计了较为合理的选块方案,并采用遗传算法减小了取整误差,使水印的鲁棒性及准确性取得了较好的效果.但由于遗传算法本身的一些局限,导致算法性能受到了一定的限制,对于JPEG压缩攻击的抵抗能力有限.下一步的工作应当考虑应用其他的智能算法,设计更为合理的适应度函数来处理频域变换中的取整误差,针对JPEG压缩攻击,对水印嵌入算法进一步改进,以取得更好的结果.

[1] VAN SCHYNDEL R G,TIRKEL A Z,OSBORNE C F.A digital w atermark[C]//Proceedings of the First IEEE Im age P rocessing Con ference.New York:IEEE,1994:86-90.

[2] SH IH F Y,WU Y T.Enhan cem ent of image w atermark retrieval based on geneticalgorithm s[J].Journalof VisualComm unication&Image Representation,2005,16(2):115-133.

[3] CHANG C C,CH ANG Y C,SHEN J J.A aeu risticmethod for ex tracting enhanced waterm arks from digital images[C]// P roceedings of In ternational Conference on Intelligent Inform ation Hiding and M ultimedia Signal Processing.New Yo rk: IEEECom puter Society,2006:453-456.

[4] ASLANTAS V,OZER S,OZTURK S.Imp roving the performance of DCT-based fragile w atermarking using intelligent op tim ization algorithms[J].Optics Communications,2009, 282(14):2806-2817.

[5] LIN SD,SHIE S C,GUO J Y.Improving the robustness of DCT-based image w atermarking against JPEG comp ression [J].Compu ter Standards&Interfaces,2009,32(1/2):54-60.

[6] HUANG J,SHIY Q,SH IY.Embedding imagewatermarks in DC components[J].IEEE T ransactionson Circuitsand Systems fo r V ideo Technology,2000,10(6):974-979.

[7] COX IJ,K ILIAN J,LEIGH TON F T,et al.Secu re sp read spectrum waterm arking for images,audio and video[C]//Proceedings of International Conference on Image Processing. New York:IEEE,1996:243-246.

[8] COX IJ,K ILIAN J,LEIGH TON F T,et al.Secu re sp read spectrum w atermarking for multimedia[J].IEEE T ransactions on Image P rocessing,1997,6(12):1673-1687.

A DCT-based RobustWatermarking Using Genetic A lgorithm s

ZHU Ning-bo†,LI Jin-guo

(College of Computer and Communications,Hunan Univ,Changsha,Hunan 410082,China)

A new robust watermarking based on DCT domain was proposed.The algorithm takes fu ll advantage of the local correlation of the host image pixelsand themasking characteristicsof the hum an visual system.It chose DCT blocks by comparing the value of the DCT low frequency coefficients and the am ount of the nonzero DCT coefficients of each b lock.A fter the embedding process was com pleted,the transformation of the DCT coefficients from the frequency domain to the spatial domain produces some rounding errors,because the conversion of real num bers to integers would cause some information loss. This paper used genetic algorithm to dealw ith the rounding errors.The experimental results have shown that the algorithm can not only ensure the quality of the embedded image and the invisibility of thewaterm ark,but also give robust to comm on image operation.

digital image;DCT;robustwatermarking;genetic algorithm

TP309

A

1674-2974(2011)04-0077-06 *

2010-04-19

湖南大学青年教师科技创新扶持项目(531107040060)

朱宁波(1972-),男,湖南长沙人,湖南大学副教授,博士

†通讯联系人,E-mail:quietwave@163.com

猜你喜欢
分块交叉遗传算法
分块矩阵在线性代数中的应用
“六法”巧解分式方程
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
统计与决策(2017年2期)2017-03-20 15:25:24
反三角分块矩阵Drazin逆新的表示
连一连
基于自适应中值滤波的分块压缩感知人脸识别
基于改进的遗传算法的模糊聚类算法
基于多分辨率半边的分块LOD模型无缝表达