APP下载

基于显著性分类的数字图像自嵌入方法

2014-02-21赵丽丽钱振兴韩喜玉

应用科学学报 2014年2期
关键词:比特编码长度

赵丽丽, 钱振兴, 韩喜玉

上海大学通信与信息工程学院,上海200072

数字图像自嵌入与恢复技术是图像保护的一种有效手段,它将原始图像的编码和认证数据作为水印信息嵌入到原始图像中,以实现对图像内容的认证与恢复.该技术首先要求将秘密数据不可见地嵌入到图像中,即保证数据嵌入对图像质量的影响较小.当图像被篡改后,其中相关区域内容的恢复质量、最大可恢复比例也是判断方法有效性的重要指标.

文献[1]最先提出了自嵌入方法,将图像分成互不重叠的8×8块,分块后将前11个DCT系数编码为固定长度的参考数据,嵌入到图像的最不重要位(least signif icant bits,LSB)中.该方法可保证数据隐藏对图像质量的影响很小,但图像恢复的质量较低.随后,出现了多种数字图像自嵌入方法.文献[2]改进了文献[1]的方法,将系数增加到14个,并调整了位长,但图像恢复的质量仍较低.为了提高图像恢复的质量,文献[3]提出了一种基于可逆隐藏的自嵌入方法,采用差异扩展算法在图像中嵌入参考数据,使接收端可以无损地恢复被篡改内容,但最大恢复面积不超过原图像的3.2%.为了提高最大恢复面积,文献[4]对恢复数据进行重复嵌入,增加了图像成功恢复的概率.文献[5]通过矢量量化对原始图像进行编码,并重复4次数据嵌入,使最大篡改比达到原图像的90%,但要附加传输一个码表.近几年的自恢复方法主要集中于灵活而自适应方面的研究,根据图像块纹理复杂度确定编码长度[6-8],以及不同篡改面积下具有不同的恢复质量[9-10],文献[6]用Inpainting的方法来恢复图像,降低了嵌入容量,也保证了相关区域内容的恢复质量.文献[10]提出了一种参考共享机制的自恢复算法,将提取出来的参考信息置乱后嵌入到图像中的各个位置,有效避免了篡改巧合问题.文献[11]提出了一种新的自恢复算法,将图像自恢复问题类比为删除信道下数据包的传输问题,采用喷泉编码使相关区域内容的恢复质量接近37d B,最大篡改比为原图像的50%.

上述方法虽各具优点,但也存在不少缺点,总结起来主要有两方面的问题.1)对篡改图像进行恢复时会丢掉很多细节,不能保证图像的恢复质量,尤其是显著性区域的恢复质量不够理想,如文献[1-2]中提出的方法;2)不能保证水印不可见地嵌入到图像中,如文献[5,8,10-11]等都是对图像的3个LSB位进行替换,不但降低了含密图像的质量,而且在面积较大的平滑区域产生明显的伪轮廓.

针对以上问题,本文提出一种基于显著性分类的数字图像自嵌入方法.首先根据图像自身的特点对图像进行分类,包括显著性区域、平滑区域和一般区域;然后动态决定每个区域的参考数据量和嵌入容量,在显著性区域获得了较高的恢复质量,同时保证了含密图像的质量;最后应用喷泉编码对参考数据进行编码,避免了篡改巧合问题,增大了恢复面积.与传统方法相比,本文方法既能重点保护显著性区域,又能保证含密图像的高质量,且具有较大的恢复面积.

1 算法总体框架

本文方法将嵌入信息分成以下3部分:1)参考数据,用以重建篡改区域的原始内容;2)位置数据,用以标定不同内容的具体位置;3)认证数据,用以确定含密图像是否被篡改.总体的图像自嵌入过程如图1所示.

图1 图像的自嵌入过程Figure 1 Self-embedding procedure

首先对图像内容进行分类,获得位置数据,动态决定每个区域的参考数据量和嵌入容量;然后根据每个区域获得的参考数据量对图像进行编码获得参考数据,并对参考数据和位置数据进行喷泉编码;最后根据编码后的数据以及原始图像的信息产生认证数据,生成含密图像.

2 图像内容分类与编码

2.1 图像内容分类

