本发明属于模式识别与计算机视觉领域,具体涉及一种基于部位注意力的行人重识别方法及系统。
背景技术:
行人重识别是指在多个镜头组成的监控网络拍摄得到的行人视频数据集中检索出感兴趣目标行人的技术,可应用到安防、嫌疑人追踪、行人行为分析等领域中,具有较高的理论和应用价值。
要完成自动化的行人重识别系统,需要面对以下重要问题:第一,受行人姿态变化、摄像头角度不同等因素的影响,导致对比的视频出现空间错位的问题,即相同的空间位置对应不同的行人身体部位,该问题导致视频所提取特征的判别性不足,进一步降低了重识别的性能;第二,受物体遮挡的影响,行人遮挡部位所提取的局部特征往往是无效的,常用的行人重识别方法忽略了该问题,所以其提取的特征包含了较多的无关噪声,使得特征匹配的准确性降低;第三,常用的基于深度网络的行人重识别方法使用分类损失进行网络模型的训练,但该分类损失不考虑样本对之间的关联信息,容易导致难负样本分类准确性较低的问题,使得分类精度降低。
技术实现要素:
本发明的目的在于提供一种基于部位注意力的行人重识别方法及系统,该方法及系统有利于提高行人重识别的性能。
为实现上述目的,本发明采用的技术方案是:一种基于部位注意力的行人重识别方法,包括以下步骤:
步骤a:输入训练集各行人视频到特征提取深度网络,得到中间特征,将中间特征输入到部位推断深度网络,得到k个部位对应的注意力热力图;
步骤b:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征;
步骤c:根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征;
步骤d:将中间特征输入到全局提取深度网络,计算全局特征,拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,得到分类向量;
步骤e:对视频特征计算三元组损失,对分类向量计算分类损失,然后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,而后更新各网络参数,完成各网络训练过程;
步骤f:输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
进一步地,所述步骤a具体包括以下步骤:
步骤a1:输入训练集各行人视频到特征提取深度网络,所述特征提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为中间特征;
步骤a2:将中间特征输入到部位推断深度网络,所述部位推断深度网络由若干个卷积层、反卷积层以及线性整流函数层组成,网络的输出为k个部位对应的注意力热力图。
进一步地,所述步骤b具体包括以下步骤:
步骤b1:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,公式如下:
ei=m°pi
其中,m为中间特征,pi为第i个部位对应的注意力热力图,°为哈达玛积,ei为第i个部位对应的局部中间特征;
步骤b2:分别将k个部位对应的局部中间特征输入到k个局部提取深度网络,所述局部提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为各部位对应的局部特征。
进一步地,所述步骤c具体包括以下步骤:
步骤c1:根据k个部位对应的注意力热力图计算各部位对应的有效系数,公式如下:
其中,λ为置信阈值,max(·)为最大值函数,||·||0和||·||1分别为l0范数和l1范数,vi为第i个部位的注意力热力图均值,exp(·)为指数函数,ξi为第i个部位对应的有效系数;
步骤c2:根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征,公式如下:
其中,li为第i个部位对应的局部特征,q为融合局部特征。
进一步地,所述步骤d具体包括以下步骤:
步骤d1:将中间特征输入到全局提取深度网络,所述全局提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为全局特征;
步骤d2:拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,全连接层的输出为分类向量。
进一步地,所述步骤e具体包括以下步骤:
步骤e1:对视频特征计算三元组损失,公式如下:
losstri=max(0,margin ||sa-sp||2-||sa-sn||2)
其中,sa为三元组中锚样本的视频特征,sp为三元组中负样本的视频特征,sn为三元组中正样本的视频特征,||·||2为向量的2范数,margin为三元组损失的边距,losstri为三元组损失;
步骤e2:对分类向量计算分类损失,公式如下:
losscls=-log(cy)
其中,c为分类向量,cy表示分类向量中第y个元素,而y为行人视频对应的类标签,log(·)为对数函数,losscls为分类损失;
步骤e3:使用不确定学习的方式计算联合损失,公式如下:
其中,ε1和ε2分别是分类损失和三元组损失对应的观测误差,loss为联合损失;
步骤e4:根据联合损失,使用误差逆向传播算法计算各网络参数的梯度,然后根据该梯度,使用随机梯度下降的方法更新各网络参数,当联合损失达到收敛条件后,完成各网络的训练过程。
本发明还提供了一种采用上述方法的行人重识别系统,包括:
特征提取深度网络模块,用于使用特征提取深度网络,利用卷积层、最大池化层以及线性整流函数层,提取待重识别视频的中间特征,用于后续的局部和全局特征提取;
部位推断深度网络模块,用于将中间特征输入到部位推断深度网络,利用卷积层、反卷积层以及线性整流函数层,计算k个部位对应的注意力热力图;
局部提取深度网络模块,用于将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征;
局部特征融合模块,用于根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征;
全局提取深度网络模块,用于将中间特征输入到全局提取深度网络,利用卷积层、最大池化层以及线性整流函数层,计算全局特征;
联合损失计算模块,用于对视频特征计算三元组损失,对分类向量计算分类损失,后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,后更新各网络参数,完成各网络训练过程;以及
重识别模块,用于输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
相较于现有技术,本发明具有以下有益效果:提供了一种基于部位注意力的行人重识别方法及系统,首先通过深度神经网络提取行人各身体部位的局部特征,以完成空间对齐,更好地解决了空间错位的问题。然后通过部位注意力热力图进行有效系数的计算,并根据该有效系数对各局部特征进行融合,从一定程度上解决由部位遮挡引起的误识别问题,获得噪声较少、更具判别性的特征。最后通过提出的不确定学习下的联合损失训练方法,结合三元组损失和分类损失进行网络模型的训练,既考虑了样本对之间的关联,又兼顾考虑了分类信息,使得网络可以学习到更鲁棒的特征空间,同时减小网络模型对于不同任务的输出不确定性。因此,本发明可进一步提升行人重识别的性能,具有很强的实用性和广阔的应用前景。
附图说明
图1是本发明实施例的方法实现流程图。
图2是本发明实施例的系统结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细说明。
本发明提供一种基于部位注意力的行人重识别方法,如图1所示,包括以下步骤:
步骤a:输入训练集各行人视频到特征提取深度网络,得到中间特征,将中间特征输入到部位推断深度网络,得到k个部位对应的注意力热力图。具体包括以下步骤:
步骤a1:输入训练集各行人视频到特征提取深度网络,所述特征提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为中间特征;
步骤a2:将中间特征输入到部位推断深度网络,所述部位推断深度网络由若干个卷积层、反卷积层以及线性整流函数层组成,网络的输出为k个部位对应的注意力热力图。
步骤b:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征。具体包括以下步骤:
步骤b1:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,公式如下:
ei=m°pi
其中,m为中间特征,pi为第i个部位对应的注意力热力图,°为哈达玛积,ei为第i个部位对应的局部中间特征;
步骤b2:分别将k个部位对应的局部中间特征输入到k个局部提取深度网络,所述局部提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为各部位对应的局部特征。
步骤c:根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征。具体包括以下步骤:
步骤c1:根据k个部位对应的注意力热力图计算各部位对应的有效系数,公式如下:
其中,λ为置信阈值,max(·)为最大值函数,||·||0和||·||1分别为l0范数和l1范数,vi为第i个部位的注意力热力图均值,exp(·)为指数函数,ξi为第i个部位对应的有效系数;
步骤c2:根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征,公式如下:
其中,li为第i个部位对应的局部特征,q为融合局部特征。
步骤d:将中间特征输入到全局提取深度网络,计算全局特征,拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,得到分类向量。具体包括以下步骤:
步骤d1:将中间特征输入到全局提取深度网络,所述全局提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为全局特征;
步骤d2:拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,全连接层的输出为分类向量。
步骤e:对视频特征计算三元组损失,对分类向量计算分类损失,然后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,而后更新各网络参数,完成各网络训练过程。具体包括以下步骤:
步骤e1:对视频特征计算三元组损失,公式如下:
losstri=max(0,margin ||sa-sp||2-||sa-sn||2)
其中,sa为三元组中锚样本的视频特征,sp为三元组中负样本的视频特征,sn为三元组中正样本的视频特征,||·||2为向量的2范数,margin为三元组损失的边距,losstri为三元组损失;
步骤e2:对分类向量计算分类损失,公式如下:
losscls=-log(cy)
其中,c为分类向量,cy表示分类向量中第y个元素,而y为行人视频对应的类标签,log(·)为对数函数,losscls为分类损失;
步骤e3:使用不确定学习的方式计算联合损失,公式如下:
其中,ε1和ε2分别是分类损失和三元组损失对应的观测误差,loss为联合损失;
步骤e4:根据联合损失,使用误差逆向传播算法计算各网络参数的梯度,然后根据该梯度,使用随机梯度下降的方法更新各网络参数,当联合损失达到收敛条件后,完成各网络的训练过程。
步骤f:输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
本发明还提供了采用上述方法的行人重识别系统,如图2所示,包括:特征提取深度网络模块、部位推断深度网络模块、局部提取深度网络模块、局部特征融合模块、全局提取深度网络模块、联合损失计算模块和重识别模块。
所述特征提取深度网络模块用于使用特征提取深度网络,利用卷积层、最大池化层以及线性整流函数层,提取待重识别视频的中间特征,用于后续的局部和全局特征提取。
所述部位推断深度网络模块用于将中间特征输入到部位推断深度网络,利用卷积层、反卷积层以及线性整流函数层,计算k个部位对应的注意力热力图。
所述局部提取深度网络模块用于将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征。
所述局部特征融合模块用于根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征。
所述全局提取深度网络模块用于将中间特征输入到全局提取深度网络,利用卷积层、最大池化层以及线性整流函数层,计算全局特征。
所述联合损失计算模块用于对视频特征计算三元组损失,对分类向量计算分类损失,后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,后更新各网络参数,完成各网络训练过程。
所述重识别模块用于输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
1.一种基于部位注意力的行人重识别方法,其特征在于,包括以下步骤:
步骤a:输入训练集各行人视频到特征提取深度网络,得到中间特征,将中间特征输入到部位推断深度网络,得到k个部位对应的注意力热力图;
步骤b:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征;
步骤c:根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征;
步骤d:将中间特征输入到全局提取深度网络,计算全局特征,拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,得到分类向量;
步骤e:对视频特征计算三元组损失,对分类向量计算分类损失,然后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,而后更新各网络参数,完成各网络训练过程;
步骤f:输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
2.根据权利要求1所述的一种基于部位注意力的行人重识别方法,其特征在于,所述步骤a具体包括以下步骤:
步骤a1:输入训练集各行人视频到特征提取深度网络,所述特征提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为中间特征;
步骤a2:将中间特征输入到部位推断深度网络,所述部位推断深度网络由若干个卷积层、反卷积层以及线性整流函数层组成,网络的输出为k个部位对应的注意力热力图。
3.根据权利要求1所述的一种基于部位注意力的行人重识别方法,其特征在于,所述步骤b具体包括以下步骤:
步骤b1:将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,公式如下:
ei=m°pi,i=1,2,...,k
其中,m为中间特征,pi为第i个部位对应的注意力热力图,°为哈达玛积,ei为第i个部位对应的局部中间特征;
步骤b2:分别将k个部位对应的局部中间特征输入到k个局部提取深度网络,所述局部提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为各部位对应的局部特征。
4.根据权利要求3所述的一种基于部位注意力的行人重识别方法,其特征在于,所述步骤c具体包括以下步骤:
步骤c1:根据k个部位对应的注意力热力图计算各部位对应的有效系数,公式如下:
其中,λ为置信阈值,max(·)为最大值函数,||·||0和||·||1分别为l0范数和l1范数,vi为第i个部位的注意力热力图均值,exp(·)为指数函数,ξi为第i个部位对应的有效系数;
步骤c2:根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征,公式如下:
其中,li为第i个部位对应的局部特征,q为融合局部特征。
5.根据权利要求1所述的一种基于部位注意力的行人重识别方法,其特征在于,所述步骤d具体包括以下步骤:
步骤d1:将中间特征输入到全局提取深度网络,所述全局提取深度网络由若干个卷积层、最大池化层以及线性整流函数层组成,网络的输出为全局特征;
步骤d2:拼接全局特征和融合局部特征得到视频特征,将视频特征输入到全连接层,全连接层的输出为分类向量。
6.根据权利要求1所述的一种基于部位注意力的行人重识别方法,其特征在于,所述步骤e具体包括以下步骤:
步骤e1:对视频特征计算三元组损失,公式如下:
losstri=max(0,margin ||sa-sp||2-||sa-sn||2)
其中,sa为三元组中锚样本的视频特征,sp为三元组中负样本的视频特征,sn为三元组中正样本的视频特征,||·||2为向量的2范数,margin为三元组损失的边距,losstri为三元组损失;
步骤e2:对分类向量计算分类损失,公式如下:
losscls=-log(cy)
其中,c为分类向量,cy表示分类向量中第y个元素,而y为行人视频对应的类标签,log(·)为对数函数,losscls为分类损失;
步骤e3:使用不确定学习的方式计算联合损失,公式如下:
其中,ε1和ε2分别是分类损失和三元组损失对应的观测误差,loss为联合损失;
步骤e4:根据联合损失,使用误差逆向传播算法计算各网络参数的梯度,然后根据该梯度,使用随机梯度下降的方法更新各网络参数,当联合损失达到收敛条件后,完成各网络的训练过程。
7.一种采用如权利要求1-6任一项所述方法的行人重识别系统,其特征在于,包括:
特征提取深度网络模块,用于使用特征提取深度网络,利用卷积层、最大池化层以及线性整流函数层,提取待重识别视频的中间特征,用于后续的局部和全局特征提取;
部位推断深度网络模块,用于将中间特征输入到部位推断深度网络,利用卷积层、反卷积层以及线性整流函数层,计算k个部位对应的注意力热力图;
局部提取深度网络模块,用于将中间特征和k个部位对应的注意力热力图做哈达玛积运算,得到k个部位对应的局部中间特征,再输入k个局部提取深度网络,得到k个部位对应的局部特征;
局部特征融合模块,用于根据k个部位对应的注意力热力图计算各部位对应的有效系数,根据有效系数,对k个部位对应的局部特征进行加权融合,得到融合局部特征;
全局提取深度网络模块,用于将中间特征输入到全局提取深度网络,利用卷积层、最大池化层以及线性整流函数层,计算全局特征;
联合损失计算模块,用于对视频特征计算三元组损失,对分类向量计算分类损失,后使用不确定学习的方式计算联合损失,根据联合损失计算各网络参数的梯度,后更新各网络参数,完成各网络训练过程;以及
重识别模块,用于输入查询视频和检索集各视频到训练完成的各网络,得到视频特征,计算查询视频和检索集各视频的特征距离,按照特征距离进行递增排序,得到查询视频的近邻列表,完成行人重识别。
技术总结