APP下载

具有区域间注意力机制的街景生成模型设计∗

2020-12-30李凤仪于明学

北京电子科技学院学报 2020年3期
关键词:街景区域间注意力

李凤仪 于明学,2 金 鑫

1. 北京电子科技学院,北京市 100071 2. 西安电子科技大学, 西安市 710126

引言

由语义标签图生成高清图像,具有非常广阔的应用场景,首先最重要的使用场景,便是生成用于视觉训练的综合数据集。 在深度学习中,数据和显卡算力已成为制约深度学习发展的两大瓶颈,在显卡算力确定的情况下,数据集的规模,以及数据集的质量成为深度学习领域务必要解决的问题。 对于一个特定的视觉任务,一个分布均匀,实例丰富,高度清晰的大规模数据集,对于训练模型的收敛,以及训练模型的泛化性能具有十分重要的促进作用。 在视觉领域中,最缺乏的便是高清的、带有语义标签的城市街景数据集。 使用现有的成熟语义分割算法,可以轻易地得到数量足够大的标签图,再由本文提出的高清图像生成算法,可以大规模地生成满足特定任务的视觉数据集。 在一定程度上缓解了深度学习遭遇瓶颈的压力。 其次,对于语义标签引导下的高清图像生成,本质上是两个图像域之间的映射,将标签图与真实图片对调,即可生成去彩后的实例图,这在自动导航领域,具有重要的作用。 最后,由简单的语义标签即可生成高清的真实图片,可以作为神笔马良,只需要简单的画出轮廓,为其赋之语义,就可以生成在专业摄影中才会出现的场景。

1 相关技术理论基础

1.1 GAN 基础

Ian GoodFellow 等首次提出GAN[1],GAN 的根本目的在于用一个生成器来捕获数据分布,用一个辨别器来估计样本是来自真实分布而非拟合分布的概率。 生成器的训练过程是为了最大化辨别器犯错误的概率,也就是最大化辨别器估计出错的概率。 GoodFellow 指出,GAN 模型在生成器和辨别器的函数空间中存在唯一解,即生成器还原了训练数据的分布,也就是辨别器给出的估计概率总是1/2。

为了更好的表示,本文定义数据集为x,其真实分布为px。

对于条件GAN,所解决的是本文中所涉及的图像翻译问题。 在条件GAN 中,传入生成器的是语义标签图像而非噪音。 设定辨别器为D,生成器为G,z 为随机噪声矢量,c 为条件输入矢量,x 为训练样本,条件GAN 的网络流程图如图1.1。

为了更好的表示,对于训练集中的每一个图像对{(si,xi)}, x 代表真实图像,s 代表真实图像对应的语义标签,其生成映射为G(s;Qg), 训练中对于生成器,最小化公式为:

而对于总的训练,即优化目标函数如下所示:

1.2 批处理归一化(Batch Normalization)

批处理归一化提出了一种批标准化方法来消除由于网络层输入分布变化而带来的协变量偏移现象。 批标准化修正了每一层输入的均值和方差,从而将网络层的输入固定。 这样减少了网络层对于参数和初始值的依赖,增加了在训练中梯度的流通性,也减少因落于激活函数饱和区域而引发的梯度消失现象。 因为每一层的输入都归一化为固定分布,这可以针对不同的激活函数,从而让其落入激活函数中梯度较大的区域(非饱和区域)。 归一化函数如下所示:

对于具有d 维的输入: x =(x1,x2,…,xd),对每一维进行如下标准化:

其中 E[xk()] 表示第 k 维的均值,var[xk()] 代表第k 维的方差。 同时,为了保证批标准化不会改变网络层,防止将插入到网络的变换变为恒等变换。 批处理归一化添加了额外的激活值α,β。 这样也变相地进行了一次域的适应。 最终的批处理归一化公式为:

这样,批处理归一化消除了内部协变量偏移现象,加速了网络的反向传播速度,基本消除了梯度消失问题。

1.3 实例归一化(Instance Normalization)

实例归一化公式如下:

其中H,W 代表图像的高和宽, xt,i,j,k表示第t 张图片中的第i 维的第j 和k 位置的像素,实例归一化在每一次归一化时,往往进行放缩,公式为:

其中D. Ulyanov 等人发现[2],使用不同的γ和β 会造成不同的风格,自此,各种利用实例归一化的风格迁移变体也应运而生。

1.4 残差(ResNet)结构

残差网络[3]被用于深层网络中梯度消散问题,以及解决网络的退化问题。 残差网络的设计是基于这样目标,增加网络的深度,不求增加网络的性能,但至少保证其性能不会下降,也就是说,后面增加的层数,至少可以拟合为恒等变换。