一幅图像中的显著性区域是最重要的部分,因此本文方法将重点保护这些区域,使其获得良好的恢复质量.在很多图像中,有诸如天空之类的大面积平滑区域,采用传统方法自嵌入易导致伪轮廓.因此,本文将原始图像分为包括显著性区域、平滑区域、一般区域3种类型.

检测显著性区域时,采用基于DCT(discrete Cosine transform,DCT)变换的方法[14],将前景显著性区域从背景中提取出来,也可以采用手动标记的方法.设有原始图像I,其大小为M×N,将图像I缩小为(64M/N)×64大小的图像Ir,对Ir进行整体DCT运算,提取所有系数的符号

式中,sign(·)为符号函数.对It进行反变换,即仅通过相位信息获得一幅新图像

根据高斯模糊的方法确定I′t中的显著性区域

式中,g表示大小为n1×n2的高斯低通滤波器,σ为标准方差,符号*表示卷积运算.Mp是显著性映射图,标记图像中各个区域的显著性程度;Mp中的数值越大,则表明显著性越强.对Mp进行二值化,用矩形框框定面积最大的前3个显著性区域分别记录每个矩形的左上和右下两个坐标.由于Ir的长为64M/N,宽为64,于是将长和宽分别用10比特和7比特来表示,则3个显著性区域用102比特表示,另外用2比特表示显著性区域的数目,并将上述104比特位置数据记为P1.检测I中大面积平滑区域时用边缘检测的方法.用矩形框框定前3个面积最大的平滑区域,这些区域最有可能产生伪轮廓,标记3个平滑区域的位置,将得到位置数据后用64/N的压缩因子进行压缩,同样以104比特位置数据来标定,记为P2.

图2给出了一个区域分类的具体实例,显著性区域检测时高斯模糊的滤波器大小为12×12,方差为2.88.图2(a)为原始图像,图2(b)实线框定出的是显著性区域的检测结果,图2(c)虚线框定出的是平滑区域的检测结果.如果显著性区域和平滑区域发生重叠,则认为该区域是显著性区域;如果该区域既不是显著性区域也不是平滑区域,则认定为一般区域.最后结果如图1(d)所示,其中黑点区域为平滑区域,斜线区域为显著性区域,白点区域为一般区域.经上述处理,并且可以根据208比特的位置数据将图像内容分为3类分别标定.

图2 图像内容分类Figure 2 Image content classif ication

2.2 图像内容编码

将图像I分割成M N/64个8×8互不重叠的块,设区域检测的矩形框的坐标值为(i,j),调整每个区域的坐标值,乘以缩放因子N/64(α)映射到原始图像的相应位置,同时使每个区域含有整数图像块,其坐标调整为(i′,j′).

统计每个区域的块的数目,其中显著性区域块的数目为N1,平滑区域块的数目为N2,一般区域块的数目为N3.平滑区域和显著性区域对1个LSB位进行信息隐藏,一般区域对2个LSB位进行信息隐藏.假设图像总的参考数据量为C,即每个区域分配编码长度,根据编码长度对图像内容进行压缩编码.平滑区域每个块的编码长度为P,一般区域每个块的编码长度为B,显著性区域每个块的编码长度为F,每个块编码长度的最大值为189.编码长度的分配规则如下:首先为平滑区域和一般区域中的每一块分配编码长度,如果平滑区域的面积不为0则分配11比特的编码长度,如果一般区域的面积不为0则分配48比特的编码长度;然后计算出剩余容量,即显著性区域中的每一块分配编码长度,其编码长度为

再检测显著性区域的编码长度,若超过189,则检测N1是否为0,若为0则将显著性区域的编码长度设为0,否则将其编码长度设为189,然后将剩余容量分配给一般区域

最后检测一般区域的编码长度,经过式(6)的重新分配后,若编码长度超过189,则检测N3是否为0,若为0则将一般区域的编码长度设为0,否则将其编码长度设为189,然后重新分配平滑区域的编码长度

这种分配规则能使显著性区域获得尽可能长的编码,并确保总的编码长度接近但是小于总的嵌入容量C,如果不足C比特则添0.

