图像识别方法、图像识别模型的训练方法及装置
文献发布时间:2023-06-19 19:30:30
技术领域
本申请主要涉及图像识别技术领域,具体涉及一种图像识别方法、图像识别模型的训练方法及装置。
背景技术
近年来图像分类技术愈发成熟,在人脸识别、故障检测等领域取得了杰出的成果,极大地降低了人力成本。然而神经网络解决图像分类任务时依赖大规模且高质量的标注数据,自然环境因素以及图像采集、标注中的人为因素都会对模型性能产生不利影响,从而降低线上推断时的准确性。此外现有的神经网络大多会利用空间注意力掩码对特征图的权重进行修改,在空间注意力掩码和特征图融合时,一般直接对空间注意力掩码和特征图作点乘运算,而空间注意力掩码上的注意力权重大多在0-1之间,随着网络深度的增加空间位置上的注意力会以幂的形式减小,会严重破坏特征的表达能力,导致现有技术中图像识别的准确率不高。
也即,现有技术中图像识别的准确率不高。
发明内容
本申请提供一种图像识别方法、图像识别模型的训练方法及装置,旨在解决现有技术中图像识别的准确率不高的问题。
第一方面,本申请提供一种图像识别方法,应用于图像识别模型,所述图像识别模型用于执行所述图像识别方法,所述图像识别方法包括:
获取待识别图像的第一特征图;
根据所述第一特征图确定第一空间注意力掩码;
基于预设矫正参数对所述第一空间注意力掩码进行矫正,得到第二空间注意力掩码;
将所述第二空间注意力掩码和所述第一特征图融合,得到第二特征图;
基于所述第二特征图对所述待识别图像进行识别,得到识别结果。
可选地,所述基于预设矫正参数对所述第一空间注意力掩码进行矫正,得到第二空间注意力掩码,包括:
将所述第一空间注意力掩码中各个注意力权重分别增加所述预设矫正参数,得到所述第二空间注意力掩码,其中,所述预设矫正参数的取值不小于1且不大于1.3。
可选地,所述预设矫正参数的取值为1。
可选地,所述根据所述第一特征图确定第一空间注意力掩码,包括:
基于第一预设卷积核对所述第一特征图在高度维度上进行平均池化和最大池化,得到高度维度平均池化结果和高度维度最大池化结果;
基于第二预设卷积核对所述第一特征图在宽度维度上进行平均池化和最大池化,得到宽度维度平均池化结果以及宽度维度最大池化结果;
根据所述高度维度平均池化结果、所述高度维度最大池化结果、所述宽度维度平均池化结果以及所述宽度维度最大池化结果确定所述第一特征图的通道注意力掩码;
根据所述通道注意力掩码和所述第一特征图确定第三特征图;
根据所述第三特征图确定所述第一空间注意力掩码。
可选地,所述根据所述通道注意力掩码和所述第一特征图确定第三特征图,包括:
将所述第一特征图分别进行batchnorm操作、mish函数激活操作以及卷积操作,得到第四特征图;
对所述第一特征图和所述第四特征图融合,得到第五特征图;
基于所述通道注意力掩码对所述第五特征图进行加权,得到所述第三特征图。
第二方面,本申请提供一种图像识别模型的训练方法,所述图像识别模型为以上任意一项所述的图像识别模型,所述图像识别模型的训练方法包括:
获取第一图像训练集,其中,所述第一图像训练集包括多个第一训练样本和对应的样本标签;
将所述第一图像训练集划分为多个第二图像训练集,其中,所述第二图像集为所述第一图像训练集的子集;
将所述多个第二图像训练集依次输入所述图像识别模型进行多次迭代训练;
当所述多个第二图像训练集均被训练时结束模型训练。
可选地,所述将所述多个第二图像训练集依次输入所述图像识别模型进行多次迭代训练,包括:
基于预设聚类值对所述第二图像训练集中的多个第一训练样本进行聚类,得到多个第三图像训练集;
从所述第三图像训练集中任意获取两个第一训练样本进行插值,得到新的多个第二训练样本,并放入所述第三图像训练集,得到第四图像训练集;
将多个所述第四图像训练集依次输入所述图像识别模型多次迭代训练。
第三方面,本申请提供一种图像识别装置,所述图像识别装置包括:
获取单元,用于获取待识别图像的第一特征图;
确定单元,用于根据所述第一特征图确定第一空间注意力掩码;
矫正单元,用于基于预设矫正参数对所述第一空间注意力掩码进行矫正,得到第二空间注意力掩码;
融合单元,用于将所述第二空间注意力掩码和所述第一特征图融合,得到第二特征图;
识别单元,用于基于所述第二特征图对所述待识别图像进行识别,得到识别结果。
可选地,所述矫正单元,用于:
将所述第一空间注意力掩码中各个注意力权重分别增加所述预设矫正参数,得到所述第二空间注意力掩码,其中,所述预设矫正参数的取值不小于1且不大于1.3。
可选地,所述预设矫正参数的取值为1。
可选地,所述确定单元,用于:
基于第一预设卷积核对所述第一特征图在高度维度上进行平均池化和最大池化,得到高度维度平均池化结果和高度维度最大池化结果;
基于第二预设卷积核对所述第一特征图在宽度维度上进行平均池化和最大池化,得到宽度维度平均池化结果以及宽度维度最大池化结果;
根据所述高度维度平均池化结果、所述高度维度最大池化结果、所述宽度维度平均池化结果以及所述宽度维度最大池化结果确定所述第一特征图的通道注意力掩码;
根据所述通道注意力掩码和所述第一特征图确定第三特征图;
根据所述第三特征图确定所述第一空间注意力掩码。
可选地,所述确定单元,用于:
将所述第一特征图分别进行batchnorm操作、mish函数激活操作以及卷积操作,得到第四特征图;
对所述第一特征图和所述第四特征图融合,得到第五特征图;
基于所述通道注意力掩码对所述第五特征图进行加权,得到所述第三特征图。
第四方面,本申请提供一种图像识别模型的训练装置,所述图像识别模型为以上任意一项所述的图像识别模型,所述图像识别模型的训练装置包括:
获取单元,用于获取第一图像训练集,其中,所述第一图像训练集包括多个第一训练样本和对应的样本标签;
划分单元,用于将所述第一图像训练集划分为多个第二图像训练集,其中,所述第二图像集为所述第一图像训练集的子集;
迭代训练单元,用于将所述多个第二图像训练集依次输入所述图像识别模型进行多次迭代训练;
结束训练单元,用于当所述多个第二图像训练集均被训练时结束模型训练。
可选地,所述迭代训练单元,用于:
基于预设聚类值对所述第二图像训练集中的多个第一训练样本进行聚类,得到多个第三图像训练集;
从所述第三图像训练集中任意获取两个第一训练样本进行插值,得到新的多个第二训练样本,并放入所述第三图像训练集,得到第四图像训练集;
将多个所述第四图像训练集依次输入所述图像识别模型多次迭代训练。
第五方面,本申请提供一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现第一方面中任一项所述的图像识别方法或者第二方面中所述的图像识别模型的训练方法。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行第一方面中任一项所述的图像识别方法或者第二方面中所述的图像识别模型的训练方法中的步骤。
本申请提供一种图像识别方法、图像识别模型的训练方法及装置,该图像识别模型的训练方法应用于图像识别模型,图像识别模型用于执行图像识别方法,图像识别方法包括:获取待识别图像的第一特征图;根据第一特征图确定第一空间注意力掩码;基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码;将第二空间注意力掩码和第一特征图融合,得到第二特征图;基于第二特征图对待识别图像进行识别,得到识别结果。本申请在获取第一特征图的第一空间注意力掩码后,先根据预设矫正参数矫正第一空间注意力掩码,得到矫正后的第二空间注意力掩码,再使用第二空间注意力掩码与第一特征图融合得到第二特征图,能够避免将特征图不成熟的深层特征的细节被破坏掉,得到的第二特征图能够包含更多特征细节,从而能够提高模型准确性,提高图像识别的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的图像识别系统的场景示意图;
图2是本申请实施例中提供的图像识别方法的一个实施例流程示意图;
图3是本申请实施例中提供的图像识别方法中根据第一特征图得到第三特征图的网络结构示意图;
图4是本申请实施例中图像识别模型的训练方法的一个实施例流程示意图;
图5是本申请实施例中提供的图像识别装置的一个实施例结构示意图;
图6是本申请实施例中提供的图像识别模型的训练装置的一个实施例结构示意图;
图7是本申请实施例中提供的计算机设备的一个实施例结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本申请,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本申请。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本申请的描述变得晦涩。因此,本申请并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种图像识别方法、图像识别模型的训练方法及装置,以下分别进行详细说明。
请参阅图1,图1为本申请实施例所提供的图像识别系统的场景示意图,该图像识别系统可以包括计算机设备100,计算机设备100中集成有图像识别装置和/或图像识别模型的训练装置。
本申请实施例中,该计算机设备100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本申请实施例中所描述的计算机设备100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。
本申请实施例中,上述的计算机设备100可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中计算机设备100可以是台式机、便携式电脑、网络服务器、掌上电脑(Personal Digital Assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备等,本实施例不限定计算机设备100的类型。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是本申请方案的一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的计算机设备,例如图1中仅示出1个计算机设备,可以理解的,该图像识别系统还可以包括一个或多个可处理数据的其他计算机设备,具体此处不作限定。
另外,如图1所示,该图像识别系统还可以包括存储器200,用于存储数据。
需要说明的是,图1所示的图像识别系统的场景示意图仅仅是一个示例,本申请实施例描述的图像识别系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着图像识别系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,本申请实施例中提供一种图像识别方法,该图像识别方法应用于图像识别模型,图像识别模型用于执行图像识别方法,图像识别方法包括:获取待识别图像的第一特征图;根据第一特征图确定第一空间注意力掩码;基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码;将第二空间注意力掩码和第一特征图融合,得到第二特征图;基于第二特征图对待识别图像进行识别,得到识别结果。
如图2所示,图2是本申请实施例中提供的图像识别方法的一个实施例流程示意图,该图像识别方法包括如下步骤S201~S205:
S201、获取待识别图像的第一特征图。
本申请实施例中,待识别图像可以为快递人员佩戴头盔的图像。快递人员佩戴头盔的图像可能是正确佩戴头盔的图像,也可能是错误佩戴头盔的图像。待识别图像可以为RGB图像,待识别图像的尺寸为H×W×C,其中,H是RGB图像的高度,W是RGB图像的宽度,C代表通道。C=3时,表示RGB3个通道。当然,待识别图像也可以是其他图像,本申请对此不作限定。
在一个具体的实施例中,可以对待识别图像进行卷积操作,得到第一特征图,第一特征图的尺寸为H×W×3。
S202、根据第一特征图确定第一空间注意力掩码。
在一个具体的实施例中,根据第一特征图确定第一空间注意力掩码,可以包括:
(1)基于第一预设卷积核对第一特征图在高度维度上进行平均池化和最大池化,得到高度维度平均池化结果和高度维度最大池化结果。
在卷积神经网络中,我们经常会碰到池化操作,而池化层往往在卷积层后面,通过池化来降低卷积层输出的特征向量,同时改善结果。常用的池化方法有最大池化(max-pooling)和均值池化(mean-pooling)。平均池化:计算图像区域的平均值作为该区域池化后的值。最大池化:选图像区域的最大值作为该区域池化后的值。
其中,第一预设卷积核的高度小于第一特征图的高度,第一预设卷积核的宽度为第一特征图的宽度。可选地,第一预设卷积核的宽度为第一特征图的宽度,第一预设卷积核的高度为1,即第一预设卷积核的尺寸为1×W。
(2)基于第二预设卷积核对第一特征图在宽度维度上进行平均池化和最大池化,得到宽度维度平均池化结果和宽度维度最大池化结果。
其中,第二预设卷积核的高度为第一特征图的高度,第二预设卷积核的宽度小于第一特征图的宽度。可选地,第二预设卷积核的高度为第一特征图的高度,第二预设卷积核的宽度为1,即第二预设卷积核的尺寸为H×1。
在一个具体的实施例中,高度维度平均池化结果
其中,
(3)根据高度维度平均池化结果、高度维度最大池化结果、宽度维度平均池化结果以及宽度维度最大池化结果确定第一特征图的通道注意力掩码。
注意力机制(Attention Mechanism)是机器学习中的一种数据处理方法,广泛应用在自然语言处理、图像识别及语音识别等各种不同类型的机器学习任务中。通俗来讲:注意力机制就是希望网络能够自动学出来图片或者文字序列中的需要注意的地方。比如人眼在看一幅画的时候,不会将注意力平等地分配给画中的所有像素,而是将更多注意力分配给人们关注的地方。从实现的角度来讲:注意力机制通过神经网络的操作生成一个掩码,掩码上的值一个打分,评价当前需要关注的点的评分。注意力机制可以分为通道注意力机制和空间注意力机制。通道注意力机制:对通道生成掩码;通道注意力机制可以是senet、Channel Attention Module等。空间注意力机制:对空间进行生成掩码,空间注意力机制可以是Spatial Attention Module。
可以将H×W×3的第一特征图直接输入senet得到1*1*C的注意力掩码。但是,senet本质上是图像或者卷积图从深度轴角度上做的加权平均。senet会对卷积层做一次H×W纬度上的池化,再通过一个全连接层学习不同深度上的权重,得到通道注意力掩码。然而在网络前端卷积核感受野较小时候采用全局池化进行编码会丢失大量的图内信息,senet的输入表达能力不够强。而本申请在图像通道域上利用H×1和1×W两个非对称的卷积核进行池化,增加了注意力信息的细节,从而提高了通道注意力掩码的计算准确率,提高了图像识别模型的准确率。
在一个具体的实施例中,根据公式(2)对高度维度平均池化结果、高度维度最大池化结果、宽度维度平均池化结果以及宽度维度最大池化结果进行拼接操作,得到拼接特征组,对拼接特征组进行1×1卷积操作,得到1×1卷积操作后的特征图,将1×1卷积操作后的特征图输入全连接层和Sigmoid函数,得到第一特征图的通道注意力掩码。
其中,Z
(4)根据通道注意力掩码和第一特征图确定第三特征图。
在一个具体的实施例中,根据通道注意力掩码和第一特征图确定第三特征图,包括:将第一特征图分别进行batchnorm操作、mish函数激活操作以及3×3卷积操作,得到第四特征图;对第一特征图和第四特征图融合,得到第五特征图;基于通道注意力掩码对第五特征图进行加权,得到第三特征图。通道注意力掩码维度为1×1×3,根据通道注意力掩码的各个通道权重对第五特征图的各个通道进行加权,得到第三特征图。
在一个具体的实施例中,如图3所示,图3是本申请实施例中提供的图像识别方法中根据第一特征图得到第三特征图的网络结构示意图,其中,输入张量为第一特征图,输出张量为第三特征图。
其中,batchnorm操作能够防止梯度消失、防止过拟合。mish函数激活操作相比于其他激活函数可以更有效的防止梯度消失。基于通道注意力掩码对第五特征图进行加权,得到第三特征图,能够调整特征图中的特征权重,使得模型关注更重要的特征,从而提高模型准确度。
(5)根据第三特征图确定第一空间注意力掩码。
在一个具体的实施例中,在通道维度上对第三特征图进行最大池化和平均池化,得到通道最大池化结果和通道平均池化结果。将最大池化结果和通道平均池化结果拼接起来作为pointwise卷积层的输入并通过Sigmoid函数生成最终的第一空间注意力掩码T(x)。第一空间注意力掩码T(x)是一个H×W×3的张量。
S203、基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码。
由于第一空间注意力掩码M(x)中的各个注意力权重值一般在0到1之间,如果直接将第一空间注意力掩码M(x)与第一特征图融合,特征图反复和空间注意力掩码做点乘运算,即使用H
本申请使用预设矫正参数对第一空间注意力掩码矫正,能够避免将不成熟的深层特征的细节被破坏掉,从而提高模型准确性。
在一个具体的实施例中,预设矫正参数的取值不小于1且不大于1.3。优选地,预设矫正参数为1。本申请发明人在经过大量实验的情况下,发现预设矫正参数的取值不小于1且不大于1.3都能够避免将不成熟的深层特征的细节被破坏掉,提高模型准确性。在预设矫正参数为1时,能够显著提高模型准确性。
具体的,第一空间注意力掩码中各个注意力权重分别为M(
S204、将第二空间注意力掩码和第一特征图融合,得到第二特征图。
具体的,将第二空间注意力掩码和第三特征图作点乘,得到第二特征图。当然,也可以将第二空间注意力掩码和第一特征图作点乘,得到第二特征图。
在一个具体的实施例中,第二特征图根据公式(3)确定,
H
其中,M(
S205、基于第二特征图对待识别图像进行识别,得到识别结果。
具体的,将第二特征图依次输入全连接层、Sigmoid层、logic层等,得到识别结果。识别结果包括待识别图像的类别。
如图4所示,图4是本申请实施例中图像识别模型的训练方法的一个实施例流程示意图,该图像识别模型的训练方法包括如下步骤S401~S404:
S401、获取第一图像训练集,其中,第一图像训练集包括多个第一训练样本和对应的样本标签。
本申请实施例中,第一训练样本可以通过人工标注,第一训练样本为人佩戴头盔的图像,第一训练样本对应的样本标签包括两类,一类为正确佩戴头盔的图像,样本标签记为1;另一类为错误佩戴头盔的图像,样本标签记为0。其中,第一图像训练集中的多个第一训练样本被裁剪变换到统一的预设尺寸。裁剪变换模块主要是针对前一模块所收集到的图像数据进行人工标注以及自动化裁剪与变换工作。
具体的,首先进行原始数据集清洗与构建索引,其次配置网络训练过程中的batchsize、epoch、learn rate等超参数,再初始化Session对象,得到第一图像训练集。
S402、将第一图像训练集划分为多个第二图像训练集,其中,第二图像集为第一图像训练集的子集。
在一个具体的实施例中,根据batchsize将第一图像训练集划分为多个第二图像训练集,每个第二图像训练集的大小为batchsize。当然,也可以根据构建的索引每次从第一图像训练集中读取batchsize大小的第二图像训练集。
S403、将多个第二图像训练集依次输入图像识别模型进行多次迭代训练。
在一个具体的实施例中,将多个第二图像训练集依次输入图像识别模型进行多次迭代训练,包括:
(1)基于预设聚类值对第二图像训练集中的多个第一训练样本进行聚类,得到多个第三图像训练集。
其中,预设聚类值可以根据人工经验确定,例如,预设聚类值为3、5等。
在一个具体的实施例中,使用k-means算法利用多个不同的聚类数分别对第二图像训练集进行聚类,得到多个聚类结果。根据手肘法或轮廓法确定多个聚类结果的误差平方和SSE,根据多个聚类结果的误差平方和SSE确定最佳聚类数,将最佳聚类数确定为预设聚类值。其中,当聚类数为最佳聚类数时,以误差平方和SSE为纵坐标以聚类数为横坐标形成的曲线图的曲率最高。
手肘法的核心思想是:随着聚类数k的增大,样本划分会更加精细,每个簇的聚合程度会逐渐提高,那么误差平方和SSE自然会逐渐变小。并且,当聚类数k小于最佳聚类数时,由于聚类数k的增大会大幅增加每个簇的聚合程度,故SSE的下降幅度会很大,而当聚类数k到达最佳聚类数时,再增加聚类数k所得到的聚合程度回报会迅速变小,所以SSE的下降幅度会骤减,然后随着聚类数k值的继续增大而趋于平缓,也就是说SSE和聚类数k的关系图是一个手肘的形状,而这个肘部对应的k值就是数据的最佳聚类数。
在一个具体的实施例中,使用k-means算法利用多个不同的聚类数分别对第二图像训练集进行聚类,得到多个聚类结果,包括:1、开始对第二图像训练集中n个样本图像进行聚类;2、从多个不同的聚类数依次随机取出一个k值,其中,多个不同的聚类数根据第二图像训练集中的样本总数量n确定,
在一个具体的实施例中,根据手肘法或轮廓法确定多个聚类结果的误差平方和SSE,根据多个聚类结果的误差平方和SSE确定最佳聚类数,将最佳聚类数确定为预设聚类值k'和预设聚类值k'对应的最优簇集合ζ=[ζ
(2)从第三图像训练集中任意获取两个第一训练样本进行插值,得到新的多个第二训练样本,并放入第三图像训练集,得到第四图像训练集。
在最优的预设聚类值k'的条件下从每个簇集合ζ
x
其中λ的取值范围在0到1,x
对每个第三图像训练集的任意两个训练样本均进行插值,直到新生成的第二训练样本达到需求数量即可。
(3)将多个第四图像训练集依次输入图像识别模型多次迭代训练。
第四图像训练集为第三图像训练集增广后的训练集,改进之后的算法有两个突出的优点:一方面,聚簇之后的簇内样本在形态、颜色等方面更相似,因此所生成的新样本的图像特征不会有很大的变化,更有可能在预训练模型的基础上对分类任务性能带来正向的影响;另一方面,同一个簇内的样本具有相同的真实标签,这样可以很自然地为新生成样本打上确切的训练标签
S404、当多个第二图像训练集均被训练时结束模型训练。
具体的,对每个第二图像训练集进行一次正向传播和一次反向传播后,结束模型训练。
为了更好实施本申请实施例中图像识别方法,在图像识别方法基础之上,本申请实施例中还提供一种图像识别装置,如图4所示,图像识别装置500包括:
获取单元501,用于获取待识别图像的第一特征图;
确定单元502,用于根据第一特征图确定第一空间注意力掩码;
矫正单元503,用于基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码;
融合单元504,用于将第二空间注意力掩码和第一特征图融合,得到第二特征图;
识别单元505,用于基于第二特征图对待识别图像进行识别,得到识别结果。
可选地,矫正单元503,用于:
将第一空间注意力掩码中各个注意力权重分别增加预设矫正参数,得到第二空间注意力掩码,其中,预设矫正参数的取值不小于1且不大于1.3。
可选地,预设矫正参数的取值为1。
可选地,确定单元502,用于:
基于第一预设卷积核对第一特征图在高度维度上进行平均池化和最大池化,得到高度维度平均池化结果和高度维度最大池化结果;
基于第二预设卷积核对第一特征图在宽度维度上进行平均池化和最大池化,得到宽度维度平均池化结果以及宽度维度最大池化结果;
根据高度维度平均池化结果、高度维度最大池化结果、宽度维度平均池化结果以及宽度维度最大池化结果确定第一特征图的通道注意力掩码;
根据通道注意力掩码和第一特征图确定第三特征图;
根据第三特征图确定第一空间注意力掩码。
可选地,确定单元502,用于:
将第一特征图分别进行batchnorm操作、mish函数激活操作以及卷积操作,得到第四特征图;
对第一特征图和第四特征图融合,得到第五特征图;
基于通道注意力掩码对第五特征图进行加权,得到第三特征图。
为了更好实施本申请实施例中图像识别模型的训练方法,在图像识别模型的训练方法基础之上,本申请实施例中还提供一种图像识别模型的训练装置,图像识别模型为以上任意一项的图像识别模型,如图6所示,图像识别模型的训练装置600包括:
获取单元601,用于获取第一图像训练集,其中,第一图像训练集包括多个第一训练样本和对应的样本标签;
划分单元602,用于将第一图像训练集划分为多个第二图像训练集,其中,第二图像集为第一图像训练集的子集;
迭代训练单元603,用于将多个第二图像训练集依次输入图像识别模型进行多次迭代训练;
结束训练单元604,用于当多个第二图像训练集均被训练时结束模型训练。
可选地,迭代训练单元603,用于:
基于预设聚类值对第二图像训练集中的多个第一训练样本进行聚类,得到多个第三图像训练集;
从第三图像训练集中任意获取两个第一训练样本进行插值,得到新的多个第二训练样本,并放入第三图像训练集,得到第四图像训练集;
将多个第四图像训练集依次输入图像识别模型多次迭代训练。
本申请实施例还提供一种计算机设备,其集成了本申请实施例所提供的任一种图像识别装置和/或图像识别模型的训练装置,计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中一个或多个应用程序被存储于存储器中,并配置为由处理器执行上述图像识别模型的训练方法实施例中任一实施例中的图像识别模型的训练方法或者上述图像识别方法实施例中任一实施例中的图像识别方法的步骤。
如图7所示,其示出了本申请实施例所涉及的计算机设备的结构示意图,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702、电源703和输入单元704等部件。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器701是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器701可包括一个或多个处理核心;处理器701可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,优选的,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。
存储器702可用于存储软件程序以及模块,处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器701对存储器702的访问。
计算机设备还包括给各个部件供电的电源703,优选的,电源703可以通过电源管理系统与处理器701逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源703还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元704,该输入单元704可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:
获取待识别图像的第一特征图;
根据第一特征图确定第一空间注意力掩码;
基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码;
将第二空间注意力掩码和第一特征图融合,得到第二特征图;
基于第二特征图对待识别图像进行识别,得到识别结果;
或者,
获取第一图像训练集,其中,第一图像训练集包括多个第一训练样本和对应的样本标签;
将第一图像训练集划分为多个第二图像训练集,其中,第二图像集为第一图像训练集的子集;
将多个第二图像训练集依次输入图像识别模型进行多次迭代训练;
当多个第二图像训练集均被训练时结束模型训练。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。其上存储有计算机程序,计算机程序被处理器进行加载,以执行本申请实施例所提供的任一种图像识别模型的训练方法或者图像识别方法中的步骤。例如,计算机程序被处理器进行加载可以执行如下步骤:
获取待识别图像的第一特征图;
根据第一特征图确定第一空间注意力掩码;
基于预设矫正参数对第一空间注意力掩码进行矫正,得到第二空间注意力掩码;
将第二空间注意力掩码和第一特征图融合,得到第二特征图;
基于第二特征图对待识别图像进行识别,得到识别结果;
或者,
获取第一图像训练集,其中,第一图像训练集包括多个第一训练样本和对应的样本标签;
将第一图像训练集划分为多个第二图像训练集,其中,第二图像集为第一图像训练集的子集;
将多个第二图像训练集依次输入图像识别模型进行多次迭代训练;
当多个第二图像训练集均被训练时结束模型训练。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种图像识别方法、图像识别模型的训练方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
- 一种图像识别模型的训练方法、图像识别方法和相关装置
- 图像识别方法、图像识别装置和电子设备
- 一种基于图像识别的人工智能模型训练方法及装置
- 一种基于深度神经网络模型的图像识别方法、装置及设备
- 图像的识别方法、卷积神经网络模型的训练方法及装置
- 图像识别模型的训练方法及装置、图像识别方法和装置
- 图像识别模型的训练方法、装置及图像识别方法、装置