基于多头类卷积自注意力的图像特征编码方法、装置及电子设备

未命名 09-29 阅读:64 评论:0


1.本发明属于图像处理领域,具体涉及一种基于多头类卷积自注意力的图像特征编码方法、装置及电子设备。


背景技术:

2.在计算机视觉(cv)领域中,基于人工智能的各种图像处理技术已经得到显著发展,并且具有广泛应用。计算机视觉可以应用于多种不同的图像处理任务,诸如图像分类、图像分割以及目标检测等等。针对这些图像处理任务,通常需要获取图像的特征表示以进行进一步的处理。图像特征编码可减少原始输入的数据维度或对原始的特征进行重新组合便于后续的使用。
3.近年来,随着transformer模型从自然语言处理领域迁移到计算机视觉领域,利用transformer提取图像特征逐渐成为流行趋势。高分辨率transformer相对视觉transformer(vision transformer)包含更丰富的空间信息,可以提取到高分辨率图像特征,并用于图像分类任务;然而,这些transformer模型存在空间结构信息丢失、局部建模能力不足、计算复杂度高以及训练收敛缓慢等问题,导致提取出的图像特征不够准确,且处理图像时的性能不佳。


技术实现要素:

4.基于现有技术存在的问题,本发明提出了基于多头类卷积自注意力的图像特征编码方法、装置及电子设备,在transformer模型中引入了类似于卷积神经网络的归纳偏置,提出了多头类卷积自注意力机制,它在将目标图像的输入特征张量展开为q展开特征、k展开特征和v展开特征时,以及编码为q查询特征、k键特征和v值特征时基于局部自注意力进行计算,其具备卷积的特性,相比与传统卷积而言,本发明处理后的目标图像拥有更强的局部建模能力。
5.在本发明的第一方面,本发明的一种基于多头类卷积自注意力的图像特征编码方法,所述方法包括:
6.获取目标图像,并对所述目标图像进行预处理;
7.将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;
8.对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;
9.对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;
10.对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用
点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;
11.利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。
12.在本发明的第二方面,本发明还提供了一种基于多头类卷积自注意力的图像特征编码装置,所述装置包括:
13.图像获取模块,用于获取目标图像,并对所述目标图像进行预处理;
14.特征提取模块,用于将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;
15.特征展开模块,用于对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;
16.特征编码模块,用于对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;
17.多头自注意力模块,用于对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;
18.多头混洗模块,利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。
19.在本发明的第三方面,本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明第一方面所述的一种基于多头类卷积自注意力的图像特征编码方法中的步骤。
20.本发明的有益效果:
21.本发明采用了多头类卷积自注意力机制将目标图像的输入特征张量进行展开和编码操作,相较于传统的自注意力机制方式,本发明更加注重特征点的局部连接特性、平移不变性以及空间等变性,增强了transformer模型在处理图像时的性能,有助于改善transformer模型对图像的底层局部特征的学习,并显著降低显存占用。本发明在创建q、k展开特征的特征变换过程中加入了特征压缩(squeeze)的操作,该操作能够线性地降低生成互相关矩阵的计算成本。
附图说明
22.图1是本发明实施例的基于多头类卷积自注意力的图像特征编码方法流程图;
23.图2是本发明实施例的特征展开示意图;
24.图3是本发明实施例的特征编码示意图;
25.图4是本发明实施例的特征压缩示意图。
具体实施方式
26.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
27.图1是本发明实施例的基于多头类卷积自注意力的图像特征编码方法流程图,如图1所示,所述方法包括:
28.101、获取目标图像,并对所述目标图像进行预处理;
29.在本发明实施例中,所述目标图像是现有的任意可以被用来进行图像特征编码的原始图像。
30.例如,原始图像可以包括虚拟模型,输入图像可以包括虚拟模型的脸部。虚拟模型可以虚拟人物模型、虚拟动物模型或虚拟卡通模型(卡通人物模型或卡通动物模型)等各种具有脸部的模型,本公开的实施例对虚拟模型的具体类型不作限制。
31.例如,原始图像可以为视频中的一帧,即原始图像可以为视频帧。原始图像也可以为静态图像。原始图像可以通过影像获取装置获取。影像获取装置可以包括智能手机的摄像头、平板电脑的摄像头、个人计算机的摄像头、数码照相机的镜头、监控摄像头或者网络摄像头等;或者,该摄像头可以是用于拍摄可见光或红外光的图像的摄像头。
32.例如,原始图像可以是影像获取装置直接采集到的初始图像或影像获取装置直接拍摄得到的视频中的一帧(下面称为初始视频帧),也可以是对初始图像或初始视频帧进行预处理之后获得的图像。
33.例如,为了避免目标图像的数据质量、数据不均衡等对于图像处理的影响,本公开的实施例提供的图像特征编码方法还可以包括对初始图像或初始视频帧进行预处理以得到原始图像。预处理可以消除初始图像或初始视频帧中的无关信息或噪声信息,以得到原始图像,从而便于更好地进行后续图像处理。预处理例如可以包括对初始图像或初始视频帧进行扩充(data augment)和缩放。扩充包括通过随机裁剪、旋转、翻转、偏斜、调整亮度、对比度等方式扩充初始图像或初始视频帧的数据。缩放包括对初始图像或初始视频帧进行等比例缩放并剪裁为预设尺寸(例如256*256),以便于后续操作。需要说明的是,预处理还可以包括伽玛(gamma)校正、增强或降噪滤波等处理。
34.在本发明的一些实施例中,本发明首先使用固定的裁剪率将输入图像裁剪为固定大小的尺寸,其次使用数据增强以扩充训练集的规模并增强模型的泛化性能,数据增强包括cutout,自动数据增强(randaug),带混合令牌的令牌标签(the token labeling objective with mixtoken),最后使用归一化与标准化图像数据,将图像的每个像素值除以255,以将像素值的取值范围缩放到0到1之间,再使cz-score标准化。
35.102、将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;
36.在本发明实施例中,利用现有的特征提取网络来提取出目标图像的输入特征张量,所述特征提取网络可以是vgg网络模型、googlenet、resnet等常用的特征提取网络,本实施例中所述特征提取网络可以是预先训练好的特征提取网络也可以是未训练的特征提取网络,本领域技术人员可以根据实际情况确定,本发明对此不作限定。
37.103、对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;
38.在本发明实施例中,将所述输入特征张量进行展开,对于输入特征张量上每一个空间位置上的特征点,本发明并不采用传统的滑动窗口来生成以该特征点为中心的周边子区域,而是基于矩阵运算来实现并行计算,其前提是先对输入特征张量进行展开操作。特征展开操作的计算过程可以简单理解为:在输入张量的空间上按照指定的大小和步长展开成多个二维子空间。对于上述中尺寸为《b,ic,ih,iw》的输入特征张量,基于k展开特征和v展开特征的需要,输入特征张量分别被展开重构为
39.其中,b是批量大小,ic是输入通道数,ih和iw是输入高度和宽度。对应的输出张量ox,其尺寸为《b,oc,oh,ow》,其中oc是输出通道数,oh和ow是输出的高度和宽度,kernel_size[d]是子区域的空间大小,d表示指定步长,这里以步长为1为例,n是所有子区域的数量,其代表了子区域的大小,所述子区域大小为3
×
3、5
×
5或者7
×
7等,其具体的计算公式表示为:
[0040][0041]
式中,spatial_size是输入特征张量的空间大小。上述被重构后的张量的最后两维即是上文提到的二维子空间,在之后的阶段中,二维子空间内部将基于自注意力计算并最终归约到一维子空间。
[0042]
对于特征展开,如图2所示,将原始的特征点通过指定步长划分为若干特征点,这里以5
×
5大小为例;按照指定子区域大小确定出每个特征点的子区域,这里以3
×
3大小为例,每个特征点对应3
×
3大小的子区域,这样实现了特征点的展开。根据划分出的特征点确定出q展开特征{q}
i,j
,根据划分出的特征点以及对应的子区域确定出k展开特征{k1,k2,...,kn}
i,j
和v展开特征{v1,v2,...,vn}
i,j