确定编码长度后,对区域中的每一个块进行编码.首先对每块的LSB位清零,每个像素除8四舍五入后减16,像素值的取值范围变为[-16,16];然后对每块进行DCT变换并取整,取整后的DCT系数矩阵记为D;根据编码长度对D按之字形排序进行2值编码,将所有块编码后生成参考数据.编码顺序和每个位置的最大编码长度如图3所示,最长为189比特.根据分配得到的码长,按照图3对每个块的DCT系数按之字形排序依次编码,直到编码长度等于该块分得的码长,若某位置的DCT系数过大而不能用该位置的码长表示,则将该位置DCT系数编码为该位置分得码长所能表示的最大值.编码结束后得到了C比特的参考数据,记为R.

3 数据嵌入

得到参考数据和位置数据后,要对这些数据进行编码,编码的目的是避免篡改巧合问题,以获得较大的最大恢复面积.根据图像的原始内容、参考数据和位置数据生成认证数据,最后将编码后的参考数据、位置数据和认证数据嵌入到原始图像中,即可得到含密图像.

图3 参考数据编码表Figure 3 Reference data coding table

3.1 喷泉编码

为提高数据恢复的概率,采用喷泉编码[12]进行编码,喷泉编码是删除信道下性能优越的编码方式.假设原始文件的大小为K,喷泉编码对整个文件的包进行异或操作,生成Z个数据包.当接收端接收到任意Q(Q只要比原始文件的大小K大一点)个数据包时,便恢复源文件.假设信源符号为X1,X2,···,XK,每个Xk大小都有相等的比特数.在每个时钟周期,编码器产生一个K阶随机二进制矩阵GKZ

编码器的输出由Xk异或而成,编码后得到输出

根据随机线性喷泉码(random linear fountain,RLF),文献[11]提出了一种基于自恢复模型的喷泉码,在解码过程中采用Yi和未篡改的Xi共同解码,从而提高了数据恢复的概率.

应用喷泉编码对以上得到的208比特位置数据P1、P2和C比特恢复数据R分别进行编码.首先将参考数据R分解成C/32个符号,使每个符号含有32比特;然后将C/32个符号应用文献[11]提出的自恢复模型进行编码,设置特定密钥,编码效率β=1(Z=K),生成编码数据Y,每个Yi含32比特;生成的编码数据Y用于信息嵌入和生成认证数据,当编码后的符号有50%遭到破坏,仍能对原始数据进行恢复.然后对位置数据进行编码,首先将208比特的位置数据P1、P2分成208个符号,每个符号含有1比特;应用传统的RLF喷泉码(因为解码时不能重新产生位置数据)设置特定密钥,产生M N/64个符号,每个符号含有1比特.至此,共得到M N/64比特位置数据和C比特的参考数据.在数据嵌入过程中,由于每个区域的嵌入容量不同,所以如果攻击者先篡改编码长度和嵌入容量较小的区域,得到的最大篡改比会大于50%,详细结果见后续实验.

3.2 生成含密图像

数据嵌入过程中既要减小数据嵌入对原始图像的影响,又要得到尽可能多的嵌入容量,以保证图像的恢复质量,所以需要动态改变每个区域的嵌入容量:在平滑区域和显著性区域需要对1个LSB位进行替换,每块有64比特的嵌入容量,其中31比特用来嵌入认证数据,1比特用来嵌入位置数据,32比特用来嵌入参考数据;一般区域需要对2个LSB位进行替换,每块有128比特的嵌入容量,其中31比特用来嵌入认证数据,1比特用来嵌入位置数据,96比特用来嵌入参考数据.图像总的参考数据的嵌入容量C=N1×32+N2×32+N3×96.

编码后参考数据共C比特,C/32个符号,每个符号含有32比特,编码后的位置数据共M N/64比特,M N/64个符号,每个符号1比特,即每块分配1比特.将编码后的数据按顺序并根据每个块的容量分配给每一个块.接着产生认证数据,对于位于平滑区域和显著性区域的图像块,将该块7个MSB位平面的448比特原始数据、1比特位置数据、32比特参考数据和该块在图像中的位置标号输入到MD5[13]哈希函数中,设置特定密钥,产生32比特的认证数据;对于一般区域的图像块,将该块6个MSB位平面的384比特的原始数据、1比特位置数据、96比特参考数据和该块在图像中的位置标号输入到MD5哈希函数中,设置特定密钥,同样产生32比特的认证数据.这里取32比特的后31位作为认证数据,剩余的1比特用来嵌入位置数据.至此,用得到的参考数据、认证数据、位置数据替换每块的LSB位,就得到了含密图像W.

