基于牵连仿射变换的文本生成图像方法与流程

未命名 07-22 阅读:87 评论:0


1.本发明属于自然语言处理和计算机视觉交叉领域,更确切地说,是一种跨模态学习的典型任务。


背景技术:

2.文本生成图像是一个由少量信息变为大量信息的过程。一句文本的信息量与一张图像的信息量有着天壤之别,如果能研究出这种跨模态之间的关系,将有利于其他类似的生成式研究领域的发展。文本生成图像在ai绘画、人机生成式交互,平面设计等领域有所应用。但是,由于其本身任务具体很大挑战,生成的图像难以达到人类视觉的认可,和真实的图像有明显差距,而文本和图像的融合方法是生成图像质量的关键。因此,建立融合模块之间的关系具备重要的理论意义和实际应用价值。


技术实现要素:

3.本发明所要解决的技术问题在于通过使用一种正向牵引方法将原本独立的各个融合模块建立一定的关联,基于这种关联,使得在基于仿射变换融合的方式下,生成器能够更好的生成高质量图像。
4.本发明的文本生成图像方法,包括以下几个步骤:
5.(1)从预训练的嵌入式文本编码器e获取嵌入式文本编码s;
6.本步骤为本发明的非核心部分,其嵌入式文本编码器使用attngan中的damsm encoder(attngan:fine-grained text to image generation with attentional generative adversarial networks),对于cub-200-2011数据集和coco数据集有预训练好的模型参数可以使用,使用其他数据集则需要重新训练该编码器e。
7.(2)将随机生成的服从标准正态分布的噪声z输入生成器网络g中,并逐层与嵌入式文本编码s进行仿射变换融合获得生成图像f;
8.(3)使用结合卷积块注意力模块的判别器网络d对生成图像f和真实图像r进行打分,得到sf和sr,这两个图像都对应着当前输入生成器网络g的嵌入式文本编码s,其中真实图像r为数据集里的图像,生成图像f为(2)中生成器网络g根据嵌入式文本编码s和随机噪声z生成的输出图像,使用这两个分数构造判别器网络d的损失函数lossd,用梯度下降法更新判断器d的网络参数得到d';
9.(4)使用d'重新给生成图像进行打分,得到sf',由sf'构成生成器网络g的损失函数lossg,用梯度下降法更新生成器g的网络参数;
10.(5)重复(1)至(4)步骤,最终得到生成器网络g,用于文本生成图像;
11.所述的步骤(1)具体计算过程如下:
12.使用文本编码器e获取嵌入式文本编码s。该文本编码器e基于深度注意力跨模态相似模块(attngan:fine-grained text to image generation with attentional generative adversarial networks),将图像信息嵌入文本编码中,更有利于图像的生成
且具备局部单词级别的文本信息编码,有利于细粒度图像的生成。对于本方法使用的数据集,均为1个图像对应n个文本描述的格式,所述步骤(1)中,随机抽取当前图像中n个文本描述中的1个文本描述与该图像配对,先将其表达为one-hot编码,然后将one-hot编码输入embedding层进行编码,然后将这个编码输入到双向lstm网络中,最后得到单词级别的嵌入式编码w和句子级别的嵌入式编码s,本方法只是用其中句子级别的嵌入式编码s。
13.所述的步骤(2)具体计算过程如下:
14.随机噪声z服从标准正态分布,其维度为100
×
1,通过全连接层fc初始化图像编码h0,其维度为(c
×w×
h)256
×4×
4,其中c为图像编码的通道数,w和h分别为图像编码的宽度和高度,全连接层fc层由一个线性层组成,其输入维度为100
×
1,输出维度为256
×4×
4。随后经过6个深度融合模块,其输入的隐藏图像编码的维度(c
iin
×wiin
×hiin
)分别为256
×4×
4、256
×8×
8、256
×
16
×
16、256
×
32
×
32、128
×
64
×
64、64
×
128
×
128,其输出的隐藏图像编码的维度(c
iout
×wiout
×hiout
)分别为256
×8×
8、256
×
16
×
16、256
×
32
×
32、128
×
64
×
64、64
×
128
×
128、32
×
256
×
256。在进入每个深度融合模块前,先进行上采样操作,使隐藏图像编码的size(w
×
h)放大4倍,即w和h分别放大2倍,即4
×
4变为8
×
8,8
×
8变为16
×
16,16
×
16变为32
×
32,32
×
32变为64
×
64,64
×
64变为128
×
128,128
×
128变为256
×
256,且在一个深度融合模块中进行融合时,隐藏图像编码h的size不变。
15.(2.1)将初始化图像编码h0输入第1个深度融合模块与嵌入式文本编码s进行融合,随后将第i个深度融合模块(i=1,2,3,4,5,6)输出的隐藏图像编码进行上采样,然后将其输入到第i+1个深度融合模块中再次与嵌入式文本编码s进行融合,其中隐藏图像编码的维度为c
iin
×wiin
×hiin
,具体数值在上文中已做说明。第i个深度融合模块的详细过程见(2.2);
16.(2.2)每个深度融合模块均为一个残差块,对于第i个深度融合模块,当前输入的隐藏图像编码hi进行上采样后,输入到第i个深度融合模块的第1个融合模块中与嵌入式文本编码s进行融合,将其输出结果输入到卷积层cnn_1中进行卷积,其卷积核大小为3
×
3,步长为1,填充为1,卷积层cnn_1输入输出的维度分别为该融合模块所处的第i个深度融合模块的输入输出通道数值c
iin
和c
iout
,上文已做说明,然后将卷积层cnn_1输出的图像编码输入到第i个深度融合模块的第2个融合模块中与2嵌入式文本编码s进行融合,将其输出结果输入到卷积层cnn_2中进行卷积,其卷积核大小为3
×
3,步长为1,填充为1,卷积层cnn_2输入输出的维度分别为c
iout
和c
iout
,上文已做说明,最后,将cnn_2输出的最终图像编码与输入第i个深度融合模块的hi上采样后的编码进行相加,形成残差块,将其相加后的编码输入到第i+1个深度融合模块。第i个深度融合模块中的第1个和第2个融合模块详细过程见(2.3)。
17.(2.3)对于第i个深度融合模块的第1个融合模块,先将输入的图像编码x输入到第1个融合模块中的第1个仿射模块与嵌入式文本编码s进行仿射融合,该融合方式来源于df-gan(df-gan:a simple and effective baseline for text-to-image synthesis),将其融合结果x

