目标匹配方法、停留时长的确定方法、装置和计算机设备与流程

文档序号:29631264发布日期:2022-04-13 15:59阅读:124来源:国知局
目标匹配方法、停留时长的确定方法、装置和计算机设备与流程

1.本技术涉及图像处理技术领域,特别是涉及一种目标匹配方法、停留时长的确定方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.随着计算机视觉技术的发展,出现了目标匹配技术。目标匹配技术是基于检测对象间的对象图像,通过比较图像相似度来将检测对象进行匹配。目标匹配技术可应用于客流统计、交通调度等领域。
3.传统的目标匹配方法中,以客流统计领域为例,在客流统计领域中通常会在店铺门口上方安装一个摄像机,在检测到顾客时,开始采集顾客的图像。根据采集到的顾客在不同时刻的图像,可确定顾客在不同时刻的轨迹点,从而得到顾客轨迹,实现对目标的跟踪。若顾客轨迹是从店铺区域外进入店铺区域,则认为顾客进店,反之为顾客出店。其中,顾客进店时的图像对应有进店顾客标识,顾客出店时的图像对应有出店顾客标识。通过计算顾客进店时的图像与顾客出店时的图像间的相似度,将相似度高的图像所对应的进店顾客标识和出店顾客标识进行匹配。
4.但是,在传统技术中,存在因对象遮挡等原因导致图像中的对象误检,导致同一对象在进域时对应一个进域对象标识,在出域时却对应另一个出域对象标识,即同一对象的进域对象标识和出域对象标识不同,导致该对象的进域对象标识和出域对象标识无法成功匹配,因此目标匹配的准确性较低。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种能够提高目标匹配准确性的目标匹配方法、停留时长的确定方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
6.第一方面,本技术提供了一种目标匹配方法。所述方法包括:
7.获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,所述第一对象标识与所述第二对象标识是不同的;
8.将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,所述目标第一对象标识对应第一图像匹配有所述参考第二图像;
9.针对每个目标第一对象标识,获取所述至少一帧参考第二图像对应的参考第二对象标识,根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,其中,所述匹配次数为所述参考第二对象标识对应的参考第二图像的帧数。
10.在其中一个实施例中,所述参考第二对象标识为多个;
11.所述根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,包括:
12.根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,选取所述匹配次数最多的参考第二对象标识,确定为与所述目标第一对象标识相匹配的目标第二对象标识。
13.在其中一个实施例中,所述参考第二对象标识为多个;
14.所述根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,包括:
15.若每个参考第二对象标识与所述目标第一对象标识的匹配次数相等,则分别根据所述目标第一对象标识对应的多帧第一图像和所述每个参考第二对象标识对应的多帧第二图像,计算图像相似度;根据所述图像相似度,确定与所述目标第一对象标识相匹配的目标第二对象标识;
16.和/或,
17.若每个参考第二对象标识与所述目标第一对象标识的匹配次数相等,则从所述参考第二对象标识中,将与其他第一对象标识未匹配的参考第二对象标识,确定为与所述目标第一对象标识相匹配的目标第二对象标识。
18.在其中一个实施例中,所述将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,包括:
19.根据所有第一对象标识对应的多帧第一图像和所有第二对象标识对应的多帧第二图像,构建第一图像与第二图像之间的二分图;
20.在所述二分图中的各第一图像依次与第二图像匹配时,通过寻找增广路径以使所述二分图构成最大匹配;
21.在所述二分图的最大匹配结果中,确定每个目标第一对象标识对应的至少一帧参考第二图像。
22.在其中一个实施例中,所述获取每个待匹配的第一对象标识对应的多帧第一图像,包括:
23.获取每个待匹配的第一对象标识对应的第一对象轨迹;在所述第一对象轨迹中,以预设时段间隔提取多个第一对象轨迹点;将所述多个第一对象轨迹点对应的第一对象标识的多帧对象图像,确定为每个待匹配的第一对象标识对应的多帧第一图像;
24.和/或,
25.所述获取每个待匹配的第二对象标识对应的多帧第二图像,包括:
26.获取每个待匹配的第二对象标识对应的第二对象轨迹;在所述第二对象轨迹中,以预设时段间隔提取多个第二对象轨迹点;将所述多个第二对象轨迹点对应的第二对象标识的多帧对象图像,确定为每个待匹配的第二对象标识对应的多帧第二图像。
27.第二方面,本技术还提供了一种停留时长的确定方法。所述方法包括:
28.获取每个待匹配的进域对象标识对应的多帧进域图像,以及获取每个待匹配的出域对象标识对应的多帧出域图像,其中,所述进域对象标识与所述出域对象标识是不同的;
29.将所述多帧进域图像与所述多帧出域图像进行匹配,得到每个目标进域对象标识对应的至少一帧参考出域图像,其中,所述目标进域对象标识对应进域图像匹配有所述参考出域图像;
30.针对每个目标进域对象标识,获取所述至少一帧参考出域图像对应的参考出域对
象标识,根据所述参考出域对象标识与所述目标进域对象标识的匹配次数,确定与所述目标进域对象标识相匹配的目标出域对象标识,其中,所述匹配次数为所述参考出域对象标识对应的参考出域图像的帧数;
31.针对每个目标进域对象标识,根据所述目标进域对象标识对应的进域时间和所述目标出域对象标识对应的出域时间,确定所述目标进域对象标识对应的停留时长。
32.第三方面,本技术还提供了一种目标匹配装置。所述装置包括:
33.图像获取模块,用于获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,所述第一对象标识与所述第二对象标识是不同的;
34.图像匹配模块,用于将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,所述目标第一对象标识对应第一图像匹配有所述参考第二图像;
35.标识确定模块,用于针对每个目标第一对象标识,获取所述至少一帧参考第二图像对应的参考第二对象标识,根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,其中,所述匹配次数为所述参考第二对象标识对应的参考第二图像的帧数。
36.第四方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
37.获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,所述第一对象标识与所述第二对象标识是不同的;
38.将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,所述目标第一对象标识对应第一图像匹配有所述参考第二图像;
39.针对每个目标第一对象标识,获取所述至少一帧参考第二图像对应的参考第二对象标识,根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,其中,所述匹配次数为所述参考第二对象标识对应的参考第二图像的帧数。
40.第五方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
41.获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,所述第一对象标识与所述第二对象标识是不同的;
42.将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,所述目标第一对象标识对应第一图像匹配有所述参考第二图像;
43.针对每个目标第一对象标识,获取所述至少一帧参考第二图像对应的参考第二对象标识,根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,其中,所述匹配次数为所述参考第二对象标识对应的参考第二图像的帧数。
44.第六方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算
机程序,该计算机程序被处理器执行时实现以下步骤:
45.获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,所述第一对象标识与所述第二对象标识是不同的;
46.将所述多帧第一图像与所述多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,所述目标第一对象标识对应第一图像匹配有所述参考第二图像;
47.针对每个目标第一对象标识,获取所述至少一帧参考第二图像对应的参考第二对象标识,根据所述参考第二对象标识与所述目标第一对象标识的匹配次数,从所述参考第二对象标识中,确定与所述目标第一对象标识相匹配的目标第二对象标识,其中,所述匹配次数为所述参考第二对象标识对应的参考第二图像的帧数。
48.上述目标匹配方法、停留时长的确定方法、装置、计算机设备、存储介质和计算机程序产品,针对待匹配的标识不同的第一对象标识和第二对象标识,将第一对象标识对应的多帧第一图像和第二对象标识对应的多帧第二图像进行图像匹配,获得存在匹配结果的每个目标第一对象标识对应的至少一帧参考第二图像,然后针对每个目标第一对象标识,根据至少一帧参考第二图像对应的参考第二对象标识与目标第一对象标识的匹配次数,从参考第二对象标识中确定与目标第一对象标识相匹配的目标第二对象标识。该匹配次数为参考第二对象标识对应的参考第二图像的帧数。本技术采用误检测对象的第一对象标识对应的多帧第一图像和第二对象标识对应的多帧第二图像间的匹配,可提高图像匹配的容错率,有利于提高图像匹配的准确性,后续再基于图像匹配结果确定的参考第二对象标识与目标第一对象标识的匹配次数,来确定与目标第一对象标识相匹配的目标第二对象标识,可将误检测对象不同的第一对象标识和第二对象标识成功匹配,从而提高目标匹配的准确性。
附图说明
49.图1为一个实施例中目标匹配方法的流程示意图;
50.图2为一个实施例中目标匹配方法的应用环境图;
51.图3为一个实施例中停留时长的确定方法的流程示意图;
52.图4为一个实施例中停留时长的确定装置的结构框图;
53.图5为一个实施例中计算机设备的内部结构图。
具体实施方式
54.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
55.在一个实施例中,如图1所示,提供了一种目标匹配方法,以该方法应用于服务器为例进行说明,包括以下步骤:
56.步骤s201,获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,第一对象标识与第二对象标识是不同的;
57.步骤s203,将多帧第一图像与多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,目标第一对象标识对应第一图像匹配有参考第二图像;
58.步骤s205,针对每个目标第一对象标识,获取至少一帧参考第二图像对应的参考第二对象标识,根据参考第二对象标识与目标第一对象标识的匹配次数,从参考第二对象标识中,确定与目标第一对象标识相匹配的目标第二对象标识,其中,匹配次数为参考第二对象标识对应的参考第二图像的帧数。
59.上述目标匹配方法中,针对待匹配的标识不同的第一对象标识和第二对象标识,将第一对象标识对应的多帧第一图像和第二对象标识对应的多帧第二图像进行图像匹配,获得存在匹配结果的每个目标第一对象标识对应的至少一帧参考第二图像,然后针对每个目标第一对象标识,根据至少一帧参考第二图像对应的参考第二对象标识与目标第一对象标识的匹配次数,从参考第二对象标识中确定与目标第一对象标识相匹配的目标第二对象标识。该匹配次数为参考第二对象标识对应的参考第二图像的帧数。本技术采用误检测对象的第一对象标识对应的多帧第一图像和第二对象标识对应的多帧第二图像间的匹配,可提高图像匹配的容错率,有利于提高图像匹配的准确性,后续再基于图像匹配结果确定的参考第二对象标识与目标第一对象标识的匹配次数,来确定与目标第一对象标识相匹配的目标第二对象标识,可将误检测对象不同的第一对象标识和第二对象标识成功匹配,从而提高目标匹配的准确性。
60.请参阅图2,以本技术实施例提供的目标匹配方法应用于客流统计的应用场景为例介绍其实现过程。在本示例中,第一对象标识为进域对象标识,第一图像为进域图像,第二对象标识为出域对象标识,第二图像为出域图像。
61.具体地,在图2所示的应用环境中,图像采集设备102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。具体地,图像采集设备102采集每个进域对象标识对应的多帧进域图像并上传至服务器104,以及采集每个出域对象标识对应的多帧出域图像并上传至服务器104。服务器104先将多帧进域图像与多帧出域图像进行匹配,得到每个目标进域对象标识对应的至少一帧参考出域图像,然后针对每个目标进域对象标识,根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,确定与目标进域对象标识相匹配的目标出域对象标识。进一步地,针对每个目标进域对象标识,根据目标进域对象标识对应的进域时间和目标出域对象标识对应的出域时间,确定目标进域对象标识对应的停留时长。其中,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
62.在一个实施例中,如图3所示,提供了一种停留时长的确定方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
63.步骤s202,获取每个进域对象标识对应的多帧进域图像,以及获取每个出域对象标识对应的多帧出域图像。
64.其中,进域对象标识与出域对象标识是不同的。进域可以理解成从第一区域进入第二区域,反之,出域就是从第二区域进入第一区域。例如,进域可以是从店铺外进入店铺内,那么出域就是从店铺内出去到店铺外。当然,进域也可以是从店铺内进入店铺外,那么
出域就是从店铺外进入店铺内。进域对象标识是指从第一区域进入第二区域的对象的标识,该标识用于区分不同的进域对象。出域对象标识是指从第二区域进入第一区域的对象的标识,该标识用于区分不同的出域对象。对象可以是人、车辆等等。
65.具体地,服务器获取每个进域对象标识对应的多帧进域图像,以及获取每个出域对象标识对应的多帧出域图像。可选地,利用图像采集设备采集每个进域对象标识对应的多帧进域图像并上传至服务器,以及采集每个出域对象标识对应的多帧出域图像并上传至服务器。
66.步骤s204,将多帧进域图像与多帧出域图像进行匹配,得到每个目标进域对象标识对应的至少一帧参考出域图像。
67.其中,其中,目标进域对象标识对应进域图像匹配有参考第二图像。至少一帧参考出域图像与每个目标进域对象标识对应的多帧进域图像中的部分进域图像或全部进域图像相匹配。
68.具体地,假设进域对象标识包括a和b,进域对象标识a对应的多帧进域图像包括a1,a2和a3,进域对象标识b对应的多帧进域图像包括b1,b2和b3。出域对象标识包括a、b和c,出域对象标识a对应的多帧出域图像包括a1,a2和a3,出域对象标识b对应的多帧出域图像包括b1,b2和b3,出域对象标识c对应的多帧出域图像包括c1,c2和c3。服务器将a1,a2,a3,b1,b2,b3与a1,a2,a3,b1,b2,b3,c1,c2,c3进行图像匹配,匹配结果可能是a1-a2,a2-a1,a3-a3,b1-b3,b2-b1,b3-c1,由此可知,进域对象标识a对应的多帧参考出域图像为a2,a1和a3,进域对象标识b对应的多帧参考出域图像为b3,b1和c1,即进域对象标识a和进域对象标识b都为目标进域对象标识。可以理解,匹配结果也可以是其他的匹配结果。匹配方式可以是基于图像特征的相似度进行匹配。另外,不同的进域图像可以匹配不同的出域图像,也可以匹配相同的出域图像。
69.步骤s206,针对每个目标进域对象标识,根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,从参考出域对象标识中,确定与目标进域对象标识相匹配的目标出域对象标识。
70.其中,匹配次数是指在最终的图像匹配结果中,基于匹配成功的至少一帧参考出域图像对应的出域对象标识,统计各出域对象标识与目标进域对象标识的匹配成功次数。匹配次数等于参考出域对象标识对应的参考出域图像的帧数。匹配次数的具体确定方式可以是:先确定至少一帧参考出域图像对应的参考出域对象标识,然后统计参考出域对象标识对应的参考出域图像的帧数,并将该帧数确定为参考出域对象标识与目标进域对象标识的匹配次数。
71.具体地,续举前例,针对目标进域对象标识a,匹配有参考出域图像a2,a1和a3,对应匹配出域对象标识a,且出域对象标识a的匹配次数为3次。针对目标进域对象标识b,匹配有参考出域图像b3,b1和c1,对应匹配出域对象标识b和c,其中出域对象标识b的匹配次数为2次,出域对象标识c的匹配次数为1次。在一个实施例中,服务器将匹配次数最多的出域对象标识,确定为与目标进域对象标识相匹配的目标出域对象标识,即服务器将出域对象标识a,确定为与目标进域对象标识a相匹配的目标出域对象标识,服务器将出域对象标识b,确定为与目标进域对象标识b相匹配的目标出域对象标识。
72.步骤s208,针对每个目标进域对象标识,根据目标进域对象标识对应的进域时间
和目标出域对象标识对应的出域时间,确定目标进域对象标识对应的停留时长。
73.具体地,由于目标进域对象标识与目标出域对象标识是相匹配的,因此目标进域对象标识与目标出域对象标识应是同一个对象的标识,进而采用目标出域对象标识对应的出域时间减去目标进域对象标识对应的进域时间,得到目标进域对象标识对应的停留时长。可选地,进域时间可基于进域对象标识对应的进域轨迹确定(例如进域轨迹与第二区域的首次重合点所对应的时间),出域时间可基于目标出域对象标识对应的出域轨迹确定(例如出域轨迹与第一区域的首次重合点所对应的时间)。
74.上述停留时长的确定方法中,针对同一个对象的进域对象标识与出域对象标识因误检测导致不同的情形,获取该情形下每个进域对象标识对应的多帧进域图像,以及获取该情形下每个出域对象标识对应的多帧出域图像,然后通过多帧进域图像和多帧出域图像之间的图像匹配,确定与每个进域对象标识对应的多帧进域图像中的部分或全部相匹配的至少一帧参考出域图像,之后通过统计至少一帧参考出域图像对应的参考出域对象标识与进域对象标识的匹配次数,确定与每个进域对象标识相匹配的目标出域对象标识,即确定了进域对象标识与目标出域对象标识是同一个对象的对象标识,最后根据进域对象标识对应的进域时间和目标出域对象标识对应的出域时间,确定进域对象标识对应的停留时长。可以理解,本方法采用误检测对象的进域对象标识对应的多帧进域图像和出域对象标识对应的多帧出域图像匹配,可提高图像匹配的容错率,有利于提高图像匹配的准确性,由此可将误检测对象不同的进域对象标识和出域对象标识成功匹配,进而可确定误检测对象的进域时间和出域时间,有利于提高所确定的停留时长的准确性。
75.在一个实施例中,涉及上述步骤s206中“根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,确定与目标进域对象标识相匹配的目标出域对象标识”的一种可能的实现方式。在上述实施例的基础上,步骤s206具体可以通过以下步骤实现:
76.步骤s2062,根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,在至少一帧参考出域图像对应的参考出域对象标识中,选取匹配次数最多的参考出域对象标识,确定为与目标进域对象标识相匹配的目标出域对象标识。
77.具体地,服务器统计至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,例如前例中目标进域对象标识b匹配有参考出域图像b3,b1和c1,对应的参考出域对象标识为b和c,其中参考出域对象标识b与目标进域对象标识b的匹配次数为2次(即b3和b1的帧数),参考出域对象标识c与目标进域对象标识b的匹配次数为1次(即c1的帧数)。进而服务器将参考出域对象标识b,确定为与目标进域对象标识b相匹配的目标出域对象标识。
78.本实施例中,选取与目标进域对象标识匹配次数最多的参考出域对象标识作为与目标进域对象标识相匹配的目标出域对象标识,即选取相似度最高的参考出域对象标识作为与目标进域对象标识相匹配的目标出域对象标识,有利于提高标识匹配的准确性,进而提高所确定的停留时长的准确性。
79.在一个实施例中,涉及上述步骤s206中“根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,确定与目标进域对象标识相匹配的目标出域对象标识”的一种可能的实现方式。在上述实施例的基础上,步骤s206具体可以通过以下
步骤实现:
80.步骤s2064,若至少一帧参考出域图像对应的每一参考出域对象标识与目标进域对象标识的匹配次数相等,则分别根据目标进域对象标识对应的多帧进域图像和每一参考出域对象标识对应的多帧出域图像,计算图像相似度;
81.步骤s2066,根据图像相似度,确定与目标进域对象标识相匹配的目标出域对象标识。
82.具体地,续举前例,假设服务器将a1,a2,a3,b1,b2,b3与a1,a2,a3,b1,b2,b3,c1,c2,c3进行图像匹配,匹配结果是a1-c1,a2-a1,a3-a3,b1-a2,b2-b1,b3-c1。此时,由上述实施例可知,与目标进域对象标识a相匹配的目标出域对象标识为a。但是,针对目标进域对象标识b,匹配有参考出域图像a2,b1和c1,对应的参考出域对象标识a、b和c,其中参考出域对象标识a、b和c与目标进域对象标识b的匹配次数都是1次。
83.在此情形下,服务器根据目标进域对象标识b对应的多帧进域图像b1,b2和b3和参考出域对象标识a对应的多帧出域图像a1,a2和a3,计算图像相似度s1;根据目标进域对象标识b对应的多帧进域图像b1,b2和b3和参考出域对象标识b对应的多帧出域图像b1,b2和b3,计算图像相似度s2;根据目标进域对象标识b对应的多帧进域图像b1,b2和b3和参考出域对象标识c对应的多帧出域图像c1,c2和c3,计算图像相似度s3。
84.进而服务器根据图像相似度s1,s2和s3,确定与目标进域对象标识相匹配的目标出域对象标识。可选地,服务器选取图像相似度最高的参考出域对象标识,确定为与目标进域对象标识相匹配的目标出域对象标识。可选地,服务器选取图像相似度次高的参考出域对象标识,确定为与目标进域对象标识相匹配的目标出域对象标识。
85.可选地,在一个实施例中,以参考出域对象标识a为例,根据目标进域对象标识对应的多帧进域图像和每一出域对象标识对应的多帧出域图像,计算图像相似度,具体实现方式可以是:服务器分别提取多帧进域图像b1,b2和b3的图像特征,并求取这些图像特征的均值,得到进域图像特征。并且,服务器还分别提取多帧出域图像a1,a2和a3的图像特征,并求取这些图像特征的均值,得到出域图像特征。然后服务器根据进域图像特征和出域图像特征计算图像相似度s1,例如,采用cosin计算进域图像特征和出域图像特征的图像相似度s1。当然,也可以先根据b1,b2和b3的图像特征以及a1,a2和a3的图像特征两两计算得到3个初始相似度,然后求取3个初始相似度的均值,得到图像相似度s1。
86.本实施例中,在每个目标进域对象标识对应的各参考出域对象标识的匹配次数相等时,通过计算这些参考出域对象标识对应的多帧出域图像与目标进域对象标识对应的多帧进域图像的相似度,进而根据该图像相似度确定目标出域对象标识,即采用多种判断方式的组合来确定目标出域对象标识,有利于提高标识匹配的准确性,进而提高所确定的停留时长的准确性。
87.在一个实施例中,涉及上述步骤s206中“根据至少一帧参考出域图像对应的参考出域对象标识与目标进域对象标识的匹配次数,确定与目标进域对象标识相匹配的目标出域对象标识”的一种可能的实现方式。在上述实施例的基础上,步骤s206具体可以通过以下步骤实现:
88.步骤s2068,若至少一帧参考出域图像对应的每一参考出域对象标识与目标进域对象标识的匹配次数相等,则在至少一帧参考出域图像对应的参考出域对象标识中,将与
其他进域对象标识未匹配的参考出域对象标识,确定为与目标进域对象标识相匹配的目标出域对象标识。
89.具体地,假设目标进域对象标识包括a和b,目标进域对象标识a对应的多帧进域图像包括a1和a2,目标进域对象标识b对应的多帧进域图像包括b1和b2。出域对象标识包括a和b,出域对象标识a对应的多帧出域图像包括a1和a2,出域对象标识b对应的多帧出域图像包括b1和b2。服务器将a1,a2,b1,b2与a1,a2,b1,b2进行图像匹配,匹配结果可能是a1-b1,a2-a1,b1-b1,b2-b2。此时,由上述实施例可知,与目标进域对象标识b相匹配的目标出域对象标识为b。但是,针对目标进域对象标识a,匹配有参考出域图像b1和a1,对应的参考出域对象标识b和a,其中参考出域对象标识b和a与目标进域对象标识a的匹配次数都是1次。在此情形下,由于参考出域对象标识b已经与目标进域对象标识b相匹配,那么服务器会将未匹配的参考出域对象标识a,作为与目标进域对象标识a相匹配的目标出域对象标识。
90.在一个实施例中,涉及上述步骤s204中“将多帧进域图像与多帧出域图像进行匹配,得到每个目标进域对象标识对应的至少一帧参考出域图像”的一种可能的实现方式。在上述实施例的基础上,步骤s204具体可以通过以下步骤实现:
91.步骤s2042,根据所有进域对象标识对应的多帧进域图像和所有出域对象标识对应的多帧出域图像,构建进域图像与出域图像之间的二分图;
92.步骤s2044,在二分图中的各进域图像依次与出域图像匹配时,通过寻找增广路径以使二分图构成最大匹配;
93.步骤s2046,在二分图的最大匹配结果中,确定每个目标进域对象标识对应的多帧至少一帧出域图像。
94.其中,增广路径:从一个未匹配点出发,走交替路径,如果途径另一个未匹配点(出发的点不算),则这条交替路径称为增广路径。交替路径:从一个未匹配点出发,依次经过非匹配边、匹配边、非匹配边

