零水印算法

2024-10-21

零水印算法(共7篇)

零水印算法 篇1

0 引言

随着网络技术和数字多媒体技术的快速发展,数字产品的传播和利用已经变得十分简单快捷。但是数字产品的知识产权保护和认证问题也变得越来越突出,数字水印技术的出现在一定程度上解决了多媒体信息的版权保护问题。

在传统的数字水印技术框架下,研究人员将水印信息嵌入到载体图像中来证明数字图像的版权。其算法主要有两种类型:一是空间域水印法,此算法通过改变原始图像的空间域特性来嵌入水印信息;二是变换域水印法,它通过改变原始图像频率域的相关系数来嵌入水印信息。虽然这些算法在水印的不可感知方面做出了诸多努力,但还是不可避免地会对原始图像进行一定程度的修改,造成图像保真度的下降。这种情况在医疗、遥感和档案等领域是不被允许的,同时上述领域中的数字图像必然会涉及到版权问题。

温泉等人提出的零水印概念[1]有效解决了水印鲁棒性和不可感知性之间的矛盾。零水印算法不修改原始图像的任何信息,它只是利用图像的重要特征来构造水印信息。目前存在的零水印构造方法主要有:利用图像信号的高阶累加量来构造零水印[2];通过离散余弦变换(DCT),利用频域系数构造零水印[3];利用离散小波变换(DWT)和混沌系统或奇异值分解(SVD)构造零水印[4,5];在小波和余弦变换组合域内构造零水印[6]。现有的零水印算法中,针对灰度图像进行水印处理比较常见,且构造的零水印大多是无意义的二值序列。由于缺乏可视性,这样的水印信息容易引起争端,单凭水印信息的相似度进行版权认证难以让人信服。

本文提出了一种针对彩色图像的零水印算法,该算法结合DWT和SVD的特性,将从原始图像中提取的重要特征与有意义的版权信息合并构造出零水印信息,然后对零水印信息进行加密,最后在IPR (Intellectual Property Right)信息数据库中注册,这样就可以认为原始图像已经受到知识产权保护。

1 相关理论分析

1.1 离散小波变换

小波变换是指用有限长或快速衰减的、称为母小波的震荡波形来表示信号,是一种空域-频域分析方法,具有多分辨率分析的特点。在数字图像处理中经常用到的是二维离散小波变换。经过一级小波变换后,图像被分成一个逼近子图LL1和垂直LH1、水平HL1、对角线HH1三个细节分量[7],其中逼近子图还可以继续分解,如图1所示。文中使用的原始彩色Lena图像分辨率是512×512,其R分量的一级小波分解如图2所示,得到了每个子图分辨率为256×256。原始图像的绝大部分能量都集中在逼近子图里,其系数具有良好的稳定性。因此可以在逼近子图中提取图像特征信息来构造零水印。

1.2 奇异值分解

奇异值分解(SVD)是一种正交矩阵分解法[8]。假设大小为M×N的图像矩阵用A∈RM×N表示,R表示实数域,则矩阵A的奇异值分解表示成:

其中U∈RM×N和V∈RM×N都是正交矩阵,∑∈RM×N是一个非对角线上都是0的矩阵,同时该矩阵对角线上的项满足:

其中r是矩阵A的秩,它等于非零奇异值的个数,那么σi(i=1,2,…,m)就叫做矩阵A的奇异值。

将SVD应用于图像处理领域是因为当一幅图像受到较小扰动时,其奇异值具有相当好的稳定性,不会发生较大的改变;奇异值所表现出的是图像的内在代数特性。

1.3 Arnold变换

Arnold V I在遍历理论的研究中提出了Arnold变换[9]。为了实现图像隐蔽的效果,该变换在图像处理领域有着广泛的应用,其定义如下。

其中,x,y∈{0,1,2,…,N-1},N是图像矩阵的阶数。Arnold变换所谓图像位置的移动,事实上是矩阵对应点上的灰度值的移动。若对一幅数字图像迭代使用Arnold变换,直到该图像呈现出“混乱不堪”的状态时,就达到了置乱的目的。但是Arnold变换是有周期性的,当迭代到某一步时会重新得到原始图像。文中使用的有意义版权信息是分辨率为64×64的二值图像,其Arnold变换如图3所示,不同阶数N所对应的变换周期如表1所示。

2 零水印构造及版权信息检测算法

2.1 零水印构造算法

零水印的构造主要有以下几个步骤:

(1)将版权信息I进行Arnold置乱变换,迭代计算8次,得到加密的版权信息I*。

(2)将原始彩色图像分解为R、G、B三个分量,分别进行2层离散小波变换,并提取每个分量变换后得到的逼近子图矩阵(低频系数矩阵),记为LLR、LLG和LLB。

(3)对低频系数矩阵进行奇异值分解。为了提高分解的效率,本文将图像矩阵分成4×4的块,然后进行分块奇异值分解。顺序取R和G颜色分量中每个分块的第一个奇异值,B颜色分量中每个分块的第一和第二个奇异值,组成矩阵Am×m。

(4)由于版权信息I*是二值图像,为了便于构造零水印,需要对上一步产生的矩阵Am×m按如下公式进行归一化处理。再由:

δ(i,j)生成二值矩阵Bm×m。

(5)将上一步生成的二值矩阵Bm×m与第一步生成的加密版权信息I*分别转换为一维序列,并进行异或运算,将计算结果再次转换为二维矩阵,并对此矩阵进行Arnold置乱变换,迭代计算8次,最终得到零水印信息,此信息可以在IPR信息数据库中注册。

零水印构造算法部分源程序如下:

2.2 版权信息检测算法

(1)将待检测的彩色图像分解为R、G、B三个分量,分别进行2层离散小波变换,并提取每个分量变换后得到的低频系数矩阵,记为LLRI、LLG1和LLB1。

(2)对低频系数矩阵进行奇异值分解。为了提高分解的效率,本文将图像矩阵分成4×4的块,然后进行分块奇异值分解。顺序取R和G颜色分量中每个分块的第一个奇异值,B颜色分量中每个分块的第一和第二个奇异值,组成矩阵。

(3)对上一步产生的矩阵按照式(4)和式(5)进行归一化处理,得到二值矩阵。

(4)将在IPR信息数据库中注册的零水印信息进行Arnold反置乱变换,迭代计算40次。然后与上一步产生的二值矩阵进行异或运算。

(5)将得到的矩阵数据再次进行Arnold反置乱变换,迭代计算40次,就可以得到提取出的版权信息。

版权信息检测算法如下:

零水印构造与版权信息检测流程如图4所示。

3 实验仿真与性能分析

本文原始图像选用分辨率为512×512的彩色图像,版权信息为64×64的二值图像,实验仿真在Matlab 2009b环境下进行。使用峰值信噪比PSNR对图像的视觉质量进行定量描述,公式如下:

其中,MSE表示两幅图像之间的均方误差。I(x,y)和I'(x,y)分别表示两幅图像在(x,y)处的灰度值。彩色图像的计算方式是分别对R、G、B三个颜色分量进行PSNR计算,然后取三个计算结果的平均值作为彩色图像最终的PSNR值。

对于有意义的版权信息来说,所提取的版权信息的效果可以通过人眼直接验证;或者通过图像间的相似度进行衡量,公式如下:

3.1 零水印相似性测试

由于构造出的零水印信息与原始图像内容相关,因而由不同原始图像所构造出的零水印信息应该相互独立。为了验证不同原始图像所构造的零水印信息之间的相关关系,本文选用4幅不同种类的彩色图像进行分析,其中airplane和Lena为图象处理领域常用的图像,风景和建筑图像来源于网络,其分辨率都为512×512,如图5所示,其分析结果如表2所示。

从表2可以看出,不同内容图像零水印之间的相似度是不一样的,相似度最小值为0.4897,相似度最大值为0.5213。验证了不同图像所构造出的零水印信息具有可辨别性。

3.2 零水印算法可行性测试

实验结果表明本文零水印构造和版权信息检测算法是可行的。当需要对图像进行版权声明时,不仅可以在IPR信息数据库中进行零水印的验证,同时还可以进一步提取出版权信息,更加直观地进行版权确认,而不是仅仅依靠传统零水印技术中通过零水印信息的相似度来进行验证。

3.3 零水印算法鲁棒性测试

下面通过一些常规的图像处理方法,如添加高斯和椒盐噪声、图像旋转、中值滤波、剪切以及JPEG图像压缩等操作,对该算法的鲁棒性进行测试,各种图像攻击方法如图7所示。

实验中使用到的攻击方式主要有:添加方差为0.001和0.01的高斯噪声;添加噪声密度为0.01和0.02的椒盐噪声;对图像逆时针旋转1度和1.5度;进行窗口为3×3和7×7的中值滤波;将图像剪切1/16和1/4。对经过上述攻击的待检测图像进行版权信息提取的操作,然后计算原始图像与待检测图像之间的峰值信噪比PSNR,以及原始版权信息与提取出的版权信息之间的相似度,最后与文献[10]中的算法进行比较,统计结果如表3及表4所示。

从实验统计结果可以看出,本文算法对图像的加噪、滤波、剪切和JPEG压缩等操作具有很强的鲁棒性;对图像旋转操作的鲁棒性稍差,但其鲁棒性还是要高于文献[10]中的算法。

4 结语

本文提出一种针对彩色图像的零水印算法,该算法结合了离散小波变换的多分辨率分析和奇异值分解中奇异值具有良好稳定性的特点,将Arnold置乱变换引入到版权信息的预处理及零水印信息的后期处理当中。算法将原始图像中提取的重要特征与版权信息相结合构造出零水印信息,然后对零水印信息进行加密,最后在IPR信息数据库中注册以方便进行图像版权的保护。可将其应用于医疗、档案数字化等领域的图象版权保护,具有广阔的前景。针对彩色图像和在零水印构造过程中加入有意义的版权信息是本文算法的两大特点。

实验结果表明,该算法对于一些常规图像攻击具有很强的鲁棒性,但是对于旋转操作来说,其鲁棒性还不是很好,需要对算法进行进一步的改进。同时为了使版权信息更加直观,可以考虑将灰度图像甚至是彩色图像作为版权信息加入到零水印的构造当中。

参考文献

[1]温泉,孙锬锋,王树勋.基于零水印的数字水印技术研究[C]//全国第三届信息隐藏学术研讨会论文集.西安电子科技大学出版社,2001:102-109.

[2]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报,2003, 31(2):214-216.

[3]徐静波,陶然,徐望人.基于DCT变换的数字水印技术及其性能测试[J].东华大学学报:自然科学版,2004,30(6):54-57.

[4]雍蓉,吕建平.基于小波变换的零水印算法研究[J].西安邮电学院学报,2011,16(1):45-48.

[5]叶天语,马兆丰,钮心忻,等.强鲁棒零水印技术[J].北京邮电大学学报,2010,33(3):126-129.

[6]周亚训,金炜.一种小波和余弦变换组合域内鲁棒的自适应零水印算法[J].光电工程,2011,38(5):80-85.

[7]牛夏牧,陆哲明,孙圣和.基于多分辨率分解的数字水印技术[J].电子学报,2000,28(8):1-4.

[8]Liu R,Tan T.An SVD-based watermarking scheme for protecting rightful ownership[J].IEEE Transactions on Multimedia,2002,4(1):121 - 128.

[9]丁玮,闫伟齐,齐东旭.基于Arnold变换的数字图像置乱技术[J].计算机辅助设计与图形学学报,2001,13(4):338-341.

[10]潘黄琼,陈光喜,丁勇.一种基于DWT和SVD的彩色图像零水印算法[J].桂林电子科技大学学报,2011,31(5):399-402.

抗强剪切和涂抹攻击零水印算法 篇2

抗几何攻击鲁棒性数字水印算法是多媒体信息安全领域研究的热点。现有的抗几何攻击水印算法对于传统的几何变换(旋转、缩放、平移、仿射变换)和加噪、有损压缩、滤波等常规的信号处理有一定的有效性,然而对于存在信息丢失的强剪切攻击目前国内外在此方面的水印文献报道还很少。其中一些鲁棒性水印算法对于弱剪切(信息量丢失在25%以下),水印检测器在一定程度上可以提取出水印信息。但面对大面积的信息量丢失的剪切(强剪切攻击),水印检测器则无法提取出水印信息,算法失效。Xiang S等[3]提出一种基于图像低频统计特征的水印算法,将水印嵌入在图像低频直方图和均值统计特征中,实验结果表明该算法能较好地抵抗剪切攻击,但嵌入水印容量较小;Wu Kang等[4]提出了一种基于直方图调整的抗几何攻击图像水印算法,这种算法与文献[3]算法相比在一定程度上提高了水印的嵌入容量,对剪切攻击也具有一定的鲁棒性,但算法的鲁棒性是以牺牲水印的不可见性为代价的,因此该算法具有一定的局限性。文献[5,6]提出的基于各种不变矩抗几何攻击算法对于旋转、缩放和平移等攻击具有较好的鲁棒性,但不能有效抵抗强剪切攻击,这主要是由于大部分不变矩是基于图像全局特征的,对于局部的剪切无能为力;Lin等[7]提出了一种基于对等调制的抗剪切攻击水印方法,该算法通过对等调制方法将水印嵌入在图像经小波分解后的低频系数中,但随着图像的剪切部分水印信息随之不可恢复性地丢失,剪切程度愈大,水印损失愈严重。以上文献提到的各种算法均需要解决一个共性问题:水印的不可见性和鲁班性之间存在的矛盾。零水印很好地解决了这一问题,它不需要修改原始图像的任何信息,主要是利用图像的重要特征来构造水印信息,这样使其鲁棒性和安全得到加强。温泉[1]首次提出了零水印的概念,该文献利用了高阶累积量提取图像的特征来构造零水印,通过实验来证明这种方法的零水印有很好的性能。近几年来,零水印技术在温泉提出后得到了迅速的推广,这方面的科研成果和报道不断增多[8,9,10]。自D.D.Lee等[11]在Nature上首次提出了NMF算法后,NMF一直在不断地完善和发展着,目前已成功应用于人脸识别、图像融合、图像检索、文本聚类、盲源分离等诸多领域[12,13],而在数字水印领域中的应用却寥寥无几。本文基于NMF可以由部分感知全局的特性,结合Radon变换不变矩提出了一种抗强剪切和涂抹攻击零水印算法。

1 算法的理论研究背景

1.1 NMF算法

非负矩阵分解简称NMF,是目前矩阵分解新提出的一种方法。具体数学原理如下:

假设给定的一幅灰度图像Vn×m可以分解为两个非负矩阵Wn×r和Hr×m的乘积。即:,W矩阵称为基矩阵,H称为系数矩阵,r为基矩阵的维数。

NMF在本质上体现了一种非线性数据维数约减的思路(非线性降维),核心思想主要利用非负性约束来获取数据。数据具有非负性是对矩阵非常有效的限制条件,因此对于原始非负数据可以看作是由部分的和来表示。经过NMF分解后的基矩阵W具有一定的线性无关性和稀疏性,这就使得NMF对原始数据的特征具有一定的表述能力。

非负矩阵分解的目标函数一般表示为:

其中:Wij≥0,Hij≥0,i=1,2,…,m;j=1,2,…,n;m和n分别为原始矩阵V的行数和列数。

式(1)可看作在(WijHij)项上加Possion噪声或Gauss噪声产生了Vij。即V=WH+E,E表示噪声,若以Possion噪声作为E可以得到如下的迭代算法:

式(3)中j为矩阵的列,i为矩阵的行。经过若干次迭代之后使得V≈WH。基矩阵维数r的取值非常重要,它主要影响算法的收敛速度。从理论上讲r<<min(m,n),然而如果r取值过小不仅会影响收敛速度,而且经过NMF分解后的重构误差也较大。图1为基矩阵的维数r取不同值的重构误差(用E的2-范数度量)曲线;图2表示不同维数时CPU的运算时间。图1和图2表明:基的维数越小在相同的迭代次数内误差越大,而CPU运算时间越短;基的维数越大在相同的迭代次数内误差越小;而CPU运算时间越长,但分解的效果越好。r究竟取何值,应根据不同的应用而定(本文以大小为64×64baboon灰度图像为例做一说明,CPU为Intel Pentium4 2.00GHz,内存为512MB,Windows XP操作系统)。

1.2 Radon变换不变矩及其不变矩构造过程

Radon变换一般可以看作是沿该平面内的一族直线的线积分[7],如式(4)所示:

其中t表示沿着直线上的距离,t=xcosθ+ysinθ,若该函数沿着一系列投影线的积分构成了投影pθ(t),θ∈[0,π]。

设二维图像f(x,y)的Radon变换为pθ(t),则其k阶矩可以定义为:

m0(θ)=m00,m00为0阶矩,一般主要是表示图像的质量。而,表示投影pθ(t)的重心。下面构造Radon变换不变量:

(1)平移不变性构建

图像的平移会造成其投影移动,因此由此构造出的矩也将会发生变化,所以用中心矩来代替普通矩以此获得平移不变性。

表示pθ(t)的重心,式(6)为平移不变量的构造表达式。

(2)缩放不变性构建

如果图像发生缩放变化时,其投影((t))的Radon矩也会发生缩放变换。设缩放因子为λ则:

由式(7)可以得:

则的k阶中心矩为:

即:

ηk(θ)为缩放和平移不变量。

(3)旋转不变性构建

