目标跟踪方法和装置、电子设备、计算机可读存储介质与流程

文档序号:29971521发布日期:2022-05-11 11:33阅读:107来源:国知局
目标跟踪方法和装置、电子设备、计算机可读存储介质与流程

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


背景技术:

2.随着现代生活水平的不断提高,计算机技术和图像识别技术已逐步应用于各个领域中。通过获取每帧图像的目标位置,可以实现对目标的跟踪。跟踪的目标具体可以包括人体、物体等。
3.但是,在跟踪过程中,复杂场景尤其是有遮挡的环境会影响目标跟踪的鲁棒性和准确性。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种目标跟踪方法和装置、电子设备、计算机可读存储介质,明显改善了由于目标被遮挡导致的目标丢失问题。
5.本技术第一方面提供了一种目标跟踪方法,包括:确定目标在上一帧中的跟踪框和在当前帧中的检测框;基于跟踪框和检测框的交并比,确定目标可能处于遮挡状态;将跟踪框与检测框的交集与检测框进行比较,得到比较结果;基于比较结果,确定目标处于遮挡状态。
6.在一个实施例中,比较结果为跟踪框与检测框的交集的面积与检测框的面积的比值,基于比较结果,确定目标处于遮挡状态,包括:在比值大于或等于第一预设阈值时,确定目标处于遮挡状态。
7.在一个实施例中,第一预设阈值为0.60~0.80。
8.在一个实施例中,根据跟踪框和检测框,确定目标可能处于遮挡状态,包括:在检测框与跟踪框的交并比小于第二预设阈值时,确定目标可能处于遮挡状态。
9.在一个实施例中,第二预设阈值为0.30~0.45。
10.在一个实施例中,第一方面的目标跟踪方法还包括:在确定目标处于遮挡状态时,将目标保留在跟踪列表,并且不激活目标的状态。
11.在一个实施例中,将目标保留在跟踪列表,并且不激活目标的状态,包括:将目标保留在跟踪列表中,并且不更新目标的跟踪框及目标信息。
12.在一个实施例中,第一方面的目标跟踪方法还包括:当目标再次处于非遮挡状态时,触发跟踪列表中的目标的状态的更新,将跟踪框与检测框进行信息融合,得到融合结果,并根据融合结果更新跟踪框,以激活跟踪列表中所述目标的状态。
13.在一个实施例中,第一方面的目标跟踪方法还包括:在确定目标处于非遮挡状态时,对目标进行跟踪。
14.在一个实施例中,第一方面的目标跟踪方法还包括:在根据交并比确定目标可能处于遮挡状态,且根据比较结果确定目标处于非遮挡状态时,将目标从跟踪列表中删除或
将目标保留在跟踪列表中一定时间,当目标再次出现时,激活目标的状态,并对目标进行跟踪。
15.在一个实施例中,跟踪目标为一个或多个。
16.在一个实施例中,前述目标跟踪方法可用于离线嵌入式目标跟踪系统。
17.本技术第二方面提供了一种目标跟踪装置,包括:第一确定模块,确定目标在上一帧中的跟踪框和在当前帧中的检测框;第二确定模块,基于跟踪框和检测框的交并比,确定目标可能处于遮挡状态;比较模块,将跟踪框与检测框的交集与检测框进行比较,得到比较结果;第三确定模块,基于比较结果,确定目标处于遮挡状态。
18.本技术第三方面提供了一种电子设备,包括存储器、处理器以及存储在存储器上被处理器执行的计算机程序,处理器执行计算机程序时实现上述任一实施例提供的目标跟踪方法的步骤。
19.本技术第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例提供的目标跟踪方法的步骤。
20.根据本技术的技术方案,基于上一帧的目标跟踪框与当前帧的目标检测框的交并比,确定目标可能处于遮挡状态。进一步地,对于确定可能处于遮挡状态的目标,将上一帧的目标跟踪框与当前帧的目标检测框的交集与当前帧的目标检测框进行比较,得到比较结果,并根据比较结果,确定目标处于遮挡状态。上述跟踪过程在通过交并比初步判断目标状态的基础上,进行二次判断确认与筛分,准确判断目标状态,使得后续能够根据目标是否实际处于遮挡状态,执行相应的跟踪策略,能够解决由于目标被遮挡而导致的目标丢失问题,提高了目标跟踪的鲁棒性、准确性,用户体验好。
附图说明
21.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
22.图1所示为本技术一实施例提供的目标跟踪方法的流程示意图。
23.图2所示为本技术一实施例提供的确定目标可能处于遮挡状态的执行过程的流程示意图。
24.图3所示为本技术一实施例提供的不同目标状态的跟踪方法的流程示意图。
25.图4所示为本技术另一实施例提供的目标跟踪方法的流程示意图。
26.图5所示为本技术一实施例中目标处于不同状态时目标跟踪框与目标检测框的示意图。
27.图6所示为本技术性一实施例提供的目标跟踪装置的结构示意图。
28.图7所示为本技术性一实施例提供的电子设备的结构示意图。
具体实施方式
29.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于
本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
30.虽然本技术对根据本技术的实施例的系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在用户终端和/或服务器上。所述模块仅是说明性的,并且所述装置和方法的不同方面可以使用不同模块。
31.本技术实施例涉及图像处理和目标跟踪方面的应用。为了便于理解,下面先对本技术实施例可能涉及的相关术语及目标跟踪等相关概念进行简单介绍。
32.(1)目标检测框
33.目标检测框是通过目标检测算法,从每一帧图像提取的包含目标信息的真实边界框,用于标识目标的位置。
34.(2)目标跟踪框
35.目标跟踪框是用于表示根据目标在上一帧中的大小和位置利用模型预测得到的目标位置在当前帧中的大小和位置。需要说明的是,本技术中的跟踪,有时也称为跟随。
36.(3)iou(交并比)
37.iou是上一帧的目标跟踪框与当前帧的目标检测框的交集的面积与上一帧的目标跟踪框与当前帧的目标检测框的并集的面积的比值。
38.(4)目标id
39.目标id为对每一个跟踪的目标指定的一个唯一的标记。
40.申请概述
41.随着现代生活水平的持续提高和科技的发展,以及人们对于娱乐化需求的多样化,计算机视觉和图像识别跟踪技术已逐步应用于各个领域中。
42.例如,基于当代直播场景的需求,离线的嵌入式智能跟踪云台系统在直播过程的应用越来越多,可以实现对特定目标的实时追踪。例如,可以通过分析连续视频序列中目标的位置信息,并依据上下帧目标框的iou确定与预设iou阈值的匹配结果,并在匹配结果满足预设条件时给对应的目标分配相应id,进而根据目标id的位置信息实现对目标的跟踪。
43.以嵌入式跟踪系统为例,首先通过嵌入式摄像头采集图像,随后借助人体、头肩检测技术实现对人体关键位置的定位,获取目标人物信息和目标人物检测框,并赋予目标人物id。在后续的跟踪过程中,计算上下帧的人体框的iou,与预设的iou阈值进行匹配,得到匹配结果,并根据匹配结果确定当前帧各目标人物的id。最后,根据各目标人物的id跟踪目标人物,并把目标人物的位置信息传输给控制器,以便控制器控制电机的运转,以驱动云台带动摄像头跟随目标人物,从而实现对目标人物的自动跟踪。上述iou匹配基本上可以实现简单场景下的目标跟踪。
44.但在有遮挡的环境下,会因为目标(例如人物)短时间被遮挡,导致目标id切换,从而导致跟踪装置跟踪到其他目标,因此,这种情况下存在跟踪装置的鲁棒性与准确性较低的问题,用户体验较差。上述技术方案存在因为遮挡导致跟踪目标丢失,进而导致跟踪装置切换跟踪目标的问题。
45.示例性方法
46.图1为本技术一实施例提供的目标跟踪方法的流程示意图。该目标跟踪方法可应用于目标跟踪设备或目标跟踪系统,可以由计算设备(例如,服务器或用户终端)来执行。如
图1所示,目标跟踪方法100包括步骤s110~步骤s140。
47.步骤s110,确定目标在上一帧中的跟踪框和在当前帧中的检测框。
48.具体地,检测框是将从视频中获取的每一帧的图像,进行图像预处理生成的目标的真实边界框,用于标识目标在该帧中的位置。另外,初始帧图像的来源,可以是预先输入的包含跟踪目标的图像,如直播场景、移动聊天场景以及拍照场景的照片,或者是基于人脸识别获取的图像,也可以为跟踪过程中通过图像采集设备(例如,摄像头)实时获取的一帧图片,例如在跟踪过程中出现跟踪目标的某一帧。
49.在一个实施例中,上述图像预处理主要包括通过目标检测算法对每一帧输入图像进行目标检测,从而确定目标的位置信息,得到每一帧的目标检测框。例如,目标检测算法可以是单镜头多盒检测器算法(ssd,single shot multi box detector)、基于卷积神经网络特征的区域算法(faster rcnn,faster regions with cnn features)、一瞥目标检测算法(yolo,you only look once)等,本技术的实施例对此不作限定,也可以是其它目标检测算法。
50.在一个实施例中,可以选择上述某种算法对当前帧和上一帧进行目标检测,将当前帧和上一帧作为输入图像,得到当前帧和上一帧中每个目标的目标检测框。每个目标检测框内的图像表示一个目标,并携带该目标检测框的坐标位置信息。
51.在一个实施例中,目标跟踪框是基于包含目标的上一帧与当前帧的目标检测框,以及上一帧与当前帧的位置关系,经过上一帧与当前帧的目标信息融合更新,生成的目标位置的预测框。
52.在另一个实施例中,目标跟踪框是基于首帧的目标检测框生成的目标位置的预测框。
53.以人体检测为例,其主要目的是找到人体在画面中的主要位置,通过人体位置信息,执行后续的目标跟踪算法。具体地,目标检测的主要算法基于深度学习算法来实现,例如,基于回归网络的通用对象跟踪方法(goturn,generic object tracking using regression networks)、快速压缩跟踪(fct,fast compressive tracking)等。上述算法通过大量收集人体的数据并标注人体,然后基于训练深度学习训练人体和非人体的深度学习模型,并且能够实现实时的对获取的图像进行人体检测功能,为后续相关目标跟踪框与目标检测框的融合以及确定目标id提供基本信息。
54.例如,通过将经过下述目标状态判断确认目标处于非遮挡状态的每帧的目标检测框与上一帧的跟踪框的目标信息进行融合,并结合自适应算法,能够得到窗口自适应的目标跟踪框,并将跟踪列表中目标的状态设置为未激活。
55.步骤s120,基于跟踪框和检测框的交并比,确定目标可能处于遮挡状态。
56.常用的目标遮挡状态判断算法有iou匹配算法、响应图数值比较算法等。在本技术的实施例中,选择iou匹配判断当前帧的跟踪目标可能处于遮挡状态,即初步判断当前帧的跟踪目标处于遮挡状态。
57.具体地,iou匹配为计算上一帧的目标跟踪框与当前帧的目标检测框的iou值,并与第二预设阈值(iou的预设阈值)进行比较。在计算的iou值小于设定的阈值时,说明上一帧的目标跟踪框与当前帧的目标检测框不匹配,从而确定当前帧的跟踪目标可能处于遮挡状态。
58.然而,利用iou并不能准确判断跟踪目标处于遮挡状态,因为目标离开的情况下,iou值也小于设定的阈值。因此,在初步判定哪些目标可能为被遮挡目标的基础上,还需要进一步确认跟踪目标实际上是被遮挡的,还是已离开视频画面。
59.应理解的是,本技术的实施例的交并比计算公式并不限于此,也可以采用其它在一定程度上反映遮挡状态或遮挡概率的交并比公式。
60.步骤s130,将跟踪框与检测框的交集与检测框进行比较,得到比较结果。
61.具体地,对于目标只是被部分遮挡而导致iou值小于预设的阈值的情况,本技术的发明人经过长期的研究发现,可以根据上一帧的目标跟踪框与当前帧的目标检测框的交集的面积与当前帧的目标检测框的面积的比值是否满足预设关系来确定目标是否实际上处于遮挡状态。例如,对当前帧可能处于遮挡状态的跟踪目标,将上一帧的目标跟踪框与当前帧的目标检测框的交集的面积与当前帧的目标检测框的面积进行比较,即计算ioa(交集和目标检测框面积比)值,如果ioa值满足预设的阈值,则确定目标实际上处于遮挡状态。
62.举例来说,ioa可以定义为:
[0063][0064]
其中,a为当前帧的目标检测框的面积,b为上一帧的目标跟踪框的面积,a∩b为当前帧目标跟踪框和上一帧目标检测框的交集的面积。
[0065]
图5所示为本技术一实施例中目标处于不同状态时目标跟踪框与目标检测框的示意图。
[0066]
如图5中的(b)所示,在第n+1帧时,目标3处于遮挡状态,此时ioa为第n+1帧的目标检测框22(即上述ioa的定义中的a)与第n帧的目标跟踪框12(即上述ioa的定义中的b)的交集的面积与第n+1帧的目标检测框22的面积的比值。
[0067]
步骤s140,根据比较结果,确定目标处于遮挡状态。
[0068]
在获得ioa的计算值后,将ioa的计算值与第一预设阈值(预设的ioa阈值)进行比较。
[0069]
在本技术的实施例中,预设的ioa阈值为0.60~0.80中的某个值。将ioa的阈值设置在此范围有助于显著提高判断遮挡状态的准确度。
[0070]
基于比较结果,确定跟踪目标处于遮挡状态,还是已离开视频画面。例如当ioa值为0.85,大于设定的ioa阈值,则确定目标处于遮挡状态。
[0071]
根据本技术的技术方案,基于上一帧的目标跟踪框与当前帧的目标检测框的交并比,确定目标可能处于遮挡状态,对于确定可能处于遮挡状态的目标,将上一帧的目标跟踪框与当前帧的目标检测框的交集与当前帧的目标检测框进行比较,得到比较结果,并根据比较结果,确定目标处于遮挡状态。上述跟踪过程在通过交并比初步判断目标状态的基础上,用ioa进行二次判断确认与筛分,从而能够准确判断目标状态,使得后续能够根据目标是否实际处于遮挡状态,执行相应的跟踪策略,能够解决由于目标被遮挡而导致的目标丢失问题,提高了目标跟踪的鲁棒性、准确性,用户体验好。
[0072]
图2为本技术一实施例提供的基于跟踪框和检测框的交并比,确定目标可能处于遮挡状态(步骤s120)的执行过程的流程示意图。如图2所示,步骤s120包括:
[0073]
步骤s201,计算当前帧的目标检测框与上一帧的目标跟踪框的iou值。
[0074]
步骤s202,将计算的iou值与第二预设阈值(预设的iou阈值)进行比较。
[0075]
在本技术的实施例中,预设的iou阈值为0.30~0.45中的某个值。
[0076]
例如,计算的iou值为0.20,小于预设的iou阈值,确定目标可能处于遮挡状态。
[0077]
步骤s203,根据iou的计算值与第二设定阈值的比较结果,执行后续程序。
[0078]
在本技术的一个实施例中,计算的iou值大于或等于预设的iou阈值时,执行步骤s2041,对目标进行跟踪;计算的iou值小于设定的iou阈值时,执行步骤s2042,即执行步骤s130,进行ioa计算,进一步确认目标状态。
[0079]
在本技术的另一实施例中,当计算的iou值小于设定的iou阈值,例如计算的iou值为0,且属于跟踪前未确定的目标(未在跟踪列表中)时,则可以将当前帧视为首帧,加入跟踪列表,赋予目标id,进行跟踪。
[0080]
需要说明的是,在本技术的实施例中,在进行当前帧跟踪目标状态判断前,跟踪目标的目标状态标记为未激活。
[0081]
在本技术的一个实施例中,如果计算的ioa值大于或等于设定的ioa阈值,则确定当前跟踪列表中目标状态未激活的目标为被遮挡的目标;计算的ioa值小于设定的ioa值,则确定跟踪目标已离开视频画面。
[0082]
图3所示为本技术一实施例提供的不同目标状态的跟踪流程示意图。如图3所示,如果iou匹配(将计算的iou值与预设的iou值进行比较)得到的匹配结果大于或等于设定阈值的目标,即正常跟踪状态的目标,则执行跟踪策略1。对于根据iou匹配初步确认为可能处于遮挡状态的目标,进一步进行ioa匹配(将计算的ioa值与预设的ioa值进行比较)。如果根据ioa匹配结果确定为处于遮挡状态的目标,则执行跟踪策略2,如果ioa匹配确定为已离开视频画面的目标,执行跟踪策略3。
[0083]
在本技术的一个实施例中,跟踪策略1为:对目标进行跟踪。
[0084]
具体地,跟踪策略1为在对目标进行跟踪前,将当前帧(例如第n+1帧)的目标检测框与上一帧(例如第n帧)的目标跟踪框进行信息融合,形成当前帧的目标跟踪框,并将目标id赋予当前帧对应的跟踪目标,激活目标状态。然后,对目标进行跟踪。例如,当第n+1帧的目标检测框与第n帧的目标跟踪框的iou计算值大于或等于预设的iou阈值时,则将第n帧的目标跟踪框与第n+1帧的目标检测框进行信息融合,形成第n+1帧的目标跟踪框,并将目标id赋予第n+1帧对应的跟踪目标,激活目标状态,对目标进行跟踪。
[0085]
在本技术的一个实施例中,跟踪策略2为:将目标保留在跟踪列表,并且不激活所述目标的状态。
[0086]
具体地,跟踪策略2为将目标保留在跟踪列表中,并且不更新目标的跟踪框及目标信息;并且当目标再次处于非遮挡状态时,触发跟踪列表中的目标的状态的更新,将跟踪框与检测框进行信息融合,并更新跟踪框,以激活跟踪列表中目标的状态。
[0087]
例如,将目标id保存在跟踪列表中(也可以为将目标id保存在跟踪列表中一定时间),不更新目标跟踪框及目标信息,即目标跟踪框和目标信息仍与上一帧相同,然后重新获取图像,并依次进行后续步骤至根据ioa匹配确认跟踪目标是否处于遮挡状态,并循环进行该过程。直至目标再次处于非遮挡状态时,触发跟踪列表信息中目标状态更新,将上一帧的目标跟踪框与当前帧的目标检测框信息融合,从而激活跟踪列表中目标的状态。
[0088]
需要说明的是,本技术实施例中所涉及的目标遮挡状态,指跟踪目标被其他目标
或背景遮挡。另外,本技术中所涉及的根据交并比确定目标可能处于遮挡状态,且根据比较结果确定目标处于非遮挡状态,指目标已离开视频画面。
[0089]
在本技术的一些实施例中,在确定被遮挡目标后,把被遮挡目标保存在跟踪列表中(也可以把被遮挡目标保存在跟踪列表中保留一定时间),同时不更新上一帧跟踪目标信息,并将上一帧跟踪目标保持同样的id,进而让跟踪目标不丢失。这样当目标被遮挡时,跟踪系统就不会进行目标切换,从而达到改善系统跟踪错误的问题。
[0090]
进一步,跟踪策略3为:在根据交并比确定目标可能处于遮挡状态,且根据比较结果确定目标处于非遮挡状态时,将目标从跟踪列表中删除,或将所述目标保留在跟踪列表中一定时间,当目标再次出现时,激活目标的状态,并对目标进行跟踪。
[0091]
例如,根据交并比确定第n+1帧目标可能处于遮挡状态,且根据后续的ioa计算值与预设的ioa的阈值的比较结果,确定第n+1帧目标处于非遮挡状态时,在一些实施例中,可以将其从跟踪列表中删除;在一些实施例中,也可以将目标信息保存在跟踪列表中,设定搜索策略,当目标再次出现时,激活目标状态,执行跟踪策略1。
[0092]
在本技术的一个实施例中,目标可以为人或移动的物体,可以为1个,也可以为多个。
[0093]
在一些实施例中,本技术的目标跟踪方法可用于离线嵌入式目标跟踪系统。
[0094]
本技术的实施例提供的目标跟踪方法,在不影响单人场景的跟踪效果的前提下,在多人场景尤其是在跟踪目标被遮挡的情况时,可以较大幅度的改善跟踪系统的目标跟踪的稳定性和用户体验,并且可用于嵌入式跟踪系统。
[0095]
本技术实施例提供的目标跟踪方法及装置可以应用在城市赛事直播等需要实时跟踪的娱乐领域,也可应用在平安城市、智能终端等计算机视觉领域中的需要进行视频监控的领域。具体地,本技术的技术方案能够应用在直播场景以及安防视频监控场景中。下面分别结合图4对直播场景和安防视频监控场景进行简单的介绍。
[0096]
下面结合图4的和图5描述本技术的目标跟踪过程。
[0097]
图4为本技术另一实施例提供的目标跟踪方法的流程示意图。以下为图4所的跟踪方法包括的内容。
[0098]
步骤s410,跟踪装置的图像获取模块获取图像。
[0099]
例如,在跟踪过程中,跟踪装置的图像获取模块通过嵌入式摄像头获取图像。获取的初始帧可以是预先输入的包含目标的视频帧或照片,也可以是跟踪过程中跟踪目标首次出现时的某一帧。其他帧可以在跟踪过程中实时获取,例如,在直播过程中,跟踪系统的嵌入式摄像头实时获取的直播场景的图像。
[0100]
步骤s420,跟踪装置的信息获取模块对图像进行预处理,生成目标检测框。
[0101]
例如,跟踪装置的信息获取模块以图像获取模块获取的包含目标的图像为数据基础,通过目标检测算法,并结合当前主流的深度学习算法,例如通过大量收集人体的数据并标注人体,然后基于训练深度学习训练人体和非人体的深度学习模型,同时在技术上结合模型蒸馏、int8量化等技术,实现对模型效果和效率的优化。优化后的深度学习模型可实时的对接受图像进行人体检测功能,获取每一帧的目标检测框。
[0102]
步骤s430,基于包含目标的初始帧的目标框或者基于包含目标的上下帧的目标框,生成目标跟踪框。
[0103]
例如,基于包含目标的初始帧的目标检测框,或基于上一帧的目标跟踪框与经过目标状态判断确认目标处于非遮挡状态的当前帧的目标检测框,以及上一帧与当前的位置关系,经过包含目标的上一帧与当前帧的目标信息融合更新,生成当前的目标跟踪框。同时,将当前帧的目标跟踪结果设置为未更新状态,如0,表示目标处于未激活状态。如图5中的(a)所示为跟踪过程中第n帧目标3处于非遮挡状态时的示意图,其中11为第n-1帧的目标跟踪框,21为第n帧的目标检测框。
[0104]
步骤s440,计算上一帧的目标跟踪框与当前帧的目标检测框的iou值,并与预设的iou的阈值进行比较。
[0105]
例如,计算第n帧的目标跟踪框与第n+1帧的目标检测框的iou值,并与预设的iou阈值进行比较。
[0106]
在本技术的一个实施例中,预设的iou阈值为0.30~0.45。
[0107]
进一步地,在进行iou匹配前,还可以初步判断跟踪目标在上一帧和当前帧的前后位置关系。通常目标检测算法在目标检测框上呈现的现象是,目标离摄像头越近,目标的检测框就相对越大。多目标场景下,通常可以通过目标检测框的大小信息判断目标的前后位置关系。基于该思想,通常会对当前帧和前一帧的目标检测框按面积大小进行排序,这样就能初步判断出上下帧中目标的前后位置关系,为后续的目标状态判定提供参考。
[0108]
需要说明的是,本技术实施例中提及的包含目标的图像,指在图像中,目标处于非遮挡状态。
[0109]
步骤s450,根据iou匹配结果,对目标状态进行判断,确定跟踪目标可能处于遮挡状态。
[0110]
例如,上下帧的iou的计算值为0.25,小于设定的iou阈值,则目标在当前帧可能处于遮挡状态。
[0111]
步骤s460,对经iou匹配确定可能处于遮挡状态的目标,进行ioa匹配。
[0112]
例如,对确定可能处于遮挡状态的目标,计算上一帧的目标跟踪框与当前帧的目标检测框的ioa值,并将ioa值与预设的ioa阈值进行比较。
[0113]
其中,预设的ioa阈值为0.60~0.80中的某个值。
[0114]
步骤s470,根据ioa匹配结果,确认跟踪目标是否处于遮挡状态。
[0115]
进一步地,根据ioa匹配结果,确认目标处于遮挡状态,则执行上述跟踪策略2。如图5中的(b)为跟踪过程中第n+1帧目标3处于遮挡状态(被背景4遮挡)时的示意图,其中12为第n帧的目标跟踪框,22为第n+1帧的目标检测框。
[0116]
例如在直播场景的应用中,计算的第n帧的目标跟踪框与第n+1帧的目标检测框的ioa值为0.85,确认目标处于遮挡状态,则将目标id保存在跟踪列表中一定时间,不更新目标跟踪框及目标信息,即目标跟踪框和目标信息仍与第n帧相同。例如图5(c)为跟踪过程中目标3在第n+2帧时仍处于遮挡状态的示意图,目标跟踪框仍为第n帧的目标跟踪框12,其中23为第n+2帧的目标检测框。然后,执行上述跟踪策略2。直至第n+k帧目标再次处于非遮挡状态时,触发跟踪列表信息中目标状态更新,将第n帧的目标跟踪框与第n+k帧的目标检测框进行信息融合,从而激活跟踪列表中目标的状态,对目标进行跟踪。图5中的(d)为跟踪过程中至第n+k帧时目标3再次处于非遮挡状态时的示意图,其中12为目标3被遮挡前第n帧的目标跟踪框,24为第n+k帧的目标检测框。图5(e)为跟踪过程中第n+k+1帧的示意图,其中13
为第n+k帧目标3再次处于非遮挡时,基于将第n帧的目标跟踪框与第n+k帧的目标检测框进行信息融合,生成的第n+k帧的目标跟踪框。
[0117]
步骤s480,根根上下帧iou匹配确定目标可能处于遮挡状态,且根据上下帧ioa匹配确定目标处于非遮挡状态,则执行跟踪策略3。
[0118]
具体地,步骤s480为根根上下帧iou匹配确定目标可能处于遮挡状态,且根据上下帧ioa匹配确定目标处于非遮挡状态后,将目标从跟踪列表中删除,或将所述目标保留在跟踪列表中一定时间。当目标在第n+k帧再次出现时,激活目标的状态,并对目标进行跟踪。
[0119]
步骤s490,经iou匹配确定目标处于非遮挡状态时,激活目标状态。
[0120]
例如,经iou匹配确定目标处于非遮挡状态时,跟踪列表中目标的状态激活,将上一帧的目标跟踪框与当前帧的目检测框信息融合,形成当前帧的目标跟踪框,并将目标id赋予当前帧的跟踪目标。
[0121]
步骤s4110,对状态激活的目标进行跟踪,即执行跟踪策略1。
[0122]
例如在直播过程中,对确定处于非遮挡状态且进行状态激活的目标人物进行跟踪。
[0123]
在一些实施例中,本技术的目标跟踪方法可用于嵌入式目标跟踪系统。
[0124]
在本技术的实施例中,跟踪目标为一个或多个,跟踪目标为人或物体。
[0125]
总之,本技术的实施例可以以图像获取模块获取的图像为数据基础,通过目标检测算法,获取每一帧的目标检测框,并生成上一帧的目标跟踪框。同时,将上一帧的目标跟踪结果设置为未更新状态,如0,表示目标处于未激活状态。然后,将上一帧的目标跟踪框与当前帧的目标检测框的iou计算值与预设的iou阈值进行匹配比较,对于iou大于或等于预设的iou阈值的目标,进行跟踪。对确定可能处于遮挡状态的目标,进一步进行ioa匹配,确认目标处于遮挡状态还是已离开视频画面。对确认处于遮挡状态的目标,将目标保留在跟踪列表,不激活目标的状态,并且不更新目标的跟踪框及目标信息。当目标再次处于非遮挡状态时,触发跟踪列表中的目标的状态的更新,将跟踪框与检测框进行信息融合,并更新跟踪框,以激活跟踪列表中所述目标的状态,进行跟踪。对已离开视频画面的目标,可以将目标从跟踪列表中删除,或将目标保留在跟踪列表中一定时间,当目标再次出现时,激活目标的状态,并对目标进行跟踪。通过在iou匹配的基础上,进行ioa匹配二次筛分确认,更准确的确定目标状态,然后根据不同的目标状态赋予目标不同的跟踪策略,提高了目标跟踪的鲁棒性、准确性,用户体验好。
[0126]
需要说明的是,在一些实施例中,在当前帧的目标检测框为多个候选框的情况下,对当前帧各个检测框都和上一帧跟踪框遍历进行iou计算,得到n个计算结果,并对其iou的计算结果按从大到小排序。如果排序后的最大值大于预设的iou阈值,则当前帧的目标检测框和上一帧的目标跟踪框中的目标为同一个。此时,将目标表id赋予当前帧的相同目标,从而将目标信息更新到对应目标id的目标框中,同时将跟踪列表中的相应目标设置为更新状态,如1,表示目标跟踪框及目标信息被更新,处于活跃状态,对目标进行跟踪。如果排序后的最大值小于预设的iou阈值,就无法产生让跟踪列表中的目标数据状态进行更新的触发条件。因此,根据跟踪状态信息(不活跃的状态),可以初步判断为被遮挡的目标。当然只能是初步判断目标,因为还可能存在目标不是被遮挡,而是目标已经离开。为了进一步确认目标被遮挡,引入ioa二次判断机制,主要是选择跟踪列表中目标跟踪框未被更新的目标的跟
踪框和当前帧的所有检测结果(当前帧各个候选框)进行ioa计算,并将ioa得分由大到小排序。然后,选择最大的ioa计算值。如果该最大的ioa计算值大于预设的ioa阈值(本技术实施例中系统预设的ioa阈值为0.60~0.80),则认为当前跟踪列表中处于不活跃状态的目标为被遮挡的目标。
[0127]
示例性装置
[0128]
本技术还提供了一些目标跟踪装置。图6为本技术一实施例的目标跟踪设备的结构示意图。如图6所示,该实施例的目标跟踪设备600包括:
[0129]
第一确定模块610,第二确定模块620,比较模块630,第三确定模块640。其中,第一确定模块610用于确定目标在上一帧中的跟踪框和在当前帧中的检测框。第二确定模块620用于基于跟踪框和检测框的交并比,确定目标可能处于遮挡状态。比较模块630用于将跟踪框与检测框的交集与检测框进行比较,得到比较结果。第三确定模块用于基于比较结果,确定目标处于遮挡状态。
[0130]
在一个实施例中,目标跟踪设备还包括图像获取模块,用于获取包含目标的图像信息,如直播场景、移动聊天场景以及拍照场景的照片等。
[0131]
在一个实施例中,图像获取模块用于接收包含目标的图像信息,例如包含目标的视频帧或照片。
[0132]
在一个实施例中,第一确定模块610(也可以为信息获取模块)用于对图像获取模块获取的每一帧进行目标检测,得到上一帧的目标位置信息和目标检测框,并生成上一帧的目标跟踪框;同时,得到当前帧的目标检测框。
[0133]
在一个实施例中,第二确定模块620用于根据当前帧的目标检测框与上一帧的目标跟踪框的iou值与预设的iou阈值的比较结果,确定目标可能处于遮挡状态。
[0134]
在一个实施例中,比较模块630用于将当前帧的目标检测框与上一帧的目标跟踪框的交集的面积与当前帧的目标检测框的面积进行比较,经比较后得到ioa值。
[0135]
在一个实施例中,第三确定模块640用于根据当前帧的目标检测框与上一帧的目标跟踪框的ioa值与预设的ioa阈值的比较结果,进行目标状态的二次确定。
[0136]
在一个实施例中,目标跟踪设备还包括跟踪执行模块,用于根据目标状态,执行不同的跟踪策略。
[0137]
本实施例提供的目标跟踪装置,与本技术实施例所提供的目标跟踪方法属于同一申请构思,可执行本技术任意实施例所提供的目标跟踪方法,具备执行目标跟踪方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本技术实施例提供的目标跟踪方法,此处不再加以赘述。
[0138]
示例性电子设备
[0139]
图7是本技术一实施例提供的电子设备的结构框图。该电子设备可以是服务器或移动终端。移动终端可以是手机、电脑等。如图7所示,电子设备700包括:存储器730以及耦接至该存储器730的处理器710,处理器710被配置为基于存储在存储器730中的指令,执行前述任意一些实施例中的目标跟踪方法。
[0140]
其中,存储器730可以包括例如系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(boot loader)以及其他程序等。
[0141]
在一个实施例中,目标跟踪系统还可以包括输入装置720,输出装置740,这些组件
通过总线系统和/或其他形式的连接机构(未示出)互连。
[0142]
例如,输入装置720可以是一个或多个摄像头或者人脸识别装置,用于获取图像。
[0143]
输出装置740可以向外部输出信息,包括跟踪结果、跟踪视频等。输出装置可以是显示器、手机以及所连接的远程输出设备等。
[0144]
当然,为了简化,图7中仅示出了该目标跟踪系统700中与本技术有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,目标跟踪系统700还可以包括任何其他适当的组件。
[0145]
在本技术的一些实施例中,目标跟踪系统为嵌入式跟踪系统。例如,目标跟踪系统为一些具备采集图像、控制电机以及搭载深度学习加速芯片(低端嵌入式ai芯片)的消费级嵌入式跟踪系统。
[0146]
在某些实施例中,该目标跟踪装置也可以称为目标跟踪设备或目标跟踪系统。
[0147]
示例性计算机程序产品和计算机可读存储介质
[0148]
除了上述方法和设备以外,本技术的实施例还可以是计算机程序产品,其包括计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本说明书上述“示例性方法”部分中描述的根据本技术各种实施例的训练样本的获取方法中的步骤。
[0149]
本技术的实施例还包括一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意一些实施例中的目标跟踪方法。
[0150]
本领域内的技术人员应清楚,本技术的实施例可提供为方法、装置、电子设备或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0151]
以上结合具体实施例描述了本技术的基本原理。但是,需要指出的是,在本技术中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本技术的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本技术为必须采用上述具体的细节来实现。
[0152]
本技术中涉及的装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0153]
还需要指出的是,在本技术的装置和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本技术的等效方案。
[0154]
提供所公开的方面的以上描述,以使本领域的任何技术人员能够做出或者使用本技术。对这些方面的各种修改,对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本技术的范围。因此,本技术不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0155]
应当理解,本技术实施例描述中所用到的限定词“第一”、“第二”、“第三”等仅用于
更清楚的阐述技术方案,并不能用于限制本技术的保护范围。
[0156]
尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1