保护图像处理网络的水印嵌入方法、水印提取方法及系统与流程

文档序号:31413375发布日期:2022-09-03 11:18阅读:45来源:国知局
保护图像处理网络的水印嵌入方法、水印提取方法及系统与流程

1.本发明涉及一种保护图像处理网络的水印嵌入方法、水印提取方法及系统,属于计算机科学与技术领域。


背景技术:

2.目前,对于图像处理网络的模型保护方法有jie zhang等人提出在原始模型的基础上训练一个水印的嵌入和提取网络,使得每张输入的图片在完成图像处理任务的同时嵌入水印。该文提出的水印框架要求图像处理模型的输出在递交用户之前先在网络嵌入一个不可见的水印。嵌入了水印的输出能够被水印提取网络提取出版权信息。在替代模型攻击场景下,攻击者只能获取自己的输入和嵌入了水印的输出,其训练的图像处理网络的输出中也会含有版权信息,从而使替代模型攻击失效。但是增加水印嵌入网络使原始模型的规模变大并且训练难度增加。


技术实现要素:

3.本发明提供了一种保护图像处理网络的模型水印方法及系统,解决了背景技术中披露的问题。
4.为了解决上述技术问题,本发明所采用的技术方案是:
5.保护图像处理网络的水印嵌入方法,包括:
6.采用预设的水印转换函数,将待嵌入水印串的各元素转换成水印数值;
7.根据待嵌入水印串的长度n,获取n层模型层;
8.采用预设的位置函数,获取n层模型层中对应输入图像的位置;
9.将n个水印数值分别嵌入模型输出图像上的n个位置。
10.水印转换函数为:
[0011][0012]
其中,wi为待嵌入水印串的第i个元素,i∈[1,n],wi′
为wi转换成的水印数值。
[0013]
位置函数为:
[0014][0015]
其中,ki为第i层模型层中对应输入图像的位置,xi为第i层模型层的输入图像,p为经过第i层模型层特征图的大小,m表示xi在第i层模型层具有的特征映射数量,表示xi在第k个特征中的每个元素,表示xi在第k个特征中的均值。
[0016]
保护图像处理网络的水印嵌入系统,包括:
[0017]
转换模块,采用预设的水印转换函数,将待嵌入水印串的各元素转换成数值;
[0018]
模型层获取模块,根据待嵌入水印串的长度n,获取n层模型层;
[0019]
位置获取模块,采用预设的位置函数,获取n层模型层中对应输入图像的位置;
[0020]
嵌入模块,将n个水印数值分别嵌入模型输出图像上的n个位置。
[0021]
水印转换函数为:
[0022][0023]
其中,wi为待嵌入水印串的第i个元素,i∈[1,n],wi′
为wi转换成的水印数值。
[0024]
位置函数为:
[0025][0026]
其中,ki为第i层模型层中对应输入图像的位置,xi为第i层模型层的输入图像,p为经过第i层模型层特征图的大小,m表示xi在第i层模型层具有的特征映射数量,表示xi在第k个特征中的每个元素,表示xi在第k个特征中的均值。
[0027]
保护图像处理网络的水印提取方法,包括:
[0028]
获取嵌入水印串的图像;其中,图像采用权利要求1~3任意一项所述方法嵌入水印串;
[0029]
根据嵌入水印串的图像、位置密钥和预设的提取函数,获取各水印数值;其中,位置密钥为n个位置构成的密钥;
[0030]
采用预设的水印逆转换函数,将水印数值转换成水印串的各元素。
[0031]
保护图像处理网络的水印提取系统,包括:
[0032]
图像获取模块,获取嵌入水印串的图像;其中,图像采用权利要求1~3任意一项所述方法嵌入水印串;
[0033]
提取模块,根据嵌入水印串的图像、位置密钥和预设的提取函数,获取各水印数值;其中,位置密钥为n个位置构成的密钥;
[0034]
逆转换模块,样预设的水印逆转换函数,将水印数值转换成水印串的各元素。
[0035]
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行保护图像处理网络的水印嵌入方法或水印提取方法。
[0036]
一种计算设备,包括一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行保护图像处理网络的水印嵌入方法或水印提取方法的指令。
[0037]
本发明所达到的有益效果:本发明获取模型层中对应输入图像的位置,将n个水印数值分别嵌入模型输出图像上的n个位置,仅将水印串嵌入到输出的图像中,并没改变网络模型的结构,没有增加网络模型的规模,进而不会增加网络训练的难度。
附图说明
[0038]
图1为本发明水印嵌入方法的流程图;
[0039]
图2为本发明水印提取方法的流程图。
具体实施方式
[0040]
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
[0041]
如图1所示,保护图像处理网络的水印嵌入方法,包括以下步骤:
[0042]
步骤1,采用预设的水印转换函数,将待嵌入水印串的各元素转换成水印数值;
[0043]
步骤2,根据待嵌入水印串的长度n,获取n层模型层;
[0044]
步骤3,采用预设的位置函数,获取n层模型层中对应输入图像的位置;
[0045]
步骤4,将n个水印数值分别嵌入模型输出图像上的n个位置。
[0046]
上述方法获取模型层中对应输入图像的位置,将n个水印数值分别嵌入模型输出图像上的n个位置,仅将水印串嵌入到输出的图像中,并没改变网络模型的结构,没有增加网络模型的规模,进而不会增加网络训练的难度。
[0047]
以图像分割网络作为神经网络模型,该分割网络是zhou z et al.发表于2018年的u_net++,其任务是输入一张细胞图片将图片中的细胞和背景进行分割。对于细胞分割的数据集使用的是原论文中的cell nuclei数据集,包含670张96
×
96的细胞图片,由于数据集中图片数量较少,对数据集进行数据扩充最终2000张96
×
96的图片参与触发样本生成网络的训练。
[0048]
将包含2000张6
×
96的图片的数据集输入模型中,由于水印的强度会影响图像处理网络的输出结果,因此要将水印转换到合适的强度进行嵌入,即采用预设的水印转换函数,将待嵌入水印串的各元素转换成水印数值。
[0049]
假设待嵌入水印串为w={wi|wi∈{0,1},i=1,...,n},将wi输入水印转换函数,可以获得wi′

