杨永锋,武文才,杨 羽
(陇东学院 信息工程学院,甘肃 庆阳 745000)
当前,图像、视频、音频等数字作品在互联网上正海量般产生,这些数字作品使用便利,传输快捷,容易复制。正是由于数字产品易复制的特点,可以无限复制完全一样的数字副本,而如果这些副本没有经过作品原创者或版权所有者的授权就分发散布的话,就不能有效保护数字作品原创者的合法利益,这会打击到数字作品创作者的积极性,故此解决版权保护的方案之一就是数字水印技术。同时针对数字作品的编辑也是一件很容易的事情,非法篡改数字媒体作品会更改作品的原始性和完整性,实施对接收到的数字作品的内容认证在很多时候都是必要的。数字水印技术也能有效解决数字产品的内容认证难题。数字水印技术是将标识信息以一定的策略植入到图像、视频、音频等数字产品中,但并不会影响原载体的正常使用,当需要时再提取出来用以声明版权所有或鉴定原创性的一项信息安全技术。数字水印技术有自己的特性:(1)鲁棒性。数字水印在植入到彩色图像后被称为载体图像,载体图像面临着用户日常的操作或篡改者有意的损坏,它要确保在对载体图像可能发生的众多常规处理或恶意攻击时都能够把水印信息保留下来而不丢失。(2)不可见性。水印信息隐藏到数字图像后,人眼看不出差异,含水印的图像的感知质量没有下降。(3)盲提取。不需要原始图像就能从载体图像中准确提取出水印,这极大地方便了数字水印技术的推广应用。
依据水印嵌入的位置可以把图像数字水印算法分为时空域算法和变换域算法。时空域算法中的最低有效位调制方案是最先提出来的,该方案把水印标识信息置于数据的二进制的最低位中,但最低有效位内的水印信息在图像的常规处理中容易丢失,这会导致算法抵抗攻击的能力不强。典型的Patchwork算法[1]是通过修改空间域内的一个点集或一个区域的均值、方差、奇偶性等统计特性来达到嵌入水印的目的。时空域算法通常只能嵌入有限的信息,而且面对几何攻击的鲁棒性不足。而数字图像的变换域水印算法,把数字图像当作带宽较宽的通信信道,把水印信息当作带宽较窄的噪声信号,当水印信息叠加到原始图像变换后的多个频率点上,不会累计误差,从而实现了不可见性,水印的稳健性提高。在图像的DCT域内嵌入水印的频域算法[2]最为成熟,之后出现了傅立叶变换域和小波域内的图像数字水印技术,以图像为载体的扩频域数字水印技术同时[3]具有良好的鲁棒性和透明性。
多重水印的提出目的在于同时实现多种功能。Amit[4]在同一医学图像中同时嵌入多个水印,成功实现了身份认证的目的。梁伟东[5]针对地理数据这一数据载体,提出在矢量地理数据植入零水印与脆弱水印,既达到了对地理数据的内容认证和版权保护的目的,也实现了无损嵌入。但在同一数字产品中嵌入多个水印,水印抵抗攻击的能力下降,而且嵌入水印信息量加大,载体的透明性也会受损。单昊[6]在采用小波分解技术,利用小波分析的树型结构,提出了基于低频域显著系数的自适应水印方案,加大了嵌入的信息量。刘琰[7]在对图像实施小波变换后选取低频系数矩阵做奇异值分解,对得到的奇异值进行加性操作达到了水印嵌入的目的,但采用这种方式嵌入的水印需要原始图像,不能盲提取,会影响实际应用的推广;而且后两者的算法都是在小波变换的低频域系数中嵌入水印,对高频域系数的利用不足。本文根据小波变换后高频域系数接近零这一特性,提出了一种小波域水印的嵌入算法,结合人眼视觉系统在彩色图像的蓝色通道中嵌入二值图像水印,能够保持图像的视觉质量。
数字水印的形式多种多样,可以是文字、图像、声音,也可以是按照数学算法产生随机序列、混沌序列,根据水印的特性和预实现的功能可灵活地选择满足需求的水印形式。二值有意义图像数据都是由0和1数字组成,且人眼可直观观察它的真面目和提取后的变化情况,在各类水印算法中是最常采用的水印形式。有意义的文本信息数据量少,代表版权信息时表述清晰,转化为二进制数时非常容易。无论是二值图像还是文本转化的二进制数都很容易量化到数字水印算法中去。
人类视觉系统包括6个主要视觉感知特性:光谱特性、视觉掩盖效应、空间频率、时间频率、方向和误差合并。彩色图像的颜色分量包括红色分量、蓝色分量、绿色分量,在用人类视觉系统的光谱特性讨论图像的三原色时表明人眼对绿色敏感度高,对蓝色敏感度低,红色居中。所以在嵌入水印的过程中,使绿色分量改变量最少以保持原始图像的质量不变,改变蓝色分量能更好保持载体图像的感知质量。在彩色图像的绿色通道中嵌入水印比在其余颜色通道中嵌入水印抵抗损坏的能力更强,但图像的感知效果会有一些下降。
向图像添加水印对于原始图像来说就是添加噪声,在图像的小波域修改高频系数,逆向重构后,所产生的误差会分散到各个像素中去,不会形成误差累积,图像的质量就能保持。
图1 图像的小波分解
图2展示了数字水印的嵌入过程。原始图像的尺寸大小为M×N,是真彩色图像,水印图像为二值图像,尺寸为P×Q,要求水印图像的尺寸的8倍要比原始图像的尺寸要小,即8×P<=M,8×Q<=N。水印的嵌入算法描述如下:
(1)使用Arnold变换对原始二值水印图像置乱,置乱后的图像数据按行转换成一维数组C,并记录下一维数组C的长度s。
(2)选择蓝色分量并对其进行8×8的分块,利用密钥产生随机的整数序列作为控制间隔的距离,选择互不重叠的s块。
(4)对每块做2层逆小波变换,组合各块得到载体图像的蓝色分量,最后重构图像。
水印的提取过程如图3所示,具体可描述如下:
图3 水印的提取过程
(1)选择载体图像的蓝色分量,并对其实施8×8的分块,采用和嵌入时同样的密钥产生块与块控制间隔的距离,选择互不重叠的s块。
(2)设置一维数组C。
(3)依次对这s块来实施2层离散小波变换,对这s块中的第k块实施离散小波变换后,就选取对角线上的高频分量HH取和,依据和Sumk是否大于0来决定一维数组的值。如果Sumk<=0,C[k]=0;如果Sumk≥0,C[k]=1。
(4)把一维数组C按行转化为P×Q的二维信号,把二维信号实施逆Arnold变换就得到要提取的水印数据。
在matlab平台上编程实现了所提出的数字水印算法,在仿真实验中,原始图像为标准测试彩色图像Lena(如图4(1)),二维离散小波变换的小波基是db1,强度因子α=0.3,嵌入的是图像的蓝色通道,水印信息是二值图像(图4(3)),二值图像上出现的文字信息是陇东学院,目的在于申明版权。通过实验仿真,从主观角度来看,人眼感觉不到嵌入水印标识后的载体图像(如图4(2))有任何失真。
图4 仿真实验结果对比
峰值信噪比是衡量图像失真程度的,在仿真实验中,计算出原始图像和载体图像的峰值信噪比为:42.2536dB,这表明加入水印后图像的质量并没有下降。采用提出的算法提取出的置乱水印如图4(4),经Arnold变换的水印为图4(5),发现提取出的水印和原始水印相比较没有差异。而在图像的绿色通道中嵌入水印,测到的峰值信噪比为35.4266dB,这相对于在蓝色通道中嵌入水印,感知质量下降了。这组对比实验表明,选取图像的蓝色通道中嵌入水印其感知质量会保持得更好。
图5 篡改的图像和提取出的水印
表1 水印的攻击实验
图5是将原始图像的左下部分进行了局部水平旋转篡改,发现了水印相应部分也水平翻转并伴随噪点。据此可以发现该算法对区域认证和完整性验证有一定作用,实验结果表明可以根据提取的水印来定位局部的篡改,数字水印的内容认证效果很好。
对载体图像添加噪声,实施JPEG压缩和进行中值滤波等操作,仍可以提取出水印信息。在抗攻击实验中,采用水印图像与原始水印的相同位百分比来衡量算法抵抗攻击的能力。
如表1所示,当压缩比为85%时,水印可毫无损失的提取出来;当压缩比为50%时,提取出的水印仍不影响版权认证;当压缩比为20%时,水印虽有失真,但肉眼仍可分辨是嵌入的水印,相同为百分比75%以上,这足以表明算法对图像JPEG压缩抗攻击能力强。
为进一步测试算法的鲁棒性,还对载体图像施加了高斯噪声、中值滤波、模糊攻击、马赛克攻击(如表1)等攻击用以测试在这些攻击下水印的鲁棒性。在这些攻击下,都可以提取出水印,虽然提取出的有些水印有噪点和失真,但水印的主体信息保存下来了,因而能够验证版权所属,进一步验证了算法对攻击的抵抗力很强。
通过分析彩色图像经离散小波变换后的系数特点,提出了一种可解决图像版权保护和内容认证的数字水印方案。该方案结合人类视觉系统的光学特性选取图像的蓝色通道作为水印嵌入的目标,利用数字图像经离散小波变换后的高频系数均值接近零这一统计特性量化嵌入二值水印图像。通过仿真,从主观和客观两个方面都表明载体图像的感知质量很好,而且在提取时实现了水印盲提取。Arnold变换和水印嵌入位置的随机选择共同保证了水印算法的安全性。通过实验仿真表明水印在抵抗压缩、添加噪声等攻击时稳健性强,在针对图像的局部篡改时可以定位篡改,水印的不透明性很好。