掌桥专利:专业的专利平台
掌桥专利
首页

目标对象跟踪方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 19:28:50


目标对象跟踪方法、装置、电子设备及存储介质

技术领域

本申请涉及计算机视觉技术领域,具体涉及一种目标对象跟踪方法、装置、电子设备及计算机可读存储介质。

背景技术

在一些场景下,通常对目标对象进行实时跟踪,但是,由于一个摄像头的拍摄范围有限,通常需要采用多个摄像头对目标对象进行跟踪。如通常需要实现对车辆的跨摄像头跟踪,比如在仓库中跟踪叉车、在地下停车场中跟踪车辆等等。

然而,实时性是跨摄像头跟踪方法的一个要点也是难点,当今的跨摄像头跟踪方法很难实时且准确地跟踪多个摄像头下的目标对象,比如,本申请的发明人在实际应用过程中发现,由于大量的摄像头会采集大量的图像数据,大量图像数据处理将会导致目标对象的跟踪实时性较低,从而难以满足业务场景对目标对象跟踪实时性的需求。

发明内容

本申请提供一种目标对象跟踪方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术中目标对象的跨摄像头跟踪实时性较低的问题。

第一方面,本申请提供一种目标对象跟踪方法,所述方法包括:

检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象;

检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象;

若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头;

获取所述多个检测摄像头在预设时段内拍摄的图像集合;

基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

在本申请一种可能的实现方式中,所述图像集合包括所述多个检测摄像头中第一摄像头拍摄的第一图像以及第二摄像头拍摄的第二图像;

所述基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹,包括:

获取所述目标特定对象在所述第一图像中的第一像素位置;

基于所述第一像素位置和预设的第一位置转换关系,确定所述目标特定对象在所述第一图像拍摄时的第一轨迹位置;

获取所述目标特定对象在所述第二图像中的第二像素位置;

基于所述第二像素位置和预设的第二位置转换关系,确定所述目标特定对象在所述第二图像拍摄时的第二轨迹位置;

基于所述第一轨迹位置和所述第二轨迹位置,确定所述目标运动轨迹。

在本申请一种可能的实现方式中,所述第一图像包括第T帧图像和第T-1帧图像;

所述获取所述目标特定对象在所述第一图像中的第一像素位置,包括:

获取所述目标特定对象在所述第T-1帧图像中的目标检测框;

根据所述目标检测框,预测所述目标特定对象在所述第T帧图像中的预测检测框;

对所述第T帧图像进行特定对象检测,得到所述第T帧图像的各第一对象检测框;

基于所述各第一对象检测框和所述预测检测框,确定所述目标特定对象在所述第T帧图像中的像素位置,以作为所述第一像素位置。

在本申请一种可能的实现方式中,所述基于所述各第一对象检测框和所述预测检测框,确定所述目标对象在所述第T帧图像中的像素位置,以作为所述第一像素位置,包括:

获取所述各第一对象检测框和所述预测检测框之间的相似度;

基于所述相似度,从所述各第一对象检测框中,获取与所述预测检测框匹配的目标第一对象检测框;

将所述目标第一对象检测框的像素位置作为所述第一像素位置。

在本申请一种可能的实现方式中,所述获取所述目标特定对象在所述第二图像中的第二像素位置,还包括:

获取所述目标特定对象在所述第一图像拍摄时的第一速度方向;

对所述第二图像进行特定对象检测,得到所述第二图像的各第二对象检测框;

获取所述各第二对象检测框中的特定对象在所述第二图像拍摄时的第二速度方向;

从所述各第二对象检测框中,获取对应的所述第一速度方向与所述第二速度方向匹配的目标第二对象检测框;

将所述目标第二对象检测框的像素位置作为所述第二像素位置。

在本申请一种可能的实现方式中,所述基于所述第一轨迹位置和所述第二轨迹位置,确定所述目标运动轨迹之后,还包括:

获取所述第一图像和所述第二图像之间的拍摄时间间隔;

基于所述目标运动轨迹,确定所述目标特定对象在所述拍摄时间间隔内的运动距离;

基于所述运动距离和所述拍摄时间间隔,确定所述目标特定对象的运动速度。

在本申请一种可能的实现方式中,所述基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹之后,还包括:

在预设显示终端上显示所述目标特定对象在所述跟踪区域内的目标运动轨迹。

在本申请一种可能的实现方式中,所述关闭所述第i个摄像头之后,还包括:

检测在所述同一时间点之后所述第二拍摄区域是否存在特定对象;

当检测到在所述同一时间点之后所述第二拍摄区域存在特定对象时,重新开启所述第i个摄像头。第二方面,本申请提供一种目标对象跟踪装置,所述目标对象跟踪装置包括:

检测单元,用于检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象;

所述检测单元,还用于检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象;

开闭单元,用于若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头;

获取单元,用于获取所述多个检测摄像头在预设时段内拍摄的图像集合;

跟踪单元,用于基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

第三方面,本申请还提供一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行本申请提供的任一种目标对象跟踪方法中的步骤。

第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的目标对象跟踪方法中的步骤。

