神经网络训练方法、图像生成方法及计算机存储介质与流程

文档序号:18451086发布日期:2019-08-17 01:16阅读:125来源:国知局
神经网络训练方法、图像生成方法及计算机存储介质与流程

本发明实施例涉及计算机技术领域,尤其涉及一种神经网络训练方法、一种图像生成方法及一种计算机存储介质。



背景技术:

随着神经网络和机器学习技术的发展,越来越多的应用借助于神经网络实现各种相应的功能。在图像处理领域,使用神经网络实现各种图像处理也正被广泛应用,例如,通过神经网络对原始图像进行风格转换,例如,将原始图像转换成素描图像,也即生成不同风格的对应图像,等等。

但目前,在使用神经网络根据原始图像生成不同风格的图像时,每一个独立的神经网络仅对应一种特定的风格,只能进行一种风格的图像转换。如果想要将图像转换成不同的风格,就需要不同的神经网络,风格数量完全等同于神经网络的模型数量。

可见,目前使用神经网络进行不同风格的图像生成时,单个神经网络的风格转换功能较为单一,针对性过强、泛化能力不足、适用范围窄。



技术实现要素:

有鉴于此,本发明实施例提供了一种神经网络训练方案及一种图像生成方案,以解决现有使用神经网络进行图像风格转换时转换功能单一的问题。

根据本发明实施例的第一方面,提供了一种神经网络训练方法,包括:获取待训练的样本图像对及所述样本图像对的风格标签,其中,所述样本图像对包括原始样本图像和对所述原始样本图像进行风格转换处理后的风格图像;将所述原始样本图像对和所述风格标签输入生成式对抗网络gan;通过所述gan的生成器根据所述风格标签对所述原始样本图像进行风格转换处理,生成与所述原始样本图像对应的第一生成图像;将所述第一生成图像、所述风格图像和所述风格标签输入所述gan的判别器进行判别,获得判别结果;同时,将所述第一生成图像和所述风格标签输入所述gan的反向生成器,通过所述反向生成器对所述第一生成图像进行所述风格转换处理的逆处理,生成第二生成图像;获得所述第二生成图像与所述原始样本图像的差异;根据所述判别结果和所述差异,调整所述gan的训练参数。

根据本发明实施例的第二方面,还提供了一种图像生成方法,包括:获取原始图像和用户输入的风格标签;将所述原始图像和所述风格标签输入生成式对抗网络gan,其中,所述gan为通过如第一方面所述方法训练获得的gan;通过所述gan生成与所述风格标签相匹配的风格图像。

根据本发明实施例的第三方面,还提供了一种计算机存储介质,所述计算机存储介质中存储有:用于获取待训练的样本图像对及所述样本图像对的风格标签,其中,所述样本图像对包括原始样本图像和对所述原始样本图像进行风格转换处理后的风格图像的指令;用于将所述原始样本图像对和所述风格标签输入生成式对抗网络gan的指令;用于通过所述gan的生成器根据所述风格标签对所述原始样本图像进行风格转换处理,生成与所述原始样本图像对应的第一生成图像的指令;用于将所述第一生成图像、所述风格图像和所述风格标签输入所述gan的判别器进行判别,获得判别结果的指令;用于同时将所述第一生成图像和所述风格标签输入所述gan的反向生成器,通过所述反向生成器对所述第一生成图像进行所述风格转换处理的逆处理,生成第二生成图像的指令;用于获得所述第二生成图像与所述原始样本图像的差异的指令;用于根据所述判别结果和所述差异,调整所述gan的训练参数的指令。

根据本发明实施例的第四方面,还提供了一种计算机存储介质,所述计算机存储介质中存储有:用于获取原始图像和用户输入的风格标签的指令;用于将所述原始图像和所述风格标签输入生成式对抗网络gan的指令,其中,所述gan为通过如第一方面所述方法训练获得的gan;用于通过所述gan生成与所述风格标签相匹配的风格图像的指令。

根据本发明实施例提供的方案,通过包含原始样本图像和原始风格图像的样本图像对及其对应的风格标签,对gan网络进行训练。在训练过程中,先通过gan的生成器生成原始样本图像的风格图像即第一生成图像;然后,该第一生成图像一方面与原始风格图像及风格标签一起送入判别器进行判别,以训练判别器将第一生成图像判别为真,该第一生成图像另一方面与风格标签一起送入反向生成器,以对第一生成图像进行风格转换逆处理,以生成与原始样本图像近似的第二生成图像;进而,根据判别器的判别结果,以及,第二生成图像与原始样本图像的差异,调整gan的训练参数,对gan进行训练,以便最终使gan的生成器生成的风格图像的特征与原始图像的特征吻合,达到最好的图像风格转换效果。用于训练的样本图像对和风格标签各种各样,通过对gan的训练,可以使得gan可以灵活地根据用户输入的风格标签对图像进行不同的风格变换,实现了使用单个神经网络实现不同风格变换,避免了现有单个神经网络的风格转换功能较为单一,针对性过强、泛化能力不足、适用范围窄的问题。

