一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于行人重识别算法的指定行人动作检索方法

2022-07-06 07:36:00 来源:中国专利 TAG:


1.本发明涉及计算机视觉技术领域,尤其涉及基于行人重识别算法的指定行人动作检索方法。


背景技术:

2.随着视频数据的日益增多,大量的计算机视觉任务被提出以对视频数据进行分析,其中人类动作识别在现实生活的多个方面有着重要的价值,得到越来越多的关注。
3.目前的动作识别算法主要是利用目标的运动信息来完成动作的分类,在简单的实验场景中,这种方法取得了很好的效果。但实际生活中的视频数据往往更复杂,多出现行人数量多、行人间频繁发生位置移动与交互的情况,此时继续沿用上述方法容易出现行人跟丢的问题,进而影响对行人所属动作的正确识别。这需要我们进一步挖掘外观信息在动作识别中的作用。
4.在人少、无遮挡的稀疏场景下,此时的外观信息只要精确到可以被行人检测子算法识别为人类这个身份即可,例如不能因为体型的差别或穿不同款式、颜色的衣服,就将做同一个动作的人分为两类。而在复杂场景中,所提取的外观信息需要丰富到足以区分出不同的行人。例如杨文浩等人提出将人脸信息作为衡量不同动作发出者间相似度的主要特征,从而减少由于行人id错误识别导致的动作误分类问题。但人脸特征在行人背对着、光照较暗、距离较远等情况下难以采集,因此需要利用更普适的行人外观特征。
5.另一方面,在无人商店顾客行为分析、安防场景下的搜救与嫌犯追踪等实际应用中,一般需要识别出特定行人在离散时间下的所有动作,以便再进一步分析后得出有用的信息。例如ketan kotecha(科坦
·
科塔卡)等人利用非深度学习方法度量目标间相似性,并将输入视频按照不同的行人裁剪为独立的视频片段,最后在视频片段上进行动作分类任务。但非深度学习方法泛化性差,难以在较长的时间范围内识别出同一个行人,因此需要更有效的相似性度量方法。
6.由此可见,现有技术中的动作识别算法一般具有由于缺乏外观特征而容易误分类的缺点,并且现有的技术无法持续跟踪指定目标的动作识别结果。


技术实现要素:

7.针对以上问题,本发明提出基于行人重识别算法的指定行人动作检索方法。
8.为实现本发明的目的,本发明提出基于行人重识别算法的指定行人动作检索方法,包括以下步骤:
9.s1:将视频采集设备实时采集的视频数据的每一帧分别输入特征提取骨干网络,所述特征提取骨干网络对所述每一帧进行处理,并提取骨干网络特征图;
10.s2:将所述骨干网络特征图输入行人检测分支模块,行人检测分支模块对所述骨干网络特征图进行处理,并输出各个行人的最终目标检测边界框;
11.s3:将所述骨干网络特征图和所述各个行人的最终目标检测边界框输入重识别分
支模块,所述重识别分支模块对所述骨干网络特征图和所述各个行人的最终目标检测边界框进行处理,并输出所述各个行人所在的动作特征队列;
12.s4:动作分类模块将所述各个行人所在的动作特征队列统一缩放为288*288的尺寸,并将其聚合在通道维度,用以提取所述各个行人在时间维度的信息,再进行动作分类并得到最终动作检索结果。
13.进一步地,所述步骤s1的具体过程包括:
14.将视频采集设备采集的视频数据中的每一帧依次输入到所述特征提取骨干网络中,所述特征提取骨干网络进行提取并得到每帧图像对应的骨干网络特征图,记为f,其中,r表示实数空间,w表示所述骨干网络特征图f的宽度,h表示所述骨干网络特征图f的高度,d表示空间下采样率,b表示所述骨干网络特征图f的通道数。
15.进一步地,所述行人检测分支模块包括:边界框中心点预测头部子网络、边界框尺寸预测头部子网络和中心点偏移量预测头部子网络;
16.所述边界框中心点预测头部子网络、边界框尺寸预测头部子网络和中心点偏移量预测头部子网络分别通过实际样本训练获得;
17.所述步骤s2的具体过程包括:
18.将所述骨干网络特征图f输入所述边界框中心点预测头部子网络,所述边界框中心点预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的热力图心点预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的热力图
19.对所述各个行人的热力图使用损失函数focal loss:
20.其中,x和y分别表示输出的所述各个行人的热力图中每个元素的横坐标和纵坐标,α和β表示控制中心点贡献权重的超参数,表示以坐标(x,y)为中心点存在行人目标的概率,l
x,y
表示以坐标(x,y)为中心点存在行人目标的真实概率;
21.将所述骨干网络特征图f输入所述边界框尺寸预测头部子网络,所述边界框尺寸预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框尺寸预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框尺寸
22.对所述各个行人的边界框尺寸使用最小绝对值偏差损失函数l1:
23.其中,i∈[1,n],表示行人的索引,si表示第i个行人边界框尺寸的真实值,表示第i个行人边界框尺寸的预测值,n表示当前帧中的行人数量,l
size
即最小绝对值偏差损失函数l1,size表示此处用来约束边界框尺寸的预测;
[0024]
将所述骨干网络特征图f输入所述中心点偏移量预测头部子网络,所述中心点偏移量预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框中心点在
长和宽这两个维度上的偏移量
[0025]
对所述各个行人的边界框中心点在长和宽这两个维度上的偏移量使用最小绝对值偏差损失函数l1:l
off
即最小绝对值偏差损失函数l1,off表示其所属的网络,oi表示第i个行人真实的量化偏移量;表示预测的第i个行人的量化偏移量;
[0026]
将所述各个行人对应的所述热力图边界框尺寸和边界框中心点在长和宽这两个维度上的偏移量组合为所述各个行人的候选目标检测边界框,再使用nms算法对所述各个行人的候选目标检测边界框进行去重并筛选掉置信度低于阈值0.8的边界框后,得到所述各个行人的最终目标检测边界框。
[0027]
进一步地,所述重识别分支模块包括:第一预处理模块、第一卷积层、全局平均池化层和后处理模块,所述第一卷积层的卷核大小为128;所述重识别分支模块通过实际样本训练获得;
[0028]
所述步骤s3的具体过程包括:
[0029]
所述第一预处理模块根据所述各个行人的最终目标检测边界框,从所述每帧图像对应的骨干网络特征图f中裁剪出各个行人的目标特征图p
f,j
,其中,f表示帧数,j表示本帧中的行人标号;
[0030]
所述第一卷积层对所述各个行人的目标特征图p
f,j
再次进行特征提取并得到通道数为128的目标特征图p

f,j
,所述平均池化层将所述通道数为128的目标特征图p

f,j
中每个通道的目标特征图中所有像素相加求平均,并得到长度为128的所述各个行人的空间嵌入特征e
f,j
,e
f,j
∈r
128
,其中,e
f,j
表示本帧图像第j个行人对应的空间嵌入特征;
[0031]
所述后处理模块将所述各个行人的空间嵌入特征e
f,j
与上一帧中所述各个行人的空间嵌入特征e
f-1,j
逐一对比,选择度量距离最小的作为匹配目标,再将所述各个行人的目标特征图p
f,j
存入匹配目标中对应行人id所在的动作特征队列q
p,id
,其中,e表示存储的数据是各个行人的空间嵌入特征,p表示存储的数据是所述各个行人的最终目标检测边界框中的区域图像。
[0032]
进一步地,所述动作分类模块包括:第二预处理模块、第二卷积层组和多个全连接层;所述动作分类模块通过实际样本训练获得;
[0033]
所述步骤s4的具体过程包括:
[0034]
所述第二预处理模块将长度为k的所述动作特征队列q
p,id
统一缩放为288*288的尺寸,并将其聚合在通道维度以便提取所述各个行人在时间维度的信息;再经过所述第二卷积层组和多个全连接层,输出特征向量a,a∈[0,1]
num_action
,即对于各个行人所属类别的预测向量,也就是最终动作检索结果,其中,num_action表示数据集中的动作种类数量。
[0035]
跟现有技术相比,本发明具有以下有益的技术效果:
[0036]
本发明在普通的动作识别算法中融合了行人重识别嵌入特征,采取了可端到端训练与优化的多任务架构,解决了一般的动作识别算法中由于缺乏外观特征而容易误分类的缺点。进一步的,为了满足日益增长的对视频数据中指定行人的精细化跟踪、检索与分析需求,本发明在利用指定行人的图像检索出视频中的行人后,可持续跟踪指定行人的动作识别结果,用于进一步高级语义上的引用与分析;同时,所采用的先检索行人再进行动作识别
的策略可大大减少所需的计算量。
附图说明
[0037]
图1是一个实施例的基于重识别算法的指定行人动作检索方法的流程示意图;
[0038]
图2是一个实施例的指定单个行人进行动作检索的流程示意图;
[0039]
图3是一个实施例的通过选择查询图像中部分特征进行群体动作检索的流程示意图;
[0040]
图4是一个实施例的群体动作检索方法中基于属性的行人重识别模型架构示意图。
具体实施方式
[0041]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
[0042]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0043]
参考图1所示,图1为一个实施例的基于重识别算法的指定行人动作检索方法的流程示意图。
[0044]
在该实施例中,基于行人重识别算法的指定行人动作检索方法,包括以下步骤:
[0045]
s1:将视频采集设备实时采集的视频数据的每一帧分别输入特征提取骨干网络,所述特征提取骨干网络对所述每一帧进行处理,并提取骨干网络特征图;
[0046]
s2:将所述骨干网络特征图输入行人检测分支模块,行人检测分支模块对所述骨干网络特征图进行处理,并输出各个行人的最终目标检测边界框;
[0047]
s3:将所述骨干网络特征图和所述各个行人的最终目标检测边界框输入重识别分支模块,所述重识别分支模块对所述骨干网络特征图和所述各个行人的最终目标检测边界框进行处理,并输出所述各个行人所在的动作特征队列;
[0048]
s4:动作分类模块将所述各个行人所在的动作特征队列统一缩放为288*288的尺寸,并将其聚合在通道维度,用以提取所述各个行人在时间维度的信息,再进行动作分类并得到最终动作检索结果。
[0049]
在一个实施例中,所述步骤s1的具体过程包括:
[0050]
将视频采集设备采集的视频数据中的每一帧依次输入到所述特征提取骨干网络中,所述特征提取骨干网络进行提取并得到每帧图像对应的骨干网络特征图,记为f,其中,r表示实数空间,w表示所述骨干网络特征图f的宽度,h表示所述骨干网络特征图f的高度,d表示空间下采样率,b表示所述骨干网络特征图f的通道数。
[0051]
在一个实施例中,所述行人检测分支模块包括:边界框中心点预测头部子网络、边界框尺寸预测头部子网络和中心点偏移量预测头部子网络;
[0052]
所述边界框中心点预测头部子网络、边界框尺寸预测头部子网络和中心点偏移量预测头部子网络分别通过实际样本训练获得;
[0053]
所述步骤s2的具体过程包括:
[0054]
将所述骨干网络特征图f输入所述边界框中心点预测头部子网络,所述边界框中心点预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的热力图心点预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的热力图
[0055]
对所述各个行人的热力图使用损失函数focal loss:
[0056]
其中,x和y分别表示输出的所述各个行人的热力图中每个元素的横坐标和纵坐标,α和β表示控制中心点贡献权重的超参数,表示以坐标(x,y)为中心点存在行人目标的概率,l
x,y
表示以坐标(x,y)为中心点存在行人目标的真实概率;
[0057]
将所述骨干网络特征图f输入所述边界框尺寸预测头部子网络,所述边界框尺寸预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框尺寸预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框尺寸
[0058]
对所述各个行人的边界框尺寸使用最小绝对值偏差损失函数l1:
[0059]
其中,i∈[1,n],表示行人的索引,si表示第i个行人边界框尺寸的真实值,表示第i个行人边界框尺寸的预测值,n表示当前帧中的行人数量,l
size
即最小绝对值偏差损失函数l1,size表示此处用来约束边界框尺寸的预测;
[0060]
将所述骨干网络特征图f输入所述中心点偏移量预测头部子网络,所述中心点偏移量预测头部子网络对所述骨干网络特征图f进行预测并输出各个行人的边界框中心点在长和宽这两个维度上的偏移量
[0061]
对所述各个行人的边界框中心点在长和宽这两个维度上的偏移量使用最小绝对值偏差损失函数l1:l
off
即最小绝对值偏差损失函数l1,off表示其所属的网络,oi表示第i个行人真实的量化偏移量;表示预测的第i个行人的量化偏移量;
[0062]
将所述各个行人对应的所述热力图边界框尺寸和边界框中心点在长和宽这两个维度上的偏移量组合为所述各个行人的候选目标检测边界框,再使用nms算法对所述各个行人的候选目标检测边界框进行去重并筛选掉置信度低于阈值0.8的边界框后,得到所述各个行人的最终目标检测边界框。
[0063]
在一个实施例中,所述重识别分支模块包括:第一预处理模块、第一卷积层、全局平均池化层和后处理模块,所述第一卷积层的卷核大小为128;所述重识别分支模块通过实际样本训练获得;
[0064]
所述步骤s3的具体过程包括:
[0065]
所述第一预处理模块根据所述各个行人的最终目标检测边界框,从所述每帧图像对应的骨干网络特征图f中裁剪出各个行人的目标特征图p
f,j
,其中,f表示帧数,j表示本帧中的行人标号;
[0066]
所述第一卷积层对所述各个行人的目标特征图p
f,j
再次进行特征提取并得到通道数为128的目标特征图p

f,j
,所述平均池化层将所述通道数为128的目标特征图p

f,j
中每个通道的目标特征图中所有像素相加求平均,并得到长度为128的所述各个行人的空间嵌入特征e
f,j
,e
f,j
∈r
128
,其中,e
f,j
表示本帧图像第j个行人对应的空间嵌入特征;
[0067]
所述后处理模块将所述各个行人的空间嵌入特征e
f,j
与上一帧中所述各个行人的空间嵌入特征e
f-1,j
逐一对比,选择度量距离最小的作为匹配目标,再将所述各个行人的目标特征图p
f,j
存入匹配目标中对应行人id所在的动作特征队列q
p,id
,其中,e表示存储的数据是各个行人的空间嵌入特征,p表示存储的数据是所述各个行人的最终目标检测边界框中的区域图像。
[0068]
在一个实施例中,所述动作分类模块包括:第二预处理模块、第二卷积层组和多个全连接层;所述动作分类模块通过实际样本训练获得;
[0069]
所述步骤s4的具体过程包括:
[0070]
所述第二预处理模块将长度为k的所述动作特征队列q
p,id
统一缩放为288*288的尺寸,并将其聚合在通道维度以便提取所述各个行人在时间维度的信息;再经过所述第二卷积层组和多个全连接层,输出特征向量a,a∈[0,1]
num_action
,即对于各个行人所属类别的预测向量,也就是最终动作检索结果,其中,num_action表示数据集中的动作种类数量。
[0071]
作为对上述基于行人重识别算法的指定行人动作检索方法的实际应用,下面针对分析单个行人动作序列的应用场景对本发明实施例进行介绍。如图2所示,指定单个行人进行动作检索的步骤包括:
[0072]
将确定好的查询图片提取帧级别的骨干网络特征图后,输入训练好的行人重识别分支模块中,经过一个卷积核大小为128的卷积层提取特征后,再经过一个全局平均池化层,得到查询嵌入特征e
query,i
∈r
128
,其中i∈nq,表示同一个行人的多张查询图片。
[0073]
具体地,使用行人检测分支模块检测待查询视频中所有行人,提取所有行人的空间嵌入特征,并提供候选查询库以便用户人工更新查询空间嵌入特征。
[0074]
对于输入视频中的每一帧都使用特征提取骨干网络提取帧级别的骨干网络特征图f,并经过行人检测分支模块以输出每个行人的边界框。并根据各个行人的边界框将行人对应区域从原始图像中裁剪出来,表示为i
f,j
,f表示帧数,j表示本帧中的行人标号。
[0075]
根据各个目标的边界框将目标特征图从骨干网络特征图f中裁剪出来,表示为p
f,j
,f表示帧数,j表示本帧中的目标标号;p
f,j
经过一个卷积核大小为128的卷积层进一步提取特征后,再经过一个全局平均池化层,得到目标的空间嵌入特征e
f,j
∈r
128

[0076]
将i
f,j
、e
f,j
存储在候选查询库中,存储格式为(f,i
f,j
,e
f,j
),一般只存储最近30帧的数据,i
f,j
为可视的rgb图像,用于直接向用户展示可能为查询目标的图像。当i
f,j
同样属于查询目标,且用户认为本截图的加入可以使得查询效果更好,则可以将i
f,j
对应的e
f,j
加入e
query
中作为补充的查询嵌入特征。
[0077]
根据查询嵌入特征e
query
和本帧所有行人的空间嵌入特征e
f,j
做相似性对比,若大
于设定的阈值0.9,则认为候选目标和查询图片属于同一人,进入下一步;否则直接丢弃候选目标对应的数据。
[0078]
将新一帧候选目标的特征存入长度为k的动作识别特征队列q
p,id
进行特征变换,经过分类网络后输出的特征向量a∈[0,1]
num_action
即为对目标所属类别的预测向量,取其中预测值最大的类别作为动作分类结果,表示为clsf。
[0079]
将动作分类结果clsf与目标检测边界框b
f,id
组合为单人动作检索结果,并按时间顺序记录所查询目标的动作检测结果。每个输入视频帧都应该对应一条检索记录,格式为(f,clsf,b
f,id
),在整个过程结束后,可以将检索记录进行合并,将相邻且动作分类结果相同的记录合并为一条,合并后的记录格式为(n
last
,clsf,b
f,id
),其中n
last
表示动作持续帧数。
[0080]
上述图2着重以指定单个行人进行动作检索为例进行说明,作为对上述图2所示方法的对应,下面通过选择查询图像中部分特征进行群体动作检索来对本发明实施例进行介绍。如图3所示,具体步骤如下:
[0081]
训练基于属性的行人重识别模型。数据集采用market-1501_attribute,其在id级别上注释了27个属性,比如性别、提包、年龄等等。由于只是在id级别上进行标注,所以只需要在原来的行人重识别模型最后添加27个全连接层,进行二分类,即可预测属性值,模型架构图如图4所示:market-1501_attribute数据集包含1501个目标,即id数量为1501个。在训练时,首先将输入图片经过特征提取骨干网络,以提取帧级别的骨干网络特征图;之后将行人重识别任务分为两个子任务来处理。第一个子任务即行人id分类子任务,将空间嵌入特征经过全连接层和激活函数后得到长度为1501的行人id分类向量,取预测值最大的类别为分类结果,完成行人id分类子任务。第二个子任务即行人属性分类子任务,对于27种属性中的每一个属性,将空间嵌入特征经过全连接层和激活函数后得到长度为2的行人属性分类向量,向量中的两个预测值分别表示行人具有这种属性的可能性和行人不具有这种属性的可能性,取最大的预测值作为分类结果,完成行人属性分类子任务。
[0082]
确定查询图片,通过上一步训练好的行人重识别(re-id)模型,输出其空间嵌入特征e
query,i
∈r
128
与属性值p
att
。接着从预测结果中选择需要的属性,比如现有预测属性值:young、girl、short hair、black cloths、long-sleeve cloths、white pants、short pants,但用户需要索引的群体只需要girl、black cloths、white pants这几个属性,则将筛选后的属性值与查询嵌入特征e
query
一起构成目标群体检索依据。
[0083]
使用行人检测分支模块检测待查询视频中所有行人,提取所有行人的空间嵌入特征e
f,j
与属性值p
f,j
,并更新候选查询库与目标群体检索依据。
[0084]
使用双重检索标准来筛选候选目标,得到符合标准的目标群体。首先将查询嵌入特征e
query
和本帧所有行人的空间嵌入特征e
f,j
做相似性对比,若大于设定的阈值0.5,则认为候选目标基本属于目标群体,进入下一步;否则直接丢弃候选目标对应的数据。其次判断候选目标属性值p
f,j
是否包含若符合条件则进入下一步;否则直接丢弃候选目标对应的数据。
[0085]
将群体内各目标的空间嵌入特征与各个空间嵌入特征队列队尾的数据进行相似度度量,若相似度大于设定的阈值0.9,则说明为同一个人,进入下一步;否则视为新目标加入视频,开启新的特征队列。
[0086]
将新一帧候选行人的目标特征图存入长度为k的动作识别特征队列q
p,id
进行特征变换,经过分类网络后输出的特征向量a∈[0,1]
num_action
即为对目标所属类别的预测向量,取其中预测值最大的类别作为动作分类结果,表示为clsf。
[0087]
将群体内每个人的动作分类结果clsf与目标检测边界框b
f,id
进行组合,以便用户统计分析。
[0088]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0089]
需要说明的是,本技术实施例所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二\第三”区分的对象在适当情况下可以互换,以使这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
[0090]
本技术实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
[0091]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献