本发明涉及数字水印技术领域,具体涉及一种基于zernike矩抗几何攻击的可逆鲁棒水印方法。
背景技术:
近年来,通过研究图像像素间的相关性关系,发现其存在冗余性,利用这种冗余性,提出了可逆水印技术,在提取水印之后可以准确恢复出原始图像,然而,在实际的应用场景当中,所传递的图像往往会遭受到攻击(如:噪声,几何攻击等),可逆水印技术无法抵抗此类攻击;
另一方面,现有的zernike矩变换技术在实现过程存在大量累计误差,在处理过程中存在失真,因此无法通过zernike矩变换实现可逆鲁棒水印技术。
技术实现要素:
为了克服现有技术存在的缺陷与不足,本发明提供一种基于zernike矩抗几何攻击的可逆鲁棒水印方法,通过对水印嵌入过程中存在的量化失真,水印失真,溢出失真和变换失真进行处理,解决了zernike矩变换过程存在大量累计误差而无法实现可逆鲁棒水印的问题,在未受到攻击时可以提取水印和恢复图像,在受到攻击时可以有效提取出水印,对数字媒体的完整性认证有着重大的作用,能够有效抵抗多种攻击,如jpeg压缩、拉伸、旋转、高斯噪声和椒盐噪声等。
为了达到上述目的,本发明采用以下技术方案:
本发明提供一种基于zernike矩抗几何攻击的可逆鲁棒水印方法,包括下述步骤:
计算原始图像i的zernike矩,得到n阶m重zernike矩anm;
采用量化水印方法进行水印嵌入,得到量化失真dq和水印失真dw;
进行zernike反变换得到带有水印信息的图像iw,取整操作后得到图像
处理zernike正反变换过程中存在的变换失真dt;
对图像
采用可逆水印方法将量化失真dq、水印失真dw、溢出失真do和变换失真dt嵌入到图像
生成图像
采用可逆水印方法从图像
判定为图像未受到攻击时,采用可逆水印方法从图像
基于溢出失真do补偿图像
进行zernike反变换,得到的图像i1,采用变换失真dt对图像i1补偿,恢复出原始图像i;
判定为图像受到攻击时,计算受到攻击后带有水印信息图像iaw的zernike矩,得到受到攻击后含有水印信息的zernike矩;
进行量化水印提取,得到水印信息wa。
作为优选的技术方案,所述计算原始图像i的zernike矩,具体步骤包括:
确定阶数n,以大小为m×m原始图像i的中心为圆心,作内切圆,以所述内切圆为单位圆,求单位圆内的像素的zernike矩。基于所述内切圆构建zernike基vnm(x,y),通过zernike基vnm(x,y)计算zernike矩,得到n阶m重zernike矩anm,具体计算公式为:
其中,δx和δy表示图像单位圆的步长,f(xi,yj)表示单位圆内的像素。
作为优选的技术方案,所述采用量化水印方法进行水印嵌入,得到量化失真dq和水印失真dw,具体步骤包括:
选出zernike矩anm中满足预设条件的zernike矩apq,进行正则化后得到zernike矩
所述量化失真dq和水印失真dw的具体公式如下:
其中,s表示量化水印中的步长,w表示水印信息。
作为优选的技术方案,所述进行zernike反变换得到带有水印信息的图像iw,具体步骤包括:
采用嵌入量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算嵌入量化水印后的zernike矩
然后作zernike反变换,得到带有水印信息与不带水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
作为优选的技术方案,所述处理zernike正反变换过程中存在的变换失真dt,具体步骤包括:
计算带有水印信息的图像
进行量化水印提取,得到水印信息w;
再采用量化失真dq和水印失真dw重新恢复zernike矩
基于提取量化水印前后zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
进行zernike反变换,得到不带水印信息与带水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
计算恢复出来的图像i1与原始图像i之间存在的变换失真dt,具体公式如下:
dt=i一i1。
作为优选的技术方案,所述进行量化水印提取,得到水印信息w并恢复zernike矩,具体步骤包括:
采用提取出来的溢出失真do补偿图像
计算图像
进行量化水印提取,得到水印信息w,再基于提取出来的量化失真dq和水印失真dw重新恢复zernike矩
作为优选的技术方案,水印信息w具体公式如下:
其中,α=mod(s,0.04)/0.04,s表示量化水印中的步长。
作为优选的技术方案,所述进行zernike反变换,得到的图像i1,具体步骤包括:
基于提取出来的量化失真dq和水印失真dw重新恢复zernike矩
利用提取量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
然后作zernike反变换,得到不带水印信息与带有水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
作为优选的技术方案,所述判定为图像受到攻击时,计算受到攻击后带有水印信息图像iaw的zernike矩,具体步骤包括:
计算受到攻击后带有水印信息图像iaw的n阶m重zernike矩
作为优选的技术方案,所述进行量化水印提取,得到水印信息wa,具体计算公式为:
其中,α=mod(s,0.04)/0.04,s表示量化水印中的步长。
本发明与现有技术相比,具有如下优点和有益效果:
(1)本发明基于zernike矩提出的可逆鲁棒水印方法,主要利用了zernike矩的特性,解决了zernike变换过程中存在的失真问题,在未受到攻击时可以提取水印和恢复图像,在受到攻击时(如jpeg压缩,拉伸,旋转等)可以有效提取出水印,对几何攻击和常规处理有更强的鲁棒性。
(2)本发明利用了量化水印具有鲁棒性,采取量化水印的方式在原始图像中嵌入鲁棒水印,基于zernike矩旋转不变的特性,可以抵抗各角度旋转攻击,基于zernike矩正则化具有伸缩不变的特性,可以抵抗拉伸攻击,可以有效提取水印信息和恢复图像。
(3)本发明在不同的信号处理,如高斯噪声,椒盐噪声等噪声攻击下,均能有效提取出水印信息,切合了日常数字取证以及数字认证方面的要求;同时也可以应用到不同图像上,且在不同图像上均取得较好的效果。
附图说明
图1为本实施例基于zernike矩抗几何攻击的可逆鲁棒水印方法的流程示意图;
图2为本实施例判断带有水印信息图像是否受到攻击的流程示意图;
图3为本实施例在未受到攻击时提取水印和恢复原始图像的流程示意图;
图4为本实施例在受到攻击情况下提取水印的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
如图1所示,本实施例提供一种基于zernike矩抗几何攻击的可逆鲁棒水印方法,包括水印嵌入步骤、未受到攻击时水印提取和恢复图像步骤、受到攻击时水印提取步骤;
其中,水印嵌入步骤包括下述步骤:
s1:计算原始图像i的zernike矩;
s11:确定进行zernike矩的阶数n(n≥0),本实施例取n=30,用anm表示各阶zernike矩,其中n和m满足如下公式:
0≤n≤n
zernike矩的基vnm(x,y)是一组在单位圆上的完备正交基,n是指变换的阶数,m为变换后系数的重数,vnm(x,y)具体公式如下:
vnm(x,y)=rnm(ρ)ejmθ
其中,
因此需要先做出图像的单位圆;
s12:以大小为m×m的原始图像i的中心为圆心,作内切圆,以该内切圆为单位圆,计算单位圆内的像素的zernike矩,设该内切圆内像素为f(x,y),然后利用该内切圆构建zernike基vnm(x,y),通过zernike基vnm(x,y)计算zernike矩,得n阶m重zernike矩anm,具体公式如下所示:
其中,vnm(x,y)=rnm(ρ)ejmθ,是一组在单位圆上的完备正交基,rnm(ρ)是zernike多项式,具体表达式如下:
δx和δy是图像单位圆的步长,对于大小为m×m的图像,具体表达式如下所示:
在本实施例中,m取值为m=512;
s2:利用量化水印的方法进行水印嵌入,得到量化失真dq和水印失真dw;
s21:选出zernike矩anm中满足(n>0)&&(m>0)&&(m≠4i)的zernike矩apq,对其进行正则化操作得到
s22:嵌入水印信息w:对长度为l的水印w利用量化水印的方法对正则化后的zernike矩
其中,s为量化水印中的步长,本实例中s=0.02,100*s的值为大于1的整数,然后,对进行量化操作的矩进行量化失真dq和水印失真dw的保存,dq和dw具体公式如下:
s3:进行zernike反变换,得到带有水印信息的图像iw;
s31:嵌入水印过程中对部分zernike矩进行了修改,利用嵌入量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算嵌入量化水印后的zernike矩
然后作zernike反变换,得到带有水印信息与不带水印信息的低频重构图像之差
s32:在空域上将
s33:带有水印信息的图像iw进行四舍五入取整操作,得到图像
s4:处理zernike正反变换过程中存在的变换失真dt,zernike矩虽然是单元圆上的正交变换,但是由于计算精度的问题,其计算的阶数越多,存在的累计误差反而越多,因此需要对其变换失真dt进行处理;
s41:与步骤s11和s12相似,计算带有水印信息的图像
s42:进行量化水印提取,得到水印信息w,具体公式如下:
其中,α=mod(s,0.04)/0.04,本实施例α=0.005,再利用量化失真dq和水印失真dw重新恢复zernike矩
s43:利用提取量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
然后作zernike反变换,得到不带水印信息与带水印信息的低频重构图像之差
在空域上将
s44:计算恢复出来的图像i1与原始图像i之间存在的变换失真dt,具体公式如下:
dt=i-i1
s5:运用可逆水印方法处理失真,以可逆水印的方法将组合后的失真信息嵌入到
s51:对图像
s52:以可逆水印的方法将量化失真dq、水印失真dw、溢出失真do和变换失真dt嵌入到图像
s53:生成图像
如图2所示,判断图像有没有受到攻击的具体步骤为:
s6:以可逆水印的方法从图像
将图像
生成图像
如果h1和h2相等,说明图像
如果h1和h2不相等,说明图像
如图3所示,未受到攻击时水印提取和恢复图像具体步骤如下:
s7:以可逆水印的方法从图像
具体地,将图像
s8:利用溢出失真do补偿图像
s81:利用提取出来的溢出失真do补偿图像
s82:与步骤s11和步骤s12相似,计算图像
s83:与步骤s42相似,进行量化水印提取,得到水印信息w,再利用提取出来的量化失真dq和水印失真dw重新恢复zernike矩
水印信息w具体公式如下:
其中,α=0.005;
s9:进行zernike反变换,得到的图像i1,用变换失真dt对图像i1补偿,恢复出原始图像i;
s91:与步骤s43类似,进行zernike反变换恢复图像i1;
利用提取出来的量化失真dq和水印失真dw重新恢复zernike矩
利用提取量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
然后作zernike反变换,得到不带水印信息与带有水印信息的低频重构图像之差
在空域上将
s92:利用提取出来的变换失真dt补偿图像i1,从而恢复图像i,具体公式如下:
i=i1 dt
如图4所示,受到攻击时水印提取具体步骤如下:
s10:计算受到攻击后带有水印信息图像iaw的zernike矩,得到受到攻击后含有水印信息的zernike矩;
具体地,与步骤s11和s12相似,提取受到攻击后带有水印信息图像iaw的n阶m重zernike矩
s11:进行量化水印提取,得到水印信息wa;
具体地,进行量化水印提取,得到水印信息wa,具体公式如下:
其中,α=mod(s,0.04)/0.04,本实施例取值α=0.005。
在本实施例中,对于可逆鲁棒水印方法而言,带有水印信息的图像在受到攻击后误码率在20%以下认为具有较好的鲁棒性,具体实验结果如下所述:
如下表1所示,表中嵌入鲁棒水印为60bits,误码率超过20%用“——”表示,基于图片lena的实验结果表明本实施例的方法可以抗质量因子为10的jpeg压缩、压缩比为100∶1的jpeg2000攻击、0度到360度的旋转攻击、拉伸因子0.5到2.0的拉伸攻击、均值为0,方差为0.01到0.03的高斯噪声和密度为0.01的椒盐噪声攻击;
表1:图片lena受到攻击时的误码率结果表(嵌入鲁棒水印为60bits)
如下表2所示,基于图片aerial的实验结果表明本实施例可以抗质量因子为10的jpeg压缩、压缩比为100∶1的jpeg2000攻击、0度到360度的旋转攻击、拉伸因子0.5到2.0的拉伸攻击、均值为0,方差为0.01到0.03的高斯噪声和密度为0.01到0.03的椒盐噪声攻击;
表2图片aerial受到攻击时的误码率结果表(嵌入鲁棒水印为60bits)
如下表3所示,基于图片baboon的实验结果表明本实施例可以抗质量因子为10的jpeg压缩、压缩比为100∶1的jpeg2000攻击、0度到360度的旋转攻击、拉伸因子0.5到2.0的拉伸攻击、均值为0,方差为0.01到0.03的高斯噪声和密度为0.01到0.03的椒盐噪声攻击;
表3图片baboon受到攻击时的误码率结果表(嵌入鲁棒水印为60bits)
本实例中使用图片lena,图片aerial和图片baboon的灰度图像作为实验对象,这三组图片具有不同的特性,比如图片lena包括平整的区块、清晰细致的纹路、渐渐变化的光影、颜色的深浅层次等;图片aerial具有尖锐的轮廓、亮暗分明;图片baboon具有区域连续的像素值,平滑的边缘等特性。日常生活中的各类图片具有这些特性,因此采用这三组图片作为实验对象可以使得实验结果具有推广性;本实施例所选择的图片尺寸为512×512,不同图像差异不大,因此可以推广到各类图像当中。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
1.一种基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,包括下述步骤:
计算原始图像i的zernike矩,得到n阶m重zernike矩anm;
采用量化水印方法进行水印嵌入,得到量化失真dq和水印失真dw;
进行zernike反变换得到带有水印信息的图像iw,取整操作后得到图像
处理zernike正反变换过程中存在的变换失真dt;
对图像
采用可逆水印方法将量化失真dq、水印失真dw、溢出失真do和变换失真dt嵌入到图像
生成图像
采用可逆水印方法从图像
判定为图像未受到攻击时,采用可逆水印方法从图像
基于溢出失真do补偿图像
进行zernike反变换,得到的图像i1,采用变换失真dt对图像i1补偿,恢复出原始图像i;
判定为图像受到攻击时,计算受到攻击后带有水印信息图像iaw的zernike矩,得到受到攻击后含有水印信息的zernike矩;
进行量化水印提取,得到水印信息wa。
2.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述计算原始图像i的zernike矩,具体步骤包括:
确定阶数n,以大小为m×m的原始图像i的中心为圆心,作内切圆,以所述内切圆为单位圆,求单位圆内的像素的zernike矩,基于所述内切圆构建zernike基vnm(x,y),通过zernike基vnm(x,y)计算zernike矩,得到n阶m重zernike矩anm,具体计算公式为:
其中,δx和δy表示图像单位圆的步长,f(xi,yj)表示单位圆内的像素。
3.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述采用量化水印方法进行水印嵌入,得到量化失真dq和水印失真dw,具体步骤包括:
选出zernike矩anm中满足预设条件的zernike矩apq,进行正则化后得到zernike矩
所述量化失真dq和水印失真dw的具体公式如下:
其中,s表示量化水印中的步长,w表示水印信息。
4.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述进行zernike反变换得到带有水印信息的图像iw,具体步骤包括:
采用嵌入量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算嵌入量化水印后的zernike矩
然后作zernike反变换,得到带有水印信息与不带水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
5.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述处理zernike正反变换过程中存在的变换失真dt,具体步骤包括:
计算带有水印信息的图像
进行量化水印提取,得到水印信息w;
再采用量化失真dq和水印失真dw重新恢复zernike矩
基于提取量化水印前后zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
进行zernike反变换,得到不带水印信息与带水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
计算恢复出来的图像i1与原始图像i之间存在的变换失真dt,具体公式如下:
dt=i-i1。
6.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述进行量化水印提取,得到水印信息w并恢复zernike矩,具体步骤包括:
采用提取出来的溢出失真do补偿图像
计算图像
进行量化水印提取,得到水印信息w,再基于提取出来的量化失真dq和水印失真dw重新恢复zernike矩
7.根据权利要求5或6所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,水印信息w具体公式如下:
其中,α=mod(s,0.04)/0.04,s表示量化水印中的步长。
8.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述进行zernike反变换,得到的图像i1,具体步骤包括:
基于提取出来的量化失真dq和水印失真dw重新恢复zernike矩
利用提取量化水印前后的zernike矩的绝对值比值的倒数作为比例系数计算重新恢复的zernike矩
然后作zernike反变换,得到不带水印信息与带有水印信息的低频重构图像之差
其中,l表示水印信息的长度,在空域上将
9.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述判定为图像受到攻击时,计算受到攻击后带有水印信息图像iaw的zernike矩,具体步骤包括:
计算受到攻击后带有水印信息图像iaw的n阶m重zernike矩
10.根据权利要求1所述的基于zernike矩抗几何攻击的可逆鲁棒水印方法,其特征在于,所述进行量化水印提取,得到水印信息wa,具体计算公式为:
其中,α=mod(s,0.04)/0.04,s表示量化水印中的步长。
技术总结