附图说明

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

图1是根据本发明实施例的一种gan网络结构的结构框图;

图2是根据本发明实施例一的一种神经网络训练方法的步骤流程图;

图3是根据本发明实施例二的一种神经网络训练的步骤流程图;

图4是根据本发明实施例三的一种图像生成方法的步骤流程图;

图5是根据本发明实施例四的一种图像生成方法的步骤流程图;

图6是图5所示实施例中的一种生成器结构或反向生成器结构的示意图。

具体实施方式

当然,实施本发明实施例的任一技术方案必不一定需要同时达到以上的所有优点。

为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。

为便于理解本发明实施例提供的方案,以下首先对本发明实施例中采用的gan(generativeadversarialnetwork,生成式对抗网络)的结构进行简要说明。

如图1所示,本发明实施例中的gan网络包括生成器、反向生成器和判别器。其中,生成器和判别器可采用常规gan网络中的生成器和判别器结构。但与常规gan网络不同的是,本发明实施例中的gan还包括反向生成器,该反向生成器的结构采用与生成器相同的结构,主要用于对风格图像进行逆转换处理,生成与原始图像类似的图像。由图1可见,本发明实施例中的gan中,生成器的输出一路交给判别器进行判别,另一路交给反向生成器进行风格图像的反向生成,这两路的执行可以不分先后顺序,也可以并行执行。gan最终根据两路的输出结果计算整个gan的训练偏差即损失值,进而根据该偏差对gan的训练参数(如,卷积层的卷积核参数及全连接层的矩阵参数等)进行调整。上述过程重复迭代执行,直至满足训练终止条件,如达到训练终止次数或者损失值在设定阈值范围内等。

训练完成的gan在后续应用中,主要通过生成器部分对原始图像进行风格转换,以生成满足要求的风格图像,如将原始人脸图像转换为人脸素描图像,等等。

以下,基于图1所示的gan结构,通过多个实施例对本发明实施例提供的神经网络训练方案及图像生成方案进行说明。

实施例一

参照图2,示出了根据本发明实施例一的一种神经网络训练方法的步骤流程图。

本实施例以使用一对样本图像对进行gan的一次训练为例,但本领域技术人员应当明了,首先,使用一对样本图像对对gan的训练是一个迭代循环过程,迭代循环中的每一次训练都可参照本发明实施例实现;另外,在实际训练中,通常使用海量样本图像对进行gan训练,其中的每对样本图像对的训练均可参照本发明实施例实现。

本实施例的神经网络训练方法包括以下步骤:

步骤s102:获取待训练的样本图像对及样本图像对的风格标签。

其中,样本图像对包括原始样本图像和对原始样本图像进行风格转换处理后的风格图像。例如,原始人脸图像和进行了素描风格转换后的人脸素描图像。

本发明实施例中,风格标签用于指示图像的风格类型,如素描类型、甜蜜类型、怀旧类型、半甜蜜半怀旧类型,等等。具体的风格类型可以由本领域技术人员根据实际需要适当设置,本发明实施例对此不作限制。风格标签的具体实现也可以由本领域技术人员采用任意适当的方式实现,如,通过字符标识、数字标识等。

本发明实施例中,一个样本图像对具有一个风格标签,同时对原始样本图像和风格图像进行风格类型标示。

步骤s104:将原始样本图像对和风格标签输入gan。

即,将原始样本图像和风格图像,以及它们对应的风格标签同时输入如图1所示的gan。

步骤s106:通过gan的生成器根据风格标签对原始样本图像进行风格转换处理,生成与原始样本图像对应的第一生成图像。

生成器用于将原始图像转换为风格图像,如将原始人脸图像转换为人脸素描图像。需要说明的是,本步骤中,生成器的输入为原始样本图像和风格标签,生成某种风格的第一生成图像。该第一生成图像一方面用于训练判别器,以使判别器尽可能将第一生成图像判别为“真”;另一方面,该第一生成图像用于训练反向生成器,以使反向生成的第二生成图像尽可能与原始图像接近。

步骤s108:将第一生成图像、风格图像和风格标签输入gan的判别器进行判别,获得判别结果。

判别器用于识别输入的图像是原始图像还是生成器生成的图像,判别结果为“真”或“假”,若为原始图像,则判别结果为“真”,否则为“假”。本发明实施例中,将第一生成图像和风格图像同时输入判别器,若第一生成图像和原始的风格图像越相似,则判别器越可能将第一生成图像判别为“真”,后续可以以该判别结果为依据,对生成器的训练参数进行调整,以使生成器生成的风格图像与原始的风格图像更为相似。