输入到非线性激活层,非线性激活层使用leakyrelu激活函数,参数α设置为0.2,将非线性变换层输出的结果输入到第1个融合模块的第2个仿射模块与嵌入式文本编码s进行仿射融合,同样地,将其融合结果输入到非线性激活层,同样使用leakyrelu激活函数作为非线性变换的激活函数,参数α设置为0.2,最后将其输入到第i个深度融合模块的第2个融合模块进行与第1个融合模块相同的操作。仿射模块的详细过程见(2.4)。
18.(2.4)对于仿射模块,由2个多层感知器(ω-mlp、β-mlp)组成,这2个多层感知器的结构一样,均由2个全连接层和1个relu非线性激活层组成。其中ω-mlp的线性层fc_1的输入输出维度分别为(c
ω

+256)
×
1和c
ω
×
1,其中c
ω

为上一个仿射模块的ω-mlp学习得出的仿射参数ω

的维度,256为嵌入式文本编码s的维度,c
ω
为当前仿射模块的ω-mlp学习得出的仿射参数ω的维度,ω-mlp的线性层fc_2的输入输出维度分别为c
ω
×
1和c
ω
×
1,c
ω
为当前仿射模块的ω-mlp学习得出的仿射参数ω的维度。同样地,β-mlp的的线性层fc_1的输入输出维度分别为(c
β

+256)
×
1和c
β
×
1,其中c
β

为上一个仿射模块的β-mlp学习得出的仿射参数β