本申请中,第一方面,由于特定对象并不一定会一直出现在多个检测摄像头的第i个摄像头的拍摄区域内,通过在同一时间点内第i个摄像头的第一拍摄区域、以及第i个摄像头的相邻摄像头的第二拍摄区域均不存在特定对象时,关闭第i个摄像头,在保证可以准确跟踪的基础上,使得图像集合内的图像数量可以极大地减少,进而可以减少后续图像数据处理量,从而提高多个摄像头场景下目标对象的位置的确定实时性,进而满足跟踪目标对象的实时性需求。第二方面,由于在确定是否关闭第i个摄像头时,无需准确地检测是否存在目标特定对象,只需粗略地检测第一拍摄区域和第二拍摄区域是否存在特定对象,即可关闭第i个摄像头,因此可以在一定程度上可以减少关闭摄像头时检测算法的复杂度,从而减少目标对象跟踪过程的算法复杂度,提高了数据处理速度,进而提高了目标对象的跨摄像头跟踪实时性,满足业务场景的实时性需求。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例所提供的目标对象跟踪系统的场景示意图;

图2是本申请实施例提供的目标对象跟踪方法的一种流程示意图;

图3是本申请实施例中提供的跟踪区域布设多个检测摄像头的一种说明示意图;

图4是本申请实施例中提供的相邻两个检测摄像头的布设示意图;

图5是本申请实施例中提供目标特定对象在某一检测摄像头的拍摄区域内的局部运动轨迹的一种说明示意图;

图6是本申请实施例中提供的目标特定对象在多个检测摄像头的拍摄区域间的运动轨迹的一种说明示意图;

图7是本申请实施例中提供的目标对象跟踪装置的一个实施例结构示意图;

图8是本申请实施例中提供的电子设备的一个实施例结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请实施例的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

为了使本领域任何技术人员能够实现和使用本申请,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本申请。在其它实例中,不会对公知的过程进行详细阐述,以避免不必要的细节使本申请实施例的描述变得晦涩。因此,本申请并非旨在限于所示的实施例,而是与符合本申请实施例所公开的原理和特征的最广范围相一致。

本申请实施例目标对象跟踪方法的执行主体可以为本申请实施例提供的目标对象跟踪装置,或者集成了该目标对象跟踪装置的服务器设备、物理主机或者用户设备(UserEquipment,UE)等不同类型的电子设备,其中,目标对象跟踪装置可以采用硬件或者软件的方式实现,UE具体可以为智能手机、平板电脑、笔记本电脑、掌上电脑、台式电脑或者个人数字助理(Personal Digital Assistant,PDA)等终端设备。

该电子设备可以采用单独运行的工作方式,或者也可以采用设备集群的工作方式。

参见图1,图1是本申请实施例所提供的目标对象跟踪系统的场景示意图。其中,该目标对象跟踪系统可以包括电子设备100,电子设备100中集成有目标对象跟踪装置。例如,该电子设备可以检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象;检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象;若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头;获取所述多个检测摄像头在预设时段内拍摄的图像集合;基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

另外,如图1所示,该目标对象跟踪系统还可以包括存储器200,用于存储数据,如存储图像数据、视频数据。

需要说明的是,图1所示的目标对象跟踪系统的场景示意图仅仅是一个示例,本申请实施例描述的目标对象跟踪系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着目标对象跟踪系统的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。

下面,开始介绍本申请实施例提供的目标对象跟踪方法,本申请实施例中以电子设备作为执行主体,为了简化与便于描述,后续方法实施例中将省略该执行主体,该目标对象跟踪方法包括:检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象;检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象;若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头;获取所述多个检测摄像头在预设时段内拍摄的图像集合;基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

参照图2,图2是本申请实施例提供的目标对象跟踪方法的一种流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。该目标对象跟踪方法包括步骤201~205,其中:

201、检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象。

其中,跟踪区域是指待监控区域,例如,仓库、地下停车库等。

特定对象是指待跟踪的对象,特定对象可以是人、动物或物体;例如,在地下停车库车辆跟踪场景下,特定对象可以是车辆;又如,在仓库行人跟踪场景下,特定对象可以是行人。可以理解的是,随着业务场景的不同,特定对象可以适应性的变化,不以此处为限。

在本申请实施例中,跟踪区域布设有多个检测摄像头,跟踪区域中的每个检测摄像头分别用于监测不同的区域,每个检测摄像头的监测区域具体为其对应的拍摄区域。如图3所示,跟踪区域包括区域1、2和3,跟踪区域布设有3检测摄像头(摄像头1、2、3),摄像头1、2、3的拍摄区域分别为区域1、2、3。

其中,摄像头可根据预设的拍摄方式拍摄图像,例如可设置拍摄高度、拍摄方向或者拍摄距离,其具体拍摄方式可根据摄像头本身进行调节,具体在此不做限定。

其中,第一拍摄区域是指第i个摄像头的拍摄区域。

第i个摄像头是跟踪区域内多个检测摄像头中已开启的各检测摄像头。其中,1≤i≤N,N为跟踪区域内布设的检测摄像头的数量。

步骤201中,检测第一拍摄区域是否存在特定对象的方式有多种,示例性地,包括:

(1)通过已训练的特定对象检测模型,对第i个摄像头拍摄的图像进行特定对象检测,确定第一拍摄区域是否存在特定对象。特定对象检测模型在后文中详细介绍,此处不再赘述。

(2)将第i个摄像头拍摄的图像与包含特定对象的预设参考图像进行对比,确定第一拍摄区域是否存在特定对象。