步骤s110:同时,将第一生成图像和风格标签输入gan的反向生成器,通过反向生成器对第一生成图像进行风格转换处理的逆处理,生成第二生成图像。

如前所述,反向生成器主要用于对风格图像进行逆变换,以尽可能恢复为原始图像。

虽然生成器经过训练,有可能生成使得判别器的判别结果为“真”的第一生成图像,但有可能该判别结果为“真”的第一生成图像无法有效反映原始图像的真实特征,例如,对于两个人的不同人脸图像,生成器在风格转换处理中难免损失部分特征,导致可能生成两张相同的人脸风格图像。为此,本发明实施例中的gan增加了反向生成器,通过反向生成器逆转换处理后获得的第二生成图像如果与原始图像达到一定的相似度,则说明生成器生成的风格图像较好,否则需要调整生成器的训练参数继续进行训练。

需要说明的是,本发明实施例中,以先执行步骤s108,后执行步骤s110为例,但本领域技术人员应当明了,在实际应用中,也可以先执行步骤s110,后执行步骤s108,或者同时执行。也即,步骤s108和步骤s110的执行不分先后顺序,也可以并行执行。

步骤s112:获得第二生成图像与原始样本图像的差异。

第二生成图像与原始样本图像的差异越小,说明生成器生成的第一生成图像的效果越好。其中,所述差异可以通过gan的损失函数的损失值确定获得。

步骤s114:根据所述判别结果和所述差异,调整gan的训练参数。

结合判别器的判别结果,以及,第二生成图像与原始样本图像的差异,可以有效表征生成器的生成效果,以确定对整个gan网络的训练参数的调整。

至此,实现了gan的一次训练,若gan的训练终止条件尚未满足,则在调整完训练参数后,可以返回步骤s106继续执行,直至满足训练终止条件。

根据本实施例,通过包含原始样本图像和原始风格图像的样本图像对及其对应的风格标签,对gan网络进行训练。在训练过程中,先通过gan的生成器生成原始样本图像的风格图像即第一生成图像;然后,该第一生成图像一方面与原始风格图像及风格标签一起送入判别器进行判别,以训练判别器将第一生成图像判别为真,该第一生成图像另一方面与风格标签一起送入反向生成器,以对第一生成图像进行风格转换逆处理,以生成与原始样本图像近似的第二生成图像;进而,根据判别器的判别结果,以及,第二生成图像与原始样本图像的差异,调整gan的训练参数,对gan进行训练,以便最终使gan的生成器生成的风格图像的特征与原始图像的特征吻合,达到最好的图像风格转换效果。用于训练的样本图像对和风格标签各种各样,通过对gan的训练,可以使得gan可以灵活地根据用户输入的风格标签对图像进行不同的风格变换,实现了使用单个神经网络实现不同风格变换,避免了现有单个神经网络的风格转换功能较为单一,针对性过强、泛化能力不足、适用范围窄的问题。

本实施例的神经网络训练方法可以由任意适当的具有数据处理功能的设备实现,包括:各种终端设备及服务器等。

实施例二

参照图3,示出了根据本发明实施例二的一种神经网络训练的步骤流程图。

本实施例仍以使用一对样本图像对进行gan的一次训练为例,但本领域技术人员应当明了,首先,使用一对样本图像对对gan的训练是一个迭代循环过程,迭代循环中的每一次训练都可参照本发明实施例实现;另外,在实际训练中,通常使用海量样本图像对进行gan训练,其中的每对样本图像对的训练均可参照本发明实施例实现。

本实施例的神经网络训练方法包括以下步骤:

步骤s202:获取设定的多种图像风格标签,对多种图像风格标签进行离散型特征编码,获得每种风格标签的风格标签向量。

其中,风格标签用于指示图像的风格类型,所述多种图像风格标签由本领域技术人员根据实际需求适当设置,本发明实施例对此不作限制,如,素描类型、甜蜜类型、怀旧类型、半甜蜜半怀旧类型,等等。

因多种图像风格标签不同,且相互之间并无关联关系,可以被看作为离散型特征,可以使用用于离散型特征的编码对多种图像风格标签进行编码。离散型特征编码分为两种,针对特征具有大小意义的编码如映射码,和针对特征不具有大小意义的编码如独热码。本发明实施例中,因图像风格标签之间不具有大小意义,因此,离散型特征编码采用独热码。通过对多种图像风格标签进行离散型特征编码,可以获得每种风格标签的风格标签向量。例如,设定有素描类型、甜蜜类型、怀旧类型三种图像风格标签,经离散型特征编码后,{1,0,0}表示素描类型,{0,1,0}表示甜蜜类型,{0,0,1}表示怀旧类型,等等。