[0050][0051]
其中,trans_w(wi)为水印转换函数,wi为待嵌入水印串的第i个元素,wi′
为wi转换成的水印数值。
[0052]
在传统的水印嵌入方法中,嵌入的位置是唯一确定的,这样就很容易被攻击者攻击,因此我们这里设计一个位置密钥k={k1,k2,...,kn},位置密钥的长度需要与水印串长度一致,为了获得该位置密钥,需要根据待嵌入水印串的长度n,获取n个的模型层,这n层模型层按顺序获取。
[0053]
采用预设的位置函数,获取n个模型层中对应输入图像表现形式的位置,这n个位置构成了位置密钥;其中,位置函数用公式可以表示为:
[0054]
[0055]
其中,ki为第i层模型层中对应输入图像的位置,xi为第i层模型层的输入图像,p为经过第i层模型层特征图的大小,m表示xi在第i层模型层具有的特征映射数量,表示xi在第k个特征中的每个元素,表示xi在第k个特征中的均值。
[0056]
将n个水印数值分别嵌入模型输出图像上的n个位置,即将wi′
嵌入相应的ki上,从而实现了将水印串嵌入模型输出图像,该模型输出的图像中就会包含水印串。
[0057]
基于上述相同的技术方案,本发明还公开了上述方法的软件系统,保护图像处理网络的水印嵌入系统,包括:
[0058]
转换模块,采用预设的水印转换函数,将待嵌入水印串的各元素转换成数值;其中,水印转换函数为:
[0059][0060]
其中,wi为待嵌入水印串的第i个元素,i∈[1,n],wi′
为wi转换成的水印数值。
[0061]
模型层获取模块,根据待嵌入水印串的长度n,获取n层模型层。
[0062]
位置获取模块,采用预设的位置函数,获取n层模型层中对应输入图像的位置;其中,位置函数为:
[0063][0064]
其中,ki为第i层模型层中对应输入图像的位置,xi为第i层模型层的输入图像,p为经过第i层模型层特征图的大小,m表示xi在第i层模型层具有的特征映射数量,表示xi在第k个特征中的每个元素,表示xi在第k个特征中的均值。
[0065]
嵌入模块,将n个水印数值分别嵌入模型输出图像上的n个位置。
[0066]
水印的提取是一个逆向的过程,针对上述方法获得的嵌入水印串的图像,具体保护图像处理网络的水印提取方法可以包括:
[0067]
1)获取嵌入水印串的图像x

;其中,图像采用采用保护图像处理网络的水印嵌入方法嵌入水印串。
[0068]
2)根据嵌入水印串的图像、位置密钥和预设的提取函数extract_w(x

,k),获取各水印数值;其中,位置密钥为n个位置构成的密钥。
[0069]
3)采用预设的水印逆转换函数,将水印数值转换成水印串的各元素;其中,水印逆转换函数为:
[0070]
基于上述相同的技术方案,本发明还公开了上述方法的软件系统,保护图像处理网络的水印提取系统,包括:
[0071]
图像获取模块,获取嵌入水印串的图像;其中,图像采用权利要求1~3任意一项所
述方法嵌入水印串。
[0072]
提取模块,根据嵌入水印串的图像、位置密钥和预设的提取函数,获取各水印数值;其中,位置密钥为n个位置构成的密钥。
[0073]
逆转换模块,采用预设的水印逆转换函数,将水印数值转换成水印串的各元素。
[0074]
基于上述相同的技术方案,本发明还公开了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行保护图像处理网络的水印嵌入方法或水印提取方法。
[0075]
基于上述相同的技术方案,本发明还公开了一种计算设备,包括一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行保护图像处理网络的水印嵌入方法或水印提取方法的指令。
[0076]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0077]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0078]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0079]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0080]
以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1