一种基于双层注意力网络的货车图片重识别方法与流程

文档序号:31476748发布日期:2022-09-10 00:39阅读:161来源:国知局
一种基于双层注意力网络的货车图片重识别方法与流程

1.本发明涉及图像识别技术领域,特别涉及一种基于双层注意力网络的货车图片重识别方法。


背景技术:

2.在视频监控区域,查找目标物体在监控下的其他地点出现受到人们重视。由于深度学习的发展,近年来流行的处理重识别的管道有两个过程:特征提取和度量学习。因此,重识别的关键问题是提取鲁棒的特征表示并设计合适的特征度量学习算法。
3.随着深度学习的蓬勃发展,通过卷积神经网络进行特征学习已成为重识别中的常见做法。目前解决重识别任务的方法主要有四种:(1)基于局部块的方法,(2)基于细粒度信息的方法,(3)基于注意力机制的方法,(4)基于生成对抗网络的方法。
4.现有技术的不足之处在于,目前在对于道路行驶视频监控区域下,查找目标货车方面的重识别方法,其重识别效果差,识别的精准度不高。现有重识别模型的训练效果不够稳定,效果差,系统的易用性低,模型的鲁棒性和泛化能力不足。


技术实现要素:

5.本发明的目的克服现有技术存在的不足,为实现以上目的,采用一种基于双层注意力网络的货车图片重识别方法,以解决上述背景技术中提出的问题。
6.一种基于双层注意力网络的货车图片重识别方法,包括:
7.步骤s1:获取货车图片,并对货车图片进行标准化,构建货车图片的训练集;
8.步骤s2:基于双层注意力网络对训练集中货车图片进行提取,得到货车图片的图像特征;
9.步骤s3:再根据所述训练集的训练图片对构建的重识别网络模型进行训练后,再利用得到的图像特征输入损失函数进行校准;
10.步骤s4:将训练集中的测试图片输入训练完成的重识别网络模型进行测试,得到最终的重识别网络模型;
11.步骤s5:将多张待检索货车图片输入最终的重识别网络模型,判断待检索货车图片中的货车是否属于目标货车。
12.作为本发明的进一步的方案:所述对货车图片进行标准化的具体步骤包括:
13.根据设定的预设像素均值和像素标准差,对训练集中的货车图片进行像素层面的标准化;
14.再将训练集中所有的货车图片进行缩放,保持所有的货车图片大小一致;
15.再对训练集中所有的货车图片进行数据增强操作,所述数据增强操作包括图片亮度与饱和度的随机改变、图片的随机水平翻转,以及图片的随机裁剪。
16.作为本发明的进一步的方案:所述步骤s2中的具体步骤包括:
17.将货车图片依次送入构建的双层注意力网络的第一层、第二层、第三层,以及第四
层提取图像特征,图像特征进入瓶颈块后经过1
×
1卷积,然后再按通道数平分为4个特征图子集,除第一个子集直接保留原先特征输出,第一层、第二层和第三层的其他子集分别进行3
×
3卷积,再使用残差的方式连接这四个特征图子集,第四层的其他子集分别使用双层注意力模块提取全局特征,最后将这些特征图子集通过1
×
1卷积融合;
18.所述第一层、第二层、第三层,以及第四层提取图像特征的过程公式为:
[0019][0020]
其中,s表示特征图子集数,xi表示每个被均匀平分的特征图子集,i∈{1,2,...,s},ki()表示对应xi的提取操作;
[0021]
使用res2net网络作为货车图片的基础特征提取网络,其中res2net网络包括res2net50和res2net101。res2net是在残差块中构造了一个类似的残差层,它可以更细粒度地表达多尺度特征,并且可以增加网络每一层的感受野大小。也就是说,res2net具有更强大的特征提取能力,但不会增加计算量。
[0022]
作为本发明的进一步的方案:所述构建的双层注意力网络的具体步骤包括:
[0023]
首先使用通道自注意力和空间自注意力分别提取特征图的全局信息:
[0024][0025]
其中,q是输入,上下文以键值对(k,v)的形式存储在内存中,dk是k的维度;
[0026]
进而在位置自注意力中引入相对位置编码,所述相对位置编码使用注意力提取有效的空间位置信息;
[0027]
最后将相对位置编码得到的有效空间信息与空间自注意力中的v进行异或运算,得到位置信息与内容信息的融合。自注意力的目标是通过根据全局上下文信息对每个实体进行编码来捕获所有元素之间的交互,因此它可以捕获长距离依赖关系。
[0028]
在专注于提取细粒度特征的网络结构的最后一层,即感受野范围最大的层级中,使用双层注意力网络提取全局的空间和通道信息,使得细粒度信息可以和全局信息交互,从而在只使用一个分支的情况下获得更精确的效果。
[0029]
在双层注意力网络的位置分支上使用相对位置编码,在相对位置编码中使用多层感知机提取注意力,图片的位置特征与内容特征融合,获取更有效的全局信息。
[0030]
作为本发明的进一步的方案:所述相对位置编码使用注意力提取有效的空间位置信息的具体步骤包括:
[0031]
首先分别获得货车图片的高度和宽度方向的特征表示,然后将高度和宽度方向的特征表示两个分支进行融合输出;
[0032]
再根据通道维度对融合输出的结果进行平均,重新校准不同分支的当前重要性,达到使用分散注意力对全局信息进行编码,得到有效的空间位置信息。
[0033]
作为本发明的进一步的方案:所述利用得到的图像特征输入损失函数进行校准的具体步骤包括:
[0034]
将训练集按批量送入双层注意力网络提取图像特征后,对得到的图像特征计算损
失函数校准重识别网络模型;
[0035]
所述损失函数为:
[0036]
l=l
id
+l
triplet
+βlc;
[0037]
其中,l
id
表示交叉熵损失函数,用来对货车图片按预测值进行目标分类,l
tri
表示三元组损失函数,用以增大目标货车和负样本图片之间的特征距离,减小目标货车和正样本图片的特征距离,lc表示中心损失函数,学习了每个类的特征中心,用以弥补三元组损失只关心正样本和负样本距离相差结果的缺点,l为总损失,三种损失函数的加权和,β是中心损失的平衡权重。
[0038]
使用基于深度学习的交叉熵损失函数、三元组损失函数和中心损失函数,实现端到端地训练,校准网络。
[0039]
作为本发明的进一步的方案:所述步骤s4和步骤s5的具体步骤包括:
[0040]
获取训练集中的测试图片输入已训练完成的重识别网络模型进行测试;
[0041]
根据测试得到的特征图的图像特征进行比较相似度,得到最优的重识别网络模型;
[0042]
再将待检索的货车图片输入重识别网络模型,判断待检索的货车图片中的货车是否为目标货车,并将判断检测结果进行分类后对应保存。
[0043]
与现有技术相比,本发明存在以下技术效果:
[0044]
采用上述的技术方案,通过在专注于提取细粒度特征的基准网络结构中使用捕获全局特征的双层注意力网络构建重识别网络模型,达到目标物体获得更加完整和精细的特征,解决了之前需要用多个分支和较大参数来实现精确度高的重识别的问题。
[0045]
根据网络中交叉熵损失函数、三元组损失函数、中心损失函数的合作处理,训练时自动计算每次迭代的损失,通过链式求导法则,计算出网络中所有可学习参数的更新梯度,从而完成网络参数的更新,实现端到端的训练过程,避免了人工干预和手动计算特征提取器与分类器参数,使得模型的训练效果更加稳定,效果更好,提高了系统的易用性,且学习到的网络参数能够较好地适应于多种货车物体。
[0046]
对于数字图像处理方面,采用了数据增强操作,包括翻转、色彩空间转换、图片缩放等方式,从而提高训练图片的利用率,增加样本的多样性,减少了数据标注的需求,提升了模型的鲁棒性和泛化能力。
附图说明
[0047]
下面结合附图,对本发明的具体实施方式进行详细描述:
[0048]
图1为本技术公开的一些实施例的货车图片重识别方法的步骤示意图;
[0049]
图2为本技术公开的一些实施例的整体网络结构示意图;
[0050]
图3为本技术公开的一些实施例的网络瓶颈块处理流程示意图;
[0051]
图4为本技术公开的一些实施例的双层注意力处理流程示意图;
[0052]
图5为本技术公开的一些实施例的具有注意力机制的相对位置编码的结构示意图。
具体实施方式
[0053]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0054]
本实施例中,整体重识别方法的思路为:
[0055]
首先准备好训练用的带有标注信息的图片;然后对训练图片进行缩放和增强操作;搭建双层注意力网络,双层注意力网络的前三层与基础特征提取网络相同,在感受野最大的最后一层网络中使用双层注意力提取全局特征,双层注意力模块的外层是位置自注意力分支和空间自注意力分支,在位置自注意力的内层使用多层感知机提取有效的全局位置信息,使得像素的内容信息与位置信息相互影响,最终使得提取细粒度特征的网络结构与获得全局特征的自注意力交互,获得更精确的特征提取结果;全连接层输出货车类别,并且使用交叉熵损失函数、三元组损失函数、中心损失函数共同合作作为网络的损失函数;测试时将查询集和测试集共同输入已训练校准好的网络模型中,特征越相似,则越有可能属于同一货车目标。
[0056]
请参考图1和图2,本发明实施例中,一种基于双层注意力网络的货车图片重识别方法,包括:
[0057]
步骤s1:获取货车图片,并对货车图片进行标准化,构建货车图片的训练集;
[0058]
训练集的具体设置为:
[0059]
具体实施方式中,首先收集监控摄像下出现的货车图片,所述训练集包括m张训练图片为x={x1,x2,...,xm,...,xm},其中xm表示第m张训练图片;所述m张训练图片选取有一一对应的m个标签为y={a1_b1_c1,a1_b1_c2,...,au_bv_cw,...,au_bv_cw},其中au表示第u辆车,bv表示第v个摄像头,cw表示该摄像头下特定货车的第w张图片,每张图片仅有一个检测框,选取离摄像头距离最近的完整货车。
[0060]
所述对训练集的训练图片和测试图片的货车图片进行标准化的具体步骤包括:
[0061]
具体实施方式中,根据设定的预设像素均值pixel
mean
和像素标准差pixel
std
,对训练集x中的货车图片进行像素层面的标准化;
[0062]
再将训练集中所有的货车图片进行缩放,保持所有的货车图片大小一致;
[0063]
具体为:根据货车的刚体车型,将训练集x中的图片统一缩放至128
×
256的长方体大小,也可以将图片缩放至更大的像素值,更高分辨率的图片能够提升重识别的精度,但是训练时模型更大、参数更多;保持训练集中的货车图片大小一致,使其图片尺寸相同并满足货车实际的车型以及网络的输入条件;
[0064]
再对训练集x中所有的货车图片进行数据增强操作,所述数据增强操作包括图片亮度与饱和度的随机改变、图片的随机水平翻转,以及图片的随机裁剪;
[0065]
具体为:采用的训练图片为rgb图片,因此每个像素点具有三个像素值,分别对应于三个颜色通道,所以pixel
mean
与pixel
std
同样具有三个像素值,每个通道之间分别进行像素值的处理;
[0066]
图片像素点的标准化公式为:pixel
x
=(pixel
x-pixel
mean
)/pixel
std