假设二维图像f(x,y)顺时针旋转某个角度Φ,则根据Radon变换其性质有:

R(r,θ){f(xcosΦ+ysinΦ,-cosΦ+ysinΦ)}=P(r,θ+Φ)(11)由上式可知Radon变换将二维图像f(x,y)旋转的操作转换成沿θ轴上的循环平移操作,而平移量为Φ;

由式(10)定义k阶矩为:

则:

因此A(k)具有旋转不变性,因此可以作为一种不变矩。

2 本文算法的实现过程

2.1本文抗剪切恢复算法

原始模型如下:

令V=[v1,v2,…,vm],H=[h1,h2,…,hm],则有:

其中vi为V的第i列,hi为H的第i列,由此可见,H矩阵因子的每一列均与原非负矩阵V的相应列对应。

令V'=[vk1,vk2,…,vkt],它是V任取T列组成的。k1,k2,…,kt∈[1,m],则有:

令H'=[hk1,hk2,…,hkt],则有V'=WH'。

即:

由以上可知:在原始图像矩阵V遭受剪切攻击时,仍可以从剩余的部分矩阵V中恢复出完整基矩阵W。为使基矩阵W存在惟一的解,系数矩阵V的秩最小应等于NMF分解的维数,即T≥r。

2.2零水印算法的实现过程

零水印算法的研究重点在于怎么样利用现有载体媒体的特征去构造零水印而并非设计如何嵌入实际水印信息,因此零水印技术很好地解决了数字水印技术中的不可见性和鲁棒性之间的矛盾,它是目前近几年来国内水印技术研究的热点。

本文零水印算法的设计中采用标准图像库里的“lena”图片作为宿主图像,大小为512×512。实验编程仿真环境:采用Matlab 7.5软件进行仿真编程实验;PC操作系统:Windows XP、CPU主频3.4GHz (双核)、内存2GB、显示卡:AMD Radeon HD 6450。

算法步骤如下:

Step1选取低阶Radon变换不变矩作为特征矢量(高阶矩对噪声比较敏感,故不作考虑)。

Step2对512×512的原始图像矩阵分块,子块大小为32×32,每一个子块展开为一列向量,则由原始矩阵得到1024×32的V矩阵。

Step3利用关系式:Vn×m=Wn×rHr×m,对V矩阵进行NMF分解得到W分量和H分量,并保存H分量,维数r=32。

Step4水印注册过程:首先计算经过NMF分解后基矩阵W分量的7个低阶不变矩,构成特征行向量A=(A1,A2,…,A7),然后将得到的特征向量,H分量数据一并在CA认证中心登记注册,当CA中心对注册信息加盖时间戳后,说明宿主图像已经在受到零水印的保护,水印注册流图如图3所示。

Step5对经过剪切的待检测图像,通过局部未剪切部分V矩阵和相应的H矩阵来恢复W矩阵。

Step6水印检测过程:首先计算Step5中恢复得到的W矩阵的7个Radon变换不变矩构成特征向量B=(B1,B2,…,B7),然后测量B向量与A向量的绝对差之和。

如果d≥ε并且时间戳与CA中心提供的信息不符(ε为经验阈值系数,实验中取值为0.005)则验证结束,证明宿主图像中不含有水印信息;否则,水印信息存在。

3 实验结果和分析过程

计算原始图像经NMF分解之后基矩阵W的Radon变换不变矩,组成A向量,实验中A=(a1,a2,…,a7),同理,待测图像的B向量也如上计算。使用峰值信噪比PSNR对失真图像进行度量。

其中,I(x,y)和I'(x,y)分别表示在(x,y)处的灰度值。

本文设计了四组实验来验证该算法的有效性。实验1是原始图像进行非几何攻击后与文献[8]的比较实验,结果见表1(d1表示受攻击后待检测图像与原始图像Tchebichef不变矩特征矢量的差距;d2表示受攻击后待检测图像与原始图像几何不变矩特征矢量的差距;d3表示受攻击后待检测图像与原始图像Radon变换不变矩特征矢量的差距)所示;实验2是对Lena图像进行几何变换后与文献[8]的比较实验,结果见表2;实验3是对Lena图像进行不同比例的剪切和涂抹攻击后的实验,结果见表3所示;实验4是为了验证对于其他图像是否会出现误判的情况所作的误检率验证实验。其他不同的载体图像分别选取pepper,plane和baboon三幅图像,实验结果见图4至图6所示。

4 结语

为了增强水印抵抗剪切和涂抹攻击的能力,提出一种抗强剪切和涂抹攻击的零水印算法。主要将NMF和Radon变换不变矩相结合设计出一种零水印算法。算法主要依靠NMF具有局部感知全局的特性,实现抗强剪切的过程。通过对该算法进行的一系列仿真实验,发现算法对各种不同角度的旋转攻击、尺度变换也有很强的鲁棒性,同时对非几何攻击如加噪、滤波、JPEG压缩等实验的分析,发现该算法对滤波、JPEG压缩也具有较强的鲁棒性。通过使用不同的载体图像进行误检率实验,结果显示对于没有嵌入水印的图像错误检测的概率很小,具有很高的检测精度。

一种简单的工程图纸零水印算法 篇3

数字化产品为传播信息、存储信息提供了极大的方便,同时也带来了数字化产品的版权保护问题。数字水印技术为数字化产品的版权保护提供了一种有效方法,受到人们越来越多的关注和研究。以前数字水印技术的研究主要集中在图像、文本和音视频的水印方面[1],近年来,二维和三维几何模型数据的水印技术也得到了足够的重视[2—4]。但是,所提出的方法仍然大多集中在空域和频域方法,也就是最终通过修改几何模型的顶点坐标来嵌入水印信息。虽然这些方法可以基本做到不可感知性,但是顶点坐标的修改也给原始创作者带来了不方便,例如原来整数的顶点坐标,嵌入水印后变成了相近的实数。

本文针对二维工程图纸的特点,给出一种简单易行的零水印算法。所谓零水印是指不对原始数据进行修改的一种新的数字水印技术[5],它只记录原始数据重要特征与水印信息之间的关联,在检测时也不需要原始数据,只需要目标数据和关联信息即可提取出水印信息。本文所给出的方法将工程图中的部分直线段的长度值作为特征数据,将复数变换作为加密手段,可以非常容易地通过对常见CAD系统进行二次开发来实现。实验结果表明,该算法对均匀缩放、旋转、平移等几何攻击以及增添攻击具有完全的健壮性;对于删除攻击具有很强的健壮性。

1算法描述

1.1算法基本思想

这里假设水印图像是32×32的二值图像。该算法从工程图中随机提取32条直线段(可以有重复),计算直线段的长度并变换成复数形式,再置乱32×32像素的二值水印图像,变换每一行的水印图像为复数形式,最后记录如下内容:(1)直线句柄(在一张工程图中能唯一标识一条直线的ID值);(2)直线长度;(3)复数形式的直线长度和水印信息之间的转换关系。

提取水印时,取出目标工程图中的相应直线段,计算其长度(如果直线不存在,则长度设为0);将长度转换为复数形式,根据前面保存的转换关系将长度转换为水印信息;显示水印并计算相关度。

1.2水印的置乱处理

在本文算法中,一条直线段对应一行水印信息,如果集中删除多条直线段,则提取出的水印信息有连续多行损失,水印图像将难以辨认。为了解决这个问题,可以在嵌入水印前先置乱二值水印图像,这时损失的水印信息会平均分布在每一行。

本文中使用的置乱算法为常用的Arnold变换[6]:

其中,(x,y)为变换前的象素坐标,(x′,y′)为变换后的象素坐标,N为坐标界限,这里N=32。

Arnold变换具有周期性,即二值图像经反复Arnold变换,一定会出现原图像;当N=32时其周期为24。在置乱时,对水印图像实施Arnold变换key次(key<24)形成混乱图像,如图1所示。在恢复时,再实施Arnold变换(24-key)次恢复为原图像。

1.3复数变换

复数变换的目的是使得存储的特征数据具有隐密性。其原理是利用如下事实:任意一个0—1序列都可以用复数Z=P+Qi表示(其中P,Q均为整数),该复数称为高斯整数。给定复数基b=x+yi,高斯整数Z与一个0—1序列的关系为:

其中,k为0—1序列rkrk-1…r2r1r0最高位下标,rj∈{0,1}为0-1序列第j位值。一般取复数基

b=-1+i即可。

在该复数基下,给定一个0—1序列{ej},j=0,1,…,N,有如下递推公式计算其对应的高斯整数:

式(1)中,r0=1,s0=0,rk+1=-rk-sk,sk+1=rk-