202、检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象。

其中,第二拍摄区域是指第i个摄像头的相邻摄像头的拍摄区域。

在本申请实施例中,两个检测摄像头相邻是指其中一个检测摄像头的拍摄区域与另一检测摄像头的拍摄区域相邻。

如图4所示,图4是本申请实施例中提供的相邻两个检测摄像头的布设示意图。如图4中(a)所示,相邻两个检测摄像头的拍摄区域可以直接毗邻。进一步地,如图4中(b)所示,相邻两个检测摄像头的拍摄区域也可以存在部分重叠。

步骤202中,检测第二拍摄区域是否存在特定对象的方式与上述步骤201类似,可以参照上述步骤201的具体说明,为简化表述,此处不再赘述。

203、若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头。

例如,如图4所示,摄像头2的拍摄区域为第一拍摄区域,则摄像头2的相邻摄像头为摄像头1、摄像头1的拍摄区域为第二拍摄区域。若在10:00摄像头2的拍摄区域、摄像头1的拍摄区域内均不存在特定对象,则关闭摄像头1。

又如,如图3所示,摄像头2的拍摄区域为第一拍摄区域,则摄像头2的相邻摄像头为摄像头1和3、摄像头1的拍摄区域和摄像头3的拍摄区域为第二拍摄区域。若在10:00摄像头2的拍摄区域、摄像头1的拍摄区域和摄像头3的拍摄区域内均不存在特定对象,则关闭摄像头2。

进一步地,为避免摄像头的频繁开闭,造成过大的计算量,可以在同一时间点内第一拍摄区域和第二拍摄区域均不存在特定对象、且第一拍摄区域和第二拍摄区域均不存在特定对象的持续时长大于预设持续时长时,再关闭第i个摄像头。

进一步地,为了避免跟踪区域内的摄像头全部为关闭状态,无法正常跟踪特定对象的问题,对于某些拍摄区域的检测摄像头(例如对应拍摄区域与非跟踪区域相邻的检测摄像头)保持为常开状态,无需执行步骤201~203中关闭摄像头的处理操作;即多个检测摄像头中已开启的第i个摄像头具体为对应拍摄区域与非跟踪区域相邻的检测摄像头。例如,在停车场中,入场摄像头保持为常开状态,以避免入场摄像头关闭后,由于算法逻辑导致在车辆驶入前将所有摄像头均关闭,无法正常判定是否有车辆驶入。

进一步地,为了保证跟踪区域内摄像头的正常工作,以保证目标对象的正常跟踪。在关闭所述第i个摄像头之后,还包括:检测在所述同一时间点之后所述第二拍摄区域是否存在特定对象;当检测到在所述同一时间点之后所述第二拍摄区域存在特定对象时,重新开启所述第i个摄像头。以避免第i个摄像头关闭后不再工作,当特定对象出现在第一拍摄区域时,无法正常检测到特定对象,从而无法对特定对象进行正常的跟踪。通过

其中,“检测在所述同一时间点之后所述第二拍摄区域是否存在特定对象”的方式,与“检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象”的方式类似,为简化表述,此处不再赘述。

204、获取所述多个检测摄像头在预设时段内拍摄的图像集合。

图像集合是指多个检测摄像头中的每个摄像头在预设时段内拍摄的图像的集合。

具体地,在预设时段内,跟踪区域的多个检测摄像头中已开启的摄像头可以按照一定拍摄时间间隔拍摄图像,将各检测摄像头拍摄到图像加入图像集合中,以供后续分析。

由于在预设时段内,多个检测摄像头并不一定会完全开启、每个检测摄像头的开启时间也不一定会持续整个预设时段。故而,通过上述步骤201~步骤203方式关闭检测摄像头,使得步骤203中获取的图像集合内的图像数量可以极大地减少,进而可以减少后续图像数据处理量,从而提高多个摄像头场景下特定对象的位置的确定实时性,进而满足跟踪特定对象的实时性需求。

205、基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

其中,目标特定对象是指定跟踪的特定对象。例如,地下停车库的多个车辆中,目标特定对象是车牌号为“A123”的车辆。

步骤205中,确定目标特定对象在跟踪区域内的目标运动轨迹的方式有多种,示例性地,包括:

(1)在一些实施例中,图像集合中包括同一检测摄像头拍摄到的包含目标特定对象的多帧图像,此时,“目标运动轨迹”具体可以是目标特定对象在该检测摄像头的拍摄区域内的局部运动轨迹。目标运动轨迹是目标特定对象在某检测摄像头的拍摄区域内的局部运动轨迹时,可以参照后文(如步骤A1~步骤A4、步骤A41~步骤A44)及图5的相关介绍,为简化表述,此处不再赘述。

(2)在一些实施例中,图像集合中包括多个检测摄像头分别拍摄到的包含目标特定对象的多帧图像,此时,“目标运动轨迹”具体可以是目标特定对象在多个检测摄像头的拍摄区域间的目标运动轨迹。目标运动轨迹是目标特定对象在多个检测摄像头的拍摄区域间的目标运动轨迹时,可以参照后文(如步骤2051~2055)及图6的相关介绍,为简化表述,此处不再赘述。

