一种对抗网络的训练方法、装置、电子设备和存储介质与流程

文档序号:23617148发布日期:2021-01-12 10:27阅读:78来源:国知局
一种对抗网络的训练方法、装置、电子设备和存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种对抗网络的训练方法、装置、电子设备和存储介质。



背景技术:

目前,为了减少对有水印的图片的识别错误率,往往会涉及到采用模型来去除水印。比如,为了减少对有水印的广告图片、有水印的账单截图等,一般采用模型来去除水印,以让用户更好的使用或者查看广告图片、账单截图等。因此,在利用模型去除水印时,会涉及到模型的训练。在进行模型训练时,会采用人工标注好的训练集。

一般来说,人工标注好的训练集中的每张图片均是已标注好水印位置的图片。在标注时可能出现标注失误的情况,当利用这样的训练集训练模型后,可能导致训练好的模型出现无法精准去除水印的问题。



技术实现要素:

本申请实施例提供了一种对抗网络的训练方法、装置、电子设备和存储介质,实施本申请实施例,实现了精准去除水印。

本申请第一方面提供了一种对抗网络的训练方法,所述对抗网络包括待训练的生成器和待训练判别器,所述方法包括:

获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片,其中,所述n为大于0的整数;

将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印;

采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

本申请第二方面提供了一种对抗网络的训练装置,所述对抗网络包括待训练的生成器和待训练判别器,所述装置包括获取模块、输入模块和更新模块,其中,

所述获取模块,用于获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片,其中,所述n为大于0的整数;

所述输入模块,用于将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印;

所述更新模块,用于采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

本申请第三方面提供了一种对抗网络的训练的电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被生成由所述处理器执行,以执行一种对抗网络的训练方法任一项方法中的步骤的指令。

本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述存储计算机程序被所述处理器执行,以实现一种对抗网络的训练方法任一项所述的方法。

可以看出,上述技术方案中,通过利用只包含水印的图片和不包含水印的图片生成融合图片,并将融合图片作为训练集,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,采用融合图片作为待训练生成器的输入图片,实现了生成器的训练,避免了标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况,进而避免了水印去除不精准的问题。最后,利用根据只包含水印的图片、不包含水印的图片和待训练生成器输出的图片确定的损失函数交替更新待训练生成器和待训练判别器,实现了更好的进行对抗网络的训练,从而为后续利用训练好的对抗网络实现精准去除水印做准备。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

其中:

图1是本申请实施例提供的一种对抗网络的训练系统的示意图;

图2为本申请实施例提供的一种对抗网络的训练方法的流程示意图;

图3为本申请实施例提供的一种第一图片、第二图片和融合图片的示意图;

图4为本申请实施例提供的又一种对抗网络的训练方法的流程示意图;

图5为本申请提供的一种第一像素矩阵的示意图;

图6为本申请实施例提供的一种对抗网络的训练装置的示意图;

图7为本申请的实施例涉及的硬件运行环境的电子设备结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下分别进行详细说明。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,参见图1,图1是本申请实施例提供的一种对抗网络的训练系统的示意图,该对抗网络的训练系统100包括对抗网络的训练装置110。该对抗网络的训练装置110用于处理、存储训练集。该对抗网络的训练系统100可以包括集成式单体设备或者多设备,为方便描述,本申请将对抗网络的训练系统100统称为电子设备。显然该电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,ue),移动台(mobilestation,ms),终端设备(terminaldevice)等等。

另外,在利用模型去除水印时,会涉及到模型的训练。在进行模型训练时,会采用人工标注好的训练集。

一般来说,人工标注好的训练集中的每张图片均是已标注好水印位置的图片。在标注时可能出现标注失误的情况,当利用这样的训练集训练模型后,可能导致训练好的模型出现无法精准去除水印的问题。

基于此,本申请实施例提出一种对抗网络的训练方法以解决上述问题,下面对本申请实施例进行详细介绍。

参见图2,图2为本申请实施例提供的一种对抗网络的训练方法的流程示意图。该对抗网络的训练方法可以应用于电子设备,所述对抗网络包括待训练的生成器和待训练判别器,如图2所示,所述方法包括:

201、获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片。

其中,所述n为大于0的整数。

举例来说,参见图3,图3为本申请实施例提供的一种第一图片、第二图片和融合图片的示意图。具体的,如图3所示,可以看出,第一图片为只包含水印的图片,且该水印为“123”。第二图片为不包含水印的图片,结合图3,该第二图片包含一个不规则的形状。融合图片是根据第一图片和图二图片确定的,可以看出,该融合图片既包括水印,也包括一个不规则的形状。

202、将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印。

其中,所述n张生成图片为所述待训练的生成器输出的图片。可以理解的,所述n张生成图片和所述n张第二图片可以完全相同,也可以部分相同,还可以完全不同,在此不做限制。具体的,在本申请中,部分相同指所述n张生成图片中存在至少一张生成图片与所述n张第二图片中的至少一张第二图片相同。

其中,待训练的生成器采用u-net结构,其可以包括卷积层、最大池化层、反卷积层和mish函数。

其中,mish函数为:mish(x)=x·tanh(softplus(x))

其中,softplus(x)=log(1+ex),x为n张融合图片输入卷积层进行卷积后的输出数据。

203、采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

可以看出,上述技术方案中,通过利用只包含水印的图片和不包含水印的图片生成融合图片,并将融合图片作为训练集,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,采用融合图片作为待训练生成器的输入图片,实现了生成器的训练,避免了标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况,进而避免了水印去除不精准的问题。最后,利用根据只包含水印的图片、不包含水印的图片和待训练生成器输出的图片确定的损失函数交替更新待训练生成器和待训练判别器,实现了更好的进行对抗网络的训练,从而为后续利用训练好的对抗网络实现精准去除水印做准备。

在一种可能的实施方式中,融合图片a为所述n张融合图片中的任意一张图片,所述获取训练集,包括:

获取所述融合图片a对应的第一图片和所述融合图片a对应的第二图片,所述融合图片a对应的第一图片为所述n张第一图片中的一张图片,所述融合图片a对应的第二图片为所述n张第二图片中的一张图片;

采用第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a;

将所述融合图片a确定为所述训练集中的一张图片;

其中,所述第一公式是根据所述融合图片a对应的第一图片中像素的灰度值和所述融合图片a对应的第二图片中像素的灰度值确定的。

进一步的,所述第一公式为:

t=α·f+(1-α)·s

所述t为所述融合图片a中的像素对应的灰度值,所述α为透明度系数,所述α∈[0,1],所述f为所述融合图片a对应的第一图片中像素的灰度值,所述s为所述融合图片a对应的第二图片中像素的灰度值。

需要说明的,所述融合图片a中的任意一个像素b是根据像素c和像素d确定的,像素c为所述融合图片a对应的第一图片中的一个像素,像素d为所述融合图片a对应的第二图片中与所述像素c对应的一个像素。进一步的,所述像素b满足:α·c+(1-α)·d。其中,c为像素c对应的灰度值,d为像素d对应的灰度值。

可以看出,上述技术方案中,实现了融合图片的确定,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

参见图4,图4为本申请实施例提供的又一种对抗网络的训练方法的流程示意图。该对抗网络的训练方法可以应用于电子设备,其中,如图4所示,所述对抗网络包括待训练的生成器和待训练判别器,如图2所示,所述方法包括:

401、获取所述融合图片a对应的第一图片和所述融合图片a对应的第二图片,所述融合图片a对应的第一图片为所述n张第一图片中的一张图片,所述融合图片a对应的第二图片为所述n张第二图片中的一张图片。

其中,融合图片a为所述n张融合图片中的任意一张图片。

其中,所述融合图片a对应的第一图片为只包含水印的图片,所述融合图片a对应的第二图片为不包含水印的图片。

402、根据所述融合图片a对应的第一图片,确定第一像素矩阵,所述第一像素矩阵包括所述融合图片a对应的第一图片中每个像素对应的灰度值。

403、检测所述第一像素矩阵中是否存在灰度值为预设灰度值的像素。

其中,预设灰度值可以由管理员设置,也可以配置在电子设备的配置文件中。进一步的,预设灰度值可以为0,也可以为255,在此不做限制。