[0043]
其中,i,j表示在输入特征张量中的相对空间位置索引,即位于输入特征张量的第i行第j列;n表示子区域中的特征点数量;kn表示第n个特征点的k展开特征,vn表示第n个特征点的v展开特征。
[0044]
可以发现,本发明的k展开特征和v展开特征与传统的k、v展开特征不同;本发明的k展开特征和v展开特征是包含每个特征点周围的邻域特征点信息,即传统的k、v展开特征只有特征点本身,而本发明的k、v展开特征则是包含特征点的子区域,这样能够使得每个子区域内部中心特征点与周围邻域特征点之间完整的空间结构信息,更好地捕捉局部特征的空间结构信息。
[0045]
104、对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;
[0046]
在本发明实施例中,所述可学习的q、k和v类卷积权重参数包括所有q展开特征、k展开特征和v展开特征在每个子区域上共享权重参数,学习三类展开特征的平移不变性,q展开特征、k展开特征和v展开特征在每个子区域内的各个特征点独享权重参数,学习子区
域内的空间信息。
[0047]
所述可学习的q、k和v类卷积权重参数依次表示为:
[0048]
q类卷积权重参数:{wq};
[0049]
k类卷积权重参数:{w
k1
,w
k2
,...,w
kn
};
[0050]
v类卷积权重参数:{w
v1
,w
v2
,...,w
vn
};
[0051]
其中,wq表示特征点的q类卷积权重参数;w
kn
表示第n个特征点的k类卷积权重参数;w
vn
表示第n个特征点的v类卷积权重参数;n表示子区域中的特征点数量,n表示子区域中的特征点数量。
[0052]
可以理解的是,本发明不同子区域对应的类卷积权重参数之间共享权重参数,这样能够学习三类展开特征间的平移不变性,而对于同一子区域内部的特征点而言,每个特征点独享其对应的类卷积权重参数,这样能够学习子区域内的空间信息。
[0053]
在本发明实施例中,如图3所示,通过将特征点与其对应的类卷积权重参数进行对应相乘,就得到了编码后的q查询特征、k键特征和v值特征;这里的q查询特征不包含邻域特征点,而k键特征和v值特征都包含邻域特征点,所以k键特征和v值特征中的各个特征点都独享其对应的类卷积权重参数,例如3
×
3大小的子区域对应的k键特征和v值特征中,k类卷积权重参数对应为:{w
k1
,w
k2
,...,w
k9
};v类卷积权重参数对应为:{w
v1
,w
v2
,...,w
v9
},九个特征点中每个特征点独享其对应的权重。
[0054]
在本发明的优选实施例中,如图4所示,所述按照指定步长和子区域大小生成展开特征之后还包括将q展开特征和k展开特征进行特征压缩。该操作能够线性地降低生成互相关矩阵的计算成本。
[0055]
105、对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;
[0056]
在本发明实施例中,根据每组自注意力特征来构建出对应的多头特征;所谓多头,其实现与多头注意力模型机制(multi-head attention,mha)类似,即以通道维度为划分,每部分代表一个头,直观上,每个头内部都独立地进行基于类卷积自注意力的特征处理。
[0057]
在本实施例中,同其他多头注意力一样,本实施例的多头类卷积自注意力同样使用了残差连接机制来确保在多头之间提取残差信息,而非直接提取信息,以增加特征学习的容错率,并防止梯度弥散或爆炸。在实际实现中,本实施例并没有在多头类卷积自注意力中添加残差连接,而是将多头类卷积自注意力模块放入到mlp-mixer模块中,mlp-mixer有三个主要作用:第一是建立多头之间的特征联系,第二是建立残差结构,第三是提供随机深度(stochastic depth)。
[0058]
106、利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。
[0059]
在本发明实施例中,将所有多头分支的输出在通道维度进行拼接后输入到混洗卷积中进行多头特征的融合;通过这种混洗融合,丰富了图像特征的上下文信息和局部信息,增强了模型在处理图像时的性能,有助于改善模型对图像的底层局部特征的学习,并显著降低显存占用。
[0060]
在本发明实施例中,本实施例还提供了一种基于多头类卷积自注意力的图像特征编码装置,所述装置包括:
[0061]
图像获取模块,用于获取目标图像,并对所述目标图像进行预处理;
[0062]
特征提取模块,用于将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;
[0063]
特征展开模块,用于对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;
[0064]
特征编码模块,用于对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;
[0065]
多头自注意力模块,用于对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;
[0066]
多头混洗模块,利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。
[0067]
在本发明实施例中,本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明所述的一种基于多头类卷积自注意力的图像特征编码方法中的步骤。
[0068]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。
[0069]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