(3)在一些实施例中,可以同时结合(1)中目标特定对象在该检测摄像头的拍摄区域内的局部运动轨迹、(2)中目标特定对象在多个检测摄像头的拍摄区域间的运动轨迹,作为目标特定对象在跟踪区域内的目标运动轨迹。

第一方面,在同一时间点内第一拍摄区域和第二拍摄区域均不存在特定对象时,通过关闭第i个摄像头,使得在预设时段内,多个检测摄像头并不一定会完全开启、每个检测摄像头的开启时间也不一定会持续整个预设时段;从而在保证可以准确跟踪的基础上,使得图像集合内的图像数量可以极大地减少,进而可以减少后续图像数据处理量,从而提高多个摄像头场景下目标对象的位置的确定实时性,即提高目标对象的跨摄像头跟踪实时性,进而满足跟踪目标对象的实时性需求。

第二方面,由于在步骤201~步骤202中,无需准确地检测是否存在目标特定对象,只需要粗略地检测是否存在特定对象,在步骤205中才需详细地检测出目标特定对象,因此可以在一定程度上可以减少步骤201~~步骤202特定对象的检测算法复杂度,从而减少目标对象跟踪过程的算法复杂度,提高了数据处理速度,进而提高了目标对象跟踪的实时性,满足业务场景的实时性需求。

第三方面,本申请发明人在“在同一时间点内第i个摄像头的第一拍摄区域、以及第i个摄像头的相邻摄像头的第二拍摄区域均不存在目标特定对象,则关闭第i个摄像头,以减少后续数据处理量,进而提高跨摄像头跟踪的实时性”设想下,却发现跨摄像头跟踪的实时性提高不明显。通过发明人的进一步探索发现原因如下:由于特定对象(如车辆与车辆之间)的相似度较高,且与目标特定对象相似度较高的其他特定对象也会出现在跟踪区域内,若需针对目标特定对象进行跟踪,对算法的检测精度要求较高。因此,判定是否关闭摄像头时,对目标特定对象的检测算法较为复杂、且需要判定的图像数据量相对较大,因此会导致整个目标对象跟踪算法的复杂度较高,进而导致实时性提高不明显。本申请实施例中,通过检测特定对象、而非目标特定对象,是否均为出现第一拍摄区域和第二拍摄区域,来判定是否关闭第i个摄像头,可以很大程度上减少算法复杂度,进而提高了数据处理速度,进而提高了目标对象跟踪的实时性,满足业务场景的实时性需求。

进一步地,为了使得跟踪区域的相关管理者在不需要实访跟踪区域的情况下,也可以理解到目标特定对象在跟踪区域内的运动轨迹,以便于对跟踪区域的管理,如安全管理等。在确定目标运动轨迹之后,还可以在预设显示终端上显示所述目标特定对象在所述跟踪区域内的目标运动轨迹。其中,预设显示终端可以是手机、电脑、电视等,具体可以根据实际业务需求而应用,此处对预设显示终端的具体表现形式不做限制。

在一些实施例中,由于目标特定对象在预设时段内由一个检测摄像头的拍摄区域运动到了另一个检测摄像头的拍摄区域,为了准确地跟踪目标特定对象,需要结合各检测摄像头定位到目的特定对象的位置确定目标特定对象的目标运动轨迹。此时,图像集合包括多个检测摄像头中第一摄像头拍摄的第一图像以及第二摄像头拍摄的第二图像,步骤205具体可以包括如下步骤2051~步骤2055:

2051、获取所述目标特定对象在所述第一图像中的第一像素位置。

其中,第一图像是指图像集合的各图像中,包含目标特定对象的图像。

其中,第一像素位置是指目标特定对象在第一图像中的像素位置。

本申请实施例中,以第二图像的拍摄时间滞后于第一图像的拍摄时间为例,即第一摄像头比第二摄像头先拍摄到目标特定对象为例,说明目标特定对象在跟踪区域内的目标运动轨迹。

步骤2051中,获取第一像素位置的方式有多种,示例性地,包括:

(1)首先,通过已训练的特定对象检测模型,对第一图像进行特定对象检测,得到第一图像中包含特定对象的各检测框。然后,将第一图像中包含特定对象的各检测框区域与包含目标特定对象的预设参考图像进行对比;从第一图像中包含特定对象的各检测框中,获取检测框区域与预设参考图像的相似度最大、且与预设参考图像的相似度大于预设相似度阈值的检测框,以作为目标特定对象在第一图像中的实际检测框。最后,可以将目标特定对象在第一图像中的实际检测框区域作为第一像素位置。

(2)第一图像包括多个图像,如包括第T帧图像和第T-1帧图像。此时,可以通过(1)中方式先检测出目标特定对象在第T-1帧图像中的实际检测框;再基于目标特定对象在第T-1帧图像中的实际检测框,预测出目标特定对象在第T帧图像中的预测检测框;并将预测检测框与第T帧图像中的各第一对象检测框进行匹配,以查找出目标特定对象在第T帧图像中的像素位置。此时,步骤2051具体可以包括如下步骤A1~步骤A4:

A1、获取所述目标特定对象在所述第T-1帧图像中的目标检测框。

其中,目标检测框是指目标特定对象在第T-1帧图像中的实际检测框。

第T帧图像的拍摄时间滞后于第T-1帧图像的拍摄时间。