若是,则执行步骤404;若否,则执行步骤405。

404、确定所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,按照第一顺序,采用所述第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a,所述第一顺序是根据所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数确定的。

其中,所述第一像素矩阵包括m1列像素,m1列像素对应m1个数值,m1个数值中的每个数值为m1列像素中每列像素中灰度值为所述预设灰度值的像素的个数。进一步的,所述第一顺序为所述m1个数值从小到大的顺序。其中,所述m1为大于0的整数。

举例来说,参见图5,图5为本申请提供的一种第一像素矩阵的示意图。具体的,如图5所示,该第一像素矩阵为3*3的矩阵。若预设灰度值为0,那么,从左往右,第一列中每个像素对应的灰度值分别为9、88、19;第二列中每个像素对应的灰度值分别为5、0、21;第三列中每个像素对应的灰度值分别为0、3、0。进一步的,第一列不存在像素对应的灰度值为0的像素;第二列有1个像素对应的灰度值为0;第三列有2个像素对应的灰度值为0。

405、根据所述融合图片a对应的第二图片,确定第二像素矩阵,所述第二像素矩阵包括所述融合图片a对应的第二图片中每个像素对应的灰度值;若所述第二像素矩阵中存在灰度值为所述预设灰度值的像素,则确定所述第二像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,按照第二顺序,采用所述第一公式对融合图片a对应的第一图片和融合图片a对应的第二图片进行处理,得到融合图片a,所述第二顺序是根据所述第二像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数确定的。

其中,所述第二像素矩阵包括m2列像素,m2列像素对应m2个数值,m2个数值中的每个数值为m2列像素中每列像素中灰度值为所述预设灰度值的像素的个数。进一步的,所述第一顺序为所述m2个数值从大到小的顺序。其中,所述m2为大于0的整数,所述m1与所述m2相等。

406、将所述融合图片a确定为所述训练集中的一张图片。

407、将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印。

408、采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

可以看出,上述技术方案中,通过利用只包含水印的图片和不包含水印的图片生成融合图片,并将融合图片作为训练集,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,采用融合图片作为待训练生成器的输入图片,实现了生成器的训练,避免了标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况,进而避免了水印去除不精准的问题。最后,利用根据只包含水印的图片、不包含水印的图片和待训练生成器输出的图片确定的损失函数交替更新待训练生成器和待训练判别器,实现了更好的进行对抗网络的训练,从而为后续利用训练好的对抗网络实现精准去除水印做准备。

在一种可能的实施方式中,所述按照第一顺序,采用所述第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a,包括:

根据所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,确定所述第一像素矩阵中的至少一列像素p1,第一列像素为所述至少一列像素p1中的任意一列,所述第一列像素中每个像素的灰度值为所述预设灰度值的像素的个数小于阈值;

按照所述至少一列像素p1中的每列像素的灰度值为所述预设灰度值的像素的个数从小到大的顺序,采用所述第一公式对所述至少一列像素p1和至少一列像素q1进行处理,得到至少一列融合像素k1,所述至少一列像素q1为所述第二像素矩阵中与所述至少一列像素p1对应的像素;

在检测到所述至少一列像素p1中最后一列像素处理完成后,采用所述第一公式并行对所述第一像素矩阵中除所述至少一列像素p1之外的其他像素和所述第二像素矩阵中除所述至少一列像素q1之外的其他像素进行处理,得到至少一列融合像素k2;

根据所述至少一列融合像素k1和所述至少一列融合像素k2,确定所述融合图片a。

其中,阈值可以由管理员设置,也可以配置在电子设备的配置文件中。

可以看出,上述技术方案中,通过串行处理和并行处理,提高了确定融合图片的效率。通过确定融合图片,也避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,所述按照第二顺序,采用所述第一公式对融合图片a对应的第一图片和融合图片a对应的第二图片进行处理,得到融合图片a,包括:

按照所述第二顺序,确定所述第一像素矩阵与所述第二像素矩阵灰度值的差值;