的维度,256为嵌入式文本编码s的维度,c
β
为当前仿射模块的β-mlp学习得出的仿射参数β的维度,β-mlp的线性层fc_2的输入输出维度分别为c
β
×
1和c
β
×
1,c
β
为当前仿射模块的β-mlp学习得出的仿射参数β的维度。将嵌入式文本编码s与ω

、β

分别进行拼接,将拼接后的特征编码分别带入当前的仿射模块中的ω-mlp和β-mlp进行学习,分别依次进入ω-mlp和β-mlp的fc_1、relu、fc_2,得出当前仿射模块的仿射参数ω、β,最后根据仿射变换的计算公式ω
·
x+β计算得出仿射融合后的图像编码x

,即输入仿射模块的图像编码x与仿射模块中的2个多层感知器(ω-mlp、β-mlp)学习得出的仿射参数ω和β进行组合运算。对于第i个深度融合模块的第1个融合模块中的2个仿射模块,仿射模块a的c
ω
、c
β
相等且值为c
iin
,c
ω

、c
β

相等且值为c
i-1out
,仿射模块b的c
ω
、c
β
相等且值为c
iin
,c
ω

、c
β

相等且值为c
iin
,而第i个深度融合模块的第2个融合模块中的2个仿射模块,仿射模块a的c
ω
、c
β
相等且值为c
iout
,c
ω

、c
β

相等且值为c
iin
,仿射模块b的c
ω
、c
β
相等且值为c
iout
,c
ω

、c
β

相等且值为3c
iout
。特别地,对于第1个深度融合模块的第1个融合模块的第1个仿射模块,由于此仿射模块的前面没有仿射模块,即没有ω

、β

,因此此仿射模块的ω-mlp和β-mlp的fc_1层的输入维度均分别为256
×
1,256为嵌入式文本编码s的维度,其余的结构与后面的仿射模块无异,直接将嵌入式文本编码s分别带入当前的仿射模块中的ω-mlp和β-mlp进行学习,没有拼接操作。
19.(2.5)将(2.1)至(2.4)步骤进行至i=6后,最终得到了隐藏图像编码hf,将hf输入转换层转换为生成图像f,其维度为3
×
256
×
256。转换层由1个卷积层和两个激活层组成,激活层分别为leakyrelu激活函数和tanh激活函数组成,其中leakyrelu激活函数的参数α设置为0.2,卷积层的卷积核大小为3
×
3,步长为1,填充为1。隐藏图像编码hf依次经过leakyrelu激活层、卷积层cnn和tanh激活层就会得到维度为3
×
256
×
256的生成图像f。
20.所述的步骤(3)具体计算过程如下:
21.(3.1)首先对步骤(2)得到的生成图像f进行特征变换,将其得到的初始化图像编码i0输入判别器d。此步骤使用卷积层(卷积核大小为3
×
3,步长为1,填充为1)将生成图像f卷积为维度为32
×
256
×
256的初始图像编码i0。
22.(3.2)将步骤(3.1)得到的初始图像编码i0输入到判别器d的第1个卷积残差块中,随后将其输出结果输入到第2个卷积残差块中,循环此操作至第6个卷积残差块,得到最终提取的图像编码。对于判别器d中的6个卷积残差块,它们的输入图像特征inputj(j=1,2,3,4,5,6)的维度(c
jin
×wjin
×hjin
)分别为32
×
256
×
256、64
×
128
×
128、128
×
64
×
64、256
×
32
×
32、256
×
16
×
16、256
×8×
8,输出图像特征outputj的维度(c
jout
×wjout
×hjout
)分别为64
×
128
×
128、128
×
64
×
64、256
×
32
×
32、256
×
16
×
16、256
×8×
8、256
×4×
4,第j个卷积残差块的输出outputj为inputj+cnnj(inputj)。卷积残差块的详细过程见(3.3)。
23.(3.3)卷积残差块使用卷积块注意力进行提取特征,让判别器d获取更重要的特征
进行判断,提高判别器d的学习效率。将inputj输入第j个卷积残差块,先进入卷积层cnnj_1(卷积核大小为4
×
4、步长为2、填充为1)进行卷积,然后将其输出结果进行非线性变换,使用的非线性变换激活函数为relu激活函数,接着将其非线性变换结果输入到卷积层cnnj_2(3
×
3、步长为1、填充为1)进行卷积,将cnn_2的卷积结果进行非线性变换,同样使用relu激活函数,将其输出结果(维度为outputj的维度c
jout
×wjout
×hjout
,在(3.2)中已说明)继续输入到通道注意力层,通道注意力层先将输入的图像特征的每个通道平面c
jout
进行特征值的最大值和平均值计算,然后输入共用的网络(由卷积层a、b和1个relu层组成,卷积层的卷积核大小均为1
×
1、步长均为1、填充均为0),先输入卷积层a将特征编码的通道维度c
jout
缩小至c
jout
/16,经过relu层进行非线性变换后再输入卷积层b卷积还原至原来特征的通道维度c
jout
,这样可以让网络权衡最大值和4平均值来计算不同通道的重要程度,分别得到相同维度(c
jout
×
1)的特征向量,两者相加后经过sigmoid激活函数输出后与输入通道注意力层的图像特征相乘,将相乘的结果输入到空间注意力层,空间注意力层将一个平面(w
jout
×hjout
)下所有通道c
jout
的特征值进行最大值和平均值计算,最后得到max和avg两个特征平面,将两个特征平面拼接形成维度为2
×wjout
×hjout
的特征编码,输入卷积层(卷积核大小为3
×
3,步长为1,填补为1)得到维度为1
×wjout
×hjout
的特征编码,将其经过sigmoid激活函数激活后与输入空间注意力层的特征编码相乘得到最终的结果outputj,其维度为c
jout
×wjout
×hjout