在一些实施例中,可以通过已训练的特定对象检测模型,对第T-1帧图像进行特定对象检测,得到第T-1帧图像中包含特定对象的各检测框。然后,将第T-1帧图像中包含特定对象的各检测框区域与包含目标特定对象的预设参考图像进行对比;从第T-1帧图像中包含特定对象的各检测框中,获取检测框区域与预设参考图像的相似度最大、且与预设参考图像的相似度大于预设相似度阈值的检测框,以作为目标特定对象在第T-1帧图像中的目标检测框。

在另一些实施例中,可以将步骤A1~步骤A4中的“第T-1帧图像”替换为“第T-2帧图像”、将“第T帧图像”替换为“第T-1帧图像”,通过步骤A1~步骤A4的方式,获取目标特定对象在第T-1帧图像中的目标检测框。

A2、根据所述目标检测框,预测所述目标特定对象在所述第T帧图像中的预测检测框。

其中,预测检测框是指通过根据目标特定对象在第T-1帧图像中的目标检测框预测得到、目标特定对象在第T帧图像中的检测框。

示例性地,在一些实施例中,可以通过卡尔曼滤波器,根据目标特定对象在第T-1帧图像中的目标检测框,预测目标特定对象在第T帧图像中的预测检测框。

卡尔曼滤波器(Kalman filtering)是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。通过卡尔曼滤波器可以高效地预测目标特定对象在第T帧图像中可能出现的位置,从而可以得到目标特定对象在第T帧图像中的预测检测框。

A3、对所述第T帧图像进行特定对象检测,得到所述第T帧图像的各第一对象检测框。

其中,第一对象检测框是指第T帧图像中包含特定对象的检测框。

示例性地,可以通过已训练的特定对象检测模型,对第T帧图像进行特定对象检测,得到第T帧图像中包含特定对象的各第一对象检测框。

A4、基于所述各第一对象检测框和所述预测检测框,确定所述目标特定对象在所述第T帧图像中的像素位置,以作为所述第一像素位置。

理论上,第一摄像头拍摄的第一图像包括多个图像,任意两个拍摄时间相邻的图像均为:拍摄时间在前的第T-1帧图像和拍摄时间在后的第T帧图像。因此,第一图像可以包括多组第T-1帧图像与第T帧图像。本申请实施例中,以其中一组为例进行说明。

进一步地,为了提高目标特定对象在第一摄像头运动至第二摄像头期间的运动轨迹的衔接性,以提高目标运动轨迹的准确性,第T帧图像为第一摄像头拍摄的第一图像(第一图像包括多个图像)中,检测到目标特定对象的最后一帧图像。

为了从各第一对象检测框中准确地查找出目标特定对象的实际检测框,会将各第一对象检测框分别与预测检测框进行匹配,从中查找出与预测检测框匹配度最高的第一对象检测框作为目标特定对象的实际检测框;并将查找出的目标特定对象的实际检测框区域所在像素,作为目标特定在第T帧图像中的像素位置。此时步骤A4具体可以包括如下步骤A41~A43:

A41、获取所述各第一对象检测框和所述预测检测框之间的相似度。

步骤A41中,获取各第一对象检测框和预测检测框之间的相似度的方式有多种,例如,可以计算各第一对象检测框和预测检测框之间的IoU距离矩阵,作为各第一对象检测框和预测检测框之间的相似度。

A42、基于所述相似度,从所述各第一对象检测框中,获取与所述预测检测框匹配的目标第一对象检测框。

其中,目标第一对象检测框是指通过与预测检测框进行匹配得到的、目标特定对象在第T帧图像中的实际检测框。

示例性地,从各第一对象检测框中,查找出与预测检测框的相似度最大、且与预测检测框的相似度大于预设阈值的第一对象检测框,作为与预测检测框匹配的目标第一对象检测框。

A43、将所述目标第一对象检测框的像素位置作为所述第一像素位置。

示例性地,步骤A41~A43具体实现可以如下:首先,计算各第一对象检测框和预测检测框之间的IoU距离矩阵;然后,通过匈牙利算法,根据IoU距离矩阵,将各第一对象检测框与预测检测框进行匹配,从各第一对象检测框中确定出与预测检测框匹配的目标第一对象检测框;最后,将目标第一对象检测框的像素位置作为第一像素位置。

进一步地,为了使得后续确定目标运动轨迹更贴合实际,可以将同一检测摄像头拍摄(包含目标特定对象)的多个图像中,先后两帧中目标特定对象的实际检测框对应的跟踪区域的坐标位置连接起来,形成目标特定对象在该检测摄像头的拍摄区域内的局部运动轨迹。如图5所示,图5是本申请实施例中提供目标特定对象在某一检测摄像头的拍摄区域内的局部运动轨迹的一种说明示意图,例如,第一摄像头拍摄的第T帧图像中目标特定对象的实际检测框为目标检测框、第一摄像头拍摄的第T-1帧图像中目标特定对象的实际检测框为目标第一对象检测框,目标检测框对应的跟踪区域的坐标位置为图5中的“位置1”、目标第一对象检测框对应的跟踪区域的坐标位置为图5中的“位置2”,将位置1和位置2连接起来,即可形成目标特定对象在第一摄像头的拍摄区域内的局部运动轨迹。

2052、基于所述第一像素位置和预设的第一位置转换关系,确定所述目标特定对象在所述第一图像拍摄时的第一轨迹位置。