通过对多种图像风格标签进行离散型特征编码,一方面,可以有效对图像风格标签进行区分;另一方面,可以应用于后续的gan处理,以简单方式实现图像的风格转换。

步骤s204:获取待训练的样本图像对及样本图像对的风格标签。

其中,所述样本图像对包括原始样本图像和对原始样本图像进行风格转换处理后的风格图像。其中,风格图像可以是人工对原始样本图像处理后的图像,也可以是机器对原始样本图像处理后的图像。原始样本图像与风格图像的内容相同,但风格不同。

每个样本图像对都对应于一个风格标签,该风格标签根据风格图像的风格类型确定,用于统一指示样本图像对即风格图像和原始样本图像的风格类型。

步骤s206:将原始样本图像对和对应的风格标签输入gan。

在风格标签对应有风格标签向量时,输入gan的风格标签为该风格标签向量。也即,将原始样本图像对和对应的风格标签向量输入gan。但不限于此,若风格标签采用其它形式表示时,如指示符形式等,则可以将其它表示形式的风格标签输入gan。

本实施例中,gan仍采用如图1所示的结构,即,gan包括生成器、反向生成器和判别器;反向生成器和判别器均与生成器相连,反向生成器和判别器为并列的两个分支。其中,成器包括输入层、图像编码层、图像解码层和输出层;反向生成器也包括输入层、图像编码层、图像解码层和输出层。

步骤s208:通过gan的生成器根据风格标签对原始样本图像进行风格转换处理,生成与原始样本图像对应的第一生成图像。

生成器用于将原始样本图像转换为风格标签指示的风格类型的图像,即第一生成图像。

在使用风格标签对应的风格标签向量的情况下,一种可行方式中,可以将原始样本图像和风格标签对应的风格标签向量通过生成器的输入层输入生成器;对风格标签向量进行上采样,并将上采样后的风格标签向量变换为风格标签图像;在生成器的图像编码层进行特征提取时,将风格标签图像缩放至与当前待处理图像同样大小,将缩放后的风格标签图像与待处理图像进行合并后,通过生成器的图像编码层进行特征提取,获取特征图;通过生成器的图像解码层对特征图进行上采样,将上采样后获得的图像作为第一生成图像并通过生成器的输出层输出。

上述过程中,不论是对风格标签向量的上采样,还是对特征图的上采样,都可以由本领域技术人员根据实际需要采用任意适当的上采样方式实现,本发明实施例对此不作限制。

输入gan的图像本质上表示为图像数据矩阵,基于此,可以根据输入gan的图像对应的矩阵中的元素数量,先将风格标签向量上采样为元素数量与图像矩阵相同的向量;进而,可以通过矩阵处理,将上采样后的风格标签向量转换为与图像矩阵相同行数和列数的矩阵(例如,将上采样后的风格标签向量按序重排成与图像矩阵相同行数和列数的矩阵,或者,将上采样后的风格标签向量与一元素值全部为1的矩阵相乘后获得与图像矩阵相同行数和列数的风格标签矩阵,等等),以该矩阵表示风格标签图像。由此,进一步简化对原始样本图像的风格转换处理。

生成器的图像编码层和图像解码层都由卷积层、池化层和激活函数层堆积而成,唯一的区别在于图像编码层做的是下采样,将原始样本图像压缩到低维空间,而图像解码层做的是上采样,将压缩后的特征图投影回原始空间,以在减少计算量的前提下提取图像的核心内容。

图像编码层的卷积层和图像解码层的卷积层均包括多个(两个及两个以上)卷积层,每个卷积层对相应图像进行特征提取后,均会生成一个特征图,前一卷积层输出的特征图为后一卷积层的输入。例如,输入层输入原始样本图像,第一个卷积层对原始样本图像进行特征提取后生成第一个特征图,第二个卷积层对第一个特征图再次进行特征提取后生成第二个特征图,第三个卷积层对第二个特征图再次进行特征提取后生成第三个特征图。以此类推,图像编码层中的最后一个卷积层生成的特征图即为所述通过生成器的图像编码层进行特征提取获取的特征图,该特征图为图像解码层的输入。

需要说明的是,针对每一个卷积层在对待进行特征提取的图像进行处理前,会与相应的风格标签图像进行合并。为与待进行特征提取的图像很好地进行合并,需要将风格标签图像进行缩放,将其缩放为与待进行特征提取的图像同样大小,以顺利进行合并。

