一种人包关系检测方法、装置、设备及存储介质转让专利

申请号 : CN202010318852.0

文献号 : CN111553228B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李昆明冯琰一张少文李德紘

申请人 : 佳都科技集团股份有限公司广州佳都科技软件开发有限公司广州新科佳都科技有限公司广东华之源信息工程有限公司

摘要 :

本申请实施例公开了一种人包关系检测方法、装置、设备及存储介质。本申请实施例提供的技术方案通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先验成本,并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对应成本矩阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效率与准确度。

权利要求 :

1.一种人包关系检测方法,其特征在于,包括:基于神经网络结构创建人包关系检测网络;利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求,所述训练样本图像标注有人位置框、包位置框和人包对应关系;

通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包关联嵌入向量一一对应;

根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本;

根据所述人位置框和所述包位置框计算先验成本;

基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系;

所述损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass;

所述回归损失通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得;

所述分类损失通过cross‑entropy‑loss函数计算获得;

所述关联嵌入损失通过以下公式计算获得:Lass=μLpull+νLpush其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值; 表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数,Lpull和Lpush分别为Lpull损失函数和Lpush损失函数;

所述损失函数通过以下公式计算获得:L=αLcls+βLreg+ηLass其中α、β、η表示损失权重。

2.根据权利要求1所述的人包关系检测方法,其特征在于,所述根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本,包括:获取所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值基于所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值 根据以下公式计算关联嵌入关系成本:

其中,i表示第i个人,j表示第j个包, 表示关联嵌入距离,T1、T2为预设阈值,H为预设常数,fass()表示单调递增的关联嵌入距离到嵌入损失的映射。

3.根据权利要求1所述的人包关系检测方法,其特征在于,所述根据所述人位置框和所述包位置框计算先验成本,包括:基于所述人位置框和所述包位置框的相对关系,根据以下公式计算先验成本:其中,i表示第i个人,j表示第j个包,Θ表示所述人位置框和所述包位置框的相对关系,fprior()表示先验知识到先验损失的映射。

4.根据权利要求1所述的人包关系检测方法,其特征在于,所述基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系,包括:

基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,根据以下公式计算人包关系对应成本:

其中,λ∈[0,1],i表示第i个人,j表示第j个包, 表示关联嵌入关系成本, 表示先验成本;

基于所述人包关系对应成本构建人包关系对应成本矩阵;

基于所述人包关系对应成本矩阵确定人包对应关系。

5.根据权利要求4所述的人包关系检测方法,其特征在于,所述基于所述人包关系对应成本矩阵确定人包对应关系,包括:通过指派问题算法对所述人包关系对应成本矩阵进行求解,从而确定人包对应关系。

6.根据权利要求1所述的人包关系检测方法,其特征在于,所述人包关系检测网络包括骨干网络、位置回归分支、分类分支和关联嵌入向量分支;

所述骨干网络用于向所述位置回归分支、所述分类分支和所述关联嵌入向量分支输出特征图;

所述分类分支基于所述特征图输出特征分类,所述特征分类包括人和包;

所述位置回归分支基于所述特征图输出位置框,并根据所述分类分支的输出结果确定位置框的类型,位置框的类型包括人位置框和包位置框;

所述关联嵌入向量分支基于所述特征图输出关联嵌入向量,并根据所述分类分支的输出结果确定关联嵌入向量的类型,关联嵌入向量的类型包括人关联嵌入向量和包关联嵌入向量。

7.一种人包关系检测装置,其特征在于,包括检测网络提取模块、关联嵌入成本计算模块、先验成本计算模块、对应关系确定模块和神经网络创建模块,其中:所述神经网络创建模块,用于基于神经网络结构创建人包关系检测网络;利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求,所述训练样本图像标注有人位置框、包位置框和人包对应关系;

检测网络提取模块,用于通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包关联嵌入向量一一对应;

关联嵌入成本计算模块,用于根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本;

先验成本计算模块,用于根据所述人位置框和所述包位置框计算先验成本;

对应关系确定模块,用于基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系;

所述损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass;

所述回归损失通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得;

所述分类损失通过cross‑entropy‑loss函数计算获得;

所述关联嵌入损失通过以下公式计算获得:Lass=μLpull+νLpush其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值; 表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数;

所述损失函数通过以下公式计算获得:L=αLcls+βLreg+ηLass其中α、β、η表示损失权重。

8.一种计算机设备,其特征在于,包括:存储器以及一个或多个处理器;

所述存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1‑6任一所述的人包关系检测方法。

9.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1‑6任一所述的人包关系检测方法。

说明书 :

一种人包关系检测方法、装置、设备及存储介质

技术领域

[0001] 本申请实施例涉及计算机技术领域,尤其涉及一种人包关系检测方法、装置、设备及存储介质。

背景技术

[0002] 通常情况下,现有的目标检测技术已经相对成熟,应用也比较广泛,但是针对需要确定人包的对应关系等特定场景,仅仅是对特定目标进行检测无法满足需求。
[0003] 例如在机场、车站等场合,应用人和包检测技术能够检测到包和人,但是却无法给出这个包属于哪个人,这个人有哪些包。虽然基于位置关系的分析能够从一定程度上解决
该问题,比如在包和人的相对距离小于一定阈值时,判定这个包和人的从属关系。但上述人
包关系对应方法存在准确率不高,在相对拥挤的场景无法应用的问题。

发明内容

[0004] 本申请实施例提供一种人包关系检测方法、装置、设备及存储介质,以提高人包对应准确率。
[0005] 在第一方面,本申请实施例提供了一种人包关系检测方法,包括:
[0006] 通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包关联
嵌入向量一一对应;
[0007] 根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本;
[0008] 根据所述人位置框和所述包位置框计算先验成本;
[0009] 基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系。
[0010] 进一步的,所述根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本,包括:
[0011] 获取所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值
[0012] 基于所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值 根据以下公式计算关联嵌入关系成本:
[0013]
[0014] 其中,i表示第i个人,j表示第j个包, 表示关联嵌入距离,T1、T2为预设阈值,H为预设常数,fass()表示单调递增的关联嵌入距离到嵌入损失的映射。
[0015] 进一步的,所述根据所述人位置框和所述包位置框计算先验成本,包括:
[0016] 基于所述人位置框和所述包位置框的相对关系,根据以下公式计算先验成本:
[0017]
[0018] 其中,i表示第i个人,j表示第j个包,Θ表示所述人位置框和所述包位置框的相对关系,fprior()表示先验知识到先验损失的映射。
[0019] 进一步的,所述基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系,包括:
[0020] 基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,根据以下公式计算人包关系对应成本:
[0021]
[0022] 其中,λ∈[0,1],i表示第i个人,j表示第j个包, 表示关联嵌入关系成本,表示先验成本;
[0023] 基于所述人包关系对应成本构建人包关系对应成本矩阵;
[0024] 基于所述人包关系对应成本矩阵确定人包对应关系。
[0025] 进一步的,所述基于所述人包关系对应成本矩阵确定人包对应关系,包括:
[0026] 通过指派问题算法对所述人包关系对应成本矩阵进行求解,从而确定人包对应关系。
[0027] 进一步的,所述通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量之前,还包括:
[0028] 基于神经网络结构创建人包关系检测网络;
[0029] 利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求,所述训练样本图像标注有人位置框、包位置框
和人包对应关系。
[0030] 进一步的,所述人包关系检测网络包括骨干网络、位置回归分支、分类分支和关联嵌入向量分支;
[0031] 所述骨干网络用于向所述位置回归分支、所述分类分支和所述关联嵌入向量分支输出特征图;
[0032] 所述分类分支基于所述特征图输出特征分类,所述特征分类包括人和包;
[0033] 所述位置回归分支基于所述特征图输出位置框,并根据所述分类分支的输出结果确定位置框的类型,位置框的类型包括人位置框和包位置框;
[0034] 所述关联嵌入向量分支基于所述特征图输出关联嵌入向量,并根据所述分类分支的输出结果确定关联嵌入向量的类型,关联嵌入向量的类型包括人关联嵌入向量和包关联
嵌入向量。
[0035] 进一步的,所述损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass;
[0036] 所述回归损失通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得;
[0037] 所述分类损失通过cross‑entropy‑loss函数计算获得;
[0038] 所述关联嵌入损失通过以下公式计算获得:
[0039]
[0040]
[0041] Lass=μLpull+νLpush
[0042] 其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值;
表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数;
[0043] 所述损失函数通过以下公式计算获得:
[0044] L=αLcls+βLreg+ηLass
[0045] 其中α、β、η表示损失权重。
[0046] 在第二方面,本申请实施例提供了一种人包关系检测装置,包括检测网络提取模块、关联嵌入成本计算模块、先验成本计算模块和对应关系确定模块,其中:
[0047] 检测网络提取模块,用于通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述
包位置框与所述包关联嵌入向量一一对应;
[0048] 关联嵌入成本计算模块,用于根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本;
[0049] 先验成本计算模块,用于根据所述人位置框和所述包位置框计算先验成本;
[0050] 对应关系确定模块,用于基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系。
[0051] 进一步的,所述关联嵌入成本计算模块具体用于:
[0052] 获取所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值
[0053] 基于所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值 根据以下公式计算关联嵌入关系成本:
[0054]
[0055] 其中,i表示第i个人,j表示第j个包, 表示关联嵌入距离,T1、T2为预设阈值,H为预设常数,fass()表示单调递增的关联嵌入距离到嵌入损失的映射。
[0056] 进一步的,所述先验成本计算模块具体用于:
[0057] 基于所述人位置框和所述包位置框的相对关系,根据以下公式计算先验成本:
[0058]
[0059] 其中,i表示第i个人,j表示第j个包,Θ表示所述人位置框和所述包位置框的相对关系,fprior()表示先验知识到先验损失的映射。
[0060] 进一步的,所述对应关系确定模块具体用于:
[0061] 基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,根据以下公式计算人包关系对应成本:
[0062]
[0063] 其中,λ∈[0,1],i表示第i个人,j表示第j个包, 表示关联嵌入关系成本,表示先验成本;
[0064] 基于所述人包关系对应成本构建人包关系对应成本矩阵;
[0065] 基于所述人包关系对应成本矩阵确定人包对应关系。
[0066] 进一步的,所述对应关系确定模块在基于所述人包关系对应成本矩阵确定人包对应关系时,具体为:
[0067] 通过指派问题算法对所述人包关系对应成本矩阵进行求解,从而确定人包对应关系。
[0068] 进一步的,所述装置还包括神经网络创建模块,所述神经网络创建模块用于:
[0069] 基于神经网络结构创建人包关系检测网络;
[0070] 利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求,所述训练样本图像标注有人位置框、包位置框
和人包对应关系。
[0071] 进一步的,所述人包关系检测网络包括骨干网络、位置回归分支、分类分支和关联嵌入向量分支;
[0072] 所述骨干网络用于向所述位置回归分支、所述分类分支和所述关联嵌入向量分支输出特征图;
[0073] 所述分类分支基于所述特征图输出特征分类,所述特征分类包括人和包;
[0074] 所述位置回归分支基于所述特征图输出位置框,并根据所述分类分支的输出结果确定位置框的类型,位置框的类型包括人位置框和包位置框;
[0075] 所述关联嵌入向量分支基于所述特征图输出关联嵌入向量,并根据所述分类分支的输出结果确定关联嵌入向量的类型,关联嵌入向量的类型包括人关联嵌入向量和包关联
嵌入向量。
[0076] 进一步的,所述损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass;
[0077] 所述回归损失通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得;
[0078] 所述分类损失通过cross‑entropy‑loss函数计算获得;
[0079] 所述关联嵌入损失通过以下公式计算获得:
[0080]
[0081]
[0082] Lass=μLpull+νLpush
[0083] 其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值;
表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数;
[0084] 所述损失函数通过以下公式计算获得:
[0085] L=αLcls+βLreg+ηLass
[0086] 其中α、β、η表示损失权重。
[0087] 在第三方面,本申请实施例提供了一种计算机设备,包括:存储器以及一个或多个处理器;
[0088] 所述存储器,用于存储一个或多个程序;
[0089] 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的人包关系检测方法。
[0090] 在第四方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的人包关系检测方
法。
[0091] 本申请实施例通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先
验成本,并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对
应成本矩阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效
率与准确度。

