一种基于gan的水印攻击方法及系统、数字水印嵌入方法
技术领域
1.本发明涉及数字水印技术领域,更具体地,涉及一种基于gan的水印攻击方法及系统,以及一种数字水印嵌入方法。
背景技术:2.随着数字媒体和互联网技术的快速发展,为提高数字媒体内容的版权保护,主要通过对数字媒体内容添加水印图像,即利用数据嵌入方法隐藏在数字图像产品中,用以证明创作者对其作品的所有权,并作为鉴定、起诉非法侵权的依据。而为了增强图像水印技术的鲁棒性,目前主要通过提高水印攻击能力的角度开发新的水印攻击方法。
3.水印攻击主要是指将造成含水印的多媒体信息失真的行为。攻击者通常位于传输的信道上,攻击的目的主要包括:找出隐藏有水印的媒体;指出该媒体中水印信息的含义;在不对含有水印的媒体做大的修改的前提下,删除隐含的水印信息;删除所有可能嵌入水印的媒体。目前,水印攻击方法有很多种,如加性噪声、图像滤波、有损压缩和几何攻击等。这些传统的攻击方法可以在很大程度上验证水印方案的鲁棒性。然而,对于许多实际应用场景,许多需要保护的图像不能以视觉质量损失为代价来验证水印方案的鲁棒性。在军事、医学、遥感等敏感领域,由于原始信息的重要性,图像水印技术的鲁棒性不能用传统的攻击方法进行暴力验证,否则将失去原始载体最基本的意义。
技术实现要素:4.本发明为克服现有的水印攻击技术无法保留图像原始信息,存在视觉质量损失,导致无法进一步提高图像水印技术的鲁棒性的缺陷,提供一种基于gan的水印攻击方法及系统,以及一种应用上述基于gan的水印攻击方法进行鲁棒性训练的数字水印嵌入方法。
5.为解决上述技术问题,本发明的技术方案如下:
6.一种基于gan的水印攻击方法,包括以下步骤:
7.对水印图像进行加密后嵌入原始图像的特征点位置,得到带水印图像;
8.将带水印图像输入包括第一生成器和第一判别器的第一gan神经网络中;所述带水印图像输入第一生成器中遭受水印攻击,生成与原始图像相同尺寸的去水印图像;将去水印图像输入第一判别器中,所述第一判别器输出图像是否经过水印攻击的判别标签;
9.根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器和第一判别器的参数收敛,得到完成训练的第一生成器和第一判别器;所述第一生成器用于执行水印攻击。
10.进一步地,本发明还提出了一种基于gan的水印攻击系统,应用上述的基于gan的水印攻击方法,其中包括:
11.图像处理模块,用于对输入的水印图像进行加密处理,以及将经过加密处理的水印图像嵌入原始图像的特征点位置,输出带水印图像;
12.第一gan神经网络,包括第一生成器和第一判别器;
13.其中,第一生成器用于对输入的带水印图像进行水印攻击,对图像进行去水印处理,输出去水印图像;
14.第一判别器用于对第一生成器输出的去水印图像进行是否经过水印攻击的判别,输出是否经过水印攻击的判别标签;
15.训练模块,用于根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器和第一判别器的参数收敛。
16.进一步地,本发明还提出一种数字水印嵌入方法,应用上述基于gan的水印攻击方法,其包括以下步骤:
17.将原始图像输入包括第二生成器和第二判别器的第二gan神经网络;
18.利用第二生成器为原始图像增加数字水印,得到带数字水印图像;
19.对带数字水印图像应用上述的基于gan的水印攻击方法进行去水印处理后,输入第二判别器中进行是否经过水印攻击的判别;
20.对第二gan神经网络进行训练,得到用于嵌入数字水印的第二生成器。
21.与现有技术相比,本发明技术方案的有益效果是:本发明基于gan神经网络对水印攻击技术进行训练,旨在不损害图像使用价值的前提下去除水印,能够确保被攻击图像的不可感知性;同时本发明可应用于反向促进水印方法的性能提升,对数字水印嵌入技术的鲁棒性进行训练,有利于提高数字媒体内容的版权保护。
附图说明
22.图1为本发明实施例的基于gan的水印攻击方法的流程图。
23.图2为本发明实施例的基于gan的水印攻击方法的流程示意图。
24.图3为本发明实施例的第一生成器的模型架构图。
25.图4为本发明实施例的第一判别器的模型架构图。
26.图5为本发明实施例的vgg16模型的架构图。
27.图6为本发明实施例的基于gan的水印攻击系统的架构图。
具体实施方式
28.附图仅用于示例性说明,不能理解为对本专利的限制;
29.对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
30.下面结合附图和实施例对本发明的技术方案做进一步的说明。
31.实施例1
32.本实施例提出一种基于gan的水印攻击方法,如图1、2所示,为本实施例的基于gan的水印攻击方法的流程图。
33.本实施例提出的基于gan的水印攻击方法中,包括以下步骤:
34.s1、对水印图像进行加密后嵌入原始图像的特征点位置,得到带水印图像。
35.s2、将带水印图像输入包括第一生成器200和第一判别器300的第一gan神经网络中;所述带水印图像输入第一生成器200中遭受水印攻击,生成与原始图像相同尺寸的去水
印图像。
36.s3、将去水印图像输入第一判别器300中,所述第一判别器300输出图像是否经过水印攻击的判别标签。
37.s4、根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器200和第一判别器300的参数收敛,得到完成训练的第一生成器200和第一判别器300。
38.本实施例中的第一生成器200用于执行水印攻击。
39.在一可选实施例中,对水印图像进行加密后嵌入原始图像的特征点位置的步骤包括:
40.s1.1、采用加密算法对水印图像进行加密。
41.s1.2、采用特征提取算法对原始图像进行特征点的提取。
42.s1.3、将经过加密的水印图像嵌入至原始图像的特征点位置,得到带水印图像。
43.在具体实施过程中,利用任意性能好的加密算法将水印图像置乱作为水印的密钥,消除水印像素的空间相关性,生成加密后的水印图像w,例如利用arnold置乱算法。
44.其中,采用arnold置乱算法对水印图像置乱处理的表达式如下所示:
[0045][0046]
式中,x,y为水印图像的原始坐标,x
′
,y
′
为水印图像经置乱变换后的坐标;a,b为可选参数,n为置乱次数。
[0047]
进一步地,使用orb特征提取算法将原始图像的角点信息提取出来并进行标记,然后将经过加密的水印图像嵌入至原始图像的特征点位置,得到带水印图像。
[0048]
在一可选实施例中,所述第一生成器200由一个具有跳跃连接的编解码器体系结构组成。
[0049]
如图3所示,本实施例中的第一生成器200包括压缩模块和扩展模块,其中,压缩模块包括8个卷积神经层,所述卷积神经层中的卷积核大小为3
×
3,步幅大小为2;每个卷积神经层后连接有一个bn层和relu层。扩展模块包括8个上采样层,每个上采样层采用反卷积,其卷积核大小为5
×
5,每个上采样层后连接有一个bn层和relu层。
[0050]
且本实施例的上采样层与卷积神经层跳跃连接,其具体连接如图3所示,实现将编码的低级信息合并到解码的高级特征图中,协助生成网络生成高视觉质量的图像,保证生成的图像的不可感知性。
[0051]
进一步地,本实施例的第一判别器300的结构如图4所示,其包括8个卷积神经层,卷积神经层中的卷积核大小为3
×
3,每个卷积神经层后连接有一个bn层。最后一个卷积神经层连接有flatten层、dense层和sigmoid层,其中flatten层将多维的矩阵转换为二维矩阵,dense层用于将提取的特征经过非线性变化后映射到输出空间中。
[0052]
在一可选实施例中,在s4步骤采用损失函数对第一gan神经网络进行优化的步骤包括:
[0053]
(1)通过vgg16模型提取原始图像的特征图,以及提取去水印图像的特征图。本实施例中采用的vgg16模型的结构如图5所示。
[0054]
(2)采用mse损失函数和感知损失函数评估去水印图像与原始图像之间的差距,得
到第一生成器200的损失值lg;其表达式如下所示:
[0055][0056]
式中,vggk(
·
)表示从vgg16模型中的第k层中提取的特征,n为vgg16模型特征神经元的总数;ia表示去水印图像,io表示原始图像。
[0057]
(3)根据第一生成器200的损失值,采用优化器对第一生成器200进行训练优化。
[0058]
本实施例为了获得具有较高峰值信噪比(psnr)的被攻击的水印图像,在损失函数中加入mse损失来优化模型。
[0059]
进一步地,计算第一判别器300的损失值ld;其表达式如下:
[0060][0061]
式中,p(io)表示原始图像io的分布,p(iw)表示带水印图像iw的分布;g(iw)表示由第一生成器200生成的去水印图像。
[0062]
根据第一生成器200的损失值和第一判别器300的损失值,计算第一gan神经网络的总损失值l
total
;其表达式如下:
[0063]
l
total
=λ1lg+λ2ld[0064]
式中,λ1、λ2为用于平衡单个目标的权重值。
[0065]
然后根据第一gan神经网络的总损失值l
total
,采用优化器对第一gan神经网络进行训练优化。随着迭代次数的增加,被攻击的水印图像与原始水印图像之间的差异越来越近。可对λ的不同参数值进行了反复检验。
[0066]
本实施例对第一gan神经网络进行训练,使第一生成器200输出的去水印图像的外观和分布与原始图像相似,其中第一判别器300的目标是鼓励生成的图像与原始图像无法区分,第一生成器200所生成的图像与原始图像之间的分布越接近,去除水印信息的可能性越大,即水印攻击模型的攻击能力越强。
[0067]
本实施例通过gan神经网络对水印攻击方法进行训练,提高隐蔽性攻击水印技术,能够应用于反向促进水印方法的性能提升,即将强攻击力的水印攻击模型应用于抵御水印攻击的数字水印嵌入技术中,对数字水印嵌入技术的鲁棒性进行训练,有利于提高数字媒体内容的版权保护。
[0068]
与直接利用gan神经网络对数字水印嵌入技术进行训练相比,本实施例中的gan神经网络没有子网,也没有辨别值,算法难度相对较低,且能够有效训练数字水印嵌入技术的鲁棒性。
[0069]
实施例2
[0070]
本实施例提出一种基于gan的水印攻击系统,应用实施例1所述的基于gan的水印攻击方法,如图6所示,为本实施例的基于gan的水印攻击系统的架构图。
[0071]
本实施例提出的基于gan的水印攻击系统中,包括:
[0072]
图像处理模块100,用于对输入的水印图像进行加密处理,以及将经过加密处理的水印图像嵌入原始图像的特征点位置,输出带水印图像。
[0073]
第一gan神经网络,包括第一生成器200和第一判别器300。
[0074]
其中,第一生成器200用于对输入的带水印图像进行水印攻击,对图像进行去水印处理,输出去水印图像。
[0075]
第一判别器300用于对第一生成器200输出的去水印图像进行是否经过水印攻击的判别,输出是否经过水印攻击的判别标签。
[0076]
训练模块400,用于根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器200和第一判别器300的参数收敛。
[0077]
在一可选实施例中,第一生成器200中包括压缩模块和扩展模块。
[0078]
其中,压缩模块包括8个卷积神经层,所述卷积神经层中的卷积核大小为3
×
3,步幅大小为2;每个卷积神经层后连接有一个bn层和relu层。扩展模块包括8个上采样层,每个上采样层采用反卷积,其卷积核大小为5
×
5,每个上采样层后连接有一个bn层和relu层。
[0079]
且本实施例的上采样层与卷积神经层跳跃连接,实现将编码的低级信息合并到解码的高级特征图中,协助生成网络生成高视觉质量的图像,保证生成的图像的不可感知性。
[0080]
在具体实施过程中,图像处理模块100从含原始图像和相对应的水印图像的两个数据集读取水印图像和原始图像,并对其进行图像处理。具体地,图像处理模块100采用加密算法对水印图像进行加密,并采用特征提取算法对原始图像进行特征点的提取,然后将经过加密的水印图像嵌入至原始图像的特征点位置,输出带水印图像至第一gan神经网络中。同时图像处理模块100将相应的原始图像传输至第一判别器300中。
[0081]
第一gan神经网络中的第一生成器200对输入的带水印图像进行水印攻击,生成与原始图像相同尺寸的去水印图像,并传输至第一判别器300中。第一判别器300对输入的去水印图像和原始图像进行比对,判断去水印图像是否经过水印攻击,即用于区分去水印图像与原始图像是否存在区别,并输出相应的判别标签。
[0082]
训练模块400根据第一gan神经网络的水印攻击结果进行损失函数计算,用于对第一gan神经网络进行迭代训练。具体地,训练模块400将原始图像和第一生成器200输出的去水印图像通过vgg16模型进行特征提取,并采用mse损失函数和感知损失函数评估去水印图像与原始图像之间的差距,得到第一生成器200的损失值lg。
[0083]
同时,训练模块400评估第一生成器200所生成的图像与原始图像之间的分布,计算第一判别器300的损失值ld,再根据第一生成器200的损失值和第一判别器300的损失值,计算第一gan神经网络的总损失值l
total
。然后根据第一gan神经网络的总损失值l
total
,采用优化器对第一gan神经网络进行训练优化。随着迭代次数的增加,被攻击的水印图像与原始水印图像之间的差异越来越近,由此训练得到的第一生成器200的水印攻击能力越强。
[0084]
实施例3
[0085]
本实施例提出一种数字水印嵌入方法,应用实施例1提出的基于gan的水印攻击方法。
[0086]
本实施例提出的数字水印嵌入方法中,包括以下步骤:
[0087]
将原始图像输入包括第二生成器和第二判别器的第二gan神经网络,其中,利用第二生成器为原始图像增加数字水印,得到带数字水印图像。
[0088]
然后对带数字水印图像应用实施例1提出的基于gan的水印攻击方法中经过优化训练的第一生成器进行去水印处理后,输入第二判别器中进行是否经过水印攻击的判别。
[0089]
根据第二生成器和第二判别器的输出,对第二gan神经网络进行训练,得到能够有效抵御强攻击力的水印攻击的第二生成器,将其应用于嵌入数字水印。
[0090]
本实施例提出的数字水印嵌入方法应用了实施例1提出的基于gan的水印攻击方法,利用能够降低视觉质量损失、高攻击力的水印攻击技术对图像水印技术进行训练,能够有效增强图像水印技术的鲁棒性。
[0091]
相同或相似的标号对应相同或相似的部件;
[0092]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
技术特征:1.一种基于gan的水印攻击方法,其特征在于,包括以下步骤:对水印图像进行加密后嵌入原始图像的特征点位置,得到带水印图像;将带水印图像输入包括第一生成器和第一判别器的第一gan神经网络中;所述带水印图像输入第一生成器中遭受水印攻击,生成与原始图像相同尺寸的去水印图像;将去水印图像输入第一判别器中,所述第一判别器输出图像是否经过水印攻击的判别标签;根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器和第一判别器的参数收敛,得到完成训练的第一生成器和第一判别器;所述第一生成器用于执行水印攻击。2.根据权利要求1所述的基于gan的水印攻击方法,其特征在于,对水印图像进行加密后嵌入原始图像的特征点位置的步骤包括:采用加密算法对水印图像进行加密;采用特征提取算法对原始图像进行特征点的提取;将经过加密的水印图像嵌入至原始图像的特征点位置,得到带水印图像。3.根据权利要求2所述的基于gan的水印攻击方法,其特征在于,采用加密算法对水印图像进行加密的步骤包括:采用arnold置乱算法对水印图像置乱处理,得到加密后的水印信息;其置乱变换的表达式如下所示:式中,x,y为水印图像的原始坐标,x
′
,y
′
为水印图像经置乱变换后的坐标;a,b为可选参数,n为置乱次数。4.根据权利要求1所述的基于gan的水印攻击方法,其特征在于,所述第一生成器由一个具有跳跃连接的编解码器体系结构组成。5.根据权利要求4所述的基于gan的水印攻击方法,其特征在于,所述第一生成器包括压缩模块和扩展模块,其中:所述压缩模块包括8个卷积神经层,所述卷积神经层中的卷积核大小为3
×
3,步幅大小为2;每个卷积神经层后连接有一个bn层和relu层;所述扩展模块包括8个上采样层,所述上采样层与所述卷积神经层跳跃连接。6.根据权利要求1~5任一项所述的基于gan的水印攻击方法,其特征在于,采用损失函数对第一gan神经网络进行优化的步骤包括:通过vgg16模型提取原始图像的特征图,以及提取去水印图像的特征图;采用mse损失函数和感知损失函数评估去水印图像与原始图像之间的差距,得到第一生成器的损失值l
g
;其表达式如下所示:式中,vgg
k
(
·
)表示从vgg16模型中的第k层中提取的特征,n为vgg16模型特征神经元的总数;i
a
表示去水印图像,i
o
表示原始图像;根据第一生成器的损失值,采用优化器对第一生成器进行训练优化。7.根据权利要求6所述的基于gan的水印攻击方法,其特征在于,还包括以下步骤:计算
第一判别器的损失值l
d
;其表达式如下:式中,p(i
o
)表示原始图像i
o
的分布,p(i
w
)表示带水印图像i
w
的分布;g(i
w
)表示由第一生成器生成的去水印图像;根据第一生成器的损失值和第一判别器的损失值,计算第一gan神经网络的总损失值l
total
;其表达式如下:l
total
=λ1l
g
+λ2l
d
式中,λ1、λ2为用于平衡单个目标的权重值;根据第一gan神经网络的总损失值l
total
,采用优化器对第一gan神经网络进行训练优化。8.一种基于gan的水印攻击系统,应用权利要求1~7任一项所述的基于gan的水印攻击方法,其特征在于,包括:图像处理模块,用于对输入的水印图像进行加密处理,以及将经过加密处理的水印图像嵌入原始图像的特征点位置,输出带水印图像;第一gan神经网络,包括第一生成器和第一判别器;其中,第一生成器用于对输入的带水印图像进行水印攻击,对图像进行去水印处理,输出去水印图像;第一判别器用于对第一生成器输出的去水印图像进行是否经过水印攻击的判别,输出是否经过水印攻击的判别标签;训练模块,用于根据带水印图像及去水印图像相应的特征图,采用损失函数对第一gan神经网络进行优化,直至达到预设的截止条件,或直至第一生成器和第一判别器的参数收敛。9.根据权利要求8所述的基于gan的水印攻击系统,其特征在于,第一生成器中包括压缩模块和扩展模块;所述所述压缩模块包括8个卷积神经层,所述卷积神经层中的卷积核大小为3
×
3,步幅大小为2;每个卷积神经层后连接有一个bn层和relu层;所述扩展模块包括8个上采样层,所述上采样层与所述卷积神经层跳跃连接。10.一种数字水印嵌入方法,其特征在于,包括以下步骤:将原始图像输入包括第二生成器和第二判别器的第二gan神经网络;利用第二生成器为原始图像增加数字水印,得到带数字水印图像;对带数字水印图像应用权利要求1~7任一项所述的基于gan的水印攻击方法进行去水印处理后,输入第二判别器中进行是否经过水印攻击的判别;对第二gan神经网络进行训练,得到用于嵌入数字水印的第二生成器。
技术总结本发明涉及数字水印技术领域,提出一种基于GAN的水印攻击方法及系统,以及一种数字水印嵌入方法。其中:对水印图像进行加密后嵌入原始图像的特征点位置,得到带水印图像;将带水印图像输入包括第一生成器和第一判别器的第一GAN神经网络中;带水印图像输入第一生成器中遭受水印攻击,生成与原始图像相同尺寸的去水印图像;将去水印图像输入第一判别器中,第一判别器输出图像是否经过水印攻击的判别标签;根据带水印图像及去水印图像相应的特征图,采用损失函数对第一GAN神经网络进行优化,直至达到预设的截止条件,或直至第一生成器和第一判别器的参数收敛,得到完成训练的第一生成器和第一判别器;第一生成器用于执行水印攻击。击。击。
技术研发人员:单纯 周斯译 崔豪政 李冕杰
受保护的技术使用者:广东技术师范大学
技术研发日:2022.06.13
技术公布日:2022/11/1