其中,第一轨迹位置是指根据目标特定对象在第一图像中的第一像素位置确定的、目标特定对象在跟踪区域内的坐标位置。

其中,第一位置转换关系是预设的、用于指示第一摄像头拍摄的图像(如第一图像)中各像素位置与跟踪区域内各坐标位置之间的关系,具体是用于指示第一像素位置与跟踪区域内各坐标位置之间的关系。

示例性地,跟踪区域内的各点可以通过世界坐标系来表示,步骤2052中,当确定第一像素位置时,根据第一像素位置和第一位置转换关系,即可确定目标特定对象在跟踪区域内的第一坐标位置,以作为目标特定对象在第一图像拍摄时的第一轨迹位置。

一般来说,为了准确地进行特定对象的跟踪,当跟踪区域内的各检测摄像头布设好后,各检测摄像头对应的拍摄区域已经固定、且各检测摄像头拍摄的图像中各像素位置与跟踪区域的各坐标位置存在一一对应关系。当确定出现特定对象的检测摄像头后,即可确定特定对象出现的区域位置;并通过特定对象在图像的像素位置,即可精准地确定特定对象在跟踪区域内出现的详细坐标位置。

2053、获取所述目标特定对象在所述第二图像中的第二像素位置。

其中,第二图像是指图像集合的各图像中,包含目标特定对象的图像。第一图像和第二图像的区别在于:第一图像和第二图像是通过不同的检测摄像头拍摄得到的,第一图像是通过多个检测摄像头中的第一摄像头拍摄得到、第二图像是通过多个检测摄像头中的第二摄像头拍摄得到。

其中,第二像素位置是指目标特定对象在第二图像中的像素位置。

在一些实施例中,可以采用与步骤2051类似的方式,获取第二像素位置。

在另一些实施例中,第一图像和第二图像之间的拍摄时间间隔小于预设阈值,因此目标特定对象在第一图像拍摄时的速度方向与在第二图像拍摄时的速度方向接近。为了更精准、快速地匹配出第二图像中的目标特定对象,可以从第二图像检测到的各特定对象中,获取速度方向与目标特定对象在第一图像拍摄时的速度方向匹配的特定对象,作为目标特定对象;再获取目标特定对象在第二图像中的像素位置。此时,步骤2053具体可以包括如下步骤B1~步骤B5:

B1、获取所述目标特定对象在所述第一图像拍摄时的第一速度方向。

其中,第一速度方向是指目标特定对象在第一图像拍摄时的速度方向。

示例性地,第一图像可以包括多个图像,可以基于第一图像包括的多个图像中目标特定对象的位置变化,确定第一速度方向。

B2、对所述第二图像进行特定对象检测,得到所述第二图像的各第二对象检测框。

其中,第二对象检测框是指第二图像中包含特定对象的检测框。

示例性地,可以通过本申请实施例中提供的已训练的特定对象检测模型,对第二图像进行特定对象检测,得到第二图像中的各第二对象检测框。

B3、获取所述各第二对象检测框中的特定对象在所述第二图像拍摄时的第二速度方向。

第二速度方向是指目标特定对象在第二图像拍摄时的速度方向。

示例性地,第二图像也可以包括多个图像,基于第二图像包括的多个图像中目标特定对象的位置变化,确定第二速度方向。

B4、从所述各第二对象检测框中,获取对应的所述第一速度方向与所述第二速度方向匹配的目标第二对象检测框。

其中,目标第二对象检测框是指通过匹配得到的、目标特定对象在第二图像中的实际检测框。

在一些实施例中,步骤B4中,可以通过对比第一速度方向与第二速度方向,并从各第二对象检测框中,获取对应的第一速度方向与第二速度方向之间偏差最小的第二对象检测框,作为对应的第一速度方向与第二速度方向匹配的目标第二对象检测框。

在一些实施例中,步骤B4具体可以包括:计算第一速度方向和第二速度方向之间的目标速度方向角;通过匈牙利算法,根据各第一速度方向与第二速度方向之间的目标速度方向角,将各特定对象与目标特定对象进行匹配,从各特定对象中确定出与目标特定对象匹配的目标第二对象检测框。

其中,第一速度方向和第二速度方向之间的目标速度方向角可以通过如下公式(1)计算得到:

公式(1)中,distance表示目标速度方向角、v1表示第一速度方向、v2表示第二速度方向,abs()表示绝对值。

B5、将所述目标第二对象检测框的像素位置作为所述第二像素位置。

2054、基于所述第二像素位置和预设的第二位置转换关系,确定所述目标特定对象在所述第二图像拍摄时的第二轨迹位置。

其中,第二位置转换关系是预设的、用于指示第二摄像头拍摄的图像(如第二图像)中各像素位置与跟踪区域内各坐标位置之间的关系,具体是用于指示第二像素位置与跟踪区域内各坐标位置之间的关系。

示例性地,跟踪区域内的各点可以通过世界坐标系来表示,步骤2054中,当确定第二像素位置时,根据第二像素位置和第二位置转换关系,即可确定目标特定对象在跟踪区域内的第二坐标位置,以作为目标特定对象在第二图像拍摄时的第二轨迹位置。

2055、基于所述第一轨迹位置和所述第二轨迹位置,确定所述目标运动轨迹。