24.(3.4)经过6个残差块提取特征后(即步骤(3.2)完成至j=6),最后得到output6,其特征维度为256
×4×
4,将特征维度为256
×1×
1的嵌入式文本编码s与其进行拼接得到维度为512
×4×
4的语义对齐编码m,将m编码输入cnn_1(卷积核大小为3
×
3、步长为1、填补为1)进行卷积,并将输出结果(维度为64
×4×
4)进行非线性变换(relu激活函数),将非线性变换结果输入到cnn_2(卷积核大小为4
×
4、步长为1,填补为0)进行卷积得到最终判别器d对生成图像f的打分(维度为1
×1×
1)。
25.(3.5)将真实图像r也进行(3.1)至(3.4)的操作得到判别器d对真实图像r的打分。判别器d的损失构造如下:
[0026][0027]
其中x表示图像,g(z)表示生成器g通过服从标准正态分布的随机噪声z生成的图像f,pr表示真实图像的集合,p
mis
表示与嵌入式文本编码s匹配错误的图像集合,pg为生成图像f的集合,d(x,s)表示判别器d将图像x和其对应的嵌入式文本编码s进行语义对齐,d(g(z),s)表示判别器d将生成的图像f和其对应的嵌入式文本编码s进行语义对齐,和分别表示判别器d对x、s进行偏导运算,k和p用来平衡匹配感知梯度惩罚l
ma-gp
中的梯度,平衡匹配感知梯度惩罚l
ma-gp
来源于df-gan(df-gan:a simple and effective baseline for text-to-image synthesis)。
[0028]
所述的步骤(4)具体计算过程如下:
[0029]
使用步骤(3)更新参数后的判别器d'重新给生成图像f进行打分,得到sf',由sf'构成生成器网络g的损失函数lossg,用梯度下降法更新生成器g的网络参数。生成器g的损失函数构造如下:
[0030]
lg=-eg
(z)~p
g[d(g(z),s)]
[0031]
本发明能够达到的有益效果如下:
[0032]
在文本生成图像领域的深度融合模型中,各个融合模块缺乏联系,这不利于整个网络的优化,将各个独立的融合模块建立联系,可以有效的提升最终生成图像的质量。本发明基于深度牵引融合模块的方法来解决单级主干网络中融合模块相互独立的问题,将各个融合模块及其子模块进行连接,使得原本纵向平行的独立融合模块在横向有所关联,利于网络的优化,使得生成器能够生成质量更好的图像,有助于文本生成图像研究领域在图像生成质量上获得更高的成果。
附图说明
[0033]
图1是本发明的前后正向牵引方法的流程图;
[0034]
图2是文本生成图像的整体框架图;
[0035]
图3为实施例一框架图中的嵌入式文本编码器网络。
[0036]
图4为实施例一框架图中的卷积块注意力模块。
具体实施方式
[0037]
为了使本发明的目的、技术方案及优点更加清楚明白,以下对本发明的具体实施方式进行进一步详细说明。
[0038]
实施例一
[0039]
如图1、图2、图3、图4可见,本实施例具体过程如下:
[0040]
(1)现以cub-200-2011数据集为例,将其作为训练和测试的数据集,预训练的嵌入式文本编码器e是已经用cub-200-2011数据集训练好了的编码器,如需用其他数据集,需要重新训练此编码器e。数据集的元数据格式需为:一张图像加上该图像对应的n个文本描述句子,例如cub-200-2011数据集的格式就为一张鸟类的图像加上其对应的10个句子描述。训练和测试时,一张真实图像r和其对应的10个句子描述中的随机一个句子描述的嵌入式文本编码s组成数据对,输入网络中进行训练。下面将简述该嵌入式文本编码器e的原理,如图3所示,该嵌入式文本编码器e基于深度注意力跨模态相似模块(attngan:fine-grained text to image generation with attentional generative adversarial networks),将图像信息嵌入文本编码中,更有利于图像的生成且具备局部单词级别的文本信息编码,有利于细粒度图像的生成。该嵌入式文本编码器e采用双向lstm神经网络来进行学习,对应的图像编码器采用的是谷歌的预训练网络inceptionv3,该6网络可以获取图像的对应的关键特征,在attngan中,将局部特征图像编码和全局特征图像编码从inceptionv3中提取出来,分别与嵌入式文本编码器e中的单词编码word_embedding和句子编码sentence_embedding相对应。从局部角度,使用softmax算法(得到mask权重矩阵)将一个单词的编码word_embedding'由图像的多个局部编码线性表出,将这个线性表出的单词编码word_
baseline for text-to-image synthesis)组成,匹配感知梯度损失可以极大增强gan的稳定性,尽可能减少模式崩溃的产生,还可以让判别器d更好地进行语义对齐,从而让生成器g生成更多的接近真实图像r的生成图像f,让生成器g不再那么依赖额外的固定网络来进行语义对齐约束,匹配感知梯度损失的计算量比额外固定网络的约束损失更小。无条件损失会导致文本-图像语义对齐速度变慢,所以这里不使用无条件损失。条件损失由判别器d给真实图像r、生成图像f和匹配错误的图像m的评分组成,给真实图像r的评分越高,生成图像f和匹配错误m的图像的评分越低,则损失越小。这里的条件损失均为合页损失函数,将其限制为[-1,1],对于真实图像r,评分大于等于1时,损失为0,对于生成图像f和匹配错误m的图像,评分小于等于-1时,损失为0。下面为对应的lg和ld的计算公式。
[0050]
lg=-eg
(z)~p
g[d(g(z),s)]
[0051][0052]
本发明的具体实施方式包括但不局限于上述实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但仍然落入本发明的保护范围。