而生成器的图像解码层则可以直接对图像编码层输出的特征图(该特征图既包含原始样本图像的特征信息,也包含风格类型信息)进行处理,生成第一生成图像并输出。图像解码层对图像的解码处理可以无需再结合风格标签图像。

步骤s210:将第一生成图像、风格图像和风格标签输入gan的判别器进行判别,获得判别结果。

本实施例中,判别器和生成器中的图像编码层结构类似,都由下采样的卷积层、池化层和激活函数层堆积而成,风格标签向量转化为图像的格式在高阶卷积层与待进行特征提取的图像进行融合。判别器对进行了整合后的图像进行判别训练,获得相应的判别结果。

步骤s212:同时,将第一生成图像和风格标签输入gan的反向生成器,通过反向生成器对第一生成图像进行风格转换处理的逆处理,生成第二生成图像。

反向生成器用于将生成器生成的、风格标签指示的风格类型的图像即第一生成图像通过风格转换处理的逆处理进行还原,生成第二生成图像。

在使用风格标签对应的风格标签向量的情况下,一种可行方式中,可以将第一生成图像和风格标签对应的风格标签向量通过反向生成器的输入层输入反向生成器;对风格标签向量进行上采样,并将上采样后的风格标签向量变换为风格标签图像;在图像编码层进行特征提取时,将风格标签图像缩放至与当前待处理图像同样大小,将缩放后的风格标签图像与待处理图像进行合并后,通过反向生成器的图像编码层进行特征提取,获取特征图;通过反向生成器的图像解码层对所述特征图进行上采样,将上采样后获得的图像作为第二生成图像并通过输出层输出。该处理过程与前述生成器的处理过程类似,相关部分可参照前述生成器的处理描述。

需要说明的是,在实际应用中,上述步骤s210和步骤s212的执行可以不分先后顺序,也可以并行执行。

步骤s214:获得第二生成图像与原始样本图像的差异。

通过该差异可以衡量生成的第二生成图像与原始样本图像的偏差程度,以便进行gan训练调整。

步骤s216:根据判别器的判别结果和所述差异,调整gan的训练参数。

至此,实现了gan的一次训练,若gan的训练终止条件尚未满足,则在调整完训练参数后,可以返回步骤s208继续执行,直至满足训练终止条件。

基于上述描述,一种gan的训练示例如下:

将分别获取的原始样本图像对(包括输入样本图像iinput及其对应的风格图像)和对应的风格标签label向量作为双重输入被传送至gan的生成器g。在生成器g中,输入样本图像iinput会被传入一个encoder-decoder架构的生成器,其中encoder(图像编码层)和decoder(图像解码层)都由卷积层、池化层和激活函数层堆积而成,唯一的区别在于encoder做的是下采样,将输入样本图像iinput压缩到低维空间,而decoder做的是上采样,将压缩后的特征图投影回原始空间,以在减少计算量的前提下提取图像的核心内容。另一方面,输入样本图像对的风格标签label向量会首先经过两次全连接层运算进行上采样,再通过reshape变换为图像格式,然后和encoder中的中间卷积层的特征图进行合并。

经encoder对合并后的特征图进行特征提取生成最终的encoder特征图后,该最终的encoder特征图经过decoder的前向运算得到的图像ioutput即为最后的结果图像。结果图像拥有与输入样本图像iinput相同的尺寸和内容,但在此基础上进行了针对给定风格标签的风格迁移,包括但不限于对真实场景或人像进行卡通化、素描化、艺术化、抽象化以及重新上色。

判别器d和生成器g需要一起通过gan训练得到,判别器d的输入图像可以是经过生成器g生成的针对某个风格标签labeli的“假”图像ioutput=g(iinput,labeli),也可以是该label下数据集里的真实图像,判别器d和生成器g里的encoder结构类似,都由下采样的卷积层、池化层和激活函数层堆积而成,label转化为图像的格式在高阶卷积层进行融合,在最后加了两层全连接层,并输出一个取值范围在[0,1]的实数预测值d(g(iinput,labeli),labeli)或者d(ireal,labeli),该值越大,则代表判别器认为图像为真实图像的概率越高,该值越小,则代表判别器认为图像为生成图像的概率越低。

除此之外,还设置了一个反向生成器f,f具有和生成器g相同的结构,不同在于其输入为各种风格下的图像,输出为原始图像。f的作用在于使生成图像ioutput能对原始图像iinput进行重建,避免了所有原始图像都会映射到类似的生成图像这一问题。

基于gan的对抗学习原理,定义gan训练过程中的损失函数如下:

l(g,d,f)=lgan+ωlrecon

其中:

上述公式中,l(g,d,f)表示gan的总的损失,lgan为gan本身的判别损失,lrecon为gan经过生成器g和反向生成器f之后的重建损失,ω为二者的权重加权。n表示原始样本图像对的数量,e表示数学期望值,d(ireal,labeli)表示判别器d对输入的风格标签为labeli的真实图像的判别结果,g(iinput,labeli)表示生成器g根据风格标签labeli生成的图像ioutput,d(g(iinput,labeli),labeli)表示判别器d对输入的风格标签为labeli的生成图像的判别结果,f(g(iinput,labeli),labeli)表示反向生成器f根据输入的风格标签labeli和生成器g生成的图像ioutput,做反向生成的图像。

对gan进行训练的优化目标应使真实图像和生成的图像在判别器处都可获得较高预测值,同时生成的图像可以通过反向生成器f获得与原始图像较少的重建误差,是生成器与判别器之间的一次博弈过程。因此,整个优化目标可写作极大极小值函数:

即,生成器g和反向生成器f求极小损失值,判别器d求极大损失值。

与传统的gan训练不仅针对每一种风格变换模式都需要训练一个新的gan网络模型,在多风格转换的场景下调用方法也较为繁琐,每次都需要重新载入新的模型对原图像进行处理相比,本发明实施例在训练gan时,在同一gan网络模型中通过引入不同的风格标签及相应的样本图像对,可以同时训练gan的多种图像风格的转换,从而免去了每一种风格都需要训练一个单独的gan网络模型所带来的算法复杂度和空间冗余。在使用时,用户在选择不同的图像风格时只需要在gan网络模型中输入所需的风格标签即可,而不需要重新调用新的gan网络模型,避免了操作上的繁琐与处理时间上的重复。

本实施例的神经网络训练方法可以由任意适当的具有数据处理功能的设备实现,包括:各种终端设备及服务器等。

实施例三

参照图4,示出了根据本发明实施例三的一种图像生成方法的步骤流程图。

本实施例的图像生成方法使用通过实施例一或实施例二所示的训练方法训练获得的gan生成图像。

本实施例的图像生成方法包括以下步骤:

步骤s302:获取原始图像和用户输入的风格标签。

其中,原始图像可以采用任意适当方式获取,如通过摄像头拍摄获取或者通过选择或下载已有图像获取等等,本发明实施例对获取原始图像的方式不作限制。

图像处理应用通过界面向用户提供相应的风格标签,如通过选项、图标、滑块等方式,用户可以根据自己的需要对这些风格标签进行操作,输入相应的风格标签。

步骤s304:将原始图像和风格标签输入gan。

如前所述,本实施例中的gan为通过实施例一或实施例二中所示的方法训练获得的gan,其具体结构及相应操作均可参照前述相应实施例中的描述,在此不再赘述。

步骤s306:通过gan生成与风格标签相匹配的风格图像。

训练完成的gan可以根据用户输入的风格标签,对原始图像进行与风格标签指示的风格类型相符的图像风格转换,并生成最终的风格图像。

本领域技术人员应当明了的是,在生成图像时,通过gan中的生成器即可生成相应风格的图像。

根据本实施例,通过一个gan即可实现图像的多种不同风格转换,在有效满足用户需求的同时,也提高了图像风格转换效率和速度,降低了gan实现成本,避免了现有单个神经网络的风格转换功能较为单一,针对性过强、泛化能力不足、适用范围窄的问题。

本实施例的神经网络训练方法可以由任意适当的具有数据处理功能的设备实现,包括:各种终端设备及服务器等。

实施例四

参照图5,示出了根据本发明实施例四的一种图像生成方法的步骤流程图。

本实施例的图像生成方法使用通过实施例一或实施例二所示的训练方法训练获得的gan生成图像。

本实施例的图像生成方法包括以下步骤:

步骤s402:获取原始图像和用户输入的风格标签。

其中,原始图像可以采用任意适当方式获取,可选地,在获取原始图像后,还可以将原始图像的尺寸处理为指定大小,以便于gan处理。其中,指定大小可以由本领域技术人员根据实际需求适当设置。例如,在上课期间,教师可随时选取课件内容、教室场景、自身人像或者学生人像进行原始图像获取,获取的图像尺寸没有具体限制,但可以将其统一缩放为指定大小,如w×h×c的图像iinput,其中,w表示图像宽度,h表示图像高度,c表示图像通道数,可选地,可令c=3代表rgb三通道图像。

风格标签代表了用想要生成的图像的风格类型,在获取风格标签时,一种可行方式中,可以通过风格滑块向用户提供风格标签的选择,此种情况下,可以根据用户对操作界面上提供的风格滑块的滑动操作的操作结果,获取用户输入的风格标签。通过风格滑块可以更加灵活地选择图像的风格类型,如,半甜蜜半怀旧风格,弱甜蜜强怀旧风格,强甜蜜弱怀旧风格,等等。