[0067]
其中,pixel
mean
为像素均值,pixel
std
为像素标准差。
[0068]
步骤s2:基于双层注意力网络对训练集中货车图片进行提取,得到货车图片的图像特征,具体步骤包括:
[0069]
将得到的货车训练集按批量大小依次送入双层注意力网络提取图像特征;
[0070]
具体的,如图3所示,将图片送入双层注意力网络的第一层提取特征,特征进入瓶颈块后经过1
×
1卷积,然后按通道数平分为4个特征图子集,除第一个子集直接保留原先特征输出,其他子集分别进行3
×
3卷积,再使用残差的方式连接这四个特征图子集,最后将这些特征图子集通过1
×
1卷积融合;
[0071]
将图片送入双层注意力网络的第二层提取特征,特征进入瓶颈块后经过1
×
1卷积,然后按通道数平分为4个特征图子集,除第一个子集直接保留原先特征输出,其他子集分别进行3
×
3卷积,再使用残差的方式连接这四个特征图子集,最后将这些特征图子集通过1
×
1卷积融合;
[0072]
将图片送入双层注意力网络的第三层提取特征,特征进入瓶颈块后经过1
×
1卷积,然后按通道数平分为4个特征图子集,除第一个子集直接保留原先特征输出,其他子集分别进行3
×
3卷积,再使用残差的方式连接这四个特征图子集,最后将这些特征图子集通过1
×
1卷积融合;
[0073]
将图片送入双层注意力网络的第四层提取特征,特征进入瓶颈块后经过1
×
1卷积,然后按通道数平分为4个特征图子集,除第一个子集直接保留原先特征输出,其他子集分别使用双层注意力模块提取全局特征,再使用残差的方式连接这四个特征图子集;
[0074]
所述第一层、第二层、第三层,以及第四层每一层提取图像特征的过程公式为:
[0075][0076]
其中,s表示特征图子集数,xi表示每个被均匀平分的特征图子集,i∈{1,2,...,s},ki()表示对应xi的提取操作;
[0077]
与输入特征图相比,每个特征子集的空间大小相同,但通道数为1/s;x1的信息直接发送到后续的1
×
1卷积,前三层网络的xi有一个对应的3
×
3卷积,最后一层的xi对应的是双层注意力模块,所有xi对应的操作用ki()表示,ki()的输出用yi表示。k
i-1
()的输出与特征图子集xi相加,然后输入ki();此过程重复几次,直到处理完所有输入要素图。最后,将来自所有组的特征图连接起来,并发送到另一个1
×
1过滤器,以完全融合信息;
[0078]
使用res2net网络作为货车图片的基础特征提取网络,其中res2net网络包括res2net50和res2net101;
[0079]
前三层网络结构与res2net的基础结构相同,在将特征图按通道数平分为四个特征图子集的过程中,网络处理了更细粒度的特征,并且没有增加训练参数;在第四层网络结构中,也即在感受野最大的最后一层,我们保留了按通道数将特征图平分为四个特征图子集的处理方式,并插入了双层注意力模块来提取全局特征。在最大的感受野上提取全局特征,可以保证与网络结构特有的提取细粒度特征的方式交互获得更精确的结果;
[0080]
具体实施方式中,所述构建的双层注意力网络的具体步骤包括:
[0081]
所述双层注意力网络包括外层的双分支自注意力模块和内层的使用多层感知机提取注意力的相对位置编码模块;
[0082]
如图4所示,首先使用通道自注意力和空间自注意力分别提取特征图的全局信息:
[0083][0084]
其中,q是输入,上下文以键值对(k,v)的形式存储在内存中,dk是k的维度;
[0085]
进而在位置自注意力中引入相对位置编码,所述相对位置编码使用注意力提取有效的空间位置信息;
[0086]
最后将相对位置编码得到的有效空间信息与空间自注意力中的v进行异或运算,得到位置信息与内容信息的融合。
[0087]
具体实施方式中,所述相对位置编码使用注意力提取有效的空间位置信息的具体步骤包括:
[0088]
如图5所示,首先分别获得货车图片的高度和宽度方向的特征表示,然后将高度和宽度方向的特征表示两个分支进行融合输出;
[0089]
再根据通道维度对融合输出的结果进行平均,重新校准不同分支的当前重要性,达到使用分散注意力对全局信息进行编码,得到有效的空间位置信息。
[0090]
步骤s3:再根据所述训练集的训练图片对构建的重识别网络模型进行训练后,再利用得到的图像特征输入损失函数进行校准;
[0091]
所述利用得到的图像特征输入损失函数进行校准的具体步骤包括:
[0092]
将训练集按批量送入双层注意力网络提取图像特征后,对得到的图像特征计算损失函数校准重识别网络模型;
[0093]
所述损失函数包括交叉熵损失函数、三元组损失函数,中心损失函数;
[0094]
交叉熵损失函数可以对货车图片按预测值进行目标分类,所述交叉熵损失函数为:
[0095][0096]
式中,y表示真值id标签,pi表示第i类的id预测逻辑;
[0097]
由于需防止模型过度拟合,则使用标签平滑将qi的结构更改为:
[0098][0099]
在重识别任务中,为了缩小类内距离,扩大类间距离,使最终的分类结果更有效,采用三元损失函数,所述三元组损失函数为:
[0100]
l
tri
=[d
p-dn+α]
+