技术特征:
1.一种基于牵连仿射变换的文本生成图像方法,包括以下步骤:(1)从预训练的嵌入式文本编码器e获取嵌入式文本编码s;(2)将随机生成的服从标准正态分布的噪声z输入生成器网络g中,并逐层与嵌入式文本编码s进行仿射变换融合获得生成图像f;(3)使用结合卷积块注意力模块的判别器网络d对生成图像f和真实图像r进行打分,得到s
f
和s
r
,这两个图像都对应着当前输入生成器网络g的嵌入式文本编码s,其中真实图像r为数据集里的图像,生成图像f为步骤(2)中生成器网络g根据嵌入式文本编码s和随机噪声z生成的输出图像,使用s
f
和s
r
这两个分数构造判别器网络d的损失函数loss
d
,用梯度下降法更新判断器d的网络参数得到d';(4)使用d'重新给生成图像进行打分,得到s
f
',由s
f
'构成生成器网络g的损失函数loss
g
,用梯度下降法更新生成器g的网络参数;(5)重复步骤(1)至(4),最终得到生成器网络g,用于文本生成图像。2.如权利要求1所述的基于牵连仿射变换的文本生成图像方法,其特征在于:本方法使用的数据集,均为1个图像对应n个文本描述的格式;所述步骤(1)中,随机抽取当前图像中n个文本描述中的1个文本描述与该图像配对,先将其表达为one-hot编码,然后将one-hot编码输入embedding层进行编码,然后将这个编码输入到双向lstm网络中,最后得到单词级别的嵌入式编码w和句子级别的嵌入式编码s。3.如权利要求1所述的基于牵连仿射变换的文本生成图像方法,其特征在于:所述步骤(2)具体计算过程如下:随机噪声z服从标准正态分布,其维度为100
×
1,通过全连接层fc初始化图像编码h0,其维度为(c
×
w
×
h)256
×4×
4,其中c为图像编码的通道数,w和h分别为图像编码的宽度和高度,全连接层fc层由一个线性层组成,其输入维度为100
×
1,输出维度为256
×4×
4;随后经过6个深度融合模块,其输入的隐藏图像编码的维度(c
iin
×
w
iin
×
h
iin
)分别为256
×4×
4、256
×8×
8、256
×
16
×
16、256
×
32
×
32、128
×
64
×
64、64
×
128
×
128,其输出的隐藏图像编码的维度(c
iout
×
w
iout
×
h
iout
)分别为256
×8×
8、256
×
16
×
16、256
×
32
×
32、128
×
64
×
64、64
×
128
×
128、32
×
256
×
256;在进入每个深度融合模块前,先进行上采样操作,使隐藏图像编码的size(w
×
h)放大4倍,即w和h分别放大2倍,且在一个深度融合模块中进行融合时,隐藏图像编码h的size不变;(2.1)将初始化图像编码h0输入第1个深度融合模块与嵌入式文本编码s进行融合,随后将第i个深度融合模块(i=1,2,3,4,5,6)输出的隐藏图像编码进行上采样,然后将其输入到第i+1个深度融合模块中再次与嵌入式文本编码s进行融合,其中隐藏图像编码的维度为c
iin
×
w
iin
×
h
iin
;(2.2)每个深度融合模块均为一个残差块,对于第i个深度融合模块,当前输入的隐藏图像编码h
i
进行上采样后,输入到第i个深度融合模块的第1个融合模块中与嵌入式文本编码s进行融合,将其输出结果输入到卷积层cnn_1中进行卷积,其卷积核大小为3
×
3,步长为1,填充为1,卷积层cnn_1输入输出的维度分别为该融合模块所处的第i个深度融合模块的输入输出通道数值c
iin
和c
iout
,然后将卷积层cnn_1输出的图像编码输入到第i个深度融合模块的第2个融合模块中与嵌入式文本编码s进行融合,将其输出结果输入到卷积层cnn_2中进行卷积,其卷积核大小为3
×
3,步长为1,填充为1,最后,将cnn_2输出的最终图像编码
与输入第i个深度融合模块的h
i
上采样后的编码进行相加,形成残差块,将其相加后的编码输入到第i+1个深度融合模块;(2.3)对于第i个深度融合模块的第1个融合模块,先将输入的图像编码x输入到第1个融合模块中的第1个仿射模块与嵌入式文本编码s进行仿射融合,将其融合结果x