4 图像认证与恢复

在图像认证过程中,含有错误信息的块被称为“篡改的块”,否则称为“保留的块”.首先对图像进行8×8分块,提取出来每块的认证数据,然后根据每块的其余数据和该块在图像中的位置标号及密钥,重新计算出该块的认证数据,并与提取的认证数据比较,如果一致则认为该块没有被篡改,否则认为该块被篡改了.然后提取出位置数据,根据整幅图像的篡改检测映射图,进行RLF喷泉解码,得到各个区域的位置信息,调整得到的位置信息,乘以缩放因子N/64(α).映射到原始图像的相应位置,同时使每个区域含有整数图像块,如式(4)所示.因为位置数据共有208比特,根据传统的RLF喷泉码的解码效率,为了使50%的符号被篡改后仍能恢复位置数据,图像块的数目M N/64应不少于416.

数据恢复过程,根据得到的位置信息按照2.2节重新生成参考数据,对于提取的参考数据和重新生成的参考数据,应用文献[11]中提出的RLF自恢复模型进行解码,解码后将篡改的块的2值参考数据转换成DCT系数,再进行DCT反变换获得恢复数据,用得到的恢复数据替换图像中被篡改的区域,重建图像.

5 实验结果与分析

采用本文方法进行实验,并与文献[1,10-11]的方法进行比较.实验中应用了Lena图像和BOWS2数据库中的图像[15].图像的大小为256×256.

实验1 比较含密图像的质量.图4(a)为原始图像,图4(b)给出了原图像黑框区域的细节;图4(c)为对3个LSB位进行信息隐藏产生的含密图像,PSNR均为38d B,图4(d)给出了含密图像的细节,可以看到明显的伪轮廓;图4(e)是应用本文的方法所得到的含密图像,PSNR分别为48d B,图4(f)是含密图像的细节,和原始图像无太大差别.无论从PSNR的值还是图像细节都可以看出本文方法明显优于3个LSB位平面替换的方法.实验结果表明,以往的3个LSB位平面信息隐藏的方法,对图像质量影响较大,尤其是在平滑区域会产生明显的伪轮廓,实际上2个LSB位平面信息隐藏的方法在平滑区域也会产生可见的伪轮廓,而本文提出的方法动态调整每个区域的嵌入容量,保证了数据隐藏后图像的质量,达到了不可见的嵌入数据的要求.

实验2 比较了图像的恢复质量. 篡改区域如5(a)中黑色实线区域,图5(a)为应用文献[1]中所提出的方法得到的恢复图像,图5(b)为其部分细节,文献[1]中的方法采用1个LSB位平面进行信息隐藏,能够实现不可见的数据嵌入,但恢复的图像质量较差,PSNR仅为27dB.而且从图像细节也可以看到有明显的块效应.图5(c)为应用本文所提的方法得到的恢复图像,PSNR为34d B,图5(d)为恢复后图像的部分细节.从实验结果可以看出,在达到嵌入信息不可见的相同前提下,本文方法明显优于文献[1]中提出的方法.

图4 含密图像质量比较Figure 4 Comparison of the embedded quality

图5 图像恢复质量比较Figur e 5 Comparison of the recovered quality

实验3 验证了本文提出的方法对篡改检测和恢复的有效性.图6(a)为原始图像,图6(b)为对Lena的脸部进行替换修改的图像,图6(c)显示了篡改检测的结果,图6(d)显示了图像恢复后的结果.从实验结果可以看出对图像内容进行的篡改,本文所提的方法能进行准确的检测与恢复,重建后图像的PSNR分别为36dB.

图6 图像的篡改检测与恢复Figure 6 Tamper identif ication and restoration

