对象检测方法及装置、电子设备和存储介质与流程

文档序号:26908618发布日期:2021-10-09 14:26阅读:135来源:国知局
对象检测方法及装置、电子设备和存储介质与流程

1.本技术实施例涉及图像处理技术领域,涉及但不限于一种对象检测方法及装置、电子设备和存储介质。


背景技术:

2.对于特定场景中采集到的大规模的视图数据,相关技术中的视图分析系统无法有效地挖掘数据中潜在的对象的轨迹信息,未能有效发挥数据的价值。


技术实现要素:

3.本技术实施例提供一种对象检测技术方案。
4.本技术实施例的技术方案是这样实现的:
5.本技术实施例提供一种对象检测方法,所述方法包括:
6.确定不同时空范围内的多个待检测对象的第一轨迹数据集合;
7.在所述第一轨迹数据集合中,确定时空范围满足预设时空范围的至少一个第二轨迹数据;
8.确定所述至少一个第二轨迹数据中的待检测对象的分布信息。
9.在一些实施例中,所述确定所述至少一个第二轨迹数据中的待检测对象的分布信息,包括:基于预设身份库,确定所述多个待检测对象的身份类型和来源区域;在所述至少一个第二轨迹数据中,确定每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量。如此,能够有效统计出预设时空范围内的人员的分布情况。
10.在一些实施例中,所述在所述至少一个第二轨迹数据中,确定每一身份类型的待检测对象的第一数量,包括:基于所述多个待检测对象的身份类型,对所述至少一个第二轨迹数据进行分组,得到多组身份轨迹数据;确定每一组身份轨迹数据中包括的待检测对象的数量,为所述第一数量。如此,采用身份类型对第二轨迹数据进行分组,从而能够准确统计出每一身份类型包括的对象的数量。
11.在一些实施例中,在所述至少一个第二轨迹数据中,每一来源区域的待检测对象的第二数量,包括:基于所述多个待检测对象的来源区域,对所述至少一个第二轨迹数据进行分组,得到多组来源轨迹数据;确定每一组来源轨迹数据中包括的待检测对象的数量,为所述第二数量。如此,采用多个来源区域的标识信息对第二轨迹数据进行分组,从而能够准确统计出每一来源区域包括的对象的数量。
12.在一些实施例中,所述确定不同时空范围内的多个待检测对象的第一轨迹数据集合,包括:获取所述多个待检测对象在所述不同时空范围内的图像数据;基于所述多个待检测对象的图像数据,确定包括每一待检测对象在所述不同时空范围内的轨迹的第一轨迹数据集合。如此,通过采集不同范围内采集的图像数据,为每一待检测对象形成一个第一轨迹数据,从而得到多个待检测对象的第一轨迹数据集合,便于通过该第一轨迹数据集合筛选出从其他区域流入目标区域的对象。
13.在一些实施例中,所述基于所述多个待检测对象的图像数据,确定包括每一待检测对象在所述不同时空范围内的轨迹的第一轨迹数据集合,包括:将对应相同待检测对象的图像数据进行轨迹还原,得到多条轨迹;其中,每一条轨迹中的轨迹点属于同一待检测对象;采用每一所述待检测对象的身份标识和身份类型,对每一所述待检测对象对应的轨迹进行标注,得到每一所述待检测对象的已标注轨迹;基于所述多个待检测对象的已标注轨迹,确定所述第一轨迹数据集合。如此,能够更加完整的统计当前应用场景所需要的图像数据,丰富源数据。
14.在一些实施例中,所述将对应相同待检测对象的图像数据进行轨迹还原,得到多条轨迹,包括:将对应相同待检测对象的图像数据进行聚类,得到多类图像数据;其中,每一类图像数据属于同一待检测对象;将任一类图像数据中的每一帧图像数据作为轨迹点,形成所述任一类图像数据所属待检测对象的轨迹,以得到所述多条轨迹。如此,通过对待检测对象进行聚类,实现对待检测对象在不同时空范围内的轨迹的还原,从而得到该对象的轨迹,进而能够有效还原每一待检测对象的轨迹。
15.在一些实施例中,所述时空范围包括:时间段和空间位置,所述在所述第一轨迹数据集合中,确定时空范围满足预设时空范围的至少一个第二轨迹数据,包括:在所述第一轨迹数据集合中,确定采集时间处于预设时间段内至少一个第三轨迹数据;在所述至少一个第三轨迹数据中,确定轨迹数据的图像采集设备的空间位置处于预设空间区域的所述至少一个第二轨迹数据。如此,能够得到预设时空范围内采集的轨迹数据,便于后续分析待检测对象的类型分布和来源分布。
16.在一些实施例中,所述在所述第一轨迹数据集合中,确定采集时间处于预设时间段内至少一个第三轨迹数据,包括:采用预设单位时长,对所述预设时间段进行划分,得到多个时间分片;基于所述多个时间分片,对所述至少一个第三轨迹数据进行拆分,得到每一时间分片对应的时间元组;其中,每一时间元组至少包括:每一所述元组中轨迹数据的采集时间、图像采集设备的空间位置、对应的待检测对象的身份标识和身份类型;基于每一待检测对象的身份标识和身份类型,读取多个时间元组中的轨迹数据,得到所述至少一个第三轨迹数据。如此,通过以天为粒度对轨迹数据进行分片,从而得到多个时间元组,以便于通过分布式的方式从多个时间元组中读取轨迹数据,能够提高轨迹数据读取的速度。
17.在一些实施例中,在所述分布信息包括每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量的情况下,所述确定所述至少一个第二轨迹数据中的待检测对象的分布信息之后,所述方法还包括:在多个身份类型对应的第一数量和多个来源区域对应的第二数量中,分别确定数量值在前n个的目标第一数量和目标第二数量;其中,n为大于等于1的整数;输出所述目标第一数量以及所述目标第一数量对应的身份类型,和所述目标第二数量以及所述目标第二数量对应的来源区域。如此,,能够实现对海量数据的行为数据分析,而且性能较高。
18.本技术实施例提供一种对象检测装置,所述装置包括:
19.第一确定模块,用于确定不同时空范围内的多个待检测对象的第一轨迹数据集合;
20.第二确定模块,用于在所述第一轨迹数据集合中,确定时空范围满足预设时空范围的至少一个第二轨迹数据;
21.第三确定模块,用于确定所述至少一个第二轨迹数据中的待检测对象的分布信息。
22.本技术实施例提供一种计算机存储介质,所述计算机存储介质上存储有计算机可执行指令,该计算机可执行指令被执行后,能够实现上述的对象检测方法。
23.本技术实施例提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器上存储有计算机可执行指令,所述处理器运行所述存储器上的计算机可执行指令时能够实现上述的对象检测方法。
24.本技术实施例提供一种对象检测方法及装置、电子设备和存储介质,对于获取的多个待检测对象的第一轨迹数据集合,首先,通过在大量的第一轨迹数据集合中,筛选出时空范围满足预设时空范围的轨迹数据,即至少一个第二轨迹数据;然后,在至少一个第二轨迹数据中,分析每一个待检测对象的分布情况。如此,通过预设时空范围内采集到的轨迹数据,进行对象分布情况的分析,能够有效统计出大量第二轨迹数据中待检测对象的分布情况,从而提高对大量轨迹数据进行分析的性能。
附图说明
25.图1为本技术实施例提供的对象检测方法的实现流程示意图;
26.图2a为本技术实施例提供的对象检测方法的另一实现流程示意图;
27.图2b为本技术实施例提供的对象检测方法的又一实现流程示意图;
28.图3为本技术实施例提供的人员检测方法的实现流程示意图;
29.图4为本技术实施例对象检测装置的结构组成示意图;
30.图5为本技术实施例计算机设备的组成结构示意图。
具体实施方式
31.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对发明的具体技术方案做进一步详细描述。以下实施例用于说明本技术,但不用来限制本技术的范围。
32.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
33.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
34.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
35.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
36.1)分布式查询,可以访问来自多种异类数据源的数据,而这些数据可存储在相同
或不同的计算机上。
37.2)聚类分析,目标是在没有先验知识的前提下,根据数据对象之间的相似程度将数据聚合成若干不同的簇,使得同一个簇中的元素尽可能相似,不同簇中的元素差别尽可能大。
38.下面说明本技术实施例提供的对象检测设备的示例性应用,本技术实施例提供的设备可以实施为具有数据处理功能的笔记本电脑,平板电脑,台式计算机,移动设备(例如,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的用户终端,也可以实施为服务器。下面,将说明设备实施为终端或服务器时示例性应用。
39.该方法可以应用于计算机设备,该方法所实现的功能可以通过计算机设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该计算机设备至少包括处理器和存储介质。
40.本技术实施例提供一种对象检测方法,如图1所示,结合如图1所示步骤进行说明:
41.步骤s101,确定不同时空范围内的多个待检测对象的第一轨迹数据集合。
42.在一些实施例中,时空范围包括:时间段和空间位置。该空间位置是指轨迹数据的图像采集设备所在的区域位置。不同时空范围包括:不同的时间段和不同的空间位置。待检测对象可以是任意需要统计进入预设空间区域的可移动对象,比如,动物、人员或者车辆等。第一轨迹数据集合中包括每一待检测对象在不同时刻范围内的第一轨迹数据。一个第一轨迹数据中的轨迹点对应于同一对象,但是由于图像采集过程中采集角度的变化,一个对象可能有两个或者两个以上的第一轨迹数据。一个第一轨迹数据中可以包括一个对象在不同采集时间以及不同采集位置采集到的图像数据,这样,第一轨迹数据集合中包括多个对象在不同采集时间以及不同采集位置采集到的图像数据。
43.步骤s102,在所述第一轨迹数据集合中,确定时空范围满足预设时空范围的至少一个第二轨迹数据。
44.在一些实施例中,由于一个第一轨迹数据包括的是一个待检测对象在不同采集时间以及不同采集位置采集到的图像数据;这样,在第一轨迹数据集合中,针对每一第一轨迹数据,确定该第一轨迹数据中图像数据的采集时间在预设时间段内的数据,得到第二轨迹数据。如此,一个第二轨迹数据即为:一个待检测对象在满足预设时空范围内的图像数据;基于此,至少一个第二轨迹数据即为多个待检测对象在满足预设时空范围内的图像数据。
45.在一些可能的实现方式中,预设时空范围内的第二轨迹数据为,采集时间处于预设时间段内,且轨迹数据的图像采集设备的空间位置处于预设空间区域的轨迹数据。
46.在一个具体例子中,预设时间段为2021年6月10日至2021年6月20日,预设空间区域为a区域,在每一第一轨迹数据中,确定该第一轨迹数据中预设时间段为2021年6月10日至2021年6月20日,且图像采集设备的空间为处于a区域的轨迹数据,将该轨迹数据作为第二轨迹数据,进而得到至少一个第二轨迹数据。
47.步骤s103,确定所述至少一个第二轨迹数据中的待检测对象的分布信息。
48.在一些实施例中,待检测对象的分布信息包括待检测对象的身份类型的分布和待检测对象的来源区域的分布。在一些可能的实现方式中,通过按照预设身份库,获得多个检测对象的身份类型和来源区域,从而在第二轨迹数据中,分析每一身份类型的待检测对象的数量以及每一来源区域的待检测对象的数量。
49.在本技术实施例中,通过在大量的第一轨迹数据集合中,筛选出时空范围满足预设时空范围的轨迹数据,即至少一个第二轨迹数据;然后,在至少一个第二轨迹数据中,分析每一个待检测对象的分布情况。如此,通过预设时空范围内采集到的轨迹数据,进行对象分布情况的分析,能够有效统计出大量第二轨迹数据中待检测对象的分布情况,从而提高对大量轨迹数据进行分析的性能。
50.在一些实施例中,通过分析待检测对象的身份类型和来源区域,得到待检测对象的分布信息,即上述步骤s103可以通过图2a所示的步骤实现,图2a为本技术实施例提供的对象检测方法的另一实现流程示意图,结合图2a所示的步骤进行以下说明:
51.步骤s201,基于预设身份库,确定多个待检测对象的身份类型和来源区域。
52.在一些实施例中,多个待检测对象的身份类型,用于表示待检测对象在当前应用场景下所属的类型,比如,以待检测对象为人员为例,如果当前应用场景为对流入预设空间区域的成年人进行检测,那么人员的身份类型包括:老人、小孩和成年人等。或者,以待检测对象为动物为例,如果当前应用场景为从其他区域迁移至预设空间区域的野生动物,那么动物的身份类型包括:各个品种的野生动物等。将聚类得到的每一轨迹的类中心特征,和预设身份库特征进行比对;并根据比对结果对每一轨迹进行身份标注。由于预设身份库中的特征携带有对象的身份标识和身份类型,所以比对后,可以用比中的特征的身份信息和身份类型为该轨迹打身份标签。
53.步骤s202,在所述至少一个第二轨迹数据中,确定每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量。
54.在一些实施例中,在预设时空范围内采集的第二轨迹数据中,统计每一身份类型包括的待检测对象的第一数量,以及每一待检测对象的来源,从而得到每一来源区域包括的待检测对象的第二数量。如此,能够有效统计出预设时空范围内的人员的分布情况。
55.在一些实施例中,通过分布采用身份类型和来源区域对第二轨迹数据进行分组,以统计每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量,可以通过以下步骤s221至224(图示未示出)实现:
56.步骤s221,基于所述多个待检测对象的身份类型,对所述至少一个第二轨迹数据进行分组,得到多组身份轨迹数据。
57.在一些实施例中,按照多个待检测对象的身份类型,对第二轨迹数据进行分组,从而得到多组身份轨迹数据,其中,一组身份轨迹数据对应一类身份类型。
58.步骤s222,确定每一组身份轨迹数据中包括的待检测对象的数量,为所述第一数量。
59.在一些实施例中,对于每一组身份轨迹数据,统计其中包括的待检测对象的数量,该数量即为该组身份轨迹数据所属身份类型的待检测对象的第一数量。
60.上述步骤s221和222提供了一种实现“在所述至少一个第二轨迹数据中,确定每一身份类型的待检测对象的第一数量”的方式,在该方式中,采用身份类型对第二轨迹数据进行分组,从而能够准确统计出每一身份类型包括的对象的数量。
61.步骤s223,基于所述多个待检测对象的来源区域,对所述至少一个第二轨迹数据进行分组,得到多组来源轨迹数据。
62.在一些实施例中,按照多个待检测对象的来源区域的标识信息,对第二轨迹数据
进行分组,从而得到多组来源轨迹数据,其中,一组来源轨迹数据对应一类来源区域。
63.步骤s224,确定每一组来源轨迹数据中包括的待检测对象的数量,为所述第二数量。
64.在一些实施例中,对于每一组来源轨迹数据,统计其中包括的待检测对象的数量,该数量即为该组来源轨迹数据所属来源区域的待检测对象的第二数量。
65.上述步骤s223和224提供了一种实现“在所述至少一个第二轨迹数据中,每一来源区域的待检测对象的第二数量”的方式,在该方式中,采用多个来源区域的标识信息对第二轨迹数据进行分组,从而能够准确统计出每一来源区域包括的对象的数量。
66.在一些实施例中,通过抓拍待检测对象在不同时空范围内的图像数据,形成该对象在不同时空范围内的轨迹,即上述步骤s101可以通过图2b所示的步骤实现,结合图2b所示的步骤进行以下说明:
67.步骤s21,获取所述多个待检测对象在所述不同时空范围内的图像数据。
68.在一些实施例中,图像数据中包括能够识别待检测对象身份的画面,比如,待检测对象为人员或动物,那么图像数据包括面部图像;如果待检测对象为车辆,那么图像数据为包括车辆的标识信息(比如,车牌号或者车标等)的图像等。
69.步骤s22,基于所述多个待检测对象的图像数据,确定包括每一待检测对象在所述不同时空范围内的轨迹的第一轨迹数据集合。
70.在一些实施例中,通过对多个待检测对象的图像数据进行聚类,得到多类的图像数据;其中,一类图像数据对应于同一待检测对象;这样,将每一类的图像数据作为一个轨迹点,即可形成该类所属的待检测对象的第一轨迹数据。如此,通过采集不同范围内采集的图像数据,为每一待检测对象形成一个第一轨迹数据,从而得到多个待检测对象的第一轨迹数据集合,便于通过该第一轨迹数据集合筛选出从其他区域流入目标区域的对象。
71.在一些可能的实现方式中,通过对第一轨迹数据集合进行聚类,以及采用预设的身份库进行撞库,实现对待检测对象的图像数据的身份标注,从而使得第一轨迹数据中携带对象的身份,即上述步骤s22可以通过以下步骤实现:
72.第一步,将对应相同待检测对象的图像数据进行轨迹还原,得到多条轨迹。
73.在一些实施例中,每一条轨迹中的轨迹点属于同一待检测对象。通过将对应相同待检测对象的图像数据进行聚类,实现轨迹还原。
74.在一些可能的实现方式中,基于大规模分布式聚类的轨迹还原技术对海量图像进行轨迹还原,得到多个轨迹。以待检测对象为人员为例,那么待检测对象的图像数据为人脸图像,基于大规模分布式聚类的人脸轨迹还原技术对海量人脸图像进行轨迹还原,得到多个人脸轨迹;上述第一步可以通过以下步骤实现:
75.步骤1,将对应相同待检测对象的图像数据进行聚类,得到多类图像数据。
76.在一些实施例中,按照是否属于相同待检测对象,对所有的图像数据进行聚类,能够得到多类图像数据;这样,每一类图像数据对应于一个待检测对象。以待检测对象为人员为例,对属于同一个人员的图像数据进行聚类,得到多类图像数据,每一类图像数据对应于一个人员;这样,就将对多个人员抓拍的包括人脸图像的图像数据,聚类为每一个人员的图像数据。
77.步骤2,将任一类图像数据中的每一帧图像数据作为轨迹点,形成所述任一类图像
数据所属待检测对象的轨迹,以得到所述多条轨迹。
78.在一些实施例中,在一类图像数据中,将采集到的每一帧图像作为轨迹点,连接这些轨迹点形成类图像数据所属待检测对象的轨迹;从而得到这一待检测对象在不同时空范围内的形成的一条轨迹,从而得到多个待检测对象的轨迹。如此,通过对待检测对象进行聚类,实现对待检测对象在不同时空范围内的轨迹的还原,从而得到该对象的轨迹,进而能够有效还原每一待检测对象的轨迹。
79.第二步,采用每一所述待检测对象的身份标识和身份类型,对每一所述待检测对象对应的轨迹进行标注,得到每一所述待检测对象的已标注轨迹。
80.在一些实施例中,基于在预设身份库中比中的身份标识和身份类型,对该轨迹进行打标,从而得到携带所属待检测对象的身份标识和身份类型的已标注轨迹。
81.在一些可能的实现方式中,基于大规模分布式聚类与碰撞的身份标示及去重技术对多个轨迹集合进行身份标示,得到已标注轨迹。将已标注轨迹表示为轨迹(tracks)表的形式,tracks表中包括多个图像数据以及每个图像数据对应的时空信息键值(key)和轨迹标识(clusters_id)。每个已标注轨迹中包括的各图像数据对应相同的身份标识,即一个已标注轨迹中包括的各图像数据均对应同一对象。由于海量图像数据为抓拍得到,受图像质量和抓拍角度影响,同一对象的不同图像数据可能会被聚类到不同的轨迹集合,因此,同一身份标识对应至少一个已标注轨迹。
82.第三步,基于所述多个待检测对象的已标注轨迹,确定所述第一轨迹数据集合。
83.在一些实施例中,将每一待检测对象的已标注轨迹,作为该待检测对象的第一轨迹数据;其中,第一轨迹数据的表示形式为:(entity_id,ntity_type_code,idcard,captured_date,captured_time,device_area_code)。其中,entity_id为拍摄数据对应对象的档案id,即对象id;entity_type_code为抓拍图像数据对应的对象的档案类型编码;idcard为抓拍图像数据对应对象的身份标识;captured_date为抓拍图像数据对应的抓拍日期;captured_time为抓拍图像数据对应的抓拍时间;device_area_code为拍摄数据对应的摄像头所在区划代码。
84.在一个具体例子中,以待检测对象为人员,图像数据为人脸数据为例,该人员的第一轨迹数据中包括(entity_id,ntity_type_code,idcard,captured_date,captured_time,device_area_code)。其中,entity_id为人脸拍摄数据对应的档案id,即人员id;entity_type_code为人脸拍摄数据对应的档案类型编码;idcard为人脸拍摄数据对应的身份证号,即人员唯一标识;captured_date为人脸拍摄数据对应的抓拍日期;captured_time为人脸拍摄数据对应的抓拍时间;device_area_code为人脸拍摄数据对应的摄像头所在区划代码。
85.上述第一步至三步提供了一种实现“基于所述多个待检测对象的图像数据,确定包括每一待检测对象在所述不同时空范围内的轨迹的第一轨迹数据集合”的方式,在该方式中,通过先对待检测对象的图像数据进行轨迹还原,得到多条轨迹;再对该多条轨迹进行身份标注,从而得到至少携带身份标识和身份类型的轨迹,进而得到每一对象的在不同时空范围内的轨迹数据;如此,能够更加完整的统计当前应用场景所需要的图像数据,丰富源数据。
86.在一些实施例中,在第一轨迹数据集合中,筛选预设时间段内在预设空间区域采
集的第二轨迹数据,即上述步骤s102可以通过步骤s121和122(图示未示出)实现:
87.步骤s121,在所述第一轨迹数据集合中,确定采集时间处于预设时间段内至少一个第三轨迹数据。
88.在一些实施例中,在第一轨迹数据集合中,针对每一第一轨迹数据,确定该第一轨迹数据中图像数据的采集时间在预设时间段内的数据,得到第三轨迹数据。如此,一个第三轨迹数据即为:一个待检测对象在预设时间段内的图像数据;基于此,至少一个第三轨迹数据即为多个待检测对象在预设时间段内的图像数据。
89.步骤s122,在所述至少一个第三轨迹数据中,确定轨迹数据的图像采集设备的空间位置处于预设空间区域的所述至少一个第二轨迹数据。
90.在一些实施例中,在多个第三轨迹数据中,筛选图像采集设备的空间位置处于预设空间区域的轨迹数据,即得到第二轨迹数据。如此,通过在第一轨迹数据集合中筛选图像数据的采集时间,以及图像采集设备所处的空间位置,能够得到预设时空范围内采集的轨迹数据,便于后续分析待检测对象的类型分布和来源分布。
91.在一些可能的实现方式中,对于任一第三轨迹数据,确定该轨迹数据中采集每一个图像数据的图像采集设备的空间位置。以待检测对象为人员为例,任一第一轨迹为某一类型的某一人员在预设时间段内,以及预设空间区域内的所有人脸数据,这样在该人员的第三轨迹数据中,确定每一人脸数据的图像采集设备的空间位置,以判断该空间位置是否满足在预设空间区域内;进而筛选出在预设空间区域内的第二轨迹数据。
92.在一些实施例中,为便于采用分布式的方式进行数据分析,将预设时间段内的轨迹数据,划分为多个时间元组,从而基于时间元组实现对数据的统计分析,即上述步骤s122可以通过以下步骤s131至133(图示未示出)实现:
93.步骤s131,采用预设单位时长,对所述预设时间段进行划分,得到多个时间分片。
94.比如,预设单位时长为1天,预设时间段为15天,那么得到时间长度为1天的多个时间分片。
95.步骤s132,基于所述多个时间分片,对所述至少一个第三轨迹数据进行拆分,得到每一时间分片对应的时间元组。
96.在一些实施例中,每一时间元组至少包括:每一所述元组中轨迹数据的采集时间、图像采集设备的空间位置、对应的待检测对象的身份标识和身份类型。时间分片可以是一天为单位,对至少一个第二轨迹数据进行分片,从而得到时长为一天的时间元组,这样该时间元组中包括:一个对象的idcard,针对该对象在一天内采集的图像数据(每一图像数据携带采集时刻)以及该图像数据的图像采集设备所在空间位置的区域代码。如果预设时间段为12天,以天为单位对该预设时间段内的至少一个第二轨迹数据进行拆分,得到12个时间元组。
97.步骤s133,基于每一待检测对象的身份标识和身份类型,读取多个时间元组中的轨迹数据,得到所述至少一个第三轨迹数据。
98.在一些实施例中,按照每一待检测对象的身份标识和身份类型,分布式读取这多个时间元组的轨迹数据,从而得到该检测对象的轨迹数据,即第三轨迹数据。该第三轨迹数据包括:按照轨迹数据的采集时间排序的所述多个时间元组内的轨迹数据;第三轨迹数据的数据形式为{idcard,entity_type_code,[(captured_time,device_area_code)]},表示
某一身份类型的一个待检测对象在预设时间段内,预设空间区域下的所有轨迹数据。如此,通过以天为粒度对轨迹数据进行分片,从而得到多个时间元组,以便于通过分布式的方式从多个时间元组中读取轨迹数据,能够提高轨迹数据读取的速度。
[0099]
在一些实施例中,根据用户输入的条件,可以输出满足条件的前k个身份类型的第一数量和前k个来源区域的第二数量,即在步骤s103之后,还包括以下步骤(图示未时长):
[0100]
步骤s104,在多个身份类型对应的第一数量和多个来源区域对应的第二数量中,分别确定数量值在前n个的目标第一数量和目标第二数量。
[0101]
在一些可能的实现方式中,首先,分别对多个身份类型对应的第一数量和多个来源区域对应的第二数量,按照数量的从大到下进行排序,得到两个排序结果;即多个身份类型对应的第一数量的排序结果和多个来源区域对应的第二数量的排序结果。然后,在两个排序结果中,分别确定出前n个的目标第一数量和目标第二数量,n为大于等于1的整数;比如,n取值为5,确定出前5个目标第一数量和目标第二数量。
[0102]
步骤s105,输出所述目标第一数量以及所述目标第一数量对应的身份类型,和所述目标第二数量以及所述目标第二数量对应的来源区域。
[0103]
在一些可能的实现方式中,目标第一数量可以是仅有一个,还可以是有两个或者两个以上;将确定出的目标第一数量与每一个目标第一数量所对应的身份类型进行绑定并输出给用户,以使用户可以及时得知第二轨迹数据中对象数量排列在前几个的身份类型是什么,以及每一身份类型的对象数量。同理,将确定出的目标第二数量与每一个目标第二数量所对应的来源区域的标识信息进行绑定并输出给用户,以使用户可以及时得知第二轨迹数据中对象数量排列在前几个的来源区域是哪里,以及每一来源区域的对象数量。如此,能够实现对海量数据的行为数据分析,而且性能较高。
[0104]
在其他实施例中,为了能够统计出包括对象数量较多的身份类型和来源区域,在步骤s103之后,通过以下过程实现,首先,确定第一数量大于第一预设阈值的目标身份类型,和第二数量大于第二预设阈值的目标来源区域。然后,输出所述目标身份类型以及所述目标身份类型对应的第一数量,和所述目标来源区域以及所述目标来源区域对应的第二数量。
[0105]
在本技术实施例中,通过对每一身份类型的轨迹数据所对应的待检测对象进行统计,能够准确统计出预设空间区域的每一身份类型的待检测对象的分布情况,以及来源区域的分布情况;这样,能够支持海量数据的行为数据分析,具有高性能。
[0106]
下面,将说明本技术实施例在一个实际的应用场景中的示例性应用,在待检测对象为人员,图像数据为人员的人脸数据为例,以针对大规模轨迹信息的分布式区域人员的分布分析,进行说明。
[0107]
基于采集的大规模人脸图像数据形成的每个人的轨迹信息,每个人的轨迹信息一定程度上能反映一个人的行为特点。但通过大规模的人脸数据分析出每个人的行为特点是十分复杂的:一方面要从海量数据中还原出人脸轨迹;另外一方面需要抽象出每类行为模式的共同点,并基于人脸轨迹信息分析哪些类型的人员是符合特定的行为模式。要完成这两项分析需要高效的对海量数据进行计算分析,并具有高扩展性,应对城市检测系统和数据规模的不断扩大。
[0108]
基于此,本技术实施例提供一种人员检测方法,通过统计预设时间和预设空间区
域的流入目标人员的拍摄数据,可以分析在预设时空范围内的待检测类型人员的分布情况。
[0109]
在一些实施例中,通过以下三个步骤实现人员检测:
[0110]
第一步,对人脸数据进行轨迹还原,得到多个轨迹集合。
[0111]
在一种可能的实现方式,基于大规模分布式聚类的人脸轨迹还原技术对海量人脸数据进行轨迹还原,得到多个轨迹集合。
[0112]
第二步,对第一步得到的多个轨迹集合进行身份标示。
[0113]
在一些可能的实现方式中,基于大规模分布式聚类与碰撞的身份标示及去重技术对多个待检测对象的轨迹进行身份标示。
[0114]
第三步,对于进行身份标示后的人员的轨迹进行分布式查询,分析出预设时空范围内,预设空间区域的人员的人员类型分布及人员来源分布。
[0115]
在第一步和第二步之后,数据表征为轨迹表。
[0116]
在一些可能的实现方式中,第三步可以通过以下过程实现:
[0117]
步骤1、轨迹表用于表征人员的抓拍轨迹数据,附带对应的时空信息和归属的entity_id。
[0118]
每一人员的轨迹数据的表示方式为(entity_id,entity_type_code,idcard,captured_date,captured_time,device_area_code),其中:
[0119]
entity_id为人脸拍摄数据对应的档案标识(identity document,id),即人员id。
[0120]
entity_type_code为人脸拍摄数据对应的档案类型编码。
[0121]
idcard为人脸拍摄数据对应的身份证号,即人员唯一标识。
[0122]
captured_date为人脸拍摄数据对应的抓拍日期。
[0123]
captured_time为人脸拍摄数据对应的抓拍时间。
[0124]
device_area_code为人脸拍摄数据对应的摄像头所在区划代码。
[0125]
步骤2、输入需要分析的时间段[(t1,t2)]和区划代码entity_area_code和返回结果的top_k。
[0126]
将时间段[(t1,t2)]以天为粒度进行分片,拆分成时间元组(caputured_date),通过分布式内存计算引擎(spark分布式)的读取指定时间范围内的轨迹数据为[(idcard,entity_type_code,captured_time,device_area_code)]。
[0127]
步骤3、对步骤2的轨迹数据,基于entity_type_code进行分组,统计出每个身份类型的人员数量。基于entity_area_code进行分组,统计出每个来源区域的人员数量。
[0128]
步骤4、根据输入条件中的top_k,返回前k个人员类型的人员数量,及前k个来源区域的人员数量。
[0129]
图3为本技术实施例提供的人员检测方法的实现流程示意图,结合图3所示的步骤进行以下说明:
[0130]
步骤s301,获取输入的区域人员分布分析条件。
[0131]
在一些可能的实现方式中,区域人分布分析条件可以是基于人员检测方法的应用场景或者待检测对象的具体类型设定的,包括:轨迹数据所在的时间段[(t1,t2)]、人脸拍摄数据对应的档案类型编码(entity_type_code)以及需要输出最终统计人次的前k个(top_k)人员数量。
[0132]
步骤s302,对抓拍到的待检测对象的轨迹数据,以天为粒度进行分片,得到多个时间元组的轨迹集合。
[0133]
在一些可能的实现方式中,多个时间元组的轨迹集合包括:
[0134]
[(idcard 1,entity_type_code 1,captured_time 1,devince_area_code 1),
[0135]
(idcard 2,entity_type_code 2,captured_time 1,devince_area_code 2),
[0136]
(idcard 3,entity_type_code 3,captured_time 1,devince_area_code 1),
[0137]
(idcard 4,entity_type_code 4,captured_time 1,devince_area_code 2),
[0138]
(idcard 5,entity_type_code 5,captured_time 1,devince_area_code 2),
[0139]
(idcard 1,entity_type_code 1,captured_time 2,devince_area_code 1),
[0140]
(idcard 2,entity_type_code 2,captured_time 2,devince_area_code 2),
[0141]
(idcard 3,entity_type_code 3,captured_time 2,devince_area_code 2),
[0142]
(idcard 4,entity_type_code 4,captured_time 2,devince_area_code 1),
[0143]
(idcard 5,entity_type_code 5,captured_time 2,devince_area_code 1),
[0144]
(idcard 5,entity_type_code 5,captured_time 3,devince_area_code 3),
[0145]
......];
[0146]
步骤s303,调用分布式计算框架,以执行信息查询任务。
[0147]
在一些可能的实现方式中,分布式计算框架可以是spark分布式,即采用spark分布式的计算框架,读取指定时间范围内的轨迹数据,进行信息查询。
[0148]
步骤s304,采用调用的分布式计算框架,对多个时间元组的轨迹集合分别按照档案id、档案类型编码以及预设区域的区划代码进行过滤,得到多个第二数据。
[0149]
步骤s305,采用人员的身份类型,对多个第二轨迹数据进行分组,得到多组身份轨迹数据;同时采用人员的来源区域,对多个第二轨迹数据进行分组,得到多组来源轨迹数据。
[0150]
在一些可能的实现方式中,每一组身份轨迹数据中包括:该人员对应的档案类型编码和档案标识,数据形式为{entity_type_code,[entity_id]}。
[0151]
每一组身份轨迹数据中包括:摄像头所在区划代码和档案标识,数据形式为{device_area_code,[entity_id]}。
[0152]
步骤s306,对多组身份轨迹数据和多组来源轨迹数据进行计数,输出前k个目标第一数量和前k个目标第二数量。
[0153]
在一些可能的实现方式中,步骤s306输出的数据包括:前k个目标第一数量和人员对应的档案类型编码,以及,前k个目标第二数量和人员对应的来源区域代码。
[0154]
在一个具体例子中,通过统计预设时间和预设空间区域采集到的人员的人脸图像数据,可以分析预设空间区域内的人员的身份类型和来源区域的分布情况,实现大量数据的行为数据分析。比如,某区域将在某段时间内举行娱乐活动,通过准实时分析该区域内的人员的分布情况,可以智能感知该区域内人员的来源和身份类型。
[0155]
在本技术实施例中,基于大规模轨迹信息的区域人员成分分析,能够支持海量数据的行为数据分析,具有高性能;而且基于分布式计算,具有高扩展性,能应对海量数据不断增长的场景。
[0156]
本技术实施例提供一种对象检测装置,图4为本技术实施例对象检测装置的结构
组成示意图,如图4所示,所述对象检测装置400包括:
[0157]
第一确定模块401,用于确定不同时空范围内的多个待检测对象的第一轨迹数据集合;
[0158]
第二确定模块402,用于在所述第一轨迹数据集合中,确定时空范围满足预设时空范围的至少一个第二轨迹数据;
[0159]
第三确定模块403,用于确定所述至少一个第二轨迹数据中的待检测对象的分布信息。
[0160]
在一些实施例中,所述第三确定模块403,包括:
[0161]
第一确定子模块,用于基于预设身份库,确定所述多个待检测对象的身份类型和来源区域;
[0162]
第二确定子模块,用于在所述至少一个第二轨迹数据中,确定每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量。
[0163]
在一些实施例中,所述第二确定子模块,包括:
[0164]
第一分组单元,用于基于所述多个待检测对象的身份类型,对所述至少一个第二轨迹数据进行分组,得到多组身份轨迹数据;
[0165]
第一确定单元,用于确定每一组身份轨迹数据中包括的待检测对象的数量,为所述第一数量。
[0166]
在一些实施例中,第二确定子模块,,包括:
[0167]
第二分组单元,用于基于所述多个待检测对象的来源区域,对所述至少一个第二轨迹数据进行分组,得到多组来源轨迹数据;
[0168]
第二确定单元,用于确定每一组来源轨迹数据中包括的待检测对象的数量,为所述第二数量。
[0169]
在一些实施例中,所述第一确定模块401,包括:
[0170]
第一获取子模块,用于获取所述多个待检测对象在所述不同时空范围内的图像数据;
[0171]
第三确定子模块,用于基于所述多个待检测对象的图像数据,确定包括每一待检测对象在所述不同时空范围内的轨迹的第一轨迹数据集合。
[0172]
在一些实施例中,所述第三确定子模块,包括:
[0173]
第一还原单元,用于将对应相同待检测对象的图像数据进行轨迹还原,得到多条轨迹;其中,每一条轨迹中的轨迹点属于同一待检测对象;
[0174]
第一标注单元,用于采用每一所述待检测对象的身份标识和身份类型,对每一所述待检测对象对应的轨迹进行标注,得到每一所述待检测对象的已标注轨迹;
[0175]
第三确定单元,用于基于所述多个待检测对象的已标注轨迹,确定所述第一轨迹数据集合。
[0176]
在一些实施例中,所述第一还原单元,还用于:将对应相同待检测对象的图像数据进行聚类,得到多类图像数据;其中,每一类图像数据属于同一待检测对象;将任一类图像数据中的每一帧图像数据作为轨迹点,形成所述任一类图像数据所属待检测对象的轨迹,以得到所述多条轨迹。
[0177]
在一些实施例中,所述时空范围包括:时间段和空间位置,所述第二确定模块402,
包括:
[0178]
第四确定子模块,用于在所述第一轨迹数据集合中,确定采集时间处于预设时间段内至少一个第三轨迹数据;
[0179]
第五确定子模块,用于在所述至少一个第三轨迹数据中,确定轨迹数据的图像采集设备的空间位置处于预设空间区域的所述至少一个第二轨迹数据。
[0180]
在一些实施例中,所述第四确定子模块,包括:
[0181]
第一划分单元,用于采用预设单位时长,对所述预设时间段进行划分,得到多个时间分片;
[0182]
第一拆分单元,用于基于所述多个时间分片,对所述至少一个第三轨迹数据进行拆分,得到每一时间分片对应的时间元组;其中,每一时间元组至少包括:每一所述元组中轨迹数据的采集时间、图像采集设备的空间位置、对应的待检测对象的身份标识和身份类型;
[0183]
第一读取单元,用于基于每一待检测对象的身份标识和身份类型,读取多个时间元组中的轨迹数据,得到所述至少一个第三轨迹数据。
[0184]
在一些实施例中,在所述分布信息包括每一身份类型的待检测对象的第一数量和每一来源区域的待检测对象的第二数量的情况下,所述装置还包括:
[0185]
第四确定模块,用于在多个身份类型对应的第一数量和多个来源区域对应的第二数量中,分别确定数量值在前n个的目标第一数量和目标第二数量;其中,n为大于等于1的整数;
[0186]
第一输出模块,用于输出所述目标第一数量以及所述目标第一数量对应的身份类型,和所述目标第二数量以及所述目标第二数量对应的来源区域。
[0187]
需要说明的是,以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0188]
需要说明的是,本技术实施例中,如果以软件功能模块的形式实现上述的对象检测方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是终端、服务器等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、运动硬盘、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本技术实施例不限制于任何特定的硬件和软件结合。
[0189]
对应地,本技术实施例再提供一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,该计算机可执行指令被执行后,能够实现本技术实施例提供的对象检测方法中的步骤。
[0190]
本技术实施例再提供一种计算机存储介质,所述计算机存储介质上存储有计算机可执行指令,所述该计算机可执行指令被处理器执行时实现上述实施例提供的对象检测方法的步骤。
[0191]
本技术实施例提供一种计算机设备,图5为本技术实施例计算机设备的组成结构
示意图,如图5所示,所述计算机设备500包括:一个处理器501、至少一个通信总线、通信接口502、至少一个外部通信接口和存储器503。其中,通信接口502配置为实现这些组件之间的连接通信。其中,通信接口502可以包括显示屏,外部通信接口可以包括标准的有线接口和无线接口。其中所述处理器501,配置为执行存储器中图像处理程序,以实现上述实施例提供的对象检测方法的步骤。
[0192]
以上对象检测装置、计算机设备和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同相应方法实施例相似的技术描述和有益效果,限于篇幅,可案件上述方法实施例的记载,故在此不再赘述。对于本技术对象检测装置、计算机设备和存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0193]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0194]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0195]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0196]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0197]
另外,在本技术各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。
[0198]
或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施
例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1