输入到非线性激活层,非线性激活层使用leakyrelu激活函数,参数α设置为0.2,将非线性变换层输出的结果输入到第1个融合模块的第2个仿射模块与嵌入式文本编码s进行仿射融合,同样地,将其融合结果输入到非线性激活层,同样使用leakyrelu激活函数作为非线性变换的激活函数,参数α设置为0.2,最后将其输入到第i个深度融合模块的第2个融合模块进行与第1个融合模块相同的操作;(2.4)对于仿射模块,由2个多层感知器(ω-mlp、β-mlp)组成,这2个多层感知器的结构一样,均由2个全连接层和1个relu非线性激活层组成;其中ω-mlp的线性层fc_1的输入输出维度分别为(c
ω

+256)
×
1和c
ω
×
1,其中c
ω

为上一个仿射模块的ω-mlp学习得出的仿射参数ω

的维度,256为嵌入式文本编码s的维度,c
ω
为当前仿射模块的ω-mlp学习得出的仿射参数ω的维度,ω-mlp的线性层fc_2的输入输出维度分别为c
ω
×
1和c
ω
×
1,c
ω
为当前仿射模块的ω-mlp学习得出的仿射参数ω的维度;将嵌入式文本编码s与ω

、β

分别进行拼接,将拼接后的特征编码分别带入当前的仿射模块中的ω-mlp和β-mlp进行学习,分别依次进入ω-mlp和β-mlp的fc_1、relu、fc_2,得出当前仿射模块的仿射参数ω、β,最后根据仿射变换的计算公式ω
·
x+β计算得出仿射融合后的图像编码x