反过来,给定复数P0+Q0i,在基b=-1+i下,也存在如下递推公式,求出它对应的0—1序列{eN

也就是说,若Pk和Qk奇偶性相同,ek取0,否则取1。

1.4算法实现

给定一张原始的工程图,生成其特征数据的算法步骤如下:

步骤1.原始水印经Arnold变换置乱处理,保存置乱后的水印到32×32数组中,同时记录变换次数key待水印提取时使用。

步骤2.取工程图中所有直线段的句柄存入数组中(句柄在一张工程图中能唯一标识一条直线段)。

步骤3.随机取32条直线段,求直线段长度。可以重复选取同一条直线段。直线段是工程图中最普遍的元素,但是在个别工程图中直线段数目较少时,一条直线段可以对应多行水印。

步骤4.将第i条直线段的长度的整数部分转换为二进制形式,再转换为高斯整数P0、Q0。取置乱后二值水印的第i行,转换为高斯整数P1、Q1,其中i=1,2,…,32。保存P和Q的增量Pinc=P1-

步骤5.保存工程图的特征数据到文本文件中,文件内容为:

直线句柄直线长度(取两位小数)Pinc Qinc其中,记录直线长度是为了抵御缩放攻击,具体在水印提取部分介绍。

1.5水印提取

在遇到可疑工程图时,不需要原始工程图,只需要对应的特征数据文件即可检测水印的存在。水印提取与检测的步骤如下:

步骤1.根据特征数据文件中记录的句柄提取目标工程图的实体。提取文件中直线长度,存入数组L。

步骤2.计算目标工程图中句柄对应直线的长度,存入数组Lobj。如果句柄对应的实体不存在,则长度设为0;如果句柄对应的实体不是直线段,则长度设为0。

步骤3.同步化两个直线段数组[4]。比较直线段数组Lobj中的非0元素和数组L中对应元素,如果没有一个相同,则分别计算Lobj数组所有非0元素与L数组对应元素的平均值Lobj和L,计算缩放比例S=L/Lobj,.再将Lobj数组中的所有元素都缩放S倍(当S>1时为放大,当S<1时为缩小)。

步骤4.取长度数组Lobj中每个元素li的整数部分,i=1,2,…,32,转换为高斯整数P0i,Q0i。提取文件中Pinc和Qinc,计算P1i=P0i+Pinc,Q1i=Q0i+Qinc。

步骤5.根据公式(2)和公式(3),将P1i和Q1i转换为0-1序列,存入水印数组中。

步骤6.步骤5中的水印数组经(24-key)次Arnold变换,存入数组watermark中,显示水印信息。计算相关值R=(A-D)/n,式中A表示提取的水印和原始水印的对应码元相同的数目,D表示不相同的码元数目。

2实验结果与结论

为了检验本文提出的数字水印算法的健壮性,使用一幅DWG图形(见图4)进行了实验。该图形有1347个实体,其中直线段实体1267个。图5是随机删除187条直线段(占直线段总数的14.76%)后在VisualC++平台上,调用ObjectARX提取水印的程序运行结果。可以看出,算法有很高的健壮性。

表1为算法对均匀缩放、旋转及平移攻击的测试,说明该算法对这些攻击是完全健壮的。表2为算法对删除攻击的测试,说明该算法对删除攻击有很强的健壮性。可以看出,相关值不总是随删除的直线段数线性减少,这是因为选取的直线段是随机的。因为算法以直线段的句柄为索引,对增添攻击是完全免疫的,无需专门测试。

从上述结果可知,基于复数变换的工程图零水印算法是简单可行的。

参考文献

[1]孙圣和,陆哲明,牛夏牧,等.数字水印技术及应用.北京:科学出版社,2004

[2]黄晓生,顾景文.CAD图形数据数字水印技术综述.工程图学学报,2005;(6):140—145

[3]汪亚顺,刘良文.基于二维工程图的数字水印扩频算法.南昌大学学报,2005;(4):91—94

[4]王丹玫.数字水印在工程图纸版权保护中的应用.中国制造业信息化,2008;38(17):63—66

[5]潘西明,刘良文.零水印算法在工程图中的应用实现.微计算机信息(管控一体化),2006;(3):310—312

零水印算法 篇4

信息隐藏技术是一门新兴学科,即将秘密信息隐藏到普通文件中,保证秘密信息不被盗密者发现并在网络中安全传输的技术[14]。在版权保护方面,文献[6,12]提出的数字水印技术多将水印嵌入载体图像,这种嵌入方式影响了载体图像的完整性,在对数据完整性要求较高的医学和侦查领域,这显然是不合理的[4]。在侦查等领域,我们还需要对图像进行篡改检测,以便于对图像所受攻击进行鉴别和定位,而近年来的水印技术很少将两者进行结合。另外,在算法保护方面,算法的加密也是很重要的一部分,因为算法一旦泄露,不但起不到保护版权的作用,甚至为侵权和盗版提供了更便利和以假乱真的渠道。

基于以上问题,本文提出基于视觉密码和边缘检测的零水印算法。在水印嵌入上,零水印算法通过提取载体图像的固有特征生成零水印的两部分,从而保护载体图像的完整性。在篡改检测上,应用游程编码对提取载体图像边缘后所得图像进行无损压缩生成密钥,用于后期篡改检测和定位。在算法保护方面,利用视觉密码技术将版权水印根据载体图像固有特征和固定的匹配算法生成水印的两个分图:一个分图标志图像信息,并在生成后进行销毁;一个分图注册到认证中心1。同时,将两个分图叠加后生成的零水印注册到认证中心2,这种版权认证方式采用了“三方分离”的方法。分图可以一个嵌入,一个进行版权保护[9]。除了拥有两个分图并进行叠加获得零水印以外,还需要到认证中心检测才能确定版权归属。任何一方单方持有水印的一个分图甚至是版权水印都无法解密图像,从而保证了算法的安全性。Hsu等[7]提出了一种视觉密码的数字水印方案,该方案采用传统嵌入方式,使原始数据遭到破坏;曲长波等[10]提出了一种小波域视觉密码零水印算法,该算法在提取特征矩阵时采用均值和指定方法生成零水印,对于噪声攻击等影响均值的方法没有好的鲁棒性;曲长波等[3]提出平衡多小波的视觉密码技术,该算法的特征信息不够全面,导致鲁棒性不够好。本文在考虑到以上各问题的基础上,平衡了文献[7,10]的缺点,在此基础上又增加了篡改检测。实验表明该算法具有较高的鲁棒性和安全性,其中篡改检测对多种常见攻击具有十分好的检测效果。

1 算法理论基础

1.1 奇异值分解

数值分析中的奇异值分解是一种矩阵对角化的数值算法[11],可以将指定矩阵分解为3个矩阵的乘积,即:

奇异值分解可以快速将大量的信号能量压缩到很少的系数中。奇异值所表现的是图像的固有特征而非视觉特性,为水印的不可见性提供了保障[6]。根据奇异值分解的这种特性,可以将其应用到图像的分解中,用少量数据描述图像主要特征并生成零水印,从而获得鲁棒性较好的零水印算法。

1.2 视觉密码技术

视觉密码是一种只需人眼解密图像而不需要其余处理过程参与的加密方式[15]。可以通过将一幅保密图像分解为公有图和私有图两部分进行图像加密,并把两部分图像叠加后进行解密[16]。可视密码方案消除了复杂的解密过程,加密图像可以通过叠加操作恢复[2]

算法[17〗:设加密图像尺寸为N×N,加密图像按照算法生成两个2N×2N的部分。加密图像的1个像素分解成4个像素,其中白色像素分解为2×2的仅有2个黑像素的灰色矩阵,而黑色像素分解为2×2的有4个黑像素的全黑矩阵。图1是加密图像分解和加密产生的效果图,(a)“版权保护”经过分解成为两部分:(b)和(c)。(d)是将两部分叠加后得到的解密图像。

图1 视觉密码效果图

2 零水印及密钥生成算法

2.1 特征矩阵提取算法

特征矩阵提取过程分为小波变换、分块操作、奇异值分解、取最大奇异值操作和取最高位操作。设载体图像I大小为M×M,水印图像W大小为m×m,则具体步骤如下:

(1)采用置乱变换技术对图像进行预处理[8],把载体图像I进行置乱,像素重新分布后得到置乱后的图像S。

(2)对载体图像进行L级小波变换,得低频域c AL。把c AL均分为m×m块,得到Bij(i,j∈{1,2,…,M/(2L×m)})矩阵分块。

(3)将Bij进行奇异值分解,把每块的最大奇异值经过四舍五入和取最高位操作得到过渡矩阵Xij(i,j∈{1,2,…,M/(2L×m)})。

(4)最后根据过渡矩阵X的奇偶性生成特征矩阵Y。即:

2.2 零水印生成算法及算法销毁方式

在得到特征矩阵Y之后,结合特征矩阵和版权水印图像,用视觉密码技术形成版权保护图像的两个部分,具体算法如表1所示。

表1 零水印算法生成图示

即:

从式(4)可以看出,公有图的每个像素M(i,j)的生成方式仅仅依赖于特征矩阵的每个像素Y(i,j),与二值版权水印W(i,j)无关。为了预防算法的泄露,在两分图生成后,先将零水印MO和私有图O保存至不同认证中心2和认证中心1,实现认证分离。然后,立即将水印生成式(3)中私有图O(i,j)的生成方式和二值版权水印W进行销毁,仅留下公有图M(i,j)的生成算法以用来后期提取。

2.3 密钥生成算法

密钥生成算法分为载体图像边缘检测和游程编码无损压缩两部分。游程编码主要思想是指将连续相同的信号用信号值和长度所组成的二元数组来替代[5]。方法如下:

(1)首先对载体图像应用合适微分算子和阈值进行边缘检测得到二值图像E。根据文献[18]中各类算子边缘检测的特点,选用检测轮廓清晰、细节完整度较高的算子。不同阈值与压缩率和漏警率[19]的关系如图2所示。

(2)然后对E应用游程编码RLC(Run Length Coding)进行无损压缩得到一维数值序列K。

(3)最后,将一维数值序列K作为密钥K进行保存,用于后期检测。

图2 不同阈值压缩率及漏警率折线图

根据图2可以看出,随着选定的算子(canny)在提取边缘时阈值的不断增大,游程编码的压缩率逐步提高,并在0.1时达到顶峰;同时,后期篡改检测(选用50个随机3×3篡改区域进行漏警率计算)的漏警率也在逐步增大,而在0.1时有较小回落。本着使密钥数据量最小和定位精准度高的原则,应该选择压缩率最高和漏警率最低的阈值作为本文设定的阈值,而对于其他图像,应具体问题具体分析。

3 零水印认证及篡改检测算法

3.1 水印认证算法

零水印认证主要是公有图的提取。载体图像在经过攻击后得到图像I’,对图像I’进行同2.1节的特征矩阵提取,在提取到特征矩阵之后,结合2.2节中M(i,j)的算法生成零水印的公有图M。最后,公有图M和认证中心1保存的零水印私有图O进行叠加,得到攻击后的零水印图像,将攻击后的零水印图像与认证中心2得到的零水印图像进行比较,即可完成图像的版权认证。具体认证过程如下:

(1)应用置乱算法,把载体图像I’进行置乱,像素重新分布后得到置乱后的图像S’。

(2)对载体图像S’进行L级小波变换,获得低频域c A。把c A均分为m×m块,得到Bij(i,j∈{1,2,…,M/(2L×m)})矩阵分块。

(3)将Bij进行奇异值分解,把每一块的最大奇异值经过四舍五入和取最高位操作得到过渡矩阵Xij(i,j∈{1,2,…,M/(2L×m)})。

(4)最后根据过渡矩阵X的奇偶性生成特征矩阵Y。即:

(5)应用2.2节中销毁后所剩算法生成零水印的公有图M。即:

(6)将公有图M与认证中心1提取的私有图O进行叠加,并与认证中心2提取的零水印MO进行比对,确定版权所有。

3.2 篡改检测算法

篡改定位是基于数字水印图像认证技术的一个突出优点,也是衡量脆弱水印算法性能的重要指标之一[1]。篡改检测应用的是边缘检测和游程编码的方式。游程编码对于二值图像非常有效[13],因为游程编码是连续精确的编码,对任何一位的改变都十分敏感,任何对图像边缘的破坏都会使得密钥K改变,所以篡改判断比较精确。方法如下:

(1)对攻击后的图像I’应用2.3节中相同阈值和微分算子提取边缘得到二值图像E’。

(2)按照2.3节中保存的密钥K和游程编码程序解压得到二值图像E。

(3)然后对E’应用游程编码RLC进行无损压缩得到一维数值序列K’。

(4)判断K与K’是否相等,若不等,则图像受到篡改。

(5)将E与E’进行比对,判断图像所受篡改的类型及位置。

4 实验结果

4.1 实验参数

实验环境为Matlab R2010b,实验选取512×512的灰度图像Lena为载体图像。版权水印为32×32的“版权保护”图像,小波选择Haar小波基进行二级小波变换,置乱方式为Arnold置乱算法,边缘检测采用canny算子,阈值为0.1。版权水印如图3(a)所示,载体图像如图3(b)所示。

图3 版权水印和载体图像

4.2 评价标准

数字水印鲁棒性的衡量标准本文选择归一化相关系数(NC)来衡量:

篡改检测实验效果如图4-图6所示。

图4噪声攻击对比图像

图5 剪切攻击对比图像

图6 涂改攻击对比图像

篡改检测实验效果图展示了该算法对常见攻击的检测效果,从图中可以看出,载体边缘图(图4(a))在和经受攻击后的各个边缘图像对比后能清楚地判断图像遭受攻击的类型和位置。噪声攻击(图4(b-d))、剪切攻击(图5)和涂改攻击(图6)清楚地显示了载体图像(图3(b))在遭受攻击的类型和程度不同时呈现的检测图。根据篡改检测实验图,可以判断载体图像在传输过程中所遭受的攻击类型和位置,有利于后期对图像完整性及其来源的判断。实验对照如表2、表3所示。

表2 篡改检测实验Lena密钥(K)对照表

表3 Lena鲁棒性实验性能(NC)对照表

注:-表示无此项

5 实验结果分析

5.1 篡改检测分析

从图4-图6和表2可以很清楚地看出篡改检测算法实现了比较精确的篡改鉴别及定位。图4-图6非常直观地反映了载体图像在接受各类攻击后呈现的边缘检测图,与原始边缘检测图(图4(a))进行精确比对,可以很容易判断载体图像所受的攻击类型及其位置,尤其是对旋转攻击、噪声攻击、剪切攻击、区域攻击、涂改攻击的定位和判断十分准确。表2用密钥K反映了载体图像是否受到篡改,对于以上各类攻击都具有精确的判断。这利用了游程编码是精确编码的优势,边缘图像任意像素的修改都会影响游程编码的密钥K。表2在数据上应用K的长度来进行比对,这是由于K序列一般较长,一般通过长度就可以判断,对于精确度要求很高的领域,可以直接进行K的比对。

5.2 鲁棒性实验分析

由表3可知,本文算法在噪声攻击、滤波攻击、压缩攻击、左上角剪切攻击方面具有十分强的鲁棒性。这是因为奇异值分解和取最高位操作使得图像能量更加集中,特征信息更具代表性。该算法应用文献[3,10]视觉密码的优点,采纳文献[7]零水印算法分图组合方式,同时提出了不同于二者的特征矩阵和零水印生成方式,又采取了“三方分离”加密方式,这样算法在鲁棒性和安全性上都有较大提升。

在旋转攻击和中心剪切方面,本文算法综合考虑文献[3,7,10]的优缺点,在旋转攻击较文献[3,7]有较大提升,在中心剪切较文献[3,10]有较大提升。综合以上各类攻击来看,本文算法在以上各类攻击的综合性能方面较文献[3,7,10]都有较大提高。

5.3 安全性分析

在版权保护领域,除了对版权进行精确认证外,还需要考虑到整个保护过程的安全性。在阅读各类数字水印文献的基础上,针对各类文献缺乏算法保护的问题,本文提出了将视觉密码应用于数字水印的方法。同时提出了实现水印认证“三方分离”和零水印生成“版权水印销毁”、“算法销毁”的策略。“三方分离”充分利用视觉密码可以将载体图像分解的特点,分解后的私有图和公有图互不关联,叠加后的零水印也与任何一个分图不关联,仅有在同时持有三者的情况下才可以完成版权认证,这样提高了认证的安全性。“版权水印销毁”和“算法销毁”针对解决版权拥有者内部或其他原因引起的算法泄露。通过将原先参与生成零水印的“版权水印”进行销毁来杜绝零水印的可复制性,以防盗版等侵权行为;“算法销毁”利用了本文算法中公有图生成仅仅依赖于特征矩阵的特点,将原先生成算法中私有图的生成算法进行销毁,仅留下公有图生成算法用于后期提取对比。因为私有图算法在销毁前已存至认证中心1,这样即便是公有图算法泄露,私有图算法已经销毁且私有图仅在认证中心1可得,盗密者无法完成版权认证的复制,从而实现了算法和版权认证的安全性。

6 结语

在考虑传统水印算法以嵌入方式加入水印和难以实现篡改检测的基础上,提出了一种将二者结合的基于视觉密码和边缘检测的零水印算法。同时,对版权保护过程中算法和水印的安全性进行了设计。这样,零水印算法不但保证了原始数据的完整性、算法的安全性,还可以通过篡改检测的方式进行篡改的定位和鉴别。本文算法在医学和侦查领域若是能得到应用,将会有较好的实际效果。实验表明,本文算法在鲁棒性上具有十分好的综合性能,在安全性和篡改检测方面也有较好效果和判断结果。

摘要:在版权认证领域,传统的水印算法往往是在载体图像中嵌入二值图像。这种算法有两个缺点:一是水印的嵌入改变了载体图像,而在医学和侦查等领域需要保留原始数据;二是图像受到篡改攻击后,很难判断攻击的类型和位置。针对以上两个问题,提出一种基于视觉密码和边缘检测的零水印算法。首先,对载体图像进行置乱和奇异值分解等操作提取特征矩阵;然后,将特征矩阵按照算法生成公有图和私有图;最后,将私有图和零水印存至认证中心。另外,应用游程编码对图像边缘进行无损压缩生成密钥,用来进行篡改检测。实验表明,该算法具有非常好的鲁棒性和安全性,尤其是抵御噪声攻击;在篡改检测方面也具有很好的效果。

零水印算法 篇5

技术的发展使得数字图像的版权保护等问题成为社会的热点。数字水印技术作为数字内容版权认证的重要手段,吸引了很多学者和机构进行相应的研究,提出了一系列方法[1,2],将水印信息嵌入到载体图像中去,这必然会对原始数据进行一定的改动,造成了水印的鲁棒性和不易感知性之间的矛盾,而且也不适用于一些特殊图像或应用领域。温泉等人提出了零水印的概念,并陆续产生了一些算法[3,4]。和传统水印修改载体图像数据不同,零水印不需真正地将水印信息“嵌入”,这样避免了对原始数据的改动,在一定程度上缓解了水印的嵌入强度和不可见性的矛盾。零水印的“构造”相当于传统水印的“嵌入”过程,往往利用原始载体图像的某些特征来“构造”注册信息,该注册信息被存放于IPR数据库机构。而“检测”过程和传统水印的“提取/检测”过程类似。温泉等通过计算载体图像的高阶累积量来产生零水印[3],但高阶累积量的计算导致该算法运算量较大。而文献[4,5]在小波域实现零水印,但鲁棒性不足。小波变换在图像处理领域已经得到广泛应用,但小波变换只能体现有限的方向,无法充分地表征图像的纹理、轮廓等信息。

Contourlet变换在很多方面优于小波变换,因此,本文采用Contourlet变换和离散哈达玛变换构造零水印系统。对载体图像进行一级Contourlet变换分解,利用低频子图的Hadamard系数生成特征矩阵,特征矩阵和水印送入细胞神经网络运算得到秘密图像,将其注册。零水印检测时只需秘图、CNN参数及初始置乱密钥即可提出水印信息,不需要原始图像。

1 Contourlet变换

Contourlet变换具有多方向性,基函数分布广,很多应用场合的性能优于传统小波变换,其基本思路是用多尺度分解获取边缘奇异点,再利用方向信息将相近奇异点组合为轮廓。奇异点的获取可由拉普拉斯塔式滤波器(LP)来完成。方向滤波器组(DFB)在塔式分解的逐级高频分量实施,逐渐将奇异点连为线性轮廓[6]。拉普拉斯塔式滤波器和方向滤波器组合为塔式方向滤波器(PDFB)。Contourlet变换本质上是将轮廓“分成”小段,逐渐逼近原始图像,其基函数的支撑区间可视作一个“长条形”,可随尺度的变化改变长宽之比,可以实现多尺度多方向的分解,改善了小波变换的诸多不足。小波变换和Contourlet变换的曲线方式比较如图1所示。图像经Contourlet分解后,能量更加集中,有利于嵌入鲁棒水印。

2 哈达玛变换

二维哈达玛变换在图像处理中也有广泛应用,其矩阵为一个方阵,只有1和-1两种元素值,实际运算中只涉及实数,存储量较一般变换少,运算速度也快得多[7]。二维的哈达玛正变换核和反变换核由下式给出:

二维的哈达玛正变换和反变换也具有相同的形式:

最小阶(N=2)的哈达玛矩阵是:

如果用HN代表N阶矩阵,则下式给出计算高阶哈达玛矩阵的迭代关系:

哈达玛变换一个重要特性是能量较为集中,变换后的大系数会分布在系数矩阵的边角处,原始图像像素分布越均匀,能量集中越明显。

3 加密

目前,细胞神经网络(CNN)在图像处理方面已经有了一定应用,专门的CNN并行处理器也已出现。CNN图像处理的基础在于其阵列单元的并行计算[8]。对于一个二维CNN阵列,每个神经元只考虑其周围一定范围内的其他神经元作用,此范围记为r。如果一个阵列单元大小为M×N,其每个神经元cij的计算可用下式来表示:

其中,i=1,2,…,M,j=1,2,…,N。cij的当前状态用xij表示,uk,l为cij的输入,yk,l为cij的当前输出,cij相邻的r范围内的其他神经元用Nr(i,j)表示;Ak,l和Bk,l分别称为反馈模板和控制模板;I为神经元内部的阈值。输出方程可以用式(8)表示:

如果一个CNN阵列的反馈模板A、控制模板B和阈值I确定,那么其状态xij、输入uk,l和输出yk,l之间的运算关系也随之确定。这样就可以借助其对水印图像进行运算加密。

4 零水印算法

4.1 零水印注册信息产生

①对二值图像w利用置乱密钥进行置乱,得到置乱后的图像wS。

②对原始载体图像f应用Contourlet分解,取其低通子图,记为fL。

③把fL划分成M×N个小块,每块记为fLB(x,y),x=1,2,…,M;y=1,2,…,N。每个fLB(x,y)实施哈达玛变换,选其直流系数,记为d(x,y),所有d(x,y)的平均值记为d。

④利用系数关系,生成构造图像C:

如果d(x,y)>d,

则C(x,y)=1;

否则C(x,y)=0。

⑤将置乱后的水印wS和C输入到CNN网络中进行一定运算处理,得到输出I,也就是零水印注册信息,还可以对I进一步置乱/加密后再注册。文献[9]等获得零水印注册信息往往是采用直接异或运算,而本文在构造过程中,CNN的模板A,B和阈值均可选择,也就具备了更好的保密性。

4.2 检测

记待测图像为f',零水印检测过程为:

①对待测图像应用Contourlet分解,取其低通子图,记为f'L。

②把f'L(x,y)划分为M×N个小块f'LB(x,y),x=1,2,…,M;y=1,2,…,N。每个f'LB(x,y)小块进行哈达玛变换,选其直流系数,记为d'(x,y),所有d'(x,y)的平均值记为d'。

③利用系数关系,生成构造图像C':

如果d'(x,y)>d',

则C'(x,y)=1;

否则C'(x,y)=0。

④对零水印注册信息进行解密得到I。

⑤将C'和解密图像I送入相应的CNN网络进行解密得到w'S,然后对w'S进行反置乱即提取出w'。

⑥待测图像中是否“嵌入”水印,即是否被零水印系统注册,可通过原始水印图像w和提取出的w'之间的相似程度来判定。

5 实验仿真

本实验仿真软件为MATLAB 7.5,所用原始载体图像为512×512大小的灰度图像“Lena”,所用原始水印为32×32有意义二值图像,二者如图2所示。

为判定水印存在与否,需计算相似度。原始水印w和提取出的水印w'之间的相似程度通常用归一化相关性系数(NC)来体现,其计算式如下:

测试1:对载体图像分别进行加性噪声、压缩、滤波等常见操作,测试其相关系数,并与其他基于Contourlet变换的图像零水印算法作比较,结果如表1所示。

测试2:对图像来说,JPEG压缩是一种很常见的操作,因此,针对JPEG压缩进行一组测试,将载体图像根据不同质量因子进行压缩,测试其相关系数,结果如表2所示。从表1和表2测试结果看出,针对常见的加性噪声、图像滤波和压缩等处理时本算法鲁棒性均较强;针对加性噪声和JPEG压缩,本文算法有一定优势。

测试3:对载体图像随机涂抹和附加文字两种篡改情形进行了测试,得到的相似度值也较高,并且可以初步定位出篡改位置,实验结果如图3-4所示,右侧图白色部分为篡改位置。

6 结束语

本文提出了一种基于Contourlet和哈达玛变换的零水印算法,水印信息嵌入到哈达玛变换后的分块系数中。哈达玛变换运算简单,细胞神经网络也可通过硬件完成,因此,该算法可以应用于实时性要求较高的场合。

摘要:为了改善图像水印的鲁棒性和不可见性,提出一种零水印方案。首先将原始载体图像进行Contourlet分解,对其低频子图进行分块哈达玛变换,利用哈达玛变换后系数的均值来生成构造图像,再将其与置乱后的水印一起输入细胞神经网络(CNN),得到注册图像。实验结果表明该方法具有较好的鲁棒性;而且算法复杂度较低,便于实时处理。

关键词:Contourlet变换,哈达玛变换,零水印

参考文献

[1]Rakesh Ahuja,S S Bedi,Himanshu Agarwal.A Survey of Digital Watermarking Scheme[J].MIT International Journal of Computer Science and Information Technology,2012,2(1):52-59.

[2]Singh Y S,Singh K M,Dev B P.A Review of Different Techniques on Digital Image Watermarking Scheme[J].International Journal of Engineering Research,2013,2(3):193-199.

[3]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报,2003,31(2):214-216.

[4]张晓鹏,童小华,刘妙龙.一种基于混沌变换和小波变换的零水印算法[J].测绘与空间地理信息,2010,33(1):156-160.

[5]寇俊克,魏连鑫.基于分段Logistic混沌映射的零水印算法[J].计算机工程与设计,2013,34(2):464-468.

[6]王云晓,王成儒.一种新的基于Contourlet变换的数字图像零水印算法[J].燕山大学学报,2010,34(6):528-532.

[7]罗新曼.基于DCT和DWHT的图像编码算法的研究[J].商丘师范学院学报,2012,28(12):78-82.

[8]雷国伟,吕迎阳,纪安妮,等.图像特征的CNN提取方法及其应用[J].计算机工程与应用,2004,40(14):204-206.

零水印算法 篇6

随着数字化音像制品的大量制作和发行,互联网上大量盗版的音乐作品被无偿使用,音乐制作人的损失巨大,音频数据的版权保护显得越来越重要。音频水印是一种很好的版权保护手段,已经成为数字水印的一个重要研究方向[1,2]。但现有的技术里还不能应用到知识产权保护。同时因为人类的听觉系统比视觉系统灵敏得多,研究数字音频水印的路比研究数字图像水印的路要长[3]。

音频水印最重要的两个特性是鲁棒性和不可听见性,目前大部分算法都没有把鲁棒性和不可听见性很好地结合起来,而这两个特点却是音频水印最重要的特点,因此鲁棒性和不可听见性的统一性是目前研究的重点[4]。同时,在一定长度的音频内,水印的信息量受到一定限制,水印信息量太大,则可能保证不了水印的不可感知性,水印信息量越大,对原始音频的影响越大[5]。有意义的水印信息(如姓名、地址、商标、印鉴等)通常是非常大的,嵌入的水印信息太少,则不足以表达充分的意义。而有意义的水印,特别是有意义的字符串,在检测时都要求有很高的正确率,甚至达到完全正确。怎样缓解水印的信息量、不可感知性和鲁棒性之间的矛盾是值得探讨的[6]。

本研究基于上面的问题,提出一种零水印算法,该算法可以利用音频的重要特征来构造水印信息,而不会修改音频的这些特征,把这种不修改原音频任何特征的水印称为零水印[7]。这里所定义的零水印方法是一种新的数字水印方法,很好地解决了不可见数字水印的可感知性和鲁棒性之间的矛盾。

1 算法的基本思想

首先将原始音频数据进行小波分解,并将水印图像转换为{0,1}序列。然后对小波域的低频系数进行均值量化运算后得到一维序列,并将其和水印图像的一维序列进行异或运算,最后得到可以认证音频信号的水印信息,水印构造算法和水印提取算法如图1所示。

本研究算法选择小波变换,主要是考虑到小波变换有以下几个优点[8]:

(1) 小波变换具有时频局部性,利用这一特性可以提高在频域中提取水印的正确率;

(2) 小波变换更具有灵活性,因为小波变换会有不同分解层数和小波基可供选择;

(3) 计算量小,设音频样本的长为N,DCT和FFT的计算量为O(N×log2(N)),而小波变换的计算复杂度为O(L×N)(其中L是小波滤波器的长度)。

2 水印嵌入算法

为了具有更好的直观性,本研究的水印信号为一幅有意义的二值图像,可表示为:

V={v(i,j),0≤i,j<M},V(i,j)∈{0,1} (1)

在小波分解原始音频信号之前,要对二值图像进行降维处理:

W={w(k)=v(i,j),0≤i,j<M,k=m×m} (2)

则得到一维二值序列W(k)。

A就是构造水印的音频段信号,选择合适的小波基,将信号A作3级离散小波分解:

DWT(A)=C(3)⊕D(3)⊕D(2)⊕D(1) (3)

式中 C(3),D(3)—3级小波分解的近似分量和细节分量。

由于小波分解的近似分量对于各种攻击具有非常好的鲁棒性,选择近似分量C(3)构造水印信号;选取C(3)系数f中的前2N个系数,执行均值插值运算:

f*(2i)=f(2i-1)+f(2i+1)2(i=1,2Ν)(4)

式中 x′2—均值插值之后f(2i)系数值;x2—均值插值之前的f(2i)的系数值。

均值插值运算的原理如图2所示。

进行均值运算的目的是:通过比较x′2和x2的大小关系从音频中得到信息U(i),其表示形式:

{U(i)=1iff(2i)>f*(2i)U(i)=0iff(2i)f*(2i)(i=1,2Ν)(5)

将水印信号U(i)和W(k)进行异或运算,得到一组序列,并记为V(i)。V(i)如同商品的条形码一样,这种水印可以看作是印证音频文件的“身份证”。由于水印并没有真正地嵌入到原始音频中,在构造水印的时候要用V(i)进行同样的异或运算,以得到W(k),在版权产生争议时,版权所有者能够证明其所有权。

3 水印提取算法

受水印保护后的原音频在传输过程中会受到一定的攻击处理,因此得到的待检测音频是原始音频经过各种可能攻击后的音频,设A*是待检测的音频信号,提取水印过程分为以下步骤:

步骤1:对A*进行小波变换,利用式(3)选取三级小波分解的近似分量CA(3):

DWT(A*)=C(3)⊕D(3)⊕D(2)⊕D(1); (6)

步骤2:提取水印信息,得到近似分量CA(3)后,将CA(3)记为系数f,进行均值插值运算:

f*(2i)=f(2i-1)+f(2i+1)2(i=1,2Ν); (7)

提取系数U(i):

{U(i)=1iff(2i)>f*(2i)U(i)=0iff(2i)f*(2i)(i=1,2Ν)

; (8)

步骤3:由公式(6)得到信号U(i),将U(i)和V(i)进行异或运算,得到一组水印的一维序列。将水印的一维序列升维成二维水印图像,得到水印图像。

4 算法性能分析

低频是音频信号中最重要的特征,同时是能量最集中的部分,在对音频信号的质量不造成破坏的基础上,对音频信号的处理应该减少对低频系数的修改。任何对音频信号的攻击及处理所引起的对音频信号低频系数的修改是比较小的,否则音频信号的音质会被严重地破坏。本研究的算法特点是:

(1) 零水印的嵌入过程是利用原始信号中重要的特征,以达到使水印具有良好鲁棒性的目的;

(2) 本算法利用离散小波变换对原始音频信号进行分解,利用其低频系数构造水印,在构造水印的过程中并不修改原始音频;

(3) 一般的算法是采用量化系数的方法,在音频受到攻击之后,系数大小会受到影响,因此提取时容易出错。均值插值提取水印的过程是通过比较系数的大小来提取水印。由于受到攻击后,系数之间的大小关系相对比较稳定,均值插值具有很高的稳定性,算法具有很好的鲁棒性。

5 实验结果

本研究使用归一化相关系数和音频质量评价标准(PAQM)来衡量算法的性能。归一化相关系数的定义如下:

ΝC(w,w)=i=1nw(k)w(k)i=1nw(k)2*i=1nw(k)2(9)

PAQM衡量嵌入水印后的音频感知质量,该标准通过给出一个客观评分来评价音频信号的感知质量,实验和理论分析表明该客观评分与人耳对音频/语音信号的主观感觉密切相关。通常把PAQM的评分对应到一个主观评分等级,以便更为直观地了解待测信号与参考标准信号的听觉感知差异,主观评分等级共分为5等,如表1所示。

本仿真实验以一段人声(单声道,44.1 kHz,16位,15 s长)为例进行测试,利用db-4小波基对原始音频进行3级小波分解,根据分解出来的第3级低频系数构造水印,水印为64×64的二值图像,如图3所示。这个图像水印是在音频段没有经过任何攻击情况下提取出来的,结果显示归一化相关系数为1,SG为5.0,即提取的水印没有任何错误。

以下是未受攻击及通过各种攻击后提取出来的水印图像:

(1) 重采样。将嵌有水印的音频信号由44.1 kHz下采样到22.05 kHz,再上采样到44.1 kHz。如图4所示。

(2) 有损压缩。音频信号由wav格式压缩为mp3格式,再从mp3格式转化为wav格式。如图5所示。

(3) 重量化。将音频信号由16 bit量化为8 bit,再量化为16 bit。如图6所示。

(4) 加噪。在嵌有水印的音频信号中加26 dB的Gauss白噪声。如图7所示。

(5) 低通滤波。采用长度为6阶,截止频率为11.25 Hz的巴特沃思低通数字滤波器。如图8所示。

6 结束语

提高水印算法的鲁棒性和不可感知性一直是水印算法的研究重点,本研究通过参考应用在图像水印中的零水印算法,将这两点有机结合,提供了音频水印算法领域中一种新的研究思路。利用离散小波变换,在低频系数中构造出水印信号,具有良好的不可感知性,对叠加噪声、重新采样、重新量化、有损压缩等音频处理与攻击具有良好的稳健性。但是零水印在提取时需要在构造水印过程中得到一维序列,相对一般的音频水印算法而言提取的过程相对麻烦一点。

下一步需要进行的研究工作包括:①利用密码学中原理,作为辅助的水印图像可以用作公有水印,在构造水印过程中得到的一维序列作为作者拥有的私匙;②开发用来保存注册水印信息的数据库。

参考文献

[1]TZENG J N,HWANG W L,CHERN I.An asymmetricsubspace watermarking method for copyright protection[J].IEEE Trans.on Signal Processing,2005,53(2):784-792.

[2]KUNDUR D,HATZINAKOS D.Toward robust logo water-making using multiresolution image fusion principles[J].IEEE Trans.on Multimedia,2004,6(1):185-198.

[3]全笑梅,张鸿宾.基于小波包域听觉感知分析的统计音频水印算法[J].电子学报,2007,35(4):673-678.

[4]YEO I K,KIM HJ.Modified patchwork algorithm:a novelaudio watermarking scheme[J].IEEE Trans.Speech andAudio Processing,2003,11(4):381-386.

[5]王剑.基于模数运算的DWT域数字音频水印[J].计算机工程,2004,30(6):44-45.

[6]MANSOUR M F,TEWFIK A H.Data embedding in audiousing time-scale modification[J].IEEE Trans.Speechand Audio Processing,2005,13(3):432-440.

[7]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报,2003,31(2):1-3.

零水印算法 篇7

随着互联网和多媒体技术的飞速发展和广泛应用,数字水印技术也因此成为信息网络安全技术研究的热点。不可感知性和鲁棒性是数字水印方案的最重要性质。传统的数字水印技术都要对载体图像空域或变换域的信息进行一定的修改, 从而造成载体图像质量下降。为了解决水印的不可感知性和鲁棒性之间的矛盾,零水印方案被提了出来。所谓零水印是指利用载体图像的重要特征来构建水印,而不对载体图像作任何修改的水印技术。

零水印算法可以分为两大类:空域方法[1 ,3]和变换域方法 [2,4,5]。本文在深入研究已有零水印算法的基础上,深入研究模运算特性,提出简单而鲁棒性很强的基于DCT直流系数和模操作的灰度零水印算法。

2 相关技术

2.1离散余弦变换

离散余弦变换(discrete cosine transform, DCT),是数字图像处理以及信号处理常用的一种正交变换。设大小为M×N的图像或图像块为f(x,y), 其DCT定义为

由式(1)可知,当u=0, v=0, 即DCT直流(direct current, DC)系数可表示为

由式(4)可以看出,DC系数可以代表图像或图像块平均亮度,可以直接在空域中通过简单的数学运算求得,而无须经过复杂的DCT得到。

2.2 Logistic混沌系统

Logisti映射是一个非常简单而在数字水印技术中最常用的一维混沌系统,其定义为

其中,0≤μ≤4称为分枝参数。当xn∈(0,1),且3.5699456<μ≤4时,Logistic映射工作处于混沌状态,此时生成的序列{xn, n=0,1,2,…}具有良好的随机统计特性,是较理想的混沌伪随机序列。

3 本文零水印算法

设载体图像和水印图像均为256级灰度图像,载体图像I大小为M×N,水印图像W大小为m×n,本文零水印算法使用在密钥key=(μ,x0)下由式(5)产生的Logistic混沌序列为

序列X的前m×n项序列用于置乱水印,后m×n项序列用于加密零水印信息。

3.1 水印置乱

为提高水印算法的鲁棒性和安全性,对原水印W进行混沌置乱加密。取式(6)的混沌序列X的前m×n项序列组成序列 {a Xi|i=1,2,…,m×n},a X排序得到有序序列{t Xi|i=1,2,…,m×n},由t X在a X中的位置索引为序列值生成服从[1,m×n]的混沌随机序列{s Xi|i=1,2,…,m×n},按光栅扫描顺序,该序列值对应W的像素位置(row,col)为

W从(row,col)变换到(i,j)得到置乱水印Wc为

3.2零水印构建算法

3.2.1图像特征信息的提取

根据水印图像W大小把载体图像划分为m×n不重叠子块, 子块大小为h×w, 则

取子块集B的每一子块的DCT直流系数构成载体图像I的特征C,特征矩阵C根据h式w(4)直接从空域中计算,计算公式为

3.2.2零水印生成

由载体图像特征C(i,j)与置乱后的水印像素Wc(i,j)通过模运算构建零水印信息F为

3.2.3零水印加密

为了进一步提高零水印在注册中心的安全性,用XOR操作对其加密。取混沌序列{Xi|i=1,2,…, M×N}的后m×n项组成序列{b Xi|i=1,2,…, m×n}作为加密序列,将其变换为8位无符号整数,计算公式为

式中,round()为取最近整数函数,i=1,2,…, m×n,k≥4。将b X(i)序列组成m×n矩阵s Y为

利用XOR操作把零水印信息加密为

经过式(14)加密后的零水印的像素统计特性将被彻底改变。

3.3 水印检测算法

水印的检测过程是水印构建过程的逆过程。在待检测的载体图像I提取图像特征信息,并与在IPR水印数据库中注册的零水印信息进行逆运算得到检测水印W′。

对于有特定含义的水印图像而言,一般所提取的水印效果可由原水印W和检出的水印W′进行归一化相关性计算来辅助度量,或作为鲁棒性比较。归一化相关计算公式为

实验证明,对于灰度水印,归一化系数NC不能较好反映检测水印和原水印的相似程度,故本文用峰值信噪比(PSNR)来衡量检测水印的视觉质量及评价算法性能比较,其定义为

式中,MSE是原水印图像W与检测水印图像W′之间的均方差,计算公式为

式中,m和n分别为水印图像的高和宽。

4 实验结果与分析

已通过大量实验证明本文算法的有效性和可行性。限于篇幅,在此仅给出代表性的实验结果。

实验平台为Matlab2012b,载体图像为8位Lena 512×512标准灰度测试图像,水印为8位logo 128×128灰度图像,如图1所示。logo为高亮图像,式(18)和(19)中,a=0,b=220。Logistic系统密钥key=(μ,x0)=(3.9,0.32579),式(12)中k=7。

4.1 零水印信息与安全性

零水印信息图像及其灰度直方图如图2所示。

水印信息的安全性取决于密钥和水印信息像素特征值统计。密钥的安全性由Logistic系统保证,Logistic系统的密钥key不仅密钥空间足够大,而且很敏感。从图2实验效果表明不仅水印信息图像加密效果好,而且其灰度直方图在[0,255]范围内分布均匀,可以抵御来自像素特征值统计的攻击。

4.2 零水印算法鲁棒性实验

本实验为本文算法与文献[9-10]为代表的基于DWT和XOR操作的同类算法的鲁棒性对比实验。文献[9-10]算法在DWT二层低频子带构建零水印。实验项目与数据如表1所示。

在载体图像没有受到任何攻击时,可以检出无损水印图像。与表2相对应,经JPEG压缩攻击和经高斯噪声攻击后的检测水印视觉效果分别如图3和图4所示。限于篇幅,其他鲁棒性实验效果可通过表内数据来间接比较。

实验表明,NC不能准确表示检测灰度水印的相似性,如本实验的抗JPEG压缩攻击实验,本文算法的NC与文献[9-10]的NC相近,但本文算法检出水印的视觉质量和PSNR远远超过文献[9-10]算法。

本次实验的图像变暗处理,表2数据显示检出NC和PSNR都很小,且本文算法的NC和PSNR比文献[9-10]算法的小,但本文算法检出水印质量却明显好很多(见图5)。

由表2实验数据和检出水印视觉质量(如与表2对应的图3-5实验结果)表明,本文算法的抗JPEG压缩、抗图像滤波处理,抗高斯噪声攻击、抗图像对比度、抗亮度处理和抗裁剪能力等能力远远强于文献[9-10]同类算法。检出水印的视觉质量和PSNR远远优于文献[9-10]算法。

5 结论

上一篇:拓展训练模式下一篇:电算化会计信息系统