表1和2将本文方法与其他方法进行了综合比较.任意选取几幅图像,表1是基于BOWS2数据库中图像266进行比较的结果,表2是基于BOWS2数据库中图像4289进行比较的结果.结果表明:本文方法在综合显著性区域的恢复质量、含密图像的质量及最大篡改比方面是同类方法中性能较优的;文献[1]提出的方法所得图像的恢复质量不高,对于显著性区域甚至不能符合人眼的视觉要求,并且存在篡改巧合问题;文献[10]提出的方法所得到嵌入水印后图像的质量下降明显,对于含有天空等平滑区域的图像会产生伪轮廓,最大篡改比也不能达到一般应用的需求;文献[11]提出的方法也会在平滑区域产生伪轮廓,不能满足不可见的嵌入信息的要求.

表1 第1幅图像的比较结果Table 1 Comparison results for the first image

表2 第2幅图像的比较结果Table 2 Comparison results for the second image

6 结语

本文提出了一种基于显著性分类的数字图像自嵌入方法,首先根据图像自身的特点将图像分为显著性区域、平滑区域和一般区域,动态决定每个区域的参考数据量和嵌入容量,显著性区域获得较多的参考数据量,平滑区域获得较少的嵌入容量,并采用喷泉码对参考数据进行编码,增大图像的最大恢复面积.实验结果表明:与当前自嵌入算法普遍采用的3个LSB位平面和2个LSB位平面信息隐藏方法相比,本文方法对原始图像的质量影响较小,保证了嵌入水印的不可见性;与1个LSB位平面信息隐藏方法相比,本文方法能够得到一个较高的恢复质量,对于显著性区域的恢复质量也并不逊色于3个LSB位平面替换的方法;与以往方法相比,本文方法在最大篡改比方面也具有优越性.

[1]FRIDRICH J,GOLJAN M.Protection of digital images using self embedding[C]//Proceedings of Symposium on Content Security and Data Hiding in Digital Media,NJ,USA,May.14,1999.

[2]张鸿宾,杨成.图像的自嵌入及窜改的检测和恢复的算法[J].电子学报,2004,32(2):196-199.

ZHANG Hongbin,YANG Cheng.Tamper detection and self-recovery of images using self-embedding[J].Acta Electronica Sinica,2004,32(2):196-199.(in Chinese)

[3]ZHANG Xinpeng,WANG Shuozhong.Fragile watermarking with error-free restoration capability[J].IEEE Transaction on Multimedia,2008,10(8):1490-1499.

[4]LEE T Y,LIN S D.Dual watermark for image tamper detection and recovery[J].Pattern Recognition,2008,41(11):3497-3506.

[5]YANGC W,SHEN J J.Recover the tampered image based on VQ indexing[J].Signal Processing,2010,90(1):331-343.

[6]QIANZ X,FENGG R.Inpainting assisted self recovery with decreased embedding data[J].IEEE Signal Processing Letters,2010,17(11):929-932.

[7]QIAN Z X,FENG G R,ZHANG X P,WANG S Z.Image self-embedding with high-quality restoration capability[J].Digital Signal Processing,2011,21(2):278-286.

[8]KORUSP,DZIECH A.A novel approach to adaptive image authentication[C]//Proceedings of 2011 18th IEEE International Conference on Image Processing,Sept.11-14,2011:2765-2768.

[9]ZHANG Xinpeng,WANG Shuozhong.Self-embedding watermark with f lexible restoration quality[J].Multimedia Tools and Application,2011,54(2):385-395.

[10]ZHANGXinpeng,WANGShuozhong.Reference sharing mechanism for watermark self-embedding[J].IEEE Transaction on Image Processing,2011,20(2):485-495.

[11]KORUS P,DZIECH A.Efficient method for content reconstruction with self-embedding[J].IEEE Transaction on Image Processing,2012,22(3):1134-1147.

[12]MACKAY D J.Fountain codes[J].IEE Proceedings Communication,2005,152(6):1062-1068.

[13]RIVEST R L.The MD5 messages digest algorithm[OL].http://tools.ietf.org/rfc/rfc1321.txt,1992.

[14]HOUX D,HARELJ,KOCHC.Image signature:highlighting sparse salient regions[J].IEEE Transaction on Pattern Analysis and Machine Intelligence,2012,4(1):194-201.

[15]The dataset from the 2nd bows contest[OL].http://bows2.ec-lille.fr/,2007.

猜你喜欢

比特编码长度
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
绳子的长度怎么算
1米的长度
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
Genome and healthcare
比特币还能投资吗
爱的长度
怎样比较简单的长度
比特币分裂