一种基于多尺度孪生级联网络的行人重识别方法转让专利

申请号 : CN202111355189.2

文献号 : CN113963150B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宋春晓瞿洪桂孙家乐

申请人 : 北京中电兴发科技有限公司

摘要 :

本发明提供一种基于多尺度孪生级联网络的行人重识别方法,包括以下步骤:构建多尺度孪生级联网络;其中,所述多尺度孪生级联网络包括多尺度孪生级联彩色网络、多尺度孪生级联灰度网络、融合层和PCA降维层;其中,多尺度孪生级联彩色网络和多尺度孪生级联灰度网络均包括第一级联子网络、第二级联子网络和第三级联子网络。本发明使用多尺度级联网络,将多尺度与对应上级子网络的级联子特征图融合输入到次级子网络进行行人特征提取,并将各个子网络的行人特征进行融合,从而获得更加宏观准确的行人特征表达。因此,采用本发明方法,可获得更加全局、高层次且准确的行人特征表达,避免色差、光照、尺度集场景等干扰,提高行人重识别精度。

权利要求 :

1.一种基于多尺度孪生级联网络的行人重识别方法,其特征在于,包括以下步骤:步骤1,构建数据集;所述数据集包括多个样本组;每个所述样本组包括两张图片样本,分别为彩色图片样本和灰度图片样本;其中,所述灰度图片样本为对所述彩色图片样本灰度化处理后的图片样本;

将所述数据集划分为训练集TrainSet和验证集;

步骤2,构建多尺度孪生级联网络;其中,所述多尺度孪生级联网络包括多尺度孪生级联彩色网络Network_1、多尺度孪生级联灰度网络Network_2、融合层和PCA降维层;

所述多尺度孪生级联彩色网络Network_1和所述多尺度孪生级联灰度网络Network_2的网络结构完全相同;

所述多尺度孪生级联彩色网络Network_1包括第一级联彩色子网络level_1s、第二级联彩色子网络level_2s和第三级联彩色子网络level_3s;

所述多尺度孪生级联灰度网络Network_2包括第一级联灰度子网络level_1g、第二级联灰度子网络level_2g和第三级联灰度子网络level_3g;

采用以下方式,对所述多尺度孪生级联网络进行训练,得到训练完成的多尺度孪生级联网络:

步骤2.1,以3个样本组为一批样本组集合;将每批3个样本组分别表示为:样本组u1、样本组u2和样本组u3;其中,样本组u1为固定样本;样本组u2与样本组u1对应同一个行人,样本组u2为样本组u1的正样本;样本组u3与样本组u1对应不同行人,样本组u3为样本组u1的负样本;

将本批样本组集合输入到所述多尺度孪生级联网络;

步骤2.2,对于每个样本组,其彩色图片样本表示为:彩色图片样本rgb_tu,灰度图片样本表示为gray_tu;

将彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,得到第一级联彩色子网络level_1s输出的第一级联彩色行人分类结果classify_1s、第二级联彩色子网络level_2s输出的第二级联彩色行人分类结果classify_2s、第三级联彩色子网络level_3s输出的第三级联彩色行人分类结果classify_3s以及多尺度孪生级联彩色网络Network_1输出的彩色行人融合特征图rgb_features;

将灰度图片样本gray_tu输入到多尺度孪生级联灰度网络Network_2,得到第一级联灰度子网络level_1g输出的第一级联灰度行人分类结果classify_1g、第二级联灰度子网络level_2g输出的第二级联灰度行人分类结果classify_2g、第三级联灰度子网络level_3g输出的第三级联灰度行人分类结果classify_3g以及多尺度孪生级联灰度网络Network_2输出的灰度行人融合特征图gray_features;

其中,彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,具体过程为:步骤2.2.1,彩色图片样本rgb_tu进行缩小操作,得到Scale_a图片样本;对Scale_a图片样本进行进一步缩小操作,得到Scale_b图片样本;对Scale_b图片样本进行进一步缩小操作,得到Scale_c图片样本;

步骤2.2.2,将Scale_a图片样本输入到第一级联彩色子网络level_1s中,第一级联彩色子网络level_1s的处理过程为:A1)对Scale_a图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_a;

A2)对行人特征图rgb_feature_a进行降采样,得到与Scale_b图片样本尺寸相同的行人特征图rgb_feature1;

A3)对行人特征图rgb_feature1进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature2;

A4)对行人特征图rgb_feature2进行卷积和全局平均池化操作,再输入第一全连接层,得到第一级联行人特征图rgb_stag1_feature;

A5)将第一级联行人特征图rgb_stag1_feature输入第二全连接层,得到第一级联彩色行人分类结果classify_1s;

步骤2.2.3,第二级联彩色子网络level_2s的处理过程为:B1)将Scale_b图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_b;

B2)对行人特征图rgb_feature_b和行人特征图rgb_feature1进行行人特征融合,再进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature3;

B3)对行人特征图rgb_feature3进行卷积和全局平均池化操作,再输入第一全连接层,得到第二级联行人特征图rgb_stag2_feature;

B4)将第二级联行人特征图rgb_stag2_feature输入第二全连接层,得到第二级联彩色行人分类结果classify_2s;

步骤2.2.4,第三级联彩色子网络level_3s的处理过程为:C1)将Scale_c图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_c;

C2)将行人特征图rgb_feature_c、行人特征图rgb_feature2和行人特征图rgb_feature3进行行人特征融合,再进行卷积和全局平均池化操作,再输入第一全连接层,得到第三级联行人特征图rgb_stag3_feature;

C3)将第三级联行人特征图rgb_stag3_feature输入第二全连接层,得到第三级联彩色行人分类结果classify_3s;

步骤2.2.5,对第一级联行人特征图rgb_stag1_feature、第二级联行人特征图rgb_stag2_feature和第三级联行人特征图rgb_stag3_feature进行行人特征融合,得到彩色行人融合特征图rgb_features;

步骤2.3,对于每个样本组,将其彩色行人融合特征图rgb_features和灰度行人融合特征图gray_features通过融合层进行行人特征融合,再通过PCA降维层进行降维处理,得到最终的全局行人特征图features;全局行人特征图features经过全连接层,得到全局行人分类结果classifys;

步骤2.4,本批共有3个样本组,对于任意第ui个样本组,i=1,2,3,得到第ui个样本组对应的全局行人特征图 全局行人分类结果 第一级联彩色行人分类结果 第二级联彩色行人分类结果 第三级联彩色行人分类结果第一级联灰度行人分类结果 第二级联灰度行人分类结果和第三级联灰度行人分类结果

步骤2.5,计算各级子网络的损失值:步骤2.5.1,将第一级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联彩色行人分类损失值将第二级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联彩色行人分类损失值

将第三级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联彩色行人分类损失值

将第一级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联灰度行人分类损失值

将第二级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联灰度行人分类损失值

将第三级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联灰度行人分类损失值

步骤2.5.2,采用下式,分别计算得到第一级联彩色子网络level_1s的损失值Loss_1s、第二级联彩色子网络level_2s的损失值Loss_2s、第三级联彩色子网络level_3s的损失值Loss_3s、第一级联灰度子网络level_1g的损失值Loss_1g、第二级联灰度子网络level_2g的损失值Loss_2g、第三级联灰度子网络level_3g的损失值Loss_3g:步骤2.6,计算多尺度孪生级联网络的损失值Loss_0:步骤2.6.1,将全局行人分类结果 与第ui个样本组的样本标签进行比较,得到全局行人分类损失值

步骤2.6.2,采用下式,计算得到多尺度孪生级联网络的损失值Loss_0:步骤2.7,计算样本组之间相似性损失函数值Loss_sim:步骤2.7.1,计算样本组u1的全局行人特征图 和样本组u2的全局行人特征图之间的样本距离,表示为:d(u1,u2);

计算样本组u1的全局行人特征图 和样本组u3的全局行人特征图 之间的样本距离,表示为:d(u1,u3);

步骤2.7.2,采用下式,计算初步损失函数值Loss_d:Loss_d=d(u1,u2)‑d(u1,u3)+α其中:α为损失函数系数,取值范围为:α

如果Loss_d小于等于0,则Loss_sim=0;

步骤2.8,采用下面公式,得到最后损失函数值Loss_final:Loss_final=λ1Loss_1s+λ1Loss_2s+λ1Loss_3s+λ1Loss_1g+λ1Loss_2g+λ1Loss_3g+λ

2Loss_0+λ3Loss_sim其中:

λ1代表各级联子网络的权重系数;

λ2代表多尺度孪生级联网络损失的权重系数;

λ3相似性损失函数值权重系数;

步骤2.9,判断最后损失函数值Loss_final是否收敛;如果收敛,则得到训练完成的多尺度孪生级联网络,执行步骤3;如果未收敛,则调整多尺度孪生级联网络的网络参数,以另一批样本组为输入,返回步骤2.1,对多尺度孪生级联网络进行迭代训练;

步骤3,采用验证集对训练完成的多尺度孪生级联网络进行精度验证测试,如果测试精度满足要求,则得到验证通过的多尺度孪生级联网络;

步骤4,采用多尺度孪生级联网络,对输入的行人图片进行特征识别,得到行人特征识别结果。

2.根据权利要求1所述的一种基于多尺度孪生级联网络的行人重识别方法,其特征在于,λ1为1,λ2为6,λ3为7。

3.根据权利要求1所述的一种基于多尺度孪生级联网络的行人重识别方法,其特征在于,步骤4具体为:

步骤4.1,输入的行人图片为图片Q;预建立行人样本库G;

[Q]

步骤4.2,将图片Q输入多尺度孪生级联网络,得到全局行人特征图features ;

对于行人样本库G中的每个行人样本图片Gj,j=1,2,...,z,z代表行人样本库G中的行人样本图片的数量,分别输入到多尺度孪生级联网络,得到对应的全局行人特征图[Q]

步骤4.3,计算全局行人特征图features 和全局行人特征图 的相似度;将相似度从大到小排序,输出与图片Q相似度最高的行人样本库G中的行人样本图片。

说明书 :

一种基于多尺度孪生级联网络的行人重识别方法

技术领域

[0001] 本发明属于智能视频图像处理技术领域,具体涉及一种基于多尺度孪生级联网络的行人重识别方法。

背景技术

[0002] 随着5G和物联网的迅猛发展,智能化生活已经悄然而至。智能安防是智能化生活的重要组成部分,而作为智能安防的关键技术,在跨摄像设备下对行人进行检索的行人重
识别技术的准确度则是重中之重。当前的行人重识别技术具有一定的局限性,比如由于摄
像设备之间的差异,会存在行人易受穿着色差、光照、尺度及场景等的影响,从而造成精准
度受损。因此,以上这些变化的因素对行人重识别技术的推广及应用带来了困难。因此提取
不同设备下行人的关键有效性的特征就显得至关重要。
[0003] 现有的行人重识别方法中的特征表达方法主要有:1、提取图像的语义信息表示行人特征,该方法提取的行人特征对于衣着颜色有较强的依赖性,从而造成撞衫/衣着颜色一
致时较难区分;2、使用单一尺度的输入方式提取行人特征,该方法提取的行人特征忽略了
不同粒度图像的细节特征;3、基于神经网络的行人重识别方法,该方法多是使用单个网络
提取行人特征,行人特征信息单一,对网络结构的设计依赖性较大。
[0004] 因此,针对现有技术存在的问题,如何提取不同摄像设备下行人中更关键、有效、准确且全面的行人特征是非常有必要的。

发明内容

[0005] 针对现有技术存在的缺陷,本发明提供一种基于多尺度孪生级联网络的行人重识别方法,可有效解决上述问题。
[0006] 本发明采用的技术方案如下:
[0007] 本发明提供一种基于多尺度孪生级联网络的行人重识别方法,包括以下步骤:
[0008] 步骤1,构建数据集;所述数据集包括多个样本组;每个所述样本组包括两张图片样本,分别为彩色图片样本和灰度图片样本;其中,所述灰度图片样本为对所述彩色图片样
本灰度化处理后的图片样本;
[0009] 将所述数据集划分为训练集TrainSet和验证集;
[0010] 步骤2,构建多尺度孪生级联网络;其中,所述多尺度孪生级联网络包括多尺度孪生级联彩色网络Network_1、多尺度孪生级联灰度网络Network_2、融合层和PCA降维层;
[0011] 所述多尺度孪生级联彩色网络Network_1和所述多尺度孪生级联灰度网络Network_2的网络结构完全相同;
[0012] 所述多尺度孪生级联彩色网络Network_1包括第一级联彩色子网络level_1s、第二级联彩色子网络level_2s和第三级联彩色子网络level_3s;
[0013] 所述多尺度孪生级联灰度网络Network_2包括第一级联灰度子网络level_1g、第二级联灰度子网络level_2g和第三级联灰度子网络level_3g;
[0014] 采用以下方式,对所述多尺度孪生级联网络进行训练,得到训练完成的多尺度孪生级联网络:
[0015] 步骤2.1,以3个样本组为一批样本组集合;将每批3个样本组分别表示为:样本组u1、样本组u2和样本组u3;其中,样本组u1为固定样本;样本组u2与样本组u1对应同一个行人,
样本组u2为样本组u1的正样本;样本组u3与样本组u1对应不同行人,样本组u3为样本组u1的
负样本;
[0016] 将本批样本组集合输入到所述多尺度孪生级联网络;
[0017] 步骤2.2,对于每个样本组,其彩色图片样本表示为:彩色图片样本rgb_tu,灰度图片样本表示为gray_tu;
[0018] 将彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,得到第一级联彩色子网络level_1s输出的第一级联彩色行人分类结果classify_1s、第二级联彩色子
网络level_2s输出的第二级联彩色行人分类结果classify_2s、第三级联彩色子网络
level_3s输出的第三级联彩色行人分类结果classify_3s以及多尺度孪生级联彩色网络
Network_1输出的彩色行人融合特征图rgb_features;
[0019] 将灰度图片样本gray_tu输入到多尺度孪生级联灰度网络Network_2,得到第一级联灰度子网络level_1g输出的第一级联灰度行人分类结果classify_1g、第二级联灰度子
网络level_2g输出的第二级联灰度行人分类结果classify_2g、第三级联灰度子网络
level_3g输出的第三级联灰度行人分类结果classify_3g以及多尺度孪生级联灰度网络
Network_2输出的灰度行人融合特征图gray_features;
[0020] 其中,彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,具体过程为:
[0021] 步骤2.2.1,彩色图片样本rgb_tu进行缩小操作,得到Scale_a图片样本;对Scale_a图片样本进行进一步缩小操作,得到Scale_b图片样本;对Scale_b图片样本进行进一步缩
小操作,得到Scale_c图片样本;
[0022] 步骤2.2.2,将Scale_a图片样本输入到第一级联彩色子网络level_1s中,第一级联彩色子网络level_1s的处理过程为:
[0023] A1)对Scale_a图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_a;
[0024] A2)对行人特征图rgb_feature_a进行降采样,得到与Scale_b图片样本尺寸相同的行人特征图rgb_feature1;
[0025] A3)对行人特征图rgb_feature1进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature2;
[0026] A4)对行人特征图rgb_feature2进行卷积和全局平均池化操作,再输入第一全连接层,得到第一级联行人特征图rgb_stag1_feature;
[0027] A5)将第一级联行人特征图rgb_stag1_feature输入第二全连接层,得到第一级联彩色行人分类结果classify_1s;
[0028] 步骤2.2.3,第二级联彩色子网络level_2s的处理过程为:
[0029] B1)将Scale_b图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_b;
[0030] B2)对行人特征图rgb_feature_b和行人特征图rgb_feature1进行行人特征融合,再进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature3;
[0031] B3)对行人特征图rgb_feature3进行卷积和全局平均池化操作,再输入第一全连接层,得到第二级联行人特征图rgb_stag2_feature;
[0032] B4)将第二级联行人特征图rgb_stag2_feature输入第二全连接层,得到第二级联彩色行人分类结果classify_2s;
[0033] 步骤2.2.4,第三级联彩色子网络level_3s的处理过程为:
[0034] C1)将Scale_c图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_c;
[0035] C2)将行人特征图rgb_feature_c、行人特征图rgb_feature2和行人特征图rgb_feature3进行行人特征融合,再进行卷积和全局平均池化操作,再输入第一全连接层,得到
第三级联行人特征图rgb_stag3_feature;
[0036] C3)将第三级联行人特征图rgb_stag3_feature输入第二全连接层,得到第三级联彩色行人分类结果classify_3s;
[0037] 步骤2.2.5,对第一级联行人特征图rgb_stag1_feature、第二级联行人特征图rgb_stag2_feature和第三级联行人特征图rgb_stag3_feature进行行人特征融合,得到彩
色行人融合特征图rgb_features;
[0038] 步骤2.3,对于每个样本组,将其彩色行人融合特征图rgb_features和灰度行人融合特征图gray_features通过融合层进行行人特征融合,再通过PCA降维层进行降维处理,
得到最终的全局行人特征图features;全局行人特征图features经过全连接层,得到全局
行人分类结果classifys;
[0039] 步骤2.4,本批共有3个样本组,对于任意第ui个样本组,i=1,2,3,得到第ui个样本组对应的全局行人特征图 全局行人分类结果 第一级联彩色行人分
类结果 第二级联彩色行人分类结果 第三级联彩色行人分类
结果 第一级联灰度行人分类结果 第二级联灰度行人分类结
果 和第三级联灰度行人分类结果
[0040] 步骤2.5,计算各级子网络的损失值:
[0041] 步骤2.5.1,将第一级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联彩色行人分类损失值
[0042] 将第二级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联彩色行人分类损失值
[0043] 将第三级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联彩色行人分类损失值
[0044] 将第一级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联灰度行人分类损失值
[0045] 将第二级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联灰度行人分类损失值
[0046] 将第三级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联灰度行人分类损失值
[0047] 步骤2.5.2,采用下式,分别计算得到第一级联彩色子网络level_1s的损失值Loss_1s、第二级联彩色子网络level_2s的损失值Loss_2s、第三级联彩色子网络level_3s
的损失值Loss_3s、第一级联灰度子网络level_1g的损失值Loss_1g、第二级联灰度子网络
level_2g的损失值Loss_2g、第三级联灰度子网络level_3g的损失值Loss_3g:
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054] 步骤2.6,计算多尺度孪生级联网络的损失值Loss_0:
[0055] 步骤2.6.1,将全局行人分类结果 与第ui个样本组的样本标签进行比较,得到全局行人分类损失值
[0056] 步骤2.6.2,采用下式,计算得到多尺度孪生级联网络的损失值Loss_0:
[0057]
[0058] 步骤2.7,计算样本组之间相似性损失函数值Loss_sim:
[0059] 步骤2.7.1,计算样本组u1的全局行人特征图 和样本组u2的全局行人特征图 之间的样本距离,表示为:d(u1,u2);
[0060] 计算样本组u1的全局行人特征图 和样本组u3的全局行人特征图之间的样本距离,表示为:d(u1,u3);
[0061] 步骤2.7.2,采用下式,计算初步损失函数值Loss_d:
[0062] Loss_d=d(u1,u2)‑d(u1,u3)+α
[0063] 其中:α为损失函数系数,取值范围为:α
[0064] 步骤2.7.3,采用下述方法,得到相似性损失函数值Loss_sim:
[0065] 如果Loss_d大于0,则Loss_sim=Loss_d;
[0066] 如果Loss_d小于等于0,则Loss_sim=0;
[0067] 步骤2.8,采用下面公式,得到最后损失函数值Loss_final:
[0068] Loss_final=λ1Loss_1s+λ1Loss_2s+λ1Loss_3s+λ1Loss_1g+λ1Loss_2g+λ1Loss_3g+λ2Loss_0+λ3Loss_sim
[0069] 其中:
[0070] λ1代表各级联子网络的权重系数;
[0071] λ2代表多尺度孪生级联网络损失的权重系数;
[0072] λ3相似性损失函数值权重系数;
[0073] 步骤2.9,判断最后损失函数值Loss_final是否收敛;如果收敛,则得到训练完成的多尺度孪生级联网络,执行步骤3;如果未收敛,则调整多尺度孪生级联网络的网络参数,
以另一批样本组为输入,返回步骤2.1,对多尺度孪生级联网络进行迭代训练;
[0074] 步骤3,采用验证集对训练完成的多尺度孪生级联网络进行精度验证测试,如果测试精度满足要求,则得到验证通过的多尺度孪生级联网络;
[0075] 步骤4,采用多尺度孪生级联网络,对输入的行人图片进行特征识别,得到行人特征识别结果。
[0076] 优选的,λ1为1,λ2为6,λ3为7。
[0077] 优选的,步骤4具体为:
[0078] 步骤4.1,输入的行人图片为图片Q;预建立行人样本库G;
[0079] 步骤4.2,将图片Q输入多尺度孪生级联网络,得到全局行人特征图features[Q];
[0080] 对于行人样本库G中的每个行人样本图片Gj,j=1,2,...,z,z代表行人样本库G中的行人样本图片的数量,分别输入到多尺度孪生级联网络,得到对应的全局行人特征图
[0081] 步骤4.3,计算全局行人特征图features[Q]和全局行人特征图 的相似度;将相似度从大到小排序,输出与图片Q相似度最高的行人样本库G中的行人样本图片。
[0082] 本发明提供的一种基于多尺度孪生级联网络的行人重识别方法具有以下优点:
[0083] 本发明使用多尺度级联网络,将多尺度与对应上级子网络的级联子特征图融合输入到次级子网络进行行人特征提取,并将各个子网络的行人特征进行融合,从而获得更加
宏观准确的行人特征表达。因此,采用本发明方法,可获得更加全局、高层次且准确的行人
特征表达,避免色差、光照、尺度集场景等干扰,提高行人重识别精度。

附图说明

[0084] 图1为本发明提供的一种基于多尺度孪生级联网络的行人重识别方法的整体流程示意图;
[0085] 图2为本发明提供的多尺度孪生级联网络的整体原理图;
[0086] 图3为本发明提供的第一级联子网络level_1的结构图;
[0087] 图4为本发明提供的第二级联子网络level_2的结构图;
[0088] 图5为本发明提供的第三级联子网络level_3的结构图。

具体实施方式

[0089] 为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以
解释本发明,并不用于限定本发明。
[0090] 由于现有技术中存在的色差、光照、尺度集场景等干扰条件,易造成行人重识别精度下降,因此,本发明提供一种基于多尺度孪生级联网络的行人重识别方法,具有以下特
点:1)构建彩色与灰度双输入结构的多尺度孪生级联网络,将多尺度彩色级联特征和多尺
度灰度级联特征进行特征融合之后再采用特征降维策略,从而获得更加全局、高层次且准
确的行人特征表达;2)使用多尺度级联网络,将多尺度与对应上级子网络的级联子特征图
融合输入到次级子网络进行行人特征提取,并将各个子网络的行人特征进行融合,从而获
得更加宏观准确的行人特征表达。因此,采用本发明方法,可获得更加全局、高层次且准确
的行人特征表达,避免色差、光照、尺度集场景等干扰,提高行人重识别精度。
[0091] 本发明提供一种基于多尺度孪生级联网络的行人重识别方法,参考图1,包括以下步骤:
[0092] 步骤1,构建数据集;所述数据集包括多个样本组;每个所述样本组包括两张图片样本,分别为彩色图片样本和灰度图片样本;其中,所述灰度图片样本为对所述彩色图片样
本灰度化处理后的图片样本;
[0093] 将所述数据集划分为训练集TrainSet和验证集;
[0094] 其中,训练集TrainSet用于训练多尺度孪生级联网络;验证集用于验证多尺度孪生级联网络的精度。
[0095] 步骤2,构建多尺度孪生级联网络;其中,所述多尺度孪生级联网络包括多尺度孪生级联彩色网络Network_1、多尺度孪生级联灰度网络Network_2、融合层和PCA降维层;
[0096] 所述多尺度孪生级联彩色网络Network_1和所述多尺度孪生级联灰度网络Network_2的网络结构完全相同;
[0097] 本发明中,数据集中每张彩色图片样本均对应一张灰度图片样本,彩色图片样本输入多尺度孪生级联彩色网络Network_1,灰度图片样本输入多尺度孪生级联灰度网络
Network_2。通过设置与多尺度孪生级联彩色网络Network_1结构完全相同的多尺度孪生级
联灰度网络Network_2,可补充由于跨摄像头带来的色差、光照、场景及姿态等影响,提高行
人特征提取的精度。
[0098] 所述多尺度孪生级联彩色网络Network_1包括第一级联彩色子网络level_1s、第二级联彩色子网络level_2s和第三级联彩色子网络level_3s;
[0099] 所述多尺度孪生级联灰度网络Network_2包括第一级联灰度子网络level_1g、第二级联灰度子网络level_2g和第三级联灰度子网络level_3g;
[0100] 本发明中,三个级联子网络的要求是:主干网络不同,可一级比一级结构简单。主干网络可以是简单的卷积网络、残差网络或者多种网络的结合,但是需要保证上一级网络
的子特征图的输出尺度与下一级网络的输入尺度一致,尺度仅指高和宽。
[0101] 采用以下方式,对所述多尺度孪生级联网络进行训练,得到训练完成的多尺度孪生级联网络:
[0102] 步骤2.1,以3个样本组为一批样本组集合;将每批3个样本组分别表示为:样本组u1、样本组u2和样本组u3;其中,样本组u1为固定样本;样本组u2与样本组u1对应同一个行人,
样本组u2为样本组u1的正样本;样本组u3与样本组u1对应不同行人,样本组u3为样本组u1的
负样本;
[0103] 将本批样本组集合输入到所述多尺度孪生级联网络;
[0104] 步骤2.2,对于每个样本组,其彩色图片样本表示为:彩色图片样本rgb_tu,灰度图片样本表示为gray_tu;
[0105] 参考图2,将彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,得到第一级联彩色子网络level_1s输出的第一级联彩色行人分类结果classify_1s、第二级
联彩色子网络level_2s输出的第二级联彩色行人分类结果classify_2s、第三级联彩色子
网络level_3s输出的第三级联彩色行人分类结果classify_3s以及多尺度孪生级联彩色网
络Network_1输出的彩色行人融合特征图rgb_features;
[0106] 将灰度图片样本gray_tu输入到多尺度孪生级联灰度网络Network_2,得到第一级联灰度子网络level_1g输出的第一级联灰度行人分类结果classify_1g、第二级联灰度子
网络level_2g输出的第二级联灰度行人分类结果classify_2g、第三级联灰度子网络
level_3g输出的第三级联灰度行人分类结果classify_3g以及多尺度孪生级联灰度网络
Network_2输出的灰度行人融合特征图gray_features;
[0107] 由于彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1的处理过程,与灰度图片样本gray_tu输入到多尺度孪生级联灰度网络Network_2的处理过程完全相
同,因此,本发明仅以彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1中的
处理过程为例,通过步骤2.2.1‑步骤2.2.5进行详细介绍,对于灰度图片样本gray_tu输入
到多尺度孪生级联灰度网络Network_2的处理过程不再赘述。
[0108] 其中,彩色图片样本rgb_tu输入到多尺度孪生级联彩色网络Network_1,具体过程为:
[0109] 步骤2.2.1,彩色图片样本rgb_tu进行缩小操作,得到Scale_a图片样本;对Scale_a图片样本进行进一步缩小操作,得到Scale_b图片样本;对Scale_b图片样本进行进一步缩
小操作,得到Scale_c图片样本;
[0110] 因此,Scale_a图片样本、Scale_b图片样本和Scale_c图片样本的图片尺寸不变缩小。
[0111] 作为一种具体实现方式,Scale_a图片样本尺度缩小两倍,得到Scale_b图片样本;Scale_b图片样本尺度缩小两倍,得到Scale_c图片样本。例如,Scale_a图片样本尺度为
128*384,Scale_b图片样本尺度为64*192,Scale_c图片样本尺度为32*96,32指图片的宽;
96指图片的高。
[0112] 步骤2.2.2,将Scale_a图片样本输入到第一级联彩色子网络level_1s中,第一级联彩色子网络level_1s的处理过程参考图3为:
[0113] A1)对Scale_a图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_a;
[0114] A2)对行人特征图rgb_feature_a进行降采样,得到与Scale_b图片样本尺寸相同的行人特征图rgb_feature1;
[0115] A3)对行人特征图rgb_feature1进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature2;
[0116] A4)对行人特征图rgb_feature2进行卷积和全局平均池化操作,再输入第一全连接层,得到第一级联行人特征图rgb_stag1_feature;
[0117] A5)将第一级联行人特征图rgb_stag1_feature输入第二全连接层,得到第一级联彩色行人分类结果classify_1s;
[0118] 例如,尺度128*384的Scale_a图片样本输入、卷积层、批量归一化层、ReLU激活层、两个下采样单元downsampling_unit、卷积、平均池化、全连接层fc1和全连接层fc2。
[0119] 其中下采样单元downsampling unit的构成可以由步长为2的最大卷积或者平均/池化层实现,本实施例中的下采样单元使用步长为2的卷积实现,见图2中的虚线框区域,
downsampling_unit1和downsampling_unit2实现了特征图的下采样之后分别得到行人特
征图rgb_feature1和行人特征图rgb_feature2,级联网络level_1全网络的fc1的输出得到
第一级联行人特征图rgb_stag1_feature,级联网络level_1全网络的fc2输出第一级联彩
色行人分类结果classify_1s。
[0120] 步骤2.2.3,第二级联彩色子网络level_2s的处理过程参考图4为:
[0121] B1)将Scale_b图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_b;
[0122] B2)对行人特征图rgb_feature_b和行人特征图rgb_feature1进行行人特征融合,再进行降采样,得到与Scale_c图片样本尺寸相同的行人特征图rgb_feature3;
[0123] B3)对行人特征图rgb_feature3进行卷积和全局平均池化操作,再输入第一全连接层,得到第二级联行人特征图rgb_stag2_feature;
[0124] B4)将第二级联行人特征图rgb_stag2_feature输入第二全连接层,得到第二级联彩色行人分类结果classify_2s;
[0125] 本实施例中,以卷积网络为例构建,依据数据流的方向依次是:尺度96*192的Scale_b图片样本输入、卷积层、批量归一化层、ReLU激活层、一个下采样单元
downsampling_unit、卷积、平均池化、全连接层fc1和全连接层fc2。
[0126] 与level_1不同的是:网络是双输入结构,分别是:尺度64*192的Scale_b图片样本输入和行人特征图rgb_feature1,且只需一个下采样单元。网络的第一层卷积核的个数需
与行人特征图rgb_feature1的通道数量一致,然后将经过第一层卷积操作64*192Scale_b
图片样本与行人特征图rgb_feature1两者进行Add操作之后,输入到后续的网络结构中,其
中downsampling_unit用于对特征图进行下采样获得level_3网络需要的行人特征图rgb_
feature3,而级联网络level_2全网络的fc1输出第二级联行人特征图rgb_stag2_feature
和级联网络level_2全网络fc2输出第二级联彩色行人分类结果classify_2s。
[0127] 步骤2.2.4,第三级联彩色子网络level_3s的处理过程参考图5为:
[0128] C1)将Scale_c图片样本进行卷积、批量归一化和激活操作,得到行人特征图rgb_feature_c;
[0129] C2)将行人特征图rgb_feature_c、行人特征图rgb_feature2和行人特征图rgb_feature3进行行人特征融合,再进行卷积和全局平均池化操作,再输入第一全连接层,得到
第三级联行人特征图rgb_stag3_feature;
[0130] C3)将第三级联行人特征图rgb_stag3_feature输入第二全连接层,得到第三级联彩色行人分类结果classify_3s;
[0131] 本实施例中,以卷积网络为例构建,依据数据流的方向依次是:尺度32*96的Scale_c图片样本输入、卷积层、批量归一化层、ReLU激活层、卷积、平均池化、全连接层fc1
和全连接层fc2。
[0132] 不同于前两个网络的是:网络是三输入结构,分别是:尺度为32*96的Scale_c图片样本输入、行人特征图rgb_feature2和行人特征图rgb_feature3。网络的第一层卷积个数
需与行人特征图rgb_feature2和行人特征图rgb_feature3的通道数量一致,然后将经过第
一层卷积操作32*96原图、行人特征图rgb_feature2和行人特征图rgb_feature3三者进行
Add操作之后,输入到后续的网络结构中,最终级联网络level_3全网络的fc1输出第三级联
行人特征图rgb_stag3_feature和级联网络level_3全网络fc2输出第三级联彩色行人分类
结果classify_3s。
[0133] 步骤2.2.5,对第一级联行人特征图rgb_stag1_feature、第二级联行人特征图rgb_stag2_feature和第三级联行人特征图rgb_stag3_feature进行行人特征融合,得到彩
色行人融合特征图rgb_features;
[0134] 步骤2.3,对于每个样本组,将其彩色行人融合特征图rgb_features和灰度行人融合特征图gray_features通过融合层进行行人特征融合,再通过PCA降维层进行降维处理,
得到最终的全局行人特征图features;全局行人特征图features经过全连接层,得到全局
行人分类结果classifys;
[0135] 本步骤中,将彩色行人融合特征图rgb_features和灰度行人融合特征图gray_features进行通道融合,目的是融合彩色与灰度图像的多尺度特征以获得更丰富的行人信
息,然后连接PCA对融合特征依次减均值中心化、协方差的计算与特征值分解,最终根据特
征值分解结果选取最终的有效特征维度,得到最终的全局行人特征图features。
[0136] 例如,孪生级联网络的彩色行人融合特征图rgb_features和灰度行人融合特征图(1) (2) (m)
gray_features进行通道融合,得到D=(x ,x ,...x ),m在本实施例中是1024维,其中x
是一个长度为batch的列向量;在进行PCA特征降维时,首先对D进行减均值的中心化操作,
(1)′ (2)′ (m)′
见公式 得到特征向量用X表示,即X=(x1 ,x1 ,...x1 )。然
T T
后计算协方差矩阵V=XX ,最后对V进行矩阵分解V=U∑U ,矩阵分解的目的是将融合的矩
阵V分解为特征值和特征向量,使用特征值的大小来确定特征向量的好坏。V分解后的m个特
征值是∑=(λ1,λ2,...λm)对应的特征向量U={w1,w2...wm},最终根据设定的特征维度k来
选择前k个特征值对应的特征向量{w1,w2...wk}组成最终的特征向量,即:全局行人特征图
features。
[0137] 步骤2.4,本批共有3个样本组,对于任意第ui个样本组,i=1,2,3,得到第ui个样本组对应的全局行人特征图 全局行人分类结果 第一级联彩色行人分
类结果 第二级联彩色行人分类结果 第三级联彩色行人分类
结果 第一级联灰度行人分类结果 第二级联灰度行人分类结
果 和第三级联灰度行人分类结果
[0138] 步骤2.5,计算各级子网络的损失值:
[0139] 步骤2.5.1,将第一级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联彩色行人分类损失值
[0140] 将第二级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联彩色行人分类损失值
[0141] 将第三级联彩色行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联彩色行人分类损失值
[0142] 将第一级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第一级联灰度行人分类损失值
[0143] 将第二级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第二级联灰度行人分类损失值
[0144] 将第三级联灰度行人分类结果 与第ui个样本组的样本标签进行比较,得到第三级联灰度行人分类损失值
[0145] 步骤2.5.2,采用下式,分别计算得到第一级联彩色子网络level_1s的损失值Loss_1s、第二级联彩色子网络level_2s的损失值Loss_2s、第三级联彩色子网络level_3s
的损失值Loss_3s、第一级联灰度子网络level_1g的损失值Loss_1g、第二级联灰度子网络
level_2g的损失值Loss_2g、第三级联灰度子网络level_3g的损失值Loss_3g:
[0146]
[0147]
[0148]
[0149]
[0150]
[0151]
[0152] 步骤2.6,计算多尺度孪生级联网络的损失值Loss_0:
[0153] 步骤2.6.1,将全局行人分类结果 与第ui个样本组的样本标签进行比较,得到全局行人分类损失值
[0154] 步骤2.6.2,采用下式,计算得到多尺度孪生级联网络的损失值Loss_0:
[0155]
[0156] 步骤2.7,计算样本组之间相似性损失函数值Loss_sim:
[0157] 步骤2.7.1,计算样本组u1的全局行人特征图 和样本组u2的全局行人特征图 之间的样本距离,表示为:d(u1,u2);
[0158] 计算样本组u1的全局行人特征图 和样本组u3的全局行人特征图之间的样本距离,表示为:d(u1,u3);
[0159] 步骤2.7.2,采用下式,计算初步损失函数值Loss_d:
[0160] Loss_d=d(u1,u2)‑d(u1,u3)+α
[0161] 其中:α为损失函数系数,取值范围为:α
[0162] 步骤2.7.3,采用下述方法,得到相似性损失函数值Loss_sim:
[0163] 如果Loss_d大于0,则Loss_sim=Loss_d;
[0164] 如果Loss_d小于等于0,则Loss_sim=0;
[0165] 步骤2.8,采用下面公式,得到最后损失函数值Loss_final:
[0166] Loss_final=λ1Loss_1s+λ1Loss_2s+λ1Loss_3s+λ1Loss_1g+λ1Loss_2g+λ1Loss_3g+λ2Loss_0+λ3Loss_sim
[0167] 其中:
[0168] λ1代表各级联子网络的权重系数;
[0169] λ2代表多尺度孪生级联网络损失的权重系数;
[0170] λ3相似性损失函数值权重系数;
[0171] 作为一种具体实现方式,λ1为1,λ2为6,λ3为7。
[0172] 步骤2.9,判断最后损失函数值Loss_final是否收敛;如果收敛,则得到训练完成的多尺度孪生级联网络,执行步骤3;如果未收敛,则调整多尺度孪生级联网络的网络参数,
以另一批样本组为输入,返回步骤2.1,对多尺度孪生级联网络进行迭代训练;
[0173] 步骤3,采用验证集对训练完成的多尺度孪生级联网络进行精度验证测试,如果测试精度满足要求,则得到验证通过的多尺度孪生级联网络;
[0174] 步骤4,采用多尺度孪生级联网络,对输入的行人图片进行特征识别,得到行人特征识别结果。
[0175] 步骤4具体为:
[0176] 步骤4.1,输入的行人图片为图片Q;预建立行人样本库G;
[0177] 步骤4.2,将图片Q输入多尺度孪生级联网络,得到全局行人特征图features[Q];
[0178] 对于行人样本库G中的每个行人样本图片Gj,j=1,2,...,z,z代表行人样本库G中的行人样本图片的数量,分别输入到多尺度孪生级联网络,得到对应的全局行人特征图
[Q]
[0179] 步骤4.3,计算全局行人特征图features 和全局行人特征图 的相似度;将相似度从大到小排序,输出与图片Q相似度最高的行人样本库G中的行人样本图片。
[0180] 作为一种具体实现方式,可以输出1张与图片Q相似度最高的行人样本库G中的行人样本图片。也可以预设置图片最佳匹配数量参数K,例如,K设置为10张,则按相似度从大
到小,将行人样本库G中的行人样本图片进行排序,然后,选取第1张到第10张行人样本图片
并按排列顺序输出。
[0181] 本专利涉及的技术要点:1.创建多尺度级联网络,将多尺度与对应上级子网络的彩色或灰度子特征融合输入到次级子网络进行行人特征提取,并将各个子网络的行人特征
进行融合;2.使用彩色和灰度双输入的孪生网络,将彩色多尺度和灰度多尺度行人特征进
行特征融合之后再采用行人特征降维策略,从而获得更加强大全面且有效的行人特征表
达。
[0182] 与现有技术相比,本发明的有益效果是:
[0183] 本发明不同于现有技术采用单一输入方式提取行人特征的方法,而是采用彩色和灰度双输入的多尺度孪生级联网络进行行人特征提取,与单一输入相比,灰度输入方式可
以平衡和增加因摄像设置造成的色差、光照及场景等影响的行人特征信息,从而提取到更
全面的行人特征信息。
[0184] 为减少冗余信息的干扰,对最终的行人特征进行降维操作,使得到的行人特征既代表更全面,又不会过于繁琐。
[0185] 本发明不同于现有技术仅采用单一尺度方式进行行人特征提取,而是采用多尺度的方式,对每一种尺度的图像进行行人特征提取并进行通道融合,从而获得即具有空间信
息又有较强的语义信息行人特征。
[0186] 因此,本发明不同于现有技术采用单一网络结构提取行人特征的方法,本发明在构建网络时,采用多个子网络构建多尺度孪生级联网络,利用每一级网络进行多个子特征
提取,保证每一级行人特征提取方法的相互独立;每一级的输出结合不同尺度原图作为下
一级的输入,最后将每个级联的行人特征进行融合,实现不同级联网络的相互补充,从而挖
掘更显著行人特征,增强行人特征表达力。
[0187] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应
视本发明的保护范围。