假如H(x) 是深层网络的总输出,则:

H(x)=f(x)+x

f(x) 表示深层网络某一层的输出,x 为深层网络某一层的输入。 当一个深层网络在某一层,其拟合能力达到最强,后面增加的层都会导致损失函数增加时,x 会自动学习到恒等于0,这样,深层次的网络便实现了一种恒等变换的能力。残差可以在至少不损失网络能力的情况下,增加网络深度。

2 具有区域间注意力生成器整体设计

2.1 传统模型问题分析

pix2pixHD[4]等生成器,都是先经过不断地下采样,获得一个全局的依赖关系,并增加维度,然后经过多个残差模块,增加网络深度,增加网络的学习能力,让网络能够为每一个类赋予其相应的特征,再进行上采样,恢复图像原先的尺寸。这样做有几个不足的地方,首先,难以获得长距离的依赖关系。 也就是说,虽然,在经过不断地下采样(一般为3 层)后,卷积的感受野在不断地扩大,但高清图像精度很高,一般达到,所以难以捕捉到全局的对应依赖关系,比如,图片中有一个横跨整张图片但不连贯的房子,由树木,广告牌等遮盖,这样,虽然经过了下采样,卷积层的感受野也不断增大,但是难以获得图片左上角和右下角都是房子像素的依赖关系。 而且,不断地下采样后,导致图片中不同地方的特征过于糅合,难以生成精细的图像。 其次,对于一个的图像,不同地方具有相应的语义关系,但由于特征过于糅合,对于不同地方具有相同语义关系的生成,难以做到准确化。 比如,一张图片左上角的语义标签是人和车,右下角也有相同的语义标签,但是在生成时,由于特征的糅合,左上角的人和车生成时受左上角周围像素的影响,而右下角的人和车在生成时,受右下角周围像素的影响,这样会导致同样语义下,不同的生成,难以做到准确性。 此外,整体生成中,某一像素的生成必然会受到其他的位置的影响,在全局范围内,必然会导致一个均一化的结果,也就是像素模糊。

2.2 整体设计分析

2.2.1 整体设计介绍

基于以上分析,本文设计了一个具有区域间注意力机制的街景生成模型,此模型基于GAN结构,模型整体设计如图2.1 所示。

其中具有区域间注意力机制的生成器具体结构如图2.2 所示。

图像语义标签图,编码阶段:先经过一层卷积扩充维度到64 维,经过3 次卷积进行下采样,同时将维度扩大到512 维。 然后网络分为四个分支,分别用于生成左上角,右上角,左下角,右下角。 每个分支先经过一层自注意力层,获取区域间的长距离依赖关系,再通过6 个残差块结构,增加网络深度,再经过一层自注意力层,进一步提取依赖关系。 解码阶段:4 个部分进行拼接,连续进行三次反卷积,恢复到图像原尺寸,最后接一层卷积输出RGB 图像。

辨别器具体结构图如图2.3 所示。

本文将语义标签图分别与训练集真实图片,生成器生成的假图片在通道维度上进行拼接,作为辨别器的输入,辨别器分为两个尺度,分别为原尺度,以及降采样两倍后尺度。 在每一个尺度上,输入都连续经过4 层的下采样卷积层,最后经过一层卷积,在每个位置上输出0 或者1,作为预测图像的真假,0 代表当前位置预测为假图片,1 代表当前位置预测为真图片。

2.2.2 整体设计分析

为了解决第一个问题,要获取图像间的依赖关系,本文生成器在每一个部分开始生成时,添加了自注意力层。 自注意力机制相较于注意力机制,减少了对于外部信息的依赖,更擅长捕捉图像数据间的内部依赖性。

自注意力机制借鉴于计算机视觉经典非局部均值,其建立了图像上有一定距离的像素之间的关系。 为了获取两个像素之间的关联关系,自注意力机制将输入分别经过两个卷积后,相乘,然后经过softmax 层,获得其关联关系,即注意力热图(attention map),原始的输入经过一次卷积后,再和注意力热图相乘,获得了像素间的长距离、多层次的依赖关系。

自注意力机制模块结构图如图2.4 所示。

如上图2.4,记自注意力的输入为x ∈RC×N,为了计算注意力,先将x 转化为两个特征空间f,g,其中f(x) =Wfx,g(x) =Wgx。 计算得到的注意力热图公式为:

为了解决第二个问题,本设计生成器将网络分为四个分支,分别负责每一部分的生成。 分为四个分支是基于这样的一个事实:对于一张1024×512 的图片,图片中距离较远的两个部分拥有相对独立的语义,每一部分的生成不依赖于另一部分。 这样本部分在生成时,只需关注自己部分的语义关系,学习到的类别特征不过于糅合,生成的准确性更强。 另外,还有一个好处是,在生成时,无需考虑全局的类别信息,会减少均一化,增加清晰度。

对于辨别器,为了能更加准确的分辨真假图像,本文类似于pix2pixHD[4],采用多尺度的辨别器以及能够提供细节信息的PatchGAN。 同时,为了更好的约束GAN 的训练,本文采用了L1 损失函数,用于代替原先的均方差损失函数。

多尺度Patch GAN 辨别器有如下几点好处:

1. 将语义标签图与真假图片拼接作为输入,是为了更好的提取语义轮廓信息。 在一定意义上,可以将辨别器看作是语义分割的模型,将图片与语义标签图一块作为网络的输入,最后预测在每一个位置上的真假,就在一定意义上对图片进行语义分割。 当模型将某一像素预测成某一类时,如果与输入的语义标签中当前位置像素的类别一致,则输出为1,否则,输出为0。

2. 条件GAN 用于图像生成,本质上是像素与像素之间映射的问题,但是,如果要求对每一个像素进行精准的判断,则会导致约束过强,GAN 训练崩溃。 所以,将输入先进行4 层的下采样后,再进行预测,一方面可以去除一些冗余的信息,提取更多共性的特征。 另一方面,4 层的下采样后,对某一位置的预测其实是对一块位置的预测,这样可以让模型有一定的空间,减轻过强的约束。

3. 应用了具有马尔可夫的PatchGAN,来提供细节信息,如纹理,轮廓等。 辨别器每一层下采样的卷积,都相当于在提取一个卷积核感受野大小的细节特征。 这些细节特征在理论上是相互独立的,符合马尔可夫性质。 辨别器分别将真图片与假图片通过每一层下采样卷积后的结果保存,用L1 损失函数进行比对约束,用于促进生成器细节方面的生成。

2.3 模型训练过程

具体训练过程如下:

1.语义分割图先与生成器生成的假图片一起送入辨别器,得到“辨别器将假图片预测为假图片”所造成的损失Lfakefake。

2.语义分割图与真实图片一起送入辨别器,得到“辨别器将真图片预测为真图片”所造成的损失Ltruetrue,并保存4 层下采样卷积后的结果。

3.语义分割图与假图片再次一起送入辨别器,得到“辨别器将假图片预测为真图片”所造成的损失Lfaketrue, 并保存4 层下采样卷积后的结果。

4.将两次保存结果进行L1 损失比较,计算细节损失Ldetail。

5.计算不同层的VGG 感知损失LVGG。

6.分别对生成器与辨别器进行训练。 其中生成器损失为:Lg=Lfaketrue+Ldetail+LVGG。 辨别器损失为:Ld=Lfakefake+Ltruetrue。

3 实验结果与分析

针对街景生成模型,本设计采取的数据集是经典的Cityscapes[5]街景数据集。 本节比较了目前效果最好的街景生成模型pix2pixHD[4]和本文提出的具有区域间注意力机制的街景生成模型生成效果(因生成图片为1024×512 尺度,pix2pixHD[4]采用第一阶段训练结果,无实例图输入)。 图3.1 展示了本文街景生成模型生成效果图,图3.2 展示了本文街景生成模型与pix2pixHD[4]街景生成模型的效果对比图。 图3.3 展示了本文模型生成效果与pix2pixHD[4]街景生成模型细节对比。 表3.1 列出了本文提出的街景生成模型与pix2pixHD[4]街景生成模型相关指标对比,表3.2 列出了本文街景生成模型在19 类图像分割中不同类别的相关精度。

3.1 数据集介绍

Cityscapes[5]数据集由2975 张训练图片以及500 张测试图片组成,数据集的采景来自德国的16 个城市,法国的一个城市以及瑞士的一个城市。 Cityscapes[5]数据集标准尺寸为2048×1024。 本文因服务器GPU 设备影响,所提出的模型以及对比模型均在1024×512 尺度上进行训练与测试。

3.2 实验环境介绍

本文提出模型的实验环境为:Intel i7,系统为ubuntu 16.04 LST,GPU 为双路titan xp,显存共为24G。 实验所选深度学习框架为Pytorch。

3.3 实现细节

本文使用LSGAN[6]用于稳定训练,具体的实验参数为:进行200 轮训练,一个训练批次为2,初始学习率为0.0002,每一轮下降0.00001,使用的优化算法为Adam[7]优化算法,其动量参数为0.5。 损失函数中,采用的10 个PatchGAN损失,感知损失[8]采用的是VGG[9]不同层的对比L1 损失。

3.4 实验结果展示与分析

图4.1 展示了生成结果,本文生成图像尺度为1024×512,展示图左边为输入的语义标签图,右边为生成的效果图。

在图3.1 中,基于区域间注意力机制的街景生成模型生成的图像在1024×512 尺度上高清可见,基本符合人类对于真实图片的感官,图像中不同区域的相同类别如树木,皆能很好的生成,这说明模型充分获取了长距离依赖信息,在不同空间上的同类物体具有高的响应,同时,不同物体之间的衔接正常,区域与区域之间过渡自然,单一区域的物体生成没有受太多其他区域的影响,生成效果良好。

图 3.2 展示了本文提出的模型与pix2pixHD[4]模型的效果对比图。

如图3.2 对比可以看到,基于区域间注意力机制的街景生成模型,在生成效果(2014×512)上与现有的最佳模型pix2pixHD[4]在人眼感官上相差不大,对于细节比较而言,本文实验模型在光影上更加突出,色彩更加鲜亮。

为了更好地对比细节生成效果,本文对比了具有区域间注意力机制的街景生成模型以及pix2pixHD[4]街景生成模型生成效果细节方面对比。 如图3.3 所示(截取细节部分,上面一行为pix2pixHD[4]生成效果,下一行为具有区域间注意力机制的街景生成模型生成效果)。

如图3.3 可以看到,本文提出的具有区域间注意力机制的街景生成模型在细节方面生成效果更佳,在房子细节方面,如窗户等生成的更加真实,此外,建筑物的颜色也更加丰富。

此外,为了更好的比较两个模型的生成效果,本文对两个模型生成图片做语义分割,对每一个模型,分别计算真实图片分割后的语义标签以及生成图片分割后的语义标签,再计算两者的均交并比、像素精度(标记正确像素占总像素的比例)、均像素精度(每个类内像素分类正确的比例,之后求所有类的平均)。 生成的图像越接近真实图片,交并比应该越高,像素的精度也更高。

本文采用PSPNet[10]作为语义分割模型,模型文件取于在Cityscapes[5]训练好的具有19 类的训练模型,其中均交并比以及像素的精度如表3.1 所示。

表3.1 具有区域间注意力机制街景生成模型与pix2pixHD[4]生成效果指标对比

由表3.1 可知,本模型在1024×512 尺度上的生成效果强于pix2pixHD[4],平均交并比提高了0.0006,像素精度提高了0.0062,均像素精度减少了 0.0050。 指标效果略好于原pix2pixHD[4]模型。

同时,本文具体比较了具有区域间注意力机制的街景生成模型与pix2pixHD[4]在19 类语义分割中不同类别的精确度,所选类别为路、建筑物、车、以及人四类。 结果如表3.2 所示。

表3.2 具有区域间注意力机制街景生成模型不同类别生成准确度对比

由此表可以看出,具体到某一类别的生成上,本文设计的模型在公路的生成上低于pix2pixHD[4],在建筑物、汽车、天空等类别的生成上高于pix2pixHD[4]的生成效果。 本文通过分析认为,公路的在整个图片中占据的篇幅较大,本文采取区域生成的方法,在一定程度上割裂了类别整体,这导致生成效果较差。

本文实验模型生成器损失与辨别器损失在训练中不断波动,这也是不断对抗的表现,其中生成器损失整体上高于辨别器损失,这是因为,生成图片与真实图片仍旧有所差距,这导致辨别器还是可以以稍大概率辨别出真实图片与生成图片。 但是,辨别器损失在后期基本上稳定在0.5 上下,这表明后期生成的图片与真实图片差距在逐渐缩小。

4 结语

本文介绍了街景生成中前沿的各种模型算法,并分析了街景生成中存在的两个问题,一是无法获取长距离依赖,二是不同区域间生成相互影响。 为了解决所述问题,本文设计了具有区域间注意力机制的街景生成模型。 该模型将图像分部分生成,并应用于自注意力机制,可以获取长距离依赖,又保持了区域间的独立性。 通过实验分析,设计的模型对于1024×512 尺度的街景生成具有改善作用,生成的图像在视觉效果中更加清晰,并且在相关指标中也有所提升。

猜你喜欢

街景区域间注意力
让注意力“飞”回来
炫彩街景看过来
街景
城市街景
“扬眼”APP:让注意力“变现”
3D街景
A Beautiful Way Of Looking At Things
中国电子信息产业转移特征及驱动因素——基于区域间投入产出表
结合区域间差异性的水平集演化模型
外电入鲁后山东电网与互联系统区域间功率交换能力的研究