步骤s404:从预设的与多种不同风格标签对应的多种不同风格标签向量中,确定与用户输入的风格标签对应的风格标签向量。

本实施例中,使用风格标签采用风格标签向量的形式表示。在一种可行方式中,预设的与多种不同风格标签对应的多种不同风格标签向量通过以下方式获得:获取设定的多种图像风格标签,对多种图像风格标签进行离散性特征编码,获得每种风格标签的风格标签向量。可选地,离散性特征编码为独热码。通过风格标签向量,实现了将图像风格类型序列化,不同的图像风格类型以不同的标签进行标识,并和原始图像一起作为gan的输入,能够使生成的图像风格类型更为可控。

以独热码(one-hotencoding)对风格进行编码为例,针对n(n为大于0的整数)种预设的图像风格类型,第i种风格类型对应的风格标签向量为n维向量labeli={0,0,…,0,1,0,…0,0},其中,向量的第i个元素为1,其他元素均为0。此外,还可以在n个预设离散向量之间进行插值计算生成新的风格标签向量labelnew,计算方式如下:

其中,αi为第i种风格标签向量的权重参数,取值范围在[0,1]。在实际操作中,复杂的独热码可预先映射成更直观的可操作滑块,风格标签的选定可以由用户在操作界面上拖动滑块完成。

通过对多种图像风格标签进行离散型特征编码,一方面,可以有效对图像风格标签进行区分;另一方面,可以应用于后续的gan处理,以简单方式实现图像的风格转换。

此外,由于生成的图像风格类型完全由离散化的风格标签进行控制,可以在固定的风格标签之外对它们进行随机线性插值来生成数量庞大的新风格标签,从而在预设风格类型之外生成全新的风格类型,这些新风格类型会同时具有两个或多个预设风格类型的特点,并可以根据调配比例的变化实现平滑的风格过渡,为场景的趣味性和多样性提供更多选择。

需要说明的是,本步骤为可选步骤,在实际应用中,也可以采用其它形式表示风格标签并对其进行相应处理。

步骤s406:将原始图像和风格标签输入gan。

如前所述,本实施例中的gan为通过实施例一或实施例二中的所述方法训练获得的gan。

当风格标签采用风格标签向量表示时,本步骤将原始图像和风格标签对应的风格标签向量输入gan,但如果风格标签采用其它形式表示,则可以将其它表示形式的风格标签输入gan。

步骤s408:通过gan生成与风格标签相匹配的风格图像。

如前所述,使用训练完成的gan的生成器部分即可生成风格图像。

在此阶段,分别获取的原始图像和风格标签向量(或其它形式的风格标签)作为双重输入被传送至训练好的gan的生成器,一种可行的生成器的结构如图6所示。从图6中可见,在该生成器中,输入的原始图像iinput会被传入一个encoder-decoder架构,其中encoder和decoder都由卷积层、池化层和激活函数层堆积而成,唯一的区别在于encoder做的是下采样,将原始图像压缩到低维空间,而decoder做的是上采样,将压缩后的特征图投影回原始空间,以在减少计算量的前提下提取图像的核心内容。另一方面,输入的风格标签向量会首先经过两次全连接层运算进行上采样,再通过reshape变换为图像格式,然后和encoder中的中间卷积层的特征图进行合并。经过encoder处理后的图像输入decoder,经过decoder的前向运算得到的图像ioutput即为最后的结果图像,即风格图像。结果图像拥有与输入的原始图像相同的尺寸和内容,但在此基础上进行了针对给定风格标签的风格迁移,包括但不限于对真实场景或人像进行卡通化、素描化、艺术化、抽象化以及重新上色等。

可见,通过本实施例,通过一个gan即可实现图像的多种不同风格转换,并可简单灵活地生成新的风格类型,在有效满足用户需求的同时,也提高了图像风格转换效率和速度,降低了gan实现成本,避免了现有单个神经网络的风格转换功能较为单一,针对性过强、泛化能力不足、适用范围窄的问题。

本实施例的神经网络训练方法可以由任意适当的具有数据处理功能的设备实现,包括:各种终端设备及服务器等。

实施例五

本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有:用于获取待训练的样本图像对及所述样本图像对的风格标签,其中,所述样本图像对包括原始样本图像和对所述原始样本图像进行风格转换处理后的风格图像的指令;用于将所述原始样本图像对和所述风格标签输入生成式对抗网络gan的指令;用于通过所述gan的生成器根据所述风格标签对所述原始样本图像进行风格转换处理,生成与所述原始样本图像对应的第一生成图像的指令;用于将所述第一生成图像、所述风格图像和所述风格标签输入所述gan的判别器进行判别,获得判别结果的指令;用于同时将所述第一生成图像和所述风格标签输入所述gan的反向生成器,通过所述反向生成器对所述第一生成图像进行所述风格转换处理的逆处理,生成第二生成图像的指令;用于获得所述第二生成图像与所述原始样本图像的差异的指令;用于根据所述判别结果和所述差异,调整所述gan的训练参数的指令。

可选地,所述gan包括所述生成器、所述反向生成器和所述判别器;所述反向生成器和所述判别器均与所述生成器相连,所述反向生成器和所述判别器为并列的两个分支。

可选地,所述计算机存储介质还包括:用于在所述获取待训练的样本图像对及所述样本图像对的风格标签之前,获取设定的多种图像风格标签,对所述多种图像风格标签进行离散型特征编码,获得每种风格标签的风格标签向量的指令。

可选地,所述离散型特征编码为独热码。

可选地,所述生成器包括输入层、图像编码层、图像解码层和输出层;所述用于通过所述gan的生成器根据所述风格标签对所述原始样本图像进行风格转换处理,生成与所述原始样本图像对应的第一生成图像的指令,包括:用于将所述原始样本图像和所述风格标签对应的风格标签向量通过所述生成器的输入层输入所述生成器的指令;用于对所述风格标签向量进行上采样,并将上采样后的风格标签向量变换为风格标签图像的指令;用于在所述图像编码层进行特征提取时,将所述风格标签图像缩放至与当前待处理图像同样大小,将缩放后的风格标签图像与所述待处理图像进行合并后,通过所述图像编码层进行特征提取,获取特征图的指令;用于通过所述图像解码层对所述特征图进行上采样,将上采样后获得的图像作为所述第一生成图像并通过所述输出层输出的指令。

可选地,所述反向生成器包括输入层、图像编码层、图像解码层和输出层;所述用于将所述第一生成图像和所述风格标签输入所述gan的反向生成器,通过所述反向生成器对所述第一生成图像进行所述风格转换处理的逆处理,生成第二生成图像的指令,包括:用于将所述第一生成图像和所述风格标签对应的风格标签向量通过所述反向生成器的输入层输入所述反向生成器的指令;用于对所述风格标签向量进行上采样,并将上采样后的风格标签向量变换为风格标签图像的指令;用于在所述图像编码层进行特征提取时,将所述风格标签图像缩放至与当前待处理图像同样大小,将缩放后的风格标签图像与所述待处理图像进行合并后,通过所述图像编码层进行特征提取,获取特征图的指令;用于通过所述图像解码层对所述特征图进行上采样,将上采样后获得的图像作为所述第二生成图像并通过所述输出层输出的指令。

本实施例的计算机存储介质用于实现前述方法实施例一或实施例二中相应的神经网络训练方法,并具有相应的方法实施例的有益效果,在此不再赘述。

实施例六

本发明实施例还提供了另一种计算机存储介质,所述计算机存储介质中存储有:用于获取原始图像和用户输入的风格标签的指令;用于将所述原始图像和所述风格标签输入生成式对抗网络gan的指令,其中,所述gan为通过实施例一或实施例二所述方法训练获得的gan;用于通过所述gan生成与所述风格标签相匹配的风格图像的指令。

可选地,所述计算机存储介质还包括:用于在所述获取原始图像和用户输入的风格标签之后,从预设的与多种不同风格标签对应的多种不同风格标签向量中,确定与所述用户输入的风格标签对应的风格标签向量的指令;所述用于将所述原始图像和所述风格标签输入gan的指令,包括:用于将所述原始图像和所述风格标签对应的风格标签向量输入所述gan的指令。

可选地,所述预设的与多种不同风格标签对应的多种不同风格标签向量通过以下方式获得:获取设定的多种图像风格标签,对所述多种图像风格标签进行离散性特征编码,获得每种风格标签的风格标签向量。

可选地,所述离散性特征编码为独热码。

可选地,所述用于获取用户输入的风格标签的指令,包括:用于根据用户对操作界面上提供的风格滑块的滑动操作的操作结果,获取用户输入的风格标签的指令。

可选地,所述计算机存储介质还包括:用于在将所述原始图像和所述风格标签输入gan之前,将所述原始图像的尺寸处理为指定大小的指令。

本实施例的计算机存储介质用于实现前述方法实施例三或实施例四中相应的图像生成方法,并具有相应的方法实施例的有益效果,在此不再赘述。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,所述计算机可读记录介质包括用于以计算机(例如计算机)可读的形式存储或传送信息的任何机制。例如,机器可读介质包括只读存储器(rom)、随机存取存储器(ram)、磁盘存储介质、光存储介质、闪速存储介质、电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等)等,该计算机软件产品包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

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

本领域的技术人员应明白,本发明实施例的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

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