利索能及
我要发布
收藏
专利号: 2023101116108
申请人: 中国矿业大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种行人重识别方法,其特征在于:包括以下步骤:

A1、将query库中行人图像输入到配置好参数的行人重识别神经网路模型中,提取行人的特征图与特征嵌入;

A2、将提取的行人特征与gallery库中各图像对应的特征做相似度度量,比对并输出结果;

在步骤A1中将获取的行人图像划分为query数据集、gallery数据集、train数据集,利用数据集作有监督训练,得到行人重识别模型;

所述行人重识别神经网路模型为以一个主干网络作为基础网络,并向更深层延展出一个全局网络分支和一个局部子网络分支的网络结构;

所述主干网络包括s0层、s1层、s2层、s3层、s4层,s2、s3和s4层输出的特征图输入到所述全局网络分支,s2、s3和s4层的输出也输入到所述局部子网络分支;

所述主干网络由DepthWise Convolution Net和Transformer网络构建;所述主干网络的s2层、s3层和s4层的输出特征分别做kernel_size为输入特征图的高度和宽度的全局池化,分别各获得1个全局特征向量,并用于采用交叉熵损失函数进行训练;

所述全局网络分支包括全局池化层、分类层,全局池化层kernel_size设置为输入特征图的高度和宽度,获得3个全局特征向量,并用于采用交叉熵损失函数与改进的三元组损失函数进行训练;

所述局部子网络分支包括水平池化层、卷积层、正则化层、非线性激活层,水平池化层kernel设置成输入特征图的宽度,卷积核步长设置为1,各获得一个局部特征,并采用改进的三元组损失函数进行训练;

行人重识别神经网路模型的损失函数表示如下:

Loss=Losscls+Lossmetric_g+Lossmetric_l其中,Losscls为分类损失函数,Lossmetric_g为全局度量损失函数,Lossmetric_l为局部度量损失函数,且全局度量损失函数和局部度量损失函数均为改进的三元组损失函数;

故写为:

a

其中,W 表示用于交叉熵损失函数的全连接层相应参数;y表示行人样本的身份标签,ia c和j分别表示样本编号;f代表全局特征,f代表局部特征;

对于全局网络,训练时交叉熵损失函数和改进的三元组损失函数中的输入的全局特征af均来源于s2、s3和s4层输出再经过全局平均池化后只剩batchsize和channel_global两个通道的全局特征,其中交叉熵损失利用了全部三层特征,再用分类层线性分类,而改进的三元组损失函数可选择得利用三层特征,通常仅选用s4层输出处理后的全局特征;测试时用度量函数通常仅计算s4层输出处理过后的全局特征的距离矩阵;

对于局部子网络,训练时交叉熵损失函数的局部特征来源于水平池化只剩batchsize、cchannel_local和Height三个通道的局部特征f ;测试时人为选择用度量函数计算局部特征的距离矩阵;

其中,batchsize为输入网络模型的批数据大小,channel_global为全局特征输出通道数,channel_local为局部特征输出通道数;

改进的三元组损失函数为难度自适应的三元组损失函数,其不仅考虑参考点样本与最难n样本之间的关系,并将两者作为负样本对;同时也考虑此时最难p样本与最难n样本之间的关系,并将两者作为负样本对;

三元组损失的距离函数,采用张量空间距离度量函数约束;

所述张量空间度量函数从张量空间出发,约束样本在张量空间的分布,使得类内样本的特征向量分布在密集的张量簇,从而使得类间样本的特征向量拉开张量空间分布状态;

所述难度自适应的三元组损失函数的获取包括以下步骤:

首先,对于每一个训练batch,随机挑选P个ID的行人,每个行人随机挑选K张不同的图片,即一个batch含有P×K张图片,之后对于batch中的每一张图片a,挑选一个最难的正样本和一个最难的负样本和a组成一个三元组;

在难样本三元组建立过程中,不仅要把让anchor与n之间距离作为惩罚项,还需将p与n之间的距离作为惩罚项,从而在训练过程中,从全局中分开所有的样本类别的分布;其中anchor、p、n分别表示参考基准样本、正样本、负样本;

其次,距离函数采用张量空间约束化的距离函数,在张量空间高辨识度地分开不同类样本,聚拢相同类样本;

张量空间约束化的距离函数公式如下:

其中, 表示计算特征向量 和的特征向量 的角度相关度函数,*表示乘法,β是一个放缩因子,用来平衡两项特征向量,λ是一个加权超参数,取[0,1]区间内,取0并忽略掉β时,得到 为两个特征向量的二范数,即欧氏距离;

在计算Lossmetric_l时,输入特征是三维的,使用最短路径方法计算样本特征两两间的最短路径作为距离,且距离函数仅仅采用角度约束的形式;同时作高斯形式下的归一化处理;

距离函数与高斯形式归一化公式如下:

a c

整个网络训练阶段所使用的最终输出的特征为f &f ,&表示分别考虑两个特征,两项综a c a c合作用于网络训练;整个网络测试阶段用的输出特征为f或者f或者f&f;

再次,创建距离矩阵,采用rerank重排序优化最终结果,同时,通过改进的三元组损失函数做度量训练;

最后,测试。

2.根据权利要求1所述的一种行人重识别方法,其特征在于:在步骤A1中特征提取阶段从全局网络分支的多个网络层次提取特征,将在模型不同层次的特征嵌入,做分类任务与度量任务;

局部子网络分支只做局部对齐度量任务;

所述特征提取阶段的多个层次分别在CoAtNet的s2层、s3层和s4层;

所述分类任务是用交叉熵损失函数对带标签的分别在s2、s3、s4层的特征作深监督训练;所述标签是用label Smooth方法软化后的标签,以增强模型对样本的拟合适配能力;

所述度量任务分别在s2、s3和s4层的特征图做池化与度量函数度量操作;所述s4层度量任务有两个,一个为必选任务,所述必选任务处理为对s4层的输出做全局池化操作,一个为可选任务;所述s2与s3层池化操作为水平池化。

3.根据权利要求2所述的一种行人重识别方法,其特征在于:s2层和s3层若被选中做度量任务,则执行与s4层的可选度量任务相同的操作:被选中的层输出的特征图水平池化之后还需对特征图做shape的调整以及做降维操作;

具体包括以下步骤:

将水平池化后shape为B,C,H,1的特征图,调整成B,C,H的特征图,然后做MBconv将C降维成C1,而B、H保持不变,数据内部的相对位置结构不变,最终用度量函数计算距离矩阵,做三元组损失监督训练;

其中,B为特征图的每批次数据的数目,C为通道数,H为高度。

4.根据权利要求3所述的一种行人重识别方法,其特征在于:所述MBconv层为依次的:输出通道不变,kernel_size为3,padding和stride为(1,1),分组数为C的分组卷积;

BatchNorm2d;GELU;输出通道为C1,kernel_size为1,stride为(1,1),padding为0的2维普通卷积;BatchNorm2d。

5.根据权利要求4所述的一种行人重识别方法,其特征在于:在s4层必选度量任务中,s4层输出的特征图经全局池化之后还需对特征图做shape的调整;

具体包括以下步骤:

将全局池化后shape为B,C,1,1的特征图,降维成B,C的特征图,数据内部的相对位置结构不变,最终用度量函数计算距离矩阵,做改进的三元组损失函数监督训练;

其中,B为特征图的每批次数据的数目,C为通道数,H为高度。

6.根据权利要求5所述的一种行人重识别方法,其特征在于:所述监督训练采用的优化器为Adam算法,采用的调度器为带重启的余弦退火,学习率为0.0002到0.000007,权重衰减为0.00008,总共训练350回合,前50回合预热训练,第50回合到第350回合为重启后的一轮正式训练。