形成的路径称为交替路径。
95.具体地,服务器根据所有进域对象标识对应的多帧进域图像和所有出域对象标识对应的多帧出域图像,构建进域图像与出域图像之间的二分图,其中,二分图的左边为进域图像集合,二分图的右边为出域图像集合。然后,服务器从左边进域图像集合的第1个顶点(即进域图像)开始,在右边出域图像集合中挑选未匹配点(即出域图像)进行搜索,寻找增广路径,具体而言:假设多帧进域图像为1,2,3和4,多帧出域图像为5,6,7和8。服务器首先从1开始匹配一直到4,遍历5~8,扩展第一个增广路径为(1-》5),然后从2开始匹配,5是匹配点,于是找5的匹配点1,发现一条增广路径(2-》5-》1-》7),则修改匹配,得到(2-》5)(1-》7),之后以此类推,使得二分图构成最大匹配。最后,服务器在二分图的最大匹配结果中,确定每个目标进域对象标识对应的至少一帧参考出域图像。
96.本实施例中,通过寻找增广路径以使二分图构成最大匹配,可找到更多的进域图像与出域图像的匹配结果,有利于提高图像匹配的准确性,进而提高所确定的停留时长的准确性。
97.在一个实施例中,涉及上述步骤s202中“获取每个进域对象标识对应的多帧进域图像,以及获取每个出域对象标识对应的多帧出域图像”的一种可能的实现方式。在上述实施例的基础上,步骤s202具体可以通过以下步骤实现:
98.步骤s2022,基于每个进域对象标识对应的进域对象轨迹,获取以预设时间段间隔
采集的不同时刻下的轨迹点对应的多帧进域图像;
99.步骤s2024,基于每个出域对象标识对应的出域对象轨迹,获取以预设时间段间隔采集的不同时刻下的轨迹点对应的多帧出域图像。
100.具体地,服务器获取图像采集装置上传的每个进域对象标识对应的以预设时间间隔采集的不同时刻下的轨迹点所对应的多帧进域图像,以及每个出域对象标识对应的以预设时间间隔采集的不同时刻下的轨迹点所对应的多帧出域图像。可选地,多帧进域图像中进域图像间的相似度小于或等于相似度阈值。多帧出域图像中出域图像间的相似度小于或等于相似度阈值。
101.本实施例中,采用进域对象标识对应的多帧区别度较大的进域图像和出域对象标识对应的多帧区别度较大的出域图像间的匹配,可提高图像匹配的容错率,有利于提高图像匹配的准确性,进而提高所确定的停留时长的准确性。
102.下面结合一个具体的应用场景来介绍本技术的一个实施例,该方法包括如下步骤:
103.步骤s212,在每个店铺的门口安装一个摄像机照着该店铺,并标注这个摄像机画面中的店铺区域,对应于第二区域,用多边形画出。对应的店铺外区域为第一区域。
104.步骤s214,对每天录制完的一整天的视频利用目标跟踪技术处理得到这一天中所有的人的轨迹。一段轨迹对应一个用户标识,一个顾客或人可能有一个用户标识,或多个用户标识,取决于当时画面的复杂度。
105.步骤s216,对每段轨迹(或者说每个用户标识)计算是否存在跨入店铺区域或跨出店铺区域,若存在则得到该用户标识的进店时间和出店时间。
106.步骤s218,所有进店和出店的事件包括:
107.a、具有同一个用户标识的进店和出店,这些是比较完整的事件可以直接计算出逛店的停留时长,即出店时间减去进店时间;
108.b、一些用户标识只有进店,没有出店,即进域对象标识;
109.c、一些用户标识只有出店,没有进店,即出域对象标识;
110.步骤s220,对于上述的b和c两种情况,假设有m个只有进店的进域对象标识(或者说是事件),n个只有出店的出域对象标识,m和n可能不相等,造成m和n不相等的原因可能是某些进出店事件的误检测或漏检测。若不相等则取m和n的最小值作为最终匹配的进出店对数。多余的事件则丢弃,无法统计逛店的停留时长。假设某个进域对象标识只有进店,但是在只有出店的那些事件确实存在某个出域对象标识的事件和他其实是同一个人,或是某个出店的出域对象标识对应事件在只有进店的那些进域对象标识对应的事件中存在某个事件和他是同一个人,则通过匈牙利算法利用这些进域对象标识和出域对象标识对应的人的图片视觉相似度来把他们匹配起来,得到哪些进出店的用户标识是同一个人从而来算出逛店时长。使用匈牙利算法匹配的目的是为了尽量减少误配,来算得正确的逛店的停留时长。
111.具体操作过程如下:
112.1)用在imagenet上面预训练好的resnet50网络当作图片特征提取器,提取每个进域对象标识和出域对象标识所对应的人的图片的特征,特征是一维的向量,长度2048。由于目标跟踪得到的是某个进域对象标识或出域对象标识一系列的检测框的图像,所以也可以对这些检测框图像都取特征后再求均值当作最后的特性向量;
113.2)用cosin求取每两个特征向量之间的相似度,所以m个进店和n个出店的用户标识可以算得m*n的相似度矩阵;
114.3)假设m和n的最小值是k,用匈牙利算法可以对相似度矩阵最优匹配得到k个进店和k个出店的k对用户标识,进而计算他们的逛店时长;
115.4)若m和n不相等,丢弃没有被配到的事件。
116.本实施例中,利用目标跟踪技术得到同一个顾客进店和出店的时间信息,从而算出该顾客的逛店时长,而对于一些因为跟踪效果不好导致的无法配对的进出店事件或用户标识,采用匈牙利算法来匹配可以减少误配,从而算得正确的逛店时间。
117.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
118.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的停留时长的确定方法的停留时长的确定装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个停留时长的确定装置实施例中的具体限定可以参见上文中对于停留时长的确定方法的限定,在此不再赘述。
119.在一个实施例中,如图4所示,提供了一种停留时长的确定装置,包括:图像获取模块302、图像匹配模块304和标识确定模块306,其中:
120.图像获取模块302,用于获取每个待匹配的第一对象标识对应的多帧第一图像,以及获取每个待匹配的第二对象标识对应的多帧第二图像,其中,第一对象标识与第二对象标识是不同的;
121.图像匹配模块304,用于将多帧第一图像与多帧第二图像进行匹配,得到每个目标第一对象标识对应的至少一帧参考第二图像,其中,目标第一对象标识对应第一图像匹配有参考第二图像;
122.标识确定模块306,用于针对每个目标第一对象标识,获取至少一帧参考第二图像对应的参考第二对象标识,根据参考第二对象标识与目标第一对象标识的匹配次数,从参考第二对象标识中,确定与目标第一对象标识相匹配的目标第二对象标识,其中,匹配次数为参考第二对象标识对应的参考第二图像的帧数。
123.在一个实施例中,标识确定模块306具体用于根据参考第二对象标识与目标第一对象标识的匹配次数,从参考第二对象标识中,选取匹配次数最多的参考第二对象标识,确定为与目标第一对象标识相匹配的目标第二对象标识。
124.在一个实施例中,标识确定模块306具体用于若每个参考第二对象标识与目标第一对象标识的匹配次数相等,则分别根据目标第一对象标识对应的多帧第一图像和每个参考第二对象标识对应的多帧第二图像,计算图像相似度;根据图像相似度,确定与目标第一对象标识相匹配的目标第二对象标识。
125.在一个实施例中,标识确定模块306具体用于若每个参考第二对象标识与目标第
一对象标识的匹配次数相等,则从参考第二对象标识中,将与其他第一对象标识未匹配的参考第二对象标识,确定为与目标第一对象标识相匹配的目标第二对象标识。
126.在一个实施例中,图像匹配模块304具体用于根据所有第一对象标识对应的多帧第一图像和所有第二对象标识对应的多帧第二图像,构建第一图像与第二图像之间的二分图;在二分图中的各第一图像依次与第二图像匹配时,通过寻找增广路径以使二分图构成最大匹配;在二分图的最大匹配结果中,确定每个目标第一对象标识对应的至少一帧参考第二图像。
127.在一个实施例中,图像获取模块302具体用于获取每个待匹配的第一对象标识对应的第一对象轨迹;在第一对象轨迹中,以预设时段间隔提取多个第一对象轨迹点;将多个第一对象轨迹点对应的第一对象标识的多帧对象图像,确定为每个待匹配的第一对象标识对应的多帧第一图像;和/或,获取每个待匹配的第二对象标识对应的第二对象轨迹;在第二对象轨迹中,以预设时段间隔提取多个第二对象轨迹点;将多个第二对象轨迹点对应的第二对象标识的多帧对象图像,确定为每个待匹配的第二对象标识对应的多帧第二图像。
128.上述停留时长的确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
129.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种停留时长的确定方法。
130.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
131.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
132.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
133.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
134.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
135.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括
非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
136.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
137.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1