CN111062432B - 一种语义上多模态图像生成的方法 - Google Patents

一种语义上多模态图像生成的方法 Download PDF

Info

Publication number
CN111062432B
CN111062432B CN201911278401.2A CN201911278401A CN111062432B CN 111062432 B CN111062432 B CN 111062432B CN 201911278401 A CN201911278401 A CN 201911278401A CN 111062432 B CN111062432 B CN 111062432B
Authority
CN
China
Prior art keywords
image
discriminator
encoder
representing
natural
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911278401.2A
Other languages
English (en)
Other versions
CN111062432A (zh
Inventor
白翔
朱臻
徐志良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201911278401.2A priority Critical patent/CN111062432B/zh
Publication of CN111062432A publication Critical patent/CN111062432A/zh
Application granted granted Critical
Publication of CN111062432B publication Critical patent/CN111062432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/2163Partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种语义上多模态图像生成的方法。本发明在分割标签生成图像的任务上提出了一个新任务,新任务是能够通过分割标签的类别对生成图像的类别进行单独控制。在这个任务上,本发明提出了一种解决方案,对编码器采用分组卷积,将自然图像里面不同类的编码进行分离,从而使得更改该编码能够改变生成图像中该类的样式。生成器部分,本发明采用的是组数逐渐递减的分组卷积,这能提高单独控制的能力,也能够减少显存的占用,因此可以将这个方法应用到类别较多的数据集上。同时本发明能够应用于许多图像生成的应用里面,如图像编辑等。本发明相较于之前的分割标签生成自然图像的相关工作,能对生成图像里面的类别尽可能的进行单独控制。

Description

一种语义上多模态图像生成的方法
技术领域
本发明属于计算机视觉技术领域,更具体地,涉及一种语义上多模态图像生成的方法。
背景技术
近些年,使用生成对抗网络生成的图像质量越来越高,同时产生了很多有趣的应用,比如图像编辑,图像补全等,还有一个应用是通过图像的语义分割标签来生成自然图像,这可以看成是图像分割的逆过程。通过分割标签来生成自然图像,可以方便各类图像的创作,只需要描绘出需要产生图像的分割图,就能够通过网络产生接近真实的图像,简化了操作流程,并且增强了对图像的控制力。
通过分割标签生成自然图像是一个一对多问题,即一张分割图对应多张自然图像,而且对于分割标签里面的每一类,应该可以进行单独控制,生成不同的样式。目前方法大部分是基于生成对抗网络来实现,有少部分方法是通过图像片段检索来实现。这些方法要么就是生成的自然图像是固定的,要么是只能对图像进行全局变化,不能单独控制每一类的生成效果。
发明内容
本发明提供了一种根据图像的语义分割标签生成多模态图像的方法,能够尽可能的单独控制每个语义的生成效果。本发明在分割标签生成自然图像的任务上,提出了单独控制的任务及其评价指标,并给出了一种在该评价指标上综合考虑的解决方案,在考虑算法参数量,占用GPU显存等基础上,尽可能的实现该单独控制的任务。本方法利用生成对抗网络来实现,首先对自然图像中的每个类别编码为一个高维高斯分布,高维高斯分布里面的每一个点代表一张图片一类物体的编码,然后利用生成网络将编码解码为生成图像,最后将自然图像,生成图像以及分割标签输入鉴别器进行分类鉴别,通过梯度下降完成网络的训练。
为实现上述目的,本发明提供了一种语义上多模态图像生成的方法,包括:
(1)获取自然图像的分割标签,对自然图像和分割标签进行放大或缩小到指定大小,然后两者以概率进行水平翻转,根据分割标签得到自然图像的每一类作为一张单独的图像,并将其中有内容的部分放大到原图大小;
(2)构建深度神经网络,包含编码器、生成器和鉴别器,其中编码器作用是将自然图像编码为高斯分布的采样,生成器的作用是将编码生成为图像,鉴别器的作用是鉴别图像是生成图像还是自然图像;
(3)将(1)中不同类别的图像堆叠起来输入到编码器中,对每个类别输出一个预设大小的编码,将编码输入到生成器中得到生成图像,将生成图像和自然图像以及分割标签一起输入到鉴别器中,得到两者的分类概率,训练过程分为两步交替进行,第一步是训练编码器和生成器,第二步单独训练鉴别器,对于编码器和生成器的训练,计算编码器的输出值的KL损失,鉴别器的分类损失,以及生成图像和自然图像在鉴别器和VGG19网络中的特征图的L1距离分别作为特征匹配损失和感知损失,将这以上几个损失值计算其加权平均数得到最终的编码器和生成器的损失值,对于鉴别器的训练,损失值只包括鉴别器的分类损失,将损失值通过反向传播来更新对应的网络参数;
(4)在高斯分布中随机采样得到编码,将编码和分割标签输入到生成器中即可得到生成图像。
优选地,(1)中图像尺寸默认设置为256×256,对于自然图像,采用双线性插值变成256×256像素大小,对于分割标签,采用的是最近邻插值。
优选地,(3)中编码器的具体结构为(Conv1,Instance norm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instance norm,LeakyRelu,Conv5,Instance norm,LeakyRelu,Conv6,Instance norm,LeakyRelu),最后通过Conv_mu和Conv_var分别预测高斯分布的均值和方差,所有的Conv使用的是分组卷积,设置的组数为类别数,即根据每个类别来进行编码。
优选地,(4)中生成器的结构由多个类似的块堆叠而成,每个块里面使用分组卷积,随着网络的深入,块内的组数逐渐递减,图像尺寸逐渐变大。首先将编码器得到的编码通过一个卷积层,得到一个特征图,将分割标签通过分组卷积得到两个参数γ和β,将特征图乘以(1+γ)之后再加上β,然后将新得到的特征图采用同步的批量规范化之后输入到分组卷积。将得到特征图输入与之前相同的结构之中,再进行上采样将特征图放大两倍。重复以上流程得到和原图一样大小的图像。
优选地,(5)中鉴别器的结构为两个(Conv1,Instancenorm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instance norm,LeakyRelu,Conv5)的结构,将自然图像和生成图像输入到该网络中,得到两个通道数为1的特征图。
具体地,定义卷积形式Conv2d(Ni,No,kernel_size,stride,padding,groups),其中Ni代表输入通道数,No代表输出通道数,kernel_size代表卷积核大小,stride代表卷积步长,padding代表将输入向四周的补零个数,groups代表卷积的组数。以DeepFashion数据集为例,介绍详细的网络结构。
优选地,(3)中编码器里面卷积层的结构如下所示:
Convl:Conv2d(3,256,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv2:Conv2d(256,512,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv3:Conv2d(512,1024,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv4:Conv2d(1024,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv5:Covn2d(2048,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv6:Covn2d(2048,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv_mu:Covn2d(2048,64,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
Conv_var:Covn2d(2048,64,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
优选地,(4)中生成器的卷积层结构如下:
Conv_first:Covn2d(64,2560,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
CGB1:CGB-c(2560)-g8,Upsample(2)
CGB2:CGB-c(2560)-g8,Upsample(2)
CGB3:CGB-c(2560)-g4,Upsample(2)
CGB4:CGB-c(1280)-g4,Upsample(2)
CGB5:CGB-c(640)-g2,Upsample(2)
CGB6:CGB-c(320)-g2,Upsample(2)
CGB7:CGB-c(160)-g1,Upsample(2)
其中,CGB模块通过分割标签得到参数γ和β,将两者看成规范化参数添加到特征图之中,然后再进行卷积运算。c代表CGB里面卷积的通道数,g代表分组卷积的组数。
优选地,(5)中鉴别器的卷积层结构如下:
Conv1:Covn2d(11,64,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv2:Covn2d(64,128,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv3:Covn2d(128,256,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv4:Covn2d(256,512,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv5:Covn2d(512,1,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
优选地,(6)中鉴别器包括的损失函数为:
Figure BDA0002316001480000041
其中D代表鉴别器,G代表生成器,qdata代表自然图像,x代表自然图像的采样,p(z)代表高斯分布,z代表高斯分布的采样,s代表分割标签,min代表取两者之间的最小值,E代表求数学期望;
编码器和生成器的损失函数为:
Figure BDA0002316001480000042
其中LFM代表特征匹配损失,LP代表感知损失,LKL代表两个分布的KL(Kullback-Leibler)散度,α1、α2、α3为对应损失的权重,其值分别设置为10、10、0.05;
Figure BDA0002316001480000054
T代表鉴别器的层数,Ni代表每层的元素个数,
Figure BDA0002316001480000051
代表第k个鉴别器的第i层,||·||1代表1范数;
LKL=DKL(q(z|x)||p(z))
p(z)是标准高斯分布,q是自然图像求得的分布,DKL代表求两个分布的KL散度;
Figure BDA0002316001480000052
其中C代表VGG19网络的输出,
Figure BDA0002316001480000053
代表2范数的平方。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有如下有益效果:
(1)本发明提出了一种新的任务和评价标准,即通过分割标签来生成图像,并且能够单独控制及改变生成图像里面某一类的功能,本发明提出了该任务的评价指标,计算应该改变的区域和不应该改变的区域的多样性;
(2)本发明相对于之前的方法,使用了分组卷积代替普通卷积,通过更改部分编码,尽可能达到更改生成图像对应类别的功能。
(3)通过本发明方法,可以实现图像部分编辑等应用,比如对人像只换衣服。
附图说明
图1是本发明实施例中一种编码器的结构示意图;
图2为本发明实施例中一种生成器的结构示意图;
图3为本发明实施例中一种CGB的结构示意图;
图4为本发明实施例中一种鉴别器的结构示意图;
图5为本发明实施例中一种生成图像结果示意图;
图6为本发明实施例中一种图像混合结果示意图;
图7为本发明实施例中一种图像编辑结果示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提供了一种语义上多模态图像生成的方法,包括:
(1)获取自然图像的分割标签,对自然图像和分割标签进行放大或缩小到指定大小,然后两者以概率进行水平翻转,根据分割标签得到自然图像的每一类作为一张单独的图像,并将其中有内容的部分放大到原图大小;
本发明实施例中,所述中图像尺寸默认设置为256×256,对于自然图像,采用双线性插值变成256×256像素大小,对于分割标签,采用的是最近邻插值。
(2)构建深度神经网络,包含编码器,生成器和鉴别器。编码器作用是将自然图像编码为高斯分布的采样,生成器的作用是将编码生成为图像,鉴别器的作用是鉴别图像是生成图像还是自然图像。其中:
编码器由6层分组卷积层(Conv1,Conv2,Conv3,Conv4,Conv5,Conv6)和激活函数构成,激活函数采用的是LeakyRelu,对激活函数之前的特征图进行实例规范化。
本发明实施例中,所述编码器的具体结构为(Conv1,Instance norm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instancenorm,LeakyRelu,Conv5,Instance norm,LeakyRelu,Conv6,Instance norm,LeakyRelu),最后通过Conv_mu和Conv_var分别预测高斯分布的均值和方差,所有的Conv使用的是分组卷积,设置的组数为类别数,即根据每个类别来进行编码。
生成器将编码通过几层卷积得到特征图,利用分割标签预测两个参数矩阵,将这两个参数矩阵分别乘上和加上特征图,然后对特征图放大2倍。重复整个过程,最后生成和原图一样大小的图像。
本发明实施例中,所述生成器的结构由多个类似的块堆叠而成,每个块里面使用分组卷积,随着网络的深入,块内的组数逐渐递减,图像尺寸逐渐变大。首先将编码器得到的编码通过一个卷积层,得到一个特征图,将分割标签通过分组卷积得到两个参数γ和β,将特征图乘以(1+γ)之后再加上β,然后将新得到的特征图采用同步的批量规范化之后输入到分组卷积。将得到特征图输入与之前相同的结构之中,再进行上采样将特征图放大两倍。重复以上流程得到和原图一样大小的图像。
鉴别器的结构与编码器类似,使用两个5层的卷积结构,将两个得到的特征图求平均值作为分类的概率。同时构建一个VGG19网络,去掉最后的池化层和全连接层,测量自然图像和生成图像在特征图上面的差别。
本发明实施例中,所述鉴别器的结构为两个(Conv1,Instance norm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instancenorm,LeakyRelu,Conv5)的结构,将自然图像和生成图像以及分割标签输入到该网络中,得到两个通道数为1的特征图。
进一步地,定义卷积形式Conv2d(Ni,No,kernel_size,stride,padding,groups),其中Ni代表输入通道数,No代表输出通道数,kernel_size代表卷积核大小,stride代表卷积步长,padding代表将输入向四周的补零个数,groups代表卷积的组数。以DeepFashion数据集为例,介绍详细的网络结构。
优选地,(3)中编码器里面卷积层的结构如下所示:
Conv1:Conv2d(3,256,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv2:Conv2d(256,512,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv3:Conv2d(512,1024,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv4:Conv2d(1024,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv5:Covn2d(2048,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv6:Covn2d(2048,2048,kernel_size=(3,3),stride=(2,2),padding=(1,1),groups=8)
Conv_mu:Covn2d(2048,64,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
Conv_var:Covn2d(2048,64,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
优选地,(4)中生成器的卷积层结构如下:
Conv_first:Covn2d(64,2560,kernel_size=(3,3),stride=(1,1),padding=(1,1),groups=8)
CGB1:CGB-c(2560)-g8,Upsample(2)
CGB2:CGB-c(2560)-g8,Upsample(2)
CGB3:CGB-c(2560)-g4,Upsample(2)
CGB4:CGB-c(1280)-g4,Upsample(2)
CGB5:CGB-c(640)-g2,Upsample(2)
CGB6:CGB-c(320)-g2,Upsample(2)
CGB7:CGB-c(160)-g1,Upsample(2)
其中,CGB模块通过分割标签得到参数γ和β,将两者看成规范化参数添加到特征图之中,然后再进行卷积运算。
其中c代表CGB里面卷积的通道数,g代表分组卷积的组数。
优选地,(5)中鉴别器的卷积层结构如下:
Conv1:Covn2d(11,64,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv2:Covn2d(64,128,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv3:Covn2d(128,256,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv4:Covn2d(256,512,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
Conv5:Covn2d(512,1,kernel_size=(4,4),stride=(2,2),padding=(2,2),groups=1)
(3)在训练阶段,步骤(1)中已经通过分割标签将自然图像里面的每个类别提取出来,对有内容的部分放大到原图大小。将这些类别的图像堆叠起来输入到编码器中。对每个类别最后输出一个8×16大小的编码,将编码输入到生成器中得到生成图像,将生成图像和自然图像以及分割标签一起输入到鉴别器中,得到两者的分类概率。训练过程分为两步交替进行。第一步是训练编码器和生成器,第二步单独训练鉴别器。对于编码器和生成器的训练,计算编码器的输出值的KL损失,鉴别器的分类损失,以及生成图像和自然图像在鉴别器和VGG19网络中的特征图的L1距离分别作为特征匹配损失和感知损失,将这以上几个损失值计算其加权平均数得到最终的编码器和生成器的损失值,对于鉴别器的训练,损失值只包括鉴别器的分类损失,将损失值通过反向传播来更新对应的网络参数。
在本发明实施例中,所述鉴别器包括的损失函数为:
Figure BDA0002316001480000091
其中D代表鉴别器,G代表生成器,qdata代表自然图像,x代表自然图像的采样,p(z)代表高斯分布,z代表高斯分布的采样,s代表分割标签,min代表取两者之间的最小值,E代表求数学期望。
编码器和生成器的损失函数为:
Figure BDA0002316001480000092
其中LFM代表特征匹配损失,LP代表感知损失,LKL代表两个分布的KL(Kullback-Leibler)散度,α1、α2、α3为对应损失的权重,其值分别设置为10、10、0.05。
Figure BDA0002316001480000093
T代表鉴别器的层数,Ni代表每层的元素个数,
Figure BDA0002316001480000094
代表第k个鉴别器的第i层,||·||1代表1范数。
LKL=DKL(q(z|x)||p(z))
p(z)是标准高斯分布,q是自然图像求得的分布,DKL代表求两个分布的KL散度。
Figure BDA0002316001480000101
其中C代表VGG19网络的输出,
Figure BDA0002316001480000102
代表2范数的平方。
(4)在图像生成阶段,首先在高斯分布中随机采样得到编码,将编码和分割标签输入到生成器中即可得到生成图像,对于每一类的编码都有固定的位置,因此只需要更改该位置的编码,就能改变生成图像里面该类的样式,同时其它类的改变微乎其微。
以下结合具体实施例说明本发明方法:
(1)制作数据集。在此说明我们仅在DeepFashion,Cityscapes和ADE20K数据集上面展示部分过程,其它数据集或者图像可同理得到。对于自然图像标记得到分割标签,分割标签一般以和原始图像同大小的图像表示,标签里面的每个位置的像素值代表该位置的类别。以DeepFashion数据集为例,将自然图像和分割标签都调整到256×256大小,然后分割标签按类别分成不同的通道,第n个通道值为1代表该位置属于类别n,值为0代表不属于该类别。构建深度神经网络,编码器的结构如图1所示,使用分割标签将自然图像分为不同的类,然后输入到编码器,其中Conv-c(,1*c*G)-gG,IN,LReLU中c代表卷积的通道数,g代表卷积的组数,s代表卷积的步长,若没有指明,默认的s参数为2,卷积核大小为3,padding为1,IN是实例规范化,LReLU是LeakyRelu。生成器网络结果如图2所示,Upsample(2)为上采用操作,将特征图放大两倍。CGB的结构如图3所示,F代表特征图的输入或者输出,Sync BN是同步批量规范化,GConv代表的是分组卷积。编码器和生成里面C和G的设置如表一所示。鉴别器网络的架构如图4所示,Concat操作是将自然图像和分割标签堆叠在一起输入。Downsample(2)是将图像进行下采样,缩小为原来的两倍。
表一 各数据集的参数设置
Figure BDA0002316001480000103
Figure BDA0002316001480000111
(2)训练阶段,将自然图像输入到编码器,得到编码,将编码输入到生成器得到生成图片,最后将分割标签,自然图像和生成图像输入到鉴别器中,使用梯度下降的方法训练网络。采用的优化方法是Adam,对于DeepFashion数据集遍历75次,从第50次开始逐渐降低学习率至0,对于Cityscapes和ADE20K数据集遍历200次,从100次开始逐渐降低学习率至0,初始的编码器和生成器的学习率为0.0001,鉴别器的学习率为0.0004。
(3)完成训练后,在图像生成阶段,从高斯分布里面随机采样得到编码,然后输入一张分割标签即可生成与该分割标签对应的图像,更改不同的编码可生成不同的图像,只更改某类对应位置的编码,可以尽可能地达到只更改生成图像中这一类的效果。展示效果如图5所示,最左边是输入的分割标签,右边是生成的图像,第一行是只改变衣服的编码,得到不同款式的衣服,而裤子和头发并没有发生改变,第二行是只改变裤子。
该方法在DeepFashion数据集上的一些测试结果如表二所示:
表二 DeepFashion数据集测试结果
FID mCSD mOCD LPIPS
9.50 0.0264 0.0033 0.228
其中FID一般代表图像的真实度,值越低代表图像的真实度越高,LPIPS代表图像多样性,值越大代表匹配的图像的多样性越强,mCSD代表需要改变的类别的多样性的均值,mOCD代表其余部分的多样性的均值,可以看到该方法能很大程度上改变某一类而且其它类变化较小。
示例二:
在本方法的基础上可以拓展出很多不同的应用,比如图像编辑,图像的混合搭配等。图6展示了换装过程,左上的三张图像是自然图像,选择其中的头发,衣服和裤子三个类来进行操作。右上是输入的分割标签,第二行是根据第一行的不同类的组合生成的图像,该方法能够将三个图像里面的不同类组合到一张图像里面去。图7展示了图像编辑,可以通过更改分割标签达到改变图像的生成内容。
以上示例仅作为本发明的技术方案而非对本发明作为限制,从事所属领域的普通技术人员在本发明的原则下所做的任何修改、替换等均在保护范围内。本发明的保护范围以权利要求书所述为基准。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种语义上多模态图像生成的方法,其特征在于,所述方法包括以下步骤:
(1)获取自然图像的分割标签,对自然图像和分割标签进行放大或缩小到指定大小,然后两者以概率进行水平翻转,根据分割标签得到自然图像的每一类作为一张单独的图像,并将其中有内容的部分放大到原图大小;
(2)构建深度神经网络,包含编码器、生成器和鉴别器,其中编码器作用是将自然图像编码为高斯分布的采样,生成器的作用是将编码生成为图像,鉴别器的作用是鉴别图像是生成图像还是自然图像;
(3)将(1)中不同类别的图像堆叠起来输入到编码器中,对每个类别输出一个预设大小的编码,将编码输入到生成器中得到生成图像,将生成图像和自然图像以及分割标签一起输入到鉴别器中,得到两者的分类概率,训练过程分为两步交替进行,第一步是训练编码器和生成器,第二步单独训练鉴别器,对于编码器和生成器的训练,计算编码器的输出值的KL损失,鉴别器的分类损失,以及生成图像和自然图像在鉴别器和VGG19网络中的特征图的L1距离分别作为特征匹配损失和感知损失,将这以上几个损失值计算其加权平均数得到最终的编码器和生成器的损失值,对于鉴别器的训练,损失值只包括鉴别器的分类损失,将损失值通过反向传播来更新对应的网络参数;
(4)在高斯分布中随机采样得到编码,将编码和分割标签输入到生成器中即可得到生成图像。
2.如权利要求1所述的语义上多模态图像生成的方法,其特征在于,所述步骤(1)中得到每个类的单独图像的方式为:
分割标签不同数字代表不同的类,这样通过每个类的掩码乘以自然图像得到每个类的图像,然后找到每个类的图像的边界,将这部分截取下来放大到原图大小。
3.如权利要求1或2所述的语义上多模态图像生成的方法,其特征在于,所述编码器由6层分组卷积层(Conv1,Conv2,Conv3,Conv4,Conv5,Conv6)和激活函数构成,激活函数采用的是LeakyRelu,对激活函数之前的特征图进行实例规范化。
4.如权利要求3所述的语义上多模态图像生成的方法,其特征在于,所述编码器的具体结构为(Conv1,Instance norm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instance norm,LeakyRelu,Conv5,Instance norm,LeakyRelu,Conv6,Instance norm,LeakyRelu),最后通过Conv_mu和Conv_var分别预测高斯分布的均值和方差,所有的Conv使用的是分组卷积,设置的组数为类别数,即根据每个类别来进行编码。
5.如权利要求1或2所述的语义上多模态图像生成的方法,其特征在于,所述生成器将编码通过几层卷积得到特征图,利用分割标签预测两个参数矩阵,将这两个参数矩阵分别乘上和加上特征图,然后对特征图放大2倍,重复整个过程,最后生成和原图一样大小的图像。
6.如权利要求5所述的语义上多模态图像生成的方法,其特征在于,所述生成器由多个类似的块堆叠而成,每个块里面使用组数相同的分组卷积,随着网络的深入,块内的组数逐渐递减,图像尺寸逐渐变大,首先将编码器得到的编码通过一个卷积层,得到一个特征图,将分割标签通过分组卷积得到两个参数γ和β,将特征图乘以(1+γ)之后再加上β,然后将新得到的特征图采用同步的批量规范化之后输入到分组卷积,将得到特征图输入与之前相同的结构之中,再进行上采样将特征图放大两倍,重复以上流程得到和原图一样大小的图像。
7.如权利要求1或2所述的语义上多模态图像生成的方法,其特征在于,所述鉴别器使用两个5层的卷积结构,将两个得到的特征图求平均值作为分类的概率,同时构建一个VGG19网络,去掉最后的池化层和全连接层,测量自然图像和生成图像在特征图上面的差别。
8.如权利要求7所述的语义上多模态图像生成的方法,其特征在于,所述鉴别器的结构具体为两个(Conv1,Instance norm,LeakyRelu,Conv2,Instance norm,LeakyRelu,Conv3,Instance norm,LeakyRelu,Conv4,Instance norm,LeakyRelu,Conv5)的结构,将自然图像和生成图像以及分割标签输入到该网络中,得到两个通道数为1的特征图。
9.如权利要求4或6或8所述的语义上多模态图像生成的方法,其特征在于,卷积形式为Conv2d(Ni,No,kernel_size,stride,padding,groups),其中Ni代表输入通道数,No代表输出通道数,kernel_size代表卷积核大小,stride代表卷积步长,padding代表将输入向四周的补零个数,groups代表卷积的组数。
10.如权利要求7所述的语义上多模态图像生成的方法,其特征在于,所述鉴别器所使用的损失函数为:
Figure FDA0003479499900000031
其中D代表鉴别器,G代表生成器,qdata代表自然图像,x代表自然图像的采样,p(z)代表标准高斯分布,z代表高斯分布的采样,s代表分割标签,min代表取两者之间的最小值,E代表求数学期望;
编码器和生成器的损失函数为:
Figure FDA0003479499900000032
其中LFM代表特征匹配损失,LP代表感知损失,LKL代表两个分布的KL(Kullback-Leibler)散度,α1、α2、α3为对应损失的权重,其值分别设置为10、10、0.05;
Figure FDA0003479499900000033
T代表鉴别器的层数,Ni代表每层的元素个数,
Figure FDA0003479499900000041
代表第k个鉴别器的第i层,||·||1代表1范数;
LKL=DKL(q(z|x)||p(z))
p(z)是标准高斯分布,q是自然图像求得的分布,DKL代表求两个分布的KL散度;
Figure FDA0003479499900000042
其中C代表VGG19网络的输出,
Figure FDA0003479499900000043
代表2范数的平方。
CN201911278401.2A 2019-12-13 2019-12-13 一种语义上多模态图像生成的方法 Active CN111062432B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911278401.2A CN111062432B (zh) 2019-12-13 2019-12-13 一种语义上多模态图像生成的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911278401.2A CN111062432B (zh) 2019-12-13 2019-12-13 一种语义上多模态图像生成的方法

Publications (2)

Publication Number Publication Date
CN111062432A CN111062432A (zh) 2020-04-24
CN111062432B true CN111062432B (zh) 2022-03-25

Family

ID=70300782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911278401.2A Active CN111062432B (zh) 2019-12-13 2019-12-13 一种语义上多模态图像生成的方法

Country Status (1)

Country Link
CN (1) CN111062432B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112102314B (zh) * 2020-11-02 2021-03-09 成都考拉悠然科技有限公司 基于不确定性来判断人脸图片质量的计算方法
CN112801058B (zh) * 2021-04-06 2021-06-29 艾伯资讯(深圳)有限公司 Uml图片的识别方法及系统
CN113989420A (zh) * 2021-09-30 2022-01-28 阿里巴巴云计算(北京)有限公司 图像生成系统及方法
CN114723843B (zh) * 2022-06-01 2022-12-06 广东时谛智能科技有限公司 多模态融合生成虚拟服装方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296699A (zh) * 2016-08-16 2017-01-04 电子科技大学 基于深度神经网络和多模态mri图像的脑肿瘤分割方法
CN110544275A (zh) * 2019-08-19 2019-12-06 中山大学 生成配准的带病灶分割标签的多模态mri的方法、系统及介质
CN110544239A (zh) * 2019-08-19 2019-12-06 中山大学 基于条件生成对抗网络的多模态mri转换方法、系统及介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582916B2 (en) * 2014-11-10 2017-02-28 Siemens Healthcare Gmbh Method and system for unsupervised cross-modal medical image synthesis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296699A (zh) * 2016-08-16 2017-01-04 电子科技大学 基于深度神经网络和多模态mri图像的脑肿瘤分割方法
CN110544275A (zh) * 2019-08-19 2019-12-06 中山大学 生成配准的带病灶分割标签的多模态mri的方法、系统及介质
CN110544239A (zh) * 2019-08-19 2019-12-06 中山大学 基于条件生成对抗网络的多模态mri转换方法、系统及介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Diverse Image Synthesis from Semantic Layouts via Conditional IMLE;Ke Li et al.;《Computer Vision and Pattern Recognition》;20190829;1-18 *
基于卷积神经网络的脑血管自动分割算法研究;陈圆;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180315;E070-97 *

Also Published As

Publication number Publication date
CN111062432A (zh) 2020-04-24

Similar Documents

Publication Publication Date Title
CN111062432B (zh) 一种语义上多模态图像生成的方法
CN108830912B (zh) 一种深度特征对抗式学习的交互式灰度图像着色方法
CN111368662B (zh) 一种人脸图像属性编辑方法、装置、存储介质及设备
CN107609587B (zh) 一种基于深度卷积生成对抗网络的多类别多视图数据生成方法
CN109712165B (zh) 一种基于卷积神经网络的同类前景图像集分割方法
CN113902921B (zh) 图像处理方法、装置、设备及存储介质
CN110097609B (zh) 一种基于样本域的精细化绣花纹理迁移方法
CN110223304B (zh) 一种基于多路径聚合的图像分割方法、装置和计算机可读存储介质
Rathore et al. Colour based image segmentation using L* a* b* colour space based on genetic algorithm
CN111932445A (zh) 对风格迁移网络的压缩方法及风格迁移方法、装置和系统
CN104182771B (zh) 基于带丢包自动编码技术的时间序列数据图形化分析方法
CN111597920A (zh) 一种自然场景下的全卷积单阶段的人体实例分割方法
CN109949200B (zh) 基于滤波器子集选择和cnn的隐写分析框架构建方法
CN112163401A (zh) 基于压缩与激励的gan网络的汉字字体生成方法
CN109447897B (zh) 一种真实场景图像合成方法及系统
CN110599495B (zh) 一种基于语义信息挖掘的图像分割方法
KR20230073751A (ko) 레이아웃 기반의 동일 화풍 영상 생성 시스템 및 방법
CN116542991A (zh) 一种用于裂缝图像分割的网络架构及其训练方法和分割方法
CN107533760B (zh) 一种图像分割方法和装置
CN111783862A (zh) 多注意力导向神经网络的立体显著性物体检测技术
EP1246124A2 (en) Image space display method and apparatus
CN113889234A (zh) 基于通道混合的编解码网络的医学图像分割方法
CN113065561A (zh) 基于精细字符分割的场景文本识别方法
CN110458849B (zh) 一种基于特征修正的图像分割方法
CN113554047A (zh) 图像处理模型的训练方法、图像处理方法及对应的装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant