一种基于自注意力模型的图像生成方法与流程

文档序号:15350407发布日期:2018-09-04 23:16阅读:203来源:国知局

本发明涉及图像处理领域,尤其是涉及了一种基于自注意力模型的图像生成方法。



背景技术:

图像处理和图像生成是计算机视觉领域的一个重要课题。如今,随着网络的普及和各式拍摄设备的发展,各种各样的图像的数量成指数增长。但是由于网络传输和拍摄设备的影响,人们获取的图片可能会出现不完整或模糊不清的问题,使得人们无法从图像中获取有效的信息。因此,通过各种图像修复和图像生成技术,可以快速识别和恢复图像,这在许多领域都有广泛的应用。如在医学工程领域,由于患者病变组织较暗,能见度偏低,医生难以分辨病变部位和正常部位,也难以对病变部位的程度进行判断,因此需要对较暗和模糊的图像进行清晰化增强处理;在军事工程领域,由于恶劣天气的影响,当远距离侦查敌情时获取的图像通常都较为模糊,因此也需要图像处理来突出有用信息;在安全防卫领域,也需要对监控摄像获取的嫌疑人物图像进行清晰化处理,帮助刑侦人员获取有效人物特征信息。然而,现有的图像生成技术仍然存在处理后的图片分辨率较低,计算成本较高的问题。

本发明提出了一种基于自注意力模型的图像生成方法,将输入像素和预测像素的三个颜色通道强度视为分类变量并进行编码,将宽度和通道的尺寸组合成一个三维张量,将位置的当前表示与其他位置的表示进行比较,从而获得对其他位置的注意力分布,为所有查询块并行计算自注意力,同时为所有位置并行计算前馈网络和层的归一化,使用一维局部注意力和二维局部注意力两个方案来选择查询块及其相关联的存储块邻域。本发明基于自注意力模型,显著增加了模型在实践中可以处理的图像的大小,能够有效地利用图像的二维特性,大大提高了生成图像的质量。



技术实现要素:

针对图片分辨率较低、计算成本较高的问题,本发明的目的在于提供一种基于自注意力模型的图像生成方法,将输入像素和预测像素的三个颜色通道强度视为分类变量并进行编码,将宽度和通道的尺寸组合成一个三维张量,将位置的当前表示与其他位置的表示进行比较,从而获得对其他位置的注意力分布,为所有查询块并行计算自注意力,同时为所有位置并行计算前馈网络和层的归一化,使用一维局部注意力和二维局部注意力两个方案来选择查询块及其相关联的存储块邻域。

为解决上述问题,本发明提供一种基于自注意力模型的图像生成方法,其主要内容包括:

(一)图像表示;

(二)自注意力模型;

(三)局部自注意力。

其中,所述的图像表示,将输入像素和预测像素的rgb强度都视为分类变量;每个输入像素的三个颜色通道使用信道强度值为0-255的256维嵌入向量的信道专用集合进行编码;对于输出强度,共享一个单独的256维跨通道嵌入;对于宽度为w和高度为h的图像,将宽度和通道的尺寸组合成一个三维张量,其形状为[h,w·3,d]。

进一步地,所述的像素,对于每个像素表示,添加该像素的坐标的d维编码,编码由坐标的正弦和余弦函数组成,不同维度的不同频率表示为pe(pos,2i)=sin(pos/100002i/d)和pe(pos,2i+1)=cos(pos/100002i/d);

其中,pos和i分别是位置和维度;位置编码的每个维度对应于正弦曲线,并且波长形成从2π到10000·2π的几何级数;由于需要表示两个坐标,因此使用维度的d/2来对行数和维度的其他d/2进行编码以对列和颜色通道进行编码。

其中,所述的自注意力模型,每个自注意力层为每个位置计算一个新的d维表示,即每个像素的每个通道;为了重新计算给定位置的表示,首先将位置的当前表示与其他位置的表示进行比较,从而获得对其他位置的注意力分布,然后这个分布用于其他位置的表示对下一个表示的加权;

q′=layernorm(qa+dropout(w1relu(w2qa)))(2)

公式(1)和(2)描述了自注意力和全连接前馈层的计算结果。

进一步地,所述的全连接前馈层,w1和w2是前馈层的参数,并且在层中的所有位置上共享;除了多头注意力之外,前馈层的参数完整描述了在每个层中执行的所有操作,并独立于每个位置;

将像素的通道或位置的当前表示重新计算为查询q;其他位置(其表示将用于计算q的新表示)是m1,m2,…,它们一起构成存储矩阵m的列;m也可以包含q;首先分别用学习矩阵wq和wk线性变换q和m;

自注意力机制将q与存储器中每个像素的通道表示进行比较,得到点乘积,按进行缩放;将softmax函数应用于所得的兼容性分数,将获得的矢量作为注意力分布在存储器中的像素通道上;在将另一线性变换wv应用于存储器m之后,计算经转换的存储器的加权平均值,其由注意力分布加权;然后对所得到的矢量应用单层全连接前馈神经网络和修正线性激活,然后进行另一个线性变换;这些学习参数在所有位置共享,但层与层之间不同。

其中,所述的局部自注意力,存储器lm中包含的位置数或m的列数对自注意力机制的可扩展性具有巨大的影响,这在o(h·w·lm·d)中具有时间复杂性;

超分辨率模型的编码器在8×8像素的图像上运行,并且在计算上可以考虑所有192个位置;然而在实验中,解码器产生具有3072个位置的32×32像素图像,从而使所有位置不可用。

进一步地,所述的解码器,受卷积神经网络的启发,通过采用局部性的概念来解决位置不可用的问题,将存储矩阵m中的位置限制在查询位置周围的局部邻域中;然而,改变每个查询位置的这个邻域将禁止将大部分自注意力所需的计算打包成两个矩阵乘法:一个用于计算成对比较,另一个用于生成加权平均值;为了避免这种情况,将图像分割成查询块,并将其中的每一个与还包含查询块的较大内存块相关联;对于来自给定查询块的所有查询,该模型参与同一个存储矩阵,由存储块中的所有位置组成。

进一步地,所述的查询块,为所有查询块并行计算自注意力,同时为所有位置并行计算前馈网络和层的归一化;实验中,使用两种不同的方案来选择查询块及其相关联的存储块邻域,将联合像素分布的两个不同因子分解成条件分布;这两个方案分别为一维局部注意力和二维局部注意力。

进一步地,所述的一维局部注意力,首先用光栅扫描顺序的位置编码平滑输入张量;为了计算生成的线性化图像上的自注意力,将该长度划分为长度为lq的非重叠查询块q,必要时用零填充;尽管在线性化图像中连续,但这些块在图像坐标空间中可能不连续;对于每个查询块,从与q相同的位置构建存储块m,并且添加与之前生成的像素相对应的额外lm位置,这可能导致重叠的存储块。

进一步地,所述的二维局部注意力,在二维局部注意模型中,用位置编码将输入张量划分为原始图像空间中连续的矩形查询块;生成一个接一个的查询块图像,按照光栅扫描顺序对块进行排序;在每个块内,再次以光栅扫描顺序生成各个位置或像素通道;使用由高度和宽度lq=wq·hq指定的大小为lq的二维查询块,以及分别通过hm,wm和wm像素将查询块扩展到顶部、左侧和右侧的内存块。

附图说明

图1是本发明一种基于自注意力模型的图像生成方法的系统框架图。

图2是本发明一种基于自注意力模型的图像生成方法的自注意力模型。

图3是本发明一种基于自注意力模型的图像生成方法的一维局部注意力和二维局部注意力。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合,下面结合附图和具体实施例对本发明作进一步详细说明。

图1是本发明一种基于自注意力模型的图像生成方法的系统框架图。主要包括图像表示,自注意力模型,局部自注意力。

图像表示,将输入像素和预测像素的rgb强度都视为分类变量;每个输入像素的三个颜色通道使用信道强度值为0-255的256维嵌入向量的信道专用集合进行编码;对于输出强度,共享一个单独的256维跨通道嵌入;对于宽度为w和高度为h的图像,将宽度和通道的尺寸组合成一个三维张量,其形状为[h,w·3,d]。

对于每个像素表示,添加该像素的坐标的d维编码,编码由坐标的正弦和余弦函数组成,不同维度的不同频率表示为pe(pos,2i)=sin(pos/100002i/d)和pe(pos,2i+1)=cos(pos/100002i/d);

其中,pos和i分别是位置和维度;位置编码的每个维度对应于正弦曲线,并且波长形成从2π到10000·2π的几何级数;由于需要表示两个坐标,因此使用维度的d/2来对行数和维度的其他d/2进行编码以对列和颜色通道进行编码。

局部自注意力,存储器lm中包含的位置数或m的列数对自注意力机制的可扩展性具有巨大的影响,这在o(h·w·lm·d)中具有时间复杂性;

超分辨率模型的编码器在8×8像素的图像上运行,并且在计算上可以考虑所有192个位置;然而在实验中,解码器产生具有3072个位置的32×32像素图像,从而使所有位置不可用。

受卷积神经网络的启发,通过采用局部性的概念来解决位置不可用的问题,将存储矩阵m中的位置限制在查询位置周围的局部邻域中;然而,改变每个查询位置的这个邻域将禁止将大部分自注意力所需的计算打包成两个矩阵乘法:一个用于计算成对比较,另一个用于生成加权平均值;为了避免这种情况,将图像分割成查询块,并将其中的每一个与还包含查询块的较大内存块相关联;对于来自给定查询块的所有查询,该模型参与同一个存储矩阵,由存储块中的所有位置组成。

图2是本发明一种基于自注意力模型的图像生成方法的自注意力模型。每个自注意力层为每个位置计算一个新的d维表示,即每个像素的每个通道;为了重新计算给定位置的表示,首先将位置的当前表示与其他位置的表示进行比较,从而获得对其他位置的注意力分布,然后这个分布用于其他位置的表示对下一个表示的加权;

q′=layernorm(qa+dropout(w1relu(w2qa)))(2)

公式(1)和(2)描述了自注意力和全连接前馈层的计算结果。

w1和w2是前馈层的参数,并且在层中的所有位置上共享;除了多头注意力之外,前馈层的参数完整描述了在每个层中执行的所有操作,并独立于每个位置;

将像素的通道或位置的当前表示重新计算为查询q;其他位置(其表示将用于计算q的新表示)是m1,m2,…,它们一起构成存储矩阵m的列;m也可以包含q;首先分别用学习矩阵wq和wk线性变换q和m;

自注意力机制将q与存储器中每个像素的通道表示进行比较,得到点乘积,按进行缩放;将softmax函数应用于所得的兼容性分数,将获得的矢量作为注意力分布在存储器中的像素通道上;在将另一线性变换wv应用于存储器m之后,计算经转换的存储器的加权平均值,其由注意力分布加权;然后对所得到的矢量应用单层全连接前馈神经网络和修正线性激活,然后进行另一个线性变换;这些学习参数在所有位置共享,但层与层之间不同。

图3是本发明一种基于自注意力模型的图像生成方法的一维局部注意力和二维局部注意力。为所有查询块并行计算自注意力,同时为所有位置并行计算前馈网络和层的归一化;实验中,使用两种不同的方案来选择查询块及其相关联的存储块邻域,将联合像素分布的两个不同因子分解成条件分布;这两个方案分别为一维局部注意力和二维局部注意力。

如左图所示,在一维局部注意模型中,首先用光栅扫描顺序的位置编码平滑输入张量;为了计算生成的线性化图像上的自注意力,将该长度划分为长度为lq的非重叠查询块q,必要时用零填充;尽管在线性化图像中连续,但这些块在图像坐标空间中可能不连续;对于每个查询块,从与q相同的位置构建存储块m,并且添加与之前生成的像素相对应的额外lm位置,这可能导致重叠的存储块。

如右图所示,在二维局部注意模型中,用位置编码将输入张量划分为原始图像空间中连续的矩形查询块;生成一个接一个的查询块图像,按照光栅扫描顺序对块进行排序;在每个块内,再次以光栅扫描顺序生成各个位置或像素通道;使用由高度和宽度lq=wq·hq指定的大小为lq的二维查询块,以及分别通过hm,wm和wm像素将查询块扩展到顶部、左侧和右侧的内存块。

对于本领域技术人员,本发明不限制于上述实施例的细节,在不背离本发明的精神和范围的情况下,能够以其他具体形式实现本发明。此外,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,这些改进和变型也应视为本发明的保护范围。因此,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

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