根据所述第一像素矩阵与所述第二像素矩阵灰度值的差值,确定所述第一像素矩阵中的至少一列像素p2,第二列像素为所述至少一列像素p2中的任意一列,所述第二列像素与所述第二像素矩阵中的第三列像素对应,所述第二列像素与所述第三列像素灰度值的差值的总和大于预设差值;

采用所述第一公式并行对至少一列像素p2和至少一列像素q2进行处理,得到至少一列融合像素k2,所述至少一列像素q2为所述第二像素矩阵中与所述至少一列像素p2对应的像素;

在检测到所述至少一列像素p2中最后一列像素处理完成后,确定至少一列像素q3中的每列像素的灰度值为所述预设灰度值的像素的个数,所述至少一列像素q3为所述第二像素矩阵中除所述至少一列像素q2之外的其他像素;

根据所述至少一列像素q3中的每列像素的灰度值为所述预设灰度值的像素的个数从大到小的顺序,采用所述第一公式对所述第一像素矩阵中除所述至少一列像素p1之外的其他像素和所述至少一列像素q3进行处理,得到至少一列融合像素k3;

根据所述至少一列融合像素k2和所述至少一列融合像素k3,确定所述融合图片a。

其中,预设差值可以由管理员设置,也可以配置在电子设备的配置文件中。

其中,像素e为所述第二列像素中任意一个像素,像素f为所述第三列像素中与所述像素e对应的像素。电子设备可以确定所述像素e对应的灰度值与所述像素f对应的灰度值之间的差值。

可以看出,上述技术方案中,通过串行处理和并行处理,提高了确定融合图片的效率。通过确定融合图片,也避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,所述对抗网络还包括待训练判别器,所述采用损失函数交替更新所述待训练的生成器和所述待训练判别器之前,所述方法还包括:

将所述n张第二图片输入所述待训练判别器,得到所述n张第二图片中每张第二图片对应的概率;

根据所述n张第二图片中每张第二图片对应的概率,确定第一交叉熵函数值;

将所述n张融合图片输入所述待训练判别器,得到所述n张融合图片中每张融合图片对应的概率;

根据所述n张融合图片中每张融合图片对应的概率,确定所述n张第二图片与所述n张生成图片的第二交叉熵函数值;

根据所述n张第一图片、所述n张第二图片和所述n张生成图片,确定第三交叉熵函数值;

根据所述第一交叉熵函数值、所述第二交叉熵函数值和所述第三交叉熵函数值,确定所述损失函数。

可以看出,上述技术方案,实现了损失函数的确定,为后续交替更新待训练生成器和待训练判别器做准备。

进一步的,在所述采用损失函数交替更新所述待训练的生成器和所述待训练判别器之后,所述方法还包括:获取第三图片,所述第三图片为包括水印的图片,且所述第三图片还包括去水印的原始图片;将所述第三图片输入更新后的待训练的生成器,得到所述第三图片对应的生成图片;将所述第三图片对应的生成图片输入更新后的待训练的判别器,确定所述第三图片对应的生成图片是否为去水印的图片。

可以理解的,若所述更新后的待训练的判别器输出的标签为1,那么,所述第三图片对应的生成图片为去水印的图片;若所述更新后的待训练的判别器输出的标签为0,那么,所述第三图片对应的生成图片不是去水印的图片。

可以看出,上述技术方案中,实现了在更新待训练的生成器和待训练判别器之后,检测对抗网络的训练情况,为后续更好的检测对抗网络的收敛性做准备。

参见图6,图6为本申请实施例提供的一种对抗网络的训练装置的示意图。其中,如图6所示,本申请实施例提供的一种对抗网络的训练装置600包括获取模块601、输入模块602、更新模块603、处理模块604和确定模块605,

其中,所述获取模块601,用于获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片。

其中,所述n为大于0的整数。

所述输入模块602,用于将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印。

所述更新模块603,用于采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

可以看出,上述技术方案中,通过利用只包含水印的图片和不包含水印的图片生成融合图片,并将融合图片作为训练集,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,采用融合图片作为待训练生成器的输入图片,实现了生成器的训练,避免了标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况,进而避免了水印去除不精准的问题。最后,利用根据只包含水印的图片、不包含水印的图片和待训练生成器输出的图片确定的损失函数交替更新待训练生成器和待训练判别器,实现了更好的进行对抗网络的训练,从而为后续利用训练好的对抗网络实现精准去除水印做准备。