在一些实施例中,第一摄像头和第二摄像头为相邻的两个摄像头,可以将第二轨迹位置与第一轨迹位置连接起来形成的轨迹线,作为目标特定对象在跟踪区域内的目标运动轨迹。

步骤2021~步骤2055中,以跟踪区域内检测到目标特定对象的两个检测摄像头(第一摄像头和第二摄像头)为例,说明了目标特定对象的目标运动轨迹的确定,实际上跟踪区域内包含了多个检测摄像头,会有一个、两个、或者两个以上的检测摄像头可以检测到目标特定对象。

进一步地,还可以上述步骤2021~步骤2055的方式,将依次拍摄到目标特定对象的检测摄像头所拍摄图像确定的轨迹位置,依次连接起来从而形成目标特定对象在多个检测摄像头的拍摄区域间的运动轨迹,以作为目标运动轨迹。其中,可以依据上述第一轨迹位置的确定方式或第二轨迹位置的确定方式,根据每个检测摄像头所拍摄图像,确定目标特定对象在跟踪区域的轨迹位置。

如图6所示,图6是本申请实施例中提供的目标特定对象在多个检测摄像头的拍摄区域间的运动轨迹的一种说明示意图。例如,图像集合中包括了先后拍摄的图像1、2、3、4,图像1、2、3、4对应的检测摄像头分别为摄像头1、2、3、4,依据图像1、2、3、4确定目标特定对象在跟踪区域的轨迹位置分别为位置1、2、3、4依次连接起来,即可形成目标特定对象在摄像头1、2、3、4的拍摄区域间的运动轨迹,以作为目标特定对象在跟踪区域内的目标运动轨迹。

进一步地,本申请实施例中还可以确定目标特定对象在跟踪区域内的运动距离和运动速度。具体地,在一些实施例中,可以通过如下步骤C2确定目标特定对象在跟踪区域内的运动距离、通过如下步骤C1~C3确定目标特定对象在跟踪区域内的运动速度:

C1、获取所述第一图像和所述第二图像之间的拍摄时间间隔。

其中,拍摄时间间隔是指拍摄第一图像与拍摄第二图像的间隔时长。

示例性地,首先,分别获取第一图像的拍摄时间和第二图像的拍摄时间;然后根据第一图像的拍摄时间和第二图像的拍摄时间,计算第一图像和第二图像之间的拍摄时间间隔。

C2、基于所述目标运动轨迹,确定所述目标特定对象在所述拍摄时间间隔内的运动距离。

其中,运动距离是指目标特定对象从第一轨迹位置运动至第二轨迹位置的距离。

C3、基于所述运动距离和所述拍摄时间间隔,确定所述目标特定对象的运动速度。

其中,运动速度是指目标特定对象从第一轨迹位置运动至第二轨迹位置的速度。

具体地,可以将运动距离与拍摄时间间隔之商,作为目标特定对象的运动速度。

本申请实施例中,特定对象检测模型可以通过如下步骤训练得到:

1、构建初步的特定对象检测网络。

例如,可以采用模型参数为默认值的(可用于检测任务)开源网络(如YOLOv3网络)作为初步的特定对象检测网络,初步的特定对象检测网络可以包括特征提取模块和预测模块。其中,特征提取模块用于对样本图像进行特征提取得到样本图像的图像特征,预测模块用于基于样本图像的图像特征进行预测,得到样本图像包含的特定对象所在区域。

2、获取训练数据集。

其中,训练数据集包含多个样本图像,一部分样本图像可以是包含特定对象的图像,一部分样本图像可以是不包含特定对象的图像。训练数据集中每个样本进行了标注,标注信息包括特定对象实际的区域检测框和类别。

3、以样本的标注信息作为监督,采用训练数据集对初步的特定对象检测网络进行训练,直至初步的特定对象检测网络收敛时,得到训练后的特定对象检测网络。此时,可将训练好的特定对象检测网络应用于检测出图像中的特定对象所在区域。

其中,训练后的特定对象检测网络可以充分学习特定对象所在区域与图像特征之间关系,从而可以精确地检测出图像中特定对象所在区域的检测框。

其中,特定对象检测网络的训练过程与现有的网络模型的训练过程类似,对于没有详细说明的训练过程,可以参照现有网络模型的训练方式,在此不再赘述。

为了更好实施本申请实施例中目标对象跟踪方法,在目标对象跟踪方法基础之上,本申请实施例中还提供一种目标对象跟踪装置,如图7所示,为本申请实施例中目标对象跟踪装置的一个实施例结构示意图,该目标对象跟踪装置700包括:

检测单元701,用于检测跟踪区域内多个检测摄像头中已开启的第i个摄像头的第一拍摄区域是否存在特定对象;

所述检测单元701,还用于检测所述第i个摄像头的相邻摄像头的第二拍摄区域是否存在特定对象;

开闭单元702,用于若在同一时间点内所述第一拍摄区域和所述第二拍摄区域均不存在特定对象,则关闭所述第i个摄像头;

获取单元703,用于获取所述多个检测摄像头在预设时段内拍摄的图像集合;

跟踪单元704,用于基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹。

在本申请的一些实施例中,所述图像集合包括所述多个检测摄像头中第一摄像头拍摄的第一图像以及第二摄像头拍摄的第二图像,所述跟踪单元704具体用于:

获取所述目标特定对象在所述第一图像中的第一像素位置;

基于所述第一像素位置和预设的第一位置转换关系,确定所述目标特定对象在所述第一图像拍摄时的第一轨迹位置;

获取所述目标特定对象在所述第二图像中的第二像素位置;

基于所述第二像素位置和预设的第二位置转换关系,确定所述目标特定对象在所述第二图像拍摄时的第二轨迹位置;

基于所述第一轨迹位置和所述第二轨迹位置,确定所述目标运动轨迹。

在本申请的一些实施例中,所述第一图像包括第T帧图像和第T-1帧图像,所述跟踪单元704具体用于:

获取所述目标特定对象在所述第T-1帧图像中的目标检测框;

根据所述目标检测框,预测所述目标特定对象在所述第T帧图像中的预测检测框;

对所述第T帧图像进行特定对象检测,得到所述第T帧图像的各第一对象检测框;

基于所述各第一对象检测框和所述预测检测框,确定所述目标特定对象在所述第T帧图像中的像素位置,以作为所述第一像素位置。

在本申请的一些实施例中,所述跟踪单元704具体用于:

获取所述各第一对象检测框和所述预测检测框之间的相似度;

基于所述相似度,从所述各第一对象检测框中,获取与所述预测检测框匹配的目标第一对象检测框;

将所述目标第一对象检测框的像素位置作为所述第一像素位置。

在本申请的一些实施例中,所述获取所述目标特定对象在所述第二图像中的第二像素位置,所述跟踪单元704具体用于:

获取所述目标特定对象在所述第一图像拍摄时的第一速度方向;

对所述第二图像进行特定对象检测,得到所述第二图像的各第二对象检测框;

获取所述各第二对象检测框中的特定对象在所述第二图像拍摄时的第二速度方向;

从所述各第二对象检测框中,获取对应的所述第一速度方向与所述第二速度方向匹配的目标第二对象检测框;

将所述目标第二对象检测框的像素位置作为所述第二像素位置。

在本申请的一些实施例中,在所述基于所述第一轨迹位置和所述第二轨迹位置,确定所述目标运动轨迹的步骤之后,所述跟踪单元704具体用于:

获取所述第一图像和所述第二图像之间的拍摄时间间隔;

基于所述目标运动轨迹,确定所述目标特定对象在所述拍摄时间间隔内的运动距离;

基于所述运动距离和所述拍摄时间间隔,确定所述目标特定对象的运动速度。

在本申请的一些实施例中,在所述基于所述图像集合进行检测,确定目标特定对象在所述跟踪区域内的目标运动轨迹的步骤之后,所述目标对象跟踪装置还包括显示单元(图中未示出),所述显示单元具体用于:

在预设显示终端上显示所述目标特定对象在所述跟踪区域内的目标运动轨迹。

在本申请的一些实施例中,在所述关闭所述第i个摄像头的步骤之后,所述开闭单元702具体用于:

检测在所述同一时间点之后所述第二拍摄区域是否存在特定对象;

当检测到在所述同一时间点之后所述第二拍摄区域存在特定对象时,重新开启所述第i个摄像头。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

由于该目标对象跟踪装置可以执行本申请如图1至图6对应任意实施例中目标对象跟踪方法中的步骤,因此,可以实现本申请如图1至图6对应任意实施例中目标对象跟踪方法所能实现的有益效果,详见前面的说明,在此不再赘述。

此外,为了更好实施本申请实施例中目标对象跟踪方法,在目标对象跟踪方法基础之上,本申请实施例还提供一种电子设备,参阅图8,图8示出了本申请实施例电子设备的一种结构示意图,具体的,本申请实施例提供的电子设备包括处理器801,处理器801用于执行存储器802中存储的计算机程序时实现如图1至图6对应任意实施例中目标对象跟踪方法的各步骤;或者,处理器801用于执行存储器802中存储的计算机程序时实现如图7对应实施例中各单元的功能。

示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器802中,并由处理器801执行,以完成本申请实施例。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机装置中的执行过程。

电子设备可包括,但不仅限于处理器801、存储器802。本领域技术人员可以理解,示意仅仅是电子设备的示例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如电子备还可以包括输入输出设备、网络接入设备、总线等,处理器801、存储器802、输入输出设备以及网络接入设备等通过总线相连。

处理器801可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分。

存储器802可用于存储计算机程序和/或模块,处理器801通过运行或执行存储在存储器802内的计算机程序和/或模块,以及调用存储在存储器802内的数据,实现计算机装置的各种功能。存储器802可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、视频数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的目标对象跟踪装置、电子设备及其相应单元的具体工作过程,可以参考如图1至图6对应任意实施例中目标对象跟踪方法的说明,具体在此不再赘述。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请如图1至图6对应任意实施例中目标对象跟踪方法中的步骤,具体操作可参考如图1至图6对应任意实施例中目标对象跟踪方法的说明,在此不再赘述。

其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。

由于该计算机可读存储介质中所存储的指令,可以执行本申请如图1至图6对应任意实施例中目标对象跟踪方法中的步骤,因此,可以实现本申请如图1至图6对应任意实施例中目标对象跟踪方法所能实现的有益效果,详见前面的说明,在此不再赘述。

以上对本申请实施例所提供的一种目标对象跟踪方法、装置、电子设备及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

技术分类

06120115926192