,即输入仿射模块的图像编码x与仿射模块中的2个多层感知器(ω-mlp、β-mlp)学习得出的仿射参数ω和β进行组合运算;对于第i个深度融合模块的第1个融合模块中的2个仿射模块,仿射模块a的c
ω
、c
β
相等且值为c
iin
,c
ω

、c
β

相等且值为c
i-1out
,仿射模块b的c
ω
、c
β
相等且值为c
iin
,c
ω

、c
β

相等且值为c
iin
,而第i个深度融合模块的第2个融合模块中的2个仿射模块,仿射模块a的c
ω
、c
β
相等且值为c
iout
,c
ω

、c
β

相等且值为c
iin
,仿射模块b的c
ω
、c
β
相等且值为c
iout
,c
ω

、c
β

相等且值为c
iout
;(2.5)将步骤(2.1)至步骤(2.4)步骤进行至i=6后,最终得到隐藏图像编码h
f
,将h
f
输入转换层转换为生成图像f,其维度为3
×
256
×
256;转换层由1个卷积层和两个激活层组成,激活层分别为leakyrelu激活函数和tanh激活函数组成,其中leakyrelu激活函数的参数α设置为0.2,卷积层的卷积核大小为3
×
3,步长为1,填充为1;隐藏图像编码h
f
依次经过leakyrelu激活层、卷积层cnn和tanh激活层就会得到维度为3
×
256
×
256的生成图像f。4.如权利要求1所述的基于牵连仿射变换的文本生成图像方法,其特征在于:所述步骤(3)具体计算过程如下:(3.1)首先对步骤(2)得到的生成图像f进行特征变换,将其得到的初始化图像编码i0输入判别器d;此步骤使用卷积层(卷积核大小为3
×
3,步长为1,填充为1)将生成图像f卷积为维度为32
×
256
×
256的初始图像编码i0;(3.2)将步骤(3.1)得到的初始图像编码i0输入到判别器d的第1个卷积残差块中,随后将其输出结果输入到第2个卷积残差块中,循环此操作至第6个卷积残差块,得到最终提取的图像编码;对于判别器d中的6个卷积残差块,它们的输入图像特征input
j
(j=1,2,3,4,5,6)的维度(c
jin
×
w
jin
×
h
jin
)分别为32
×
256
×
256、64
×
128
×
128、128
×
64
×
64、256
×
32
×
32、256
×
16
×
16、256
×8×
8,输出图像特征output
j
的维度(c
jout
×
w
jout
×
h
jout
)分别为64
×
128
×
128、128
×
64
×
64、256
×
32
×
32、256
×
16
×
16、256
×8×
8、256
×4×
4,第j个卷积残差块的输出output
j
为input
j
+cnn
j
(input
j
);(3.3)卷积残差块使用卷积块注意力进行提取特征,提高判别器d的学习效率;将input
j
输入第j个卷积残差块,先进入卷积层cnn
j
_1(卷积核大小为4
×
4、步长为2、填充为1)进行卷积,然后将其输出结果进行非线性变换,使用的非线性变换激活函数为relu激活函数,接着将其非线性变换结果输入到卷积层cnn
j
_2(3
×
3、步长为1、填充为1)进行卷积,将cnn_2的卷积结果进行非线性变换,同样使用relu激活函数,将其输出结果继续输入到通道注意力层,通道注意力层先将输入的图像特征的每个通道平面c
jout
进行特征值的最大值和平均值计算,然后输入共用的网络,该共用网络由卷积层a、b和1个relu层组成,卷积层的卷积核大小均为1
×
1、步长均为1、填充均为0,先输入卷积层a将特征编码的通道维度c
jout
缩小至c
jout
/16,经过relu层进行非线性变换后再输入卷积层b卷积还原至原来特征的通道维度c
jout
,让网络权衡最大值和平均值来计算不同通道的重要程度,分别得到相同维度(c
jout
×
1)的特征向量,两者相加后经过sigmoid激活函数输出后与输入通道注意力层的图像特征相乘,将相乘的结果输入到空间注意力层,3空间注意力层将一个平面(w
jout
×
h
jout
)下所有通道c
jout
的特征值进行最大值和平均值计算,最后得到max和avg两个特征平面,将两个特征平面拼接形成维度为2
×
w
jout
×
h
jout
的特征编码,输入卷积层(卷积核大小为3
×
3,步长为1,填补为1)得到维度为1
×
w
jout
×
h
jout
的特征编码,将其经过sigmoid激活函数激活后与输入空间注意力层的特征编码相乘得到最终的结果output
j
,其维度为c
jout
×
w
jout
×
h
jout
;(3.4)经过6个残差块提取特征后(即(3.2)完成至j=6),最后得到output6,其特征维度为256
×4×
4,将特征维度为256
×1×
1的嵌入式文本编码s与其进行拼接得到维度为512
×4×
4的语义对齐编码m,将m编码输入cnn_1(卷积核大小为3
×
3、步长为1、填补为1)进行卷积,并将输出结果(维度为64
×4×
4)进行非线性变换(relu激活函数),将非线性变换结果输入到cnn_2(卷积核大小为4
×
4、步长为1,填补为0)进行卷积得到最终判别器d对生成图像f的打分(维度为1
×1×
1);(3.5)将真实图像r也进行(3.1)至(3.4)的操作得到判别器d对真实图像r的打分。5.如权利要求1所述的基于牵连仿射变换的文本生成图像方法,其特征在于:所述的步骤(4)具体计算过程如下:使用步骤(3)更新参数后的判别器d'重新给生成图像f进行打分,得到s
f
',由s
f
'构成生成器网络g的损失函数loss
g
,用梯度下降法更新生成器g的网络参数;所述生成器g的损失函数构造如下:l
g
=-eg
(z)~p
g[d(g(z),s)]。

技术总结
本发明公开了一种基于牵连仿射变换的文本生成图像方法,包括以下步骤:(1)通过预训练的嵌入式文本编码器E获得嵌入式文本编码s;(2)生成服从标准正态分布的随机噪声z,将其输入生成器G与嵌入式文本编码s进行深度融合获得生成图像f;(3)将生成图像f和嵌入式文本编码s对应的真实图像r分别输入到判别器D中进行打分得到Sf和Sr;构造判别器D的损失函数lossD,利用梯度下降法优化判别器D;(4)利用梯度下降法优化生成器G;(5)重复步骤(1)至(4),最终训练得到生成高质量图像的生成器。本发明可以获得生成高质量图像的文本生成图像生成器,可以应用于人机生成式交互、平面设计等二维图像相关的生成式任务。维图像相关的生成式任务。维图像相关的生成式任务。


技术研发人员:吴海峰 兰强 程玉胜 程一飞 王一宾
受保护的技术使用者:吴海峰
技术研发日:2023.05.15
技术公布日:2023/7/20
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