在一种可能的实施方式中,融合图片a为所述n张融合图片中的任意一张图片,在获取训练集时,

所述获取模块601,用于获取所述融合图片a对应的第一图片和所述融合图片a对应的第二图片,所述融合图片a对应的第一图片为所述n张第一图片中的一张图片,所述融合图片a对应的第二图片为所述n张第二图片中的一张图片;

所述处理模块604,用于采用第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a;

所述确定模块605,用于将所述融合图片a确定为所述训练集中的一张图片;

其中,所述第一公式是根据所述融合图片a对应的第一图片中像素的灰度值和所述融合图片a对应的第二图片中像素的灰度值确定的。

可以看出,上述技术方案中,实现了融合图片的确定,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,在采用第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a时,所述处理模块604,用于根据所述融合图片a对应的第一图片,确定第一像素矩阵,所述第一像素矩阵包括所述融合图片a对应的第一图片中每个像素对应的灰度值;检测所述第一像素矩阵中是否存在灰度值为预设灰度值的像素;若是,则确定所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,按照第一顺序,采用所述第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a,所述第一顺序是根据所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数确定的;若否,则根据所述融合图片a对应的第二图片,确定第二像素矩阵,所述第二像素矩阵包括所述融合图片a对应的第二图片中每个像素对应的灰度值;若所述第二像素矩阵中存在灰度值为所述预设灰度值的像素,则确定所述第二像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,按照第二顺序,采用所述第一公式对融合图片a对应的第一图片和融合图片a对应的第二图片进行处理,得到融合图片a,所述第二顺序是根据所述第二像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数确定的。

可以看出,上述技术方案中,实现了融合图片的确定,避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,在按照第一顺序,采用所述第一公式对所述融合图片a对应的第一图片和所述融合图片a对应的第二图片进行处理,得到所述融合图片a时,所述处理模块604,用于根据所述第一像素矩阵中每列像素的灰度值为所述预设灰度值的像素的个数,确定所述第一像素矩阵中的至少一列像素p1,第一列像素为所述至少一列像素p1中的任意一列,所述第一列像素中每个像素的灰度值为所述预设灰度值的像素的个数小于阈值;按照所述至少一列像素p1中的每列像素的灰度值为所述预设灰度值的像素的个数从小到大的顺序,采用所述第一公式对所述至少一列像素p1和至少一列像素q1进行处理,得到至少一列融合像素k1,所述至少一列像素q1为所述第二像素矩阵中与所述至少一列像素p1对应的像素;在检测到所述至少一列像素p1中最后一列像素处理完成后,采用所述第一公式并行对所述第一像素矩阵中除所述至少一列像素p1之外的其他像素和所述第二像素矩阵中除所述至少一列像素q1之外的其他像素进行处理,得到至少一列融合像素k2;根据所述至少一列融合像素k1和所述至少一列融合像素k2,确定所述融合图片a。

可以看出,上述技术方案中,通过串行处理和并行处理,提高了确定融合图片的效率。通过确定融合图片,也避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,在按照第二顺序,采用所述第一公式对融合图片a对应的第一图片和融合图片a对应的第二图片进行处理,得到融合图片a时,所述处理模块604,用于按照所述第二顺序,确定所述第一像素矩阵与所述第二像素矩阵灰度值的差值;根据所述第一像素矩阵与所述第二像素矩阵灰度值的差值,确定所述第一像素矩阵中的至少一列像素p2,第二列像素为所述至少一列像素p2中的任意一列,所述第二列像素与所述第二像素矩阵中的第三列像素对应,所述第二列像素与所述第三列像素灰度值的差值的总和大于预设差值;采用所述第一公式并行对至少一列像素p2和至少一列像素q2进行处理,得到至少一列融合像素k2,所述至少一列像素q2为所述第二像素矩阵中与所述至少一列像素p2对应的像素;在检测到所述至少一列像素p2中最后一列像素处理完成后,确定至少一列像素q3中的每列像素的灰度值为所述预设灰度值的像素的个数,所述至少一列像素q3为所述第二像素矩阵中除所述至少一列像素q2之外的其他像素;根据所述至少一列像素q3中的每列像素的灰度值为所述预设灰度值的像素的个数从大到小的顺序,采用所述第一公式对所述第一像素矩阵中除所述至少一列像素p1之外的其他像素和所述至少一列像素q3进行处理,得到至少一列融合像素k3;根据所述至少一列融合像素k2和所述至少一列融合像素k3,确定所述融合图片a。