附图说明

[0092] 图1是本申请实施例提供的一种人包关系检测方法的流程图;
[0093] 图2是本申请实施例提供的另一种人包关系检测方法的流程图;
[0094] 图3是本申请实施例提供的一种人包对应关系展示的示意图;
[0095] 图4是本申请实施例提供的另一种人包关系检测方法的流程图;
[0096] 图5是本申请实施例提供的人包关系检测网络的结构示意图;
[0097] 图6是本申请实施例提供的一种人包关系检测装置的结构示意图;
[0098] 图7是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

[0099] 为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,
而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关
的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实
施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序
的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序
可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中
的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
[0100] 图1给出了本申请实施例提供的一种人包关系检测方法的流程图,本申请实施例提供的人包关系检测方法可以由人包关系检测装置来执行,该人包关系检测装置可以通过
硬件和/或软件的方式实现,并集成在计算机设备中。
[0101] 下述以人包关系检测装置执行人包关系检测方法为例进行描述。参考图1,该人包关系检测方法包括:
[0102] S101:通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包
关联嵌入向量一一对应。
[0103] 其中,包应该理解为广义上的概念,一般泛指公共场合中的行李箱、背包、手提包、挎包、纸箱等行李,人包关系应理解为包和人的从属关系。待分析图像的来源可以是监控摄
像头回传的视频帧,或者是基于人包分析需要输入的图像。
[0104] 人包关系检测网络由人包检测和关联嵌入向量构成。其中,人包检测可以是基于神经网络(如深度神经网络、卷积神经网络、循环神经网络等)的one‑stage或者two‑stage
检测框架来进行,并识别出图像中的人和包的位置以及类别(该位置对应人还是包),在输
出位置时通过位置框的方式进行输出,例如输出位置框的角点(例如左上角)以及位置框的
高度和宽度。人关联嵌入向量和包关联嵌入向量通过神经网络嵌入获取,用于表征对应的
人或者包的关系属性。
[0105] 可以理解的是,人位置框和人关联嵌入向量、包位置框和包关联嵌入向量是一一对应的关系,对于每个人位置框和包位置框,都有相应的人关联嵌入向量和包关联嵌入向
量与之对应。
[0106] 示例性的,在接收到待分析图像后,将待分析图像输入人包关系检测网络中,由人包关系检测网络对待分析图像进行分析处理后输出待分析图像中的识别对象和位置框,并
对识别对象进行分类,即将识别对象区分为人或者包,并将对应的位置框确定为人位置框
和包位置框。同时,人包关系检测网络对应人和包输出人关联嵌入向量和包关联嵌入向量。
[0107] S102:根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本。
[0108] 示例性的,在确定待处理图像对应的人关联嵌入向量和包关联嵌入向量后,根据每个人和每个包之间的关联嵌入向量距离计算关联嵌入关系成本。可以理解的是,人和包
之间的对应关系越弱,对应的人和包之间的关联嵌入向量距离越大,计算出的关联嵌入关
系成本也越高。
[0109] S103:根据所述人位置框和所述包位置框计算先验成本。
[0110] 其中,先验成本是利用人类的先验知识作为判断,并将人包位置关系进行映射得到,可以进一步提高人包对应关系判断的准确度。例如,包的出现通常不可能在所属的人的
头顶上、包和人的距离不会太远等等。基于对人包关系经验可将人位置框和所述包位置框
之间的相对关系映射为先验成本。可以理解的是,人和包之间的对应关系越弱,对应的先验
成本也越高。
[0111] 示例性的,在确定人位置框和包位置框后,基于每两两相对的人位置框和包位置框,根据位置框和先验成本之间的映射关系,计算出两两相对的人位置框和包位置框对应
的先验成本。
[0112] S104:基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系。
[0113] 示例性的,对于两两相对的人和包,将上述计算得出的关联嵌入关系成本和先验成本按照预先设定的比重关系进行求和,得到每个人对于每个包的人包关系对应成本,并
基于人包关系对应成本构建人包关系对应成本矩阵。
[0114] 可以理解的是,人和包之间的对应关系越弱,对应的人包关系对应成本也越高,在人包关系对应成本矩阵中对应的值也越大。例如,第五个人和第六个包之间的对应关系越
弱,其对应的人包关系对应成本也越高,在人包关系对应成本矩阵M(横坐标代表人的序号,
纵坐标代表包的序号)中M(5,6)对应的值也越大。
[0115] 进一步的,根据人包关系对应成本矩阵可以判断每个人与包之间的人包关系对应成本,此时人和包之间的对应由非标准指派问题转换成了标准指派问题,可基于标准指派
解决办法求出人和包之间的最优指派结果,并基于指派结果确定人包对应关系。
[0116] 进一步的,在确定人包对应关系后,输出待分析图像中的人位置框、包位置框以及人包对应关系。例如,可在待分析画面以方框的形式来标出人位置框和包位置框,并将存在
对应(从属)关系的人和包的位置框以相同的颜色进行显示。
[0117] 上述,通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先验成本,
并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对应成本矩
阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效率与准确
度。
[0118] 图2为本申请实施例提供的另一种人包关系检测方法的流程图,该人包关系检测方法是对上述人包关系检测方法的具体化。参考图2,该人包关系检测方法包括:
[0119] S201:通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包
关联嵌入向量一一对应。
[0120] S202:获取所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值
[0121] 具体的,在获取到人关联嵌入向量和包关联嵌入向量后,分别获取当前检测到的人关联嵌入向量的向量值 和包关联嵌入向量对应的向量值 其中 代表第i个人对应
的人关联嵌入向量的向量值, 代表第j个包对应的包关联嵌入向量的向量值。
[0122] S203:基于所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值根据关联嵌入关系成本公式计算关联嵌入关系成本。
[0123] 具体的,关联嵌入关系成本公式为:
[0124]
[0125] 其中,i表示第i个人,j表示第j个包, 表示关联嵌入距离,T1、T2为预设阈值,H为预设常数,fass()表示单调递增的关联嵌入距离到嵌入损失的映射。
[0126] 具体的,针对每一个人关联嵌入向量,计算其与每一个包关联嵌入向量之间关联嵌入距离Δ1,并根据Δ1与预设阈值T1和T2的比较确定对应的人和包之间的关联嵌入关系
成本Cass。
[0127] 例如,当Δ1小于等于T1时,将关联嵌入关系成本Cass确定为0,当Δ1大于T2时,将关联嵌入关系成本Cass确定为H,而在Δ1位于T1和T2之间时,根据关联嵌入距离到嵌入损失的
映射关系确定关联嵌入关系成本Cass的值。
[0128] 其中,单调递增的关联嵌入距离到嵌入损失的映射fass()应理解为关联嵌入距离越大,嵌入损失就越大,对应的关联嵌入关系成本也就越高。关联嵌入距离的不同值到嵌入
损失(或关联嵌入关系成本)的映射可根据实际情况进行设定,例如,根据关联嵌入距离的
值所在的范围确定关联嵌入关系成本,或者是根据关联嵌入距离与关联嵌入关系成本的映
射关系确定其映射函数。
[0129] S204:基于所述人位置框和所述包位置框的相对关系,根据先验成本公式计算先验成本。
[0130] 其中,先验成本利用人类的先验知识作为判断,将人包位置关系进行映射得到,利用先验成本可以提高人包对应关系判断的准确率。
[0131] 具体的,先验成本公式为:
[0132] 其中,i表示第i个人,j表示第j个包,Θ表示所述人位置框和所述包位置框的相对关系,fprior()表示先验知识到先验损失的映射。
[0133] 具体的,针对每一个人位置框,获取其与每一个包位置框之间的相对关系Θ,并根据相对关系Θ代入先验知识到先验损失的映射关系函数fprior()中,从而确定对应的人和
包之间的先验成本。
[0134] 其中,先验知识到先验损失的映射fprior()根据先验知识中人和包之间的对应关系进行确定。可以理解的是,人和包之间的对应关系越弱,对应的先验成本越高。
[0135] 例如,通常情况下,一个人所拥有的包不会出现在这个人的头顶上,根据先验知识可知,包位置框的出现位置一般不会出现在具有对应(从属)关系的人位置框的上方,则可
确定包位置框在人位置框上方时的先验成本更大。此时可将包位置框和人位置框之间的上
下位置关系作为人位置框和包位置框的相对关系Θ。又如,一般情况下,对应的人和包之间
的距离不会太远,根据先验知识可知,包位置框的出现位置一般不会相距具有对应(从属)
关系的人位置框超过阈值距离的位置,则可确定包位置框距离人位置框越远,对应的先验
成本更大。此时可将包位置框和人位置框之间的距离位置关系作为人位置框和包位置框的
相对关系Θ。
[0136] 可以理解的是,相对关系Θ的种类可根据实际需要进行确定,在相对关系Θ包括多个种类时,可对不同种类相对关系Θ计算出的先验成本设置相应的权重,并根据对应的
权重占比,对不同种类相对关系下计算出的先验成本进行求和,并作为最终的先验成本
Cprior。
[0137] S205:基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,根据人包关系对应成本公式计算人包关系对应成本。
[0138] 具体的,人包关系对应成本公式为:
[0139] 其中,λ∈[0,1],i表示第i个人,j表示第j个包, 表示关联嵌入关系成本,表示先验成本。
[0140] 在得到检测到的各个人和包之间的关联嵌入关系成本和先验成本后,根据人和包的序号,将关联嵌入关系成本Cass和先验成本Cprior代入人包关系对应成本公式中,得出每个
人和包之间的人包关系对应成本Cjudge。
[0141] S206:基于所述人包关系对应成本构建人包关系对应成本矩阵。
[0142] 具体的,在得出每个人和包之间的人包关系对应成本Cjudge后,根据人和包的序号,例如以人的序号为横坐标,包的序号为纵坐标,人包关系对应成本为值构建人包关系对应
成本矩阵。
[0143] 假设当前检测待分析图像中检测到p个人,b个包,则可创建一个p×b的人包关系对应成本矩阵M:
[0144]
[0145] 可以理解的是,人包关系对应成本越高,人包关系对应成本矩阵M中对应序号的值则越大,意味着人和包之间的对应关系越弱。
[0146] S207:通过指派问题算法对所述人包关系对应成本矩阵进行求解,从而确定人包对应关系。
[0147] 具体的,在构建人包关系对应成本矩阵后,人和包之间的对应由非标准指派问题转换成了标准指派问题,可基于标准指派解决办法求出人和包之间的最优指派结果,并基
于指派结果确定人包对应关系。
[0148] 例如通过匈牙利算法或者Kuhn‑Munkras算法求出将包指派给人的最优指派结果,并根据指派结果中指示的人包指派关系确定人包对应关系,即根据指派给某个人的包确定
这个包对应(从属)于这个人。可以理解的是,实际情况中存在一个人对应多个包的情况,可
基于一个人可做几件事(相当于多个包可同时指派给同一个人)的指派问题的求解方法对
人包关系对应成本矩阵进行求解。
[0149] 进一步的,求出人包关系对应成本矩阵的最优解后,基于对应成本矩阵的最优解输出人位置框、包位置框以及人包对应关系。
[0150] 图3为本申请实施例提供的一种人包对应关系展示的示意图,如图3所示,假设在一张待分析图像中检测出三个人Person_A、Person_B和Person_C,检测出四个包Bag_A、
Bag_B、Bag_C和Bag_D,经人包关系检测网络检测分析后输出了三个人的人位置框和四个包
的包位置框,并通过人包关系对应成本矩阵最终解出待分析图像中存在的人包对应关系为
Bag_A对应于Person_A,Bag_C和Bag_D对应于Person_C,而Bag_B和Person_B由于包在人的
上方或者是距离人太远,两者间不对应。
[0151] 上述,通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先验成本,
并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对应成本矩
阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效率与准确
度。同时,基于指派问题求解方法求出人包关系对应成本矩阵的最优解,有效提高人包对应
关系的准确度。
[0152] 图4是本申请实施例提供的另一种人包关系检测方法的流程图,该人包关系检测方法是对上述人包关系检测方法的具体化。参考图4,该人包关系检测方法包括:
[0153] S301:基于神经网络结构创建人包关系检测网络。
[0154] 具体的,基于深度神经网络、卷积神经网络、循环神经网络等(例如vgg,resnet,densnet等网络结构)创建人包关系检测网络,图5为本申请实施例提供的人包关系检测网
络的结构示意图。如图5所示,人包关系检测网络包括骨干网络、位置回归分支、分类分支和
关联嵌入向量分支。
[0155] 其中,位置回归分支、分类分支和关联嵌入向量分支共享同一个骨干网络,骨干网络用于接收待分析图像,根据待分析图像生成特征图(分辨率为C×H×W的矩阵,C为通道
数,对于RGB图像,则C为3,H和W为高度和宽度),骨干网络通过对人和包进行识别,并基于识
别到的人或包生成特征图,并向位置回归分支、分类分支和关联嵌入向量分支输出特征图。
[0156] 进一步的,分类分支基于特征图输出特征分类,特征分类包括人和包。位置回归分支基于特征图输出位置框,并根据分类分支的输出结果确定位置框的类型,位置框的类型
包括人位置框和包位置框。关联嵌入向量分支基于特征图输出关联嵌入向量,并根据分类
分支的输出结果确定关联嵌入向量的类型,关联嵌入向量的类型包括人关联嵌入向量和包
关联嵌入向量。
[0157] 位置回归分支回归得到的位置框,并不知道是人位置框还是包位置框,位置框类型的确定依赖分类分支,分类分支的输出指明了框的类型。对于关联嵌入向量分支而言,其
输出的嵌入向量值也是没有类别属性,即不知道这个到底是包的还是人的关联嵌入向量,
还是要依赖分类分支对关联嵌入向量的类型进行确定。总之,位置回归分支和关联嵌入向
量分支输出的类型依赖分类分支输出来标明。在关联嵌入向量分支中,关联嵌入向量分支
为特征图中每个锚框计算一个关联嵌入向量,结合分类分支判断出这个特征图对应的特征
分类,可确定对应的位置框为人位置框还是包位置框。
[0158] 示例性的,对一个分辨率为m×n的特征图,经过关联嵌入向量分支的时候,可以产生m×n×q的特征向量图,其中,q为每个锚点所属的锚框数量。以某一尺度下的骨干网络输
出的特征图为例,特征图的某一锚点坐标为(i,j),在该锚点,预设了3个不同的锚框,那么
经过关联嵌入向量分支后将会生成3个关联嵌入向量[k1,k2,k3],而这3个向量表示这3个锚
框的关系属性。
[0159] S302:利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求。
[0160] 具体的,通过大量采集训练样本图像建立训练集,并通过人工标注的方式将训练样本图像中的人位置框、包位置框和人包对应关系标注出来,使得所述训练样本图像标注
有人位置框、包位置框和人包对应关系。将标注好的训练集输入到人包关系检测网络中进
行识别训练,直至人包关系检测网络训练过程中的损失函数满足训练要求或达到最小值。
[0161] 其中,损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass,回归损失可通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得,分类损失可通过
cross‑entropy‑loss函数计算获得。
[0162] 进一步的,关联嵌入损失通过以下公式计算获得:
[0163]
[0164]
[0165] Lass=μLpull+νLpush
[0166] 其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值;
表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数。
[0167] 进一步的,在计算出回归损失Lreg、分类损失Lcls和关联嵌入损失Lass后,可通过以下公式计算获得损失函数L:
[0168] L=αLcls+βLreg+ηLass
[0169] 其中α、β、η表示损失权重。
[0170] 可以理解的是,在训练人包关系检测网络的过程其实是对损失函数训练的过程,目标是使得损失函数达到最小(可通过梯度下降算法进行求解)。
[0171] S303:通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述包
关联嵌入向量一一对应。
[0172] S304:根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本。
[0173] S305:根据所述人位置框和所述包位置框计算先验成本。
[0174] S306:基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包对应关系。
[0175] 上述,通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先验成本,
并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对应成本矩
阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效率与准确
度。同时通过位置回归分支、分类分支和关联嵌入向量分支分别输出位置框、特征分类和关
联嵌入向量,提高人包关系检测网络的检测效率和准确度,并通过合理确定损失函数,进一
步提高人包关系检测网络的检测准确度。
[0176] 图6为本申请实施例提供的一种人包关系检测装置的结构示意图。参考图6,本实施例提供的人包关系检测装置包括检测网络提取模块61、关联嵌入成本计算模块62、先验
成本计算模块63和对应关系确定模块64。
[0177] 其中,检测网络提取模块61,用于通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向
量、所述包位置框与所述包关联嵌入向量一一对应;关联嵌入成本计算模块62,用于根据所
述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入关系成本;先验成本计算模块63,
用于根据所述人位置框和所述包位置框计算先验成本;对应关系确定模块64,用于基于所
述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对
应成本矩阵确定人包对应关系。
[0178] 上述,通过神经网络结构对待分析图像中的人和包进行识别,并得到人和包的位置,同时获取人关联嵌入向量和包关联嵌入向量,计算出关联嵌入关系成本以及先验成本,
并基于关联嵌入关系成本和先验成本构建人包关系对应成本矩阵,对人包关系对应成本矩
阵求解后即可得到识别出的人和包的对应关系,提高在拥挤场景下人包对应的效率与准确
度。
[0179] 在一个可能的实施例中,所述关联嵌入成本计算模块62具体用于:
[0180] 获取所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值
[0181] 基于所述人关联嵌入向量的向量值 以及所述包关联嵌入向量的向量值 根据以下公式计算关联嵌入关系成本:
[0182]
[0183] 其中,i表示第i个人,j表示第j个包, 表示关联嵌入距离,T1、T2为预设阈值,H为预设常数,fass()表示单调递增的关联嵌入距离到嵌入损失的映射。
[0184] 在一个可能的实施例中,所述先验成本计算模块63具体用于:
[0185] 基于所述人位置框和所述包位置框的相对关系,根据以下公式计算先验成本:
[0186]
[0187] 其中,i表示第i个人,j表示第j个包,Θ表示所述人位置框和所述包位置框的相对关系,fprior()表示先验知识到先验损失的映射。
[0188] 在一个可能的实施例中,所述对应关系确定模块64具体用于:
[0189] 基于所述关联嵌入关系成本和所述先验成本构建人包关系对应成本矩阵,根据以下公式计算人包关系对应成本:
[0190]
[0191] 其中,λ∈[0,1],i表示第i个人,j表示第j个包, 表示关联嵌入关系成本,表示先验成本;
[0192] 基于所述人包关系对应成本构建人包关系对应成本矩阵;
[0193] 基于所述人包关系对应成本矩阵确定人包对应关系。
[0194] 在一个可能的实施例中,所述对应关系确定模块64在基于所述人包关系对应成本矩阵确定人包对应关系时,具体为:
[0195] 通过指派问题算法对所述人包关系对应成本矩阵进行求解,从而确定人包对应关系。
[0196] 在一个可能的实施例中,所述装置还包括神经网络创建模块,所述神经网络创建模块用于:
[0197] 基于神经网络结构创建人包关系检测网络;
[0198] 利用训练样本图像对所述人包关系检测网络进行训练,直至所述人包关系检测网络在训练过程中的损失函数满足训练要求,所述训练样本图像标注有人位置框、包位置框
和人包对应关系。
[0199] 在一个可能的实施例中,所述人包关系检测网络包括骨干网络、位置回归分支、分类分支和关联嵌入向量分支;
[0200] 所述骨干网络用于向所述位置回归分支、所述分类分支和所述关联嵌入向量分支输出特征图;
[0201] 所述分类分支基于所述特征图输出特征分类,所述特征分类包括人和包;
[0202] 所述位置回归分支基于所述特征图输出位置框,并根据所述分类分支的输出结果确定位置框的类型,位置框的类型包括人位置框和包位置框;
[0203] 所述关联嵌入向量分支基于所述特征图输出关联嵌入向量,并根据所述分类分支的输出结果确定关联嵌入向量的类型,关联嵌入向量的类型包括人关联嵌入向量和包关联
嵌入向量。
[0204] 在一个可能的实施例中,所述损失函数包括回归损失Lreg、分类损失Lcls和关联嵌入损失Lass;
[0205] 所述回归损失通过smooth‑L1‑loss函数、IOU‑Loss函数或GIou‑Loss函数计算获得;
[0206] 所述分类损失通过cross‑entropy‑loss函数计算获得;
[0207] 所述关联嵌入损失通过以下公式计算获得:
[0208]
[0209]
[0210] Lass=μLpull+νLpush
[0211] 其中, s表示当前所属关系中包和人的总数量,N为当前图像中人包均存在的情况的所属关系的数量,N′为所有所属关系数量,Δ2为预设的距离阈值;
表示当前所属关系中人和包的关联嵌入向量值,μ、ν表示加权系数;
[0212] 所述损失函数通过以下公式计算获得:
[0213] L=αLcls+βLreg+ηLass
[0214] 其中α、β、η表示损失权重。
[0215] 本申请实施例还提供了一种计算机设备,该计算机设备可集成本申请实施例提供的人包关系检测装置。图7是本申请实施例提供的一种计算机设备的结构示意图。参考图7,
该计算机设备包括:输入装置73、输出装置74、存储器72以及一个或多个处理器71;所述存
储器72,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器71执
行,使得所述一个或多个处理器71实现如上述实施例提供的人包关系检测方法。其中输入
装置73、输出装置74、存储器72和处理器71可以通过总线或者其他方式连接,图7中以通过
总线连接为例。
[0216] 存储器72作为一种计算设备可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的人包关系检测方法对应的程序指令/模块(例
如,人包关系检测装置中的检测网络提取模块61、关联嵌入成本计算模块62、先验成本计算
模块63和对应关系确定模块64)。存储器72可主要包括存储程序区和存储数据区,其中,存
储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的
使用所创建的数据等。此外,存储器72可以包括高速随机存取存储器,还可以包括非易失性
存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实
例中,存储器72可进一步包括相对于处理器71远程设置的存储器,这些远程存储器可以通
过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信
网及其组合。
[0217] 输入装置73可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置74可包括显示屏等显示设备。
[0218] 处理器71通过运行存储在存储器72中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的人包关系检测方法。
[0219] 上述提供的人包关系检测装置和计算机可用于执行上述实施例提供的人包关系检测方法,具备相应的功能和有益效果。
[0220] 本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的人包关系检测方法,该人包关
系检测方法包括:通过人包关系检测网络提取待分析图像中的人位置框、包位置框、人关联
嵌入向量和包关联嵌入向量,所述人位置框与所述人关联嵌入向量、所述包位置框与所述
包关联嵌入向量一一对应;根据所述人关联嵌入向量和所述包关联嵌入向量计算关联嵌入
关系成本;根据所述人位置框和所述包位置框计算先验成本;基于所述关联嵌入关系成本
和所述先验成本构建人包关系对应成本矩阵,并基于所述人包关系对应成本矩阵确定人包
对应关系。
[0221] 存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD‑ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如
DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质
(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它
类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,
或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第
一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介
质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或
更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现
为计算机程序)。
[0222] 当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的人包关系检测方法,还可以执行本申请任意实施例所提供的
人包关系检测方法中的相关操作。
[0223] 上述实施例中提供的人包关系检测装置、设备及存储介质可执行本申请任意实施例所提供的人包关系检测方法,未在上述实施例中详尽描述的技术细节,可参见本申请任
意实施例所提供的人包关系检测方法。
[0224] 上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离
本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申
请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施
例,而本申请的范围由权利要求的范围决定。