技术特征:
1.一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述方法包括:获取目标图像,并对所述目标图像进行预处理;将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。2.根据权利要求1所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述预处理包括使用固定的裁剪率将目标图像裁剪为固定大小的尺寸,使用数据增强对目标图像进行处理,使用归一化与标准化图像数据,将目标图像的每个像素值除以255,以将像素值的取值范围缩放到0到1之间,使用cz-score标准化对像素值进行标准化处理。3.根据权利要求1所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征包括将所述输入特征张量按照指定步长划分为若干特征点;按照指定子区域大小确定出每个特征点的子区域;根据划分出的特征点确定出q展开特征{q}
i,j
,根据划分出的特征点以及对应的子区域确定出k展开特征{k1,k2,...,k
n
}
i,j
和v展开特征{v1,v2,...,v
n
}
i,j
;其中,i,j表示在输入特征张量中的相对空间位置索引,即位于输入特征张量的第i行第j列;n表示子区域中的特征点数量;k
n
表示第n个特征点的k展开特征,v
n
表示第n个特征点的v展开特征。4.根据权利要求3所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述子区域大小为3
×
3、5
×
5或者7
×
7。5.根据权利要求1或3所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述按照指定步长和子区域大小生成展开特征之后还包括将q展开特征和k展开特征进行特征压缩。6.根据权利要求1所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述可学习的q、k和v类卷积权重参数包括所有q展开特征、k展开特征和v展开特征在每个子区域上共享权重参数,学习三类展开特征的平移不变性,q展开特征、k展开特征和v展开特征在每个子区域内的各个特征点独享权重参数,学习子区域内的空间信息。7.根据权利要求1或6所述的一种基于多头类卷积自注意力的图像特征编码方法,其特征在于,所述可学习的q、k和v类卷积权重参数依次表示为:q类卷积权重参数:{w
q
};
k类卷积权重参数:{w
k1
,w
k2
,...,w
kn
};v类卷积权重参数:{w
v1
,w
v2
,...,w
vn
};其中,w
q
表示特征点的q类卷积权重参数;w
kn
表示第n个特征点的k类卷积权重参数;w
vn
表示第n个特征点的v类卷积权重参数;n表示子区域中的特征点数量,n表示子区域中的特征点数量。8.一种基于多头类卷积自注意力的图像特征编码装置,其特征在于,所述装置包括:图像获取模块,用于获取目标图像,并对所述目标图像进行预处理;特征提取模块,用于将预处理后的目标图像输入到特征提取网络,输出目标图像的输入特征张量;特征展开模块,用于对所述输入特征张量进行展开操作,按照指定步长和子区域大小生成展开特征;所述展开特征包括若干特征点以及以每个特征点为中心位置的两个特征子区域,即依次对应q展开特征、k展开特征和v展开特征;特征编码模块,用于对于每组展开特征,使用可学习的q、k和v类卷积权重参数,将q展开特征、k展开特征和v展开特征对应编码为一组自注意力特征;所述自注意力特征包括q查询特征、k键特征和v值特征;多头自注意力模块,用于对于每组自注意力特征,构建多头q查询特征、多头k键特征和多头v值特征;使用点积注意力机制计算多头注意力权重,将多头q查询特征和多头k键特征相互关联;将多头注意力权重应用于多头v值特征,融合子区域内的特征点信息,得到多头自注意力输出特征;多头混洗模块,利用多头混洗权重参数对多头自注意力的输出进行混洗操作;通过交换和组合不同的多头自注意力输出特征,提取和整合目标图像的输出特征信息。9.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-7中任一项所述的一种基于多头类卷积自注意力的图像特征编码方法中的步骤。

技术总结
本发明属于图像处理领域,涉及一种基于多头类卷积自注意力的图像特征编码方法、装置及电子设备;所述方法包括获取目标图像并进行预处理;提取出输入特征张量后进行展开操作,按照指定步长和子区域大小生成Q、K、V展开特征;使用可学习的Q、K和V类卷积权重参数,对应编码为一组自注意力特征;使用点积注意力机制计算多头注意力权重,将多头Q特征和多头K特征相互关联;将多头注意力权重应用于多头V特征,融合子区域内的特征点信息,得到多头自注意力输出特征;利用多头混洗权重参数进行混洗操作;提取和整合目标图像的输出特征信息。本发明采用多头类卷积自注意力机制,提升了处理图像时的性能,改善了对图像底层局部特征的学习。改善了对图像底层局部特征的学习。改善了对图像底层局部特征的学习。


技术研发人员:戴大伟 徐嘉 刘颖格 夏书银 王国胤
受保护的技术使用者:重庆邮电大学
技术研发日:2023.06.28
技术公布日:2023/9/23
版权声明

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

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

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

评论

相关推荐