可以看出,上述技术方案中,通过串行处理和并行处理,提高了确定融合图片的效率。通过确定融合图片,也避免了现有方案中人工标注水印位置所出现的标注失误的情况。同时,为后续采用融合图片作为待训练生成器的输入图片实现生成器的训练做准备,也为后续避免标注失误导致训练好的生成器生成的图片无法被训练好的判别器判别的情况做准备。

在一种可能的实施方式中,在采用损失函数交替更新所述待训练的生成器和所述待训练判别器之前,

所述输入模块602,还用于将所述n张第二图片输入所述待训练判别器,得到所述n张第二图片中每张第二图片对应的概率;

所述确定模块605,还用于根据所述n张第二图片中每张第二图片对应的概率,确定第一交叉熵函数值;

所述输入模块602,还用于将所述n张融合图片输入所述待训练判别器,得到所述n张融合图片中每张融合图片对应的概率;

所述确定模块605,还用于根据所述n张融合图片中每张融合图片对应的概率,确定所述n张第二图片与所述n张生成图片的第二交叉熵函数值;根据所述n张第一图片、所述n张第二图片和所述n张生成图片,确定第三交叉熵函数值;根据所述第一交叉熵函数值、所述第二交叉熵函数值和所述第三交叉熵函数值,确定所述损失函数。

可以看出,上述技术方案,实现了损失函数的确定,为后续交替更新待训练生成器和待训练判别器做准备。

参见图7,图7为本申请的实施例涉及的硬件运行环境的电子设备结构示意图。

本申请实施例提供了一种对抗网络的训练的电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,以执行包括任一项对抗网络的训练方法中的步骤的指令。其中,如图7所示,本申请的实施例涉及的硬件运行环境的电子设备可以包括:

处理器701,例如cpu。

存储器702,可选的,存储器可以为高速ram存储器,也可以是稳定的存储器,例如磁盘存储器。

通信接口703,用于实现处理器701和存储器702之间的连接通信。

本领域技术人员可以理解,图7中示出的电子设备的结构并不构成对其的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图7所示,存储器702中可以包括操作系统、网络通信模块以及一个或多个程序。操作系统是管理和控制服务器硬件和软件资源的程序,支持一个或多个程序的运行。网络通信模块用于实现存储器702内部各组件之间的通信,以及与电子设备内部其他硬件和软件之间通信。

在图7所示的电子设备中,处理器701用于执行存储器702中一个或多个程序,实现以下步骤:

获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片,其中,所述n为大于0的整数;

将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印;

采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

本申请涉及的电子设备的具体实施可参见上述对抗网络的训练方法的各实施例,在此不做赘述。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述存储计算机程序被所述处理器执行,以实现以下步骤:

获取训练集,所述训练集包括n张融合图片,所述n张融合图片中的每张融合图片是根据n张第一图片中的每张第一图片和n张第二图片中的每张第二图片确定的,所述n张第一图片中的每张第一图片为只包含水印的图片,所述n张第二图片中的每张第二图片为不包含水印的图片,其中,所述n为大于0的整数;

将所述n张融合图片输入所述待训练的生成器,以得到n张生成图片,所述n张生成图片中的每张生成图片均不包含水印;

采用损失函数交替更新所述待训练的生成器和所述待训练判别器,所述损失函数是根据所述n张第一图片、所述n张第二图片和所述n张生成图片确定的。

本申请涉及的计算机可读存储介质的具体实施可参见上述对抗网络的训练方法的各实施例,在此不做赘述。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应所述知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应所述知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1