[0101]
式中,d
p
和dn是正对和负对的特征距离,α是三元组损失的边界,设置为0.3,[z]
+
=max(z,0);
[0102]
用以弥补三元组损失只关心正样本和负样本距离相差结果的缺点,使用中心损失函数可以学习了每个类的特征中心,从而增加类内紧凑性,所述中心损失函数为:
[0103]
[0104]
式中,yj是小批量中第j张图像的标签,c
yj
表示第yj类中心,b是批量的数量;
[0105]
同时,为了平衡交叉熵损失和三元组损失,添加一个批量标准化(bn)层来获得归一化特征;
[0106]
所述总损失函数为:
[0107]
l=l
id
+l
triplet
+βlc;
[0108]
其中,l
id
表示交叉熵损失函数,l
tri
表示三元组损失函数,lc表示中心损失函数,l为总损失,三种损失函数的加权和,β是中心损失的平衡权重。
[0109]
步骤s4:将训练集中的测试图片输入训练完成的重识别网络模型进行测试,得到最终的重识别网络模型;
[0110]
步骤s5:将多张待检索货车图片输入最终的重识别网络模型,判断待检索货车图片中的货车是否属于目标货车,步骤s4和步骤s5的具体步骤包括:
[0111]
获取训练集中的测试图片输入已训练完成的重识别网络模型进行测试;
[0112]
根据测试得到的特征图的图像特征进行比较相似度,得到最优的重识别网络模型;
[0113]
再将待检索的货车图片输入重识别网络模型,判断待检索的货车图片中的货车是否为目标货车,并将判断检测结果进行分类后对应保存。
[0114]
本发明的应用场景主要对货车进行重识别而构建的网络,但不限于货车重识别场景,也可以是行人或其他类型车辆。双层注意力网络由内外两层注意力实现重识别,外层是自注意力,可以在cnn网络中捕获全局特征,内层的注意力作用在自注意力的相对位置编码模块,可以提高外层注意力的性能。给定一张货车图片,该网络模型可以提取较准确的图像特征,之后与图片库中其他货车图片比对特征,排列出与给定货车相似的前n辆货车,特征越相似的属于同一货车目标的可能性越大。该模型可以帮助人类在智能交通中依据外观找到特定货车。
[0115]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1