多目标实时跟踪方法及其系统和电子设备与流程

文档序号:25872420发布日期:2021-07-16 16:48阅读:77来源:国知局
多目标实时跟踪方法及其系统和电子设备与流程

1.本发明涉及目标跟踪技术领域,尤其是涉及多目标实时跟踪方法及其系统和电子设备。


背景技术:

2.近年来,诸如ar(augmented reality,增强现实)眼镜等等之类的近眼显示光学系统为人类创造了丰富的视感体验。为了进一步提升用户体验,该近眼显示光学系统也需要具备物体识别功能,即用于近眼显示光学系统的多目标跟踪方法,以通过该近眼显示光学系统上配置的图像传感器采集场景图像,并计算识别场景中的物体,如人、笔记本电脑、椅子、杯子、瓶子、书以及手机等等。而为了能够关联物体在前后帧的信息,现有的多目标跟踪方法除了能够输出物体在每一帧的位置包围框之外,还需要输出物体的身份标识(即id),以实现每一个被识别的物体的多目标跟踪。
3.目前,多目标跟踪方法按照是否融合目标检测结果,通常可以分为两类:基于检测的跟踪方法(英文detection-based tracking;简称dbt)和与检测无关的跟踪方法(英文detection-free tracking;简称dft)。该与检测无关的跟踪方法通常需要在视频中人为地初始化一些目标的位置,然后利用跟踪算法逐帧跟踪这些目标,找到这些目标在视频中接下来的每一帧的位置。该基于检测的跟踪方法则不需要人工初始化目标位置,但需要目标检测器对视频中每一帧图像进行检测,并利用跟踪算法将每一帧检测的结果关联起来,最终得到目标的跟踪结果。
4.然而,由于该与检测无关的跟踪方法不依赖目标检测器,因此一旦出现频繁遮挡、尺寸变化、出平面旋转或光照变化等情况导致跟踪漂移后,就很难获得正确的跟踪结果。而该基于检测的跟踪方法则可以利用检测结果来修正跟踪结果,从而维持持续稳定地跟踪,使得基于检测的跟踪方法受到越来越多的关注,已经成为多目标跟踪领域的主流框架。
5.但现有的基于检测的跟踪方法均是基于每一帧均存在检测结果为前提,并且目前效果较好的目标检测器主要是利用深度学习模型构建的,而深度学习模型具有模型层数多、卷积计算量大以及计算耗时长的特点,导致目标检测器在诸如ar眼镜或手机等移动端运行时难以达到实时。因而,现有的基于检测的跟踪方法无法计算每一帧的检测结果,进而该现有的基于检测的跟踪方法无法实现实时的多目标跟踪。


技术实现要素:

6.本发明的一优势在于提供一多目标实时跟踪方法及其系统和电子设备,其能够实现实时的多目标跟踪,以便在诸如ar眼镜或手机等移动端充分应用。
7.本发明的另一优势在于提供一多目标实时跟踪方法及其系统和电子设备,其中,在本发明的一实施例中,所述多目标实时跟踪方法能够将利用光流法的目标跟踪过程和利用深度学习的目标检测过程分别在不同线程中运行,以在充分利用深度学习在目标检测效果和精度上的优势的同时,又能够实现多目标的实时跟踪。
8.本发明的另一优势在于提供一多目标实时跟踪方法及其系统和电子设备,其中,在本发明的一实施例中,所述多目标实时跟踪方法创造性地提出利用光流跟踪法提供的物体位置信息作为检测信息,以实时地确定不同物体的身份标识,进而实现多目标的实施跟踪。
9.本发明的另一优势在于提供一多目标实时跟踪方法及其系统和电子设备,其中,在本发明的一实施例中,所述多目标实时跟踪方法创造性地提出将基于深度学习的目标检测模型在独立线程中运行,而不需要考虑其是否能够处理每一帧图像,以便解决现有的基于检测的跟踪方法对每一帧图像均要检测的问题,进而确保多目标实时跟踪的实现。
10.本发明的另一优势在于提供一多目标实时跟踪方法及其系统和电子设备,其中为了达到上述优势,在本发明中不需要采用复杂的结构和庞大的计算量,对软硬件要求低。因此,本发明成功和有效地提供一解决方案,不只提供一多目标实时跟踪方法及其系统和电子设备,同时还增加了所述多目标实时跟踪方法及其系统和电子设备的实用性和可靠性。
11.为了实现上述至少一优势或其他优势和目的,本发明提供了多目标实时跟踪方法,包括步骤:
12.在第一线程中,通过光流法根据被跟踪物体在视频流的上一帧图像中的位置计算该被跟踪物体在该视频流的当前帧图像中的位置,以获得在该当前帧图像中跟踪到的每个该被跟踪物体的身份标识;
13.在第二线程中,通过训练好的基于深度学习的目标检测模型对该视频流中的部分帧图像进行目标检测处理,以获得候选跟踪物体;以及
14.根据该候选跟踪物体,更新在该当前帧图像中需要跟踪的该被跟踪物体。
15.在本发明的一实施例中,所述在第一线程中,通过光流法根据被跟踪物体在视频流的上一帧图像中的位置计算该被跟踪物体在该视频流的当前帧图像中的位置,以获得在该当前帧图像中跟踪到的每个该被跟踪物体的身份标识的步骤,包括步骤:
16.根据该被跟踪物体的包围框的中心,计算该被跟踪物体的该包围框内光流特征点的位移平均值和相对于该包围框的中心的缩放平均值;
17.将该位移平均值和该缩放平均值叠加至该被跟踪物体在该上一帧图像中的包围框位置,以得到该被跟踪物体在该当前帧图像中的包围框位置;以及
18.根据所有的该被跟踪物体在该当前帧图像中的包围框位置,确定每个该被跟踪物体的身份标识。
19.在本发明的一实施例中,所述根据该被跟踪物体的包围框的中心,计算该被跟踪物体的该包围框内光流特征点的位移平均值和相对于该包围框的中心的缩放平均值的步骤,包括步骤:
20.通过对该当前帧图像进行fast特征点检测处理,获得初始特征点;
21.基于该初始特征点,通过lucas-kanade算法计算光流,以获得该光流特征点的位置;
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.在第二线程中,通过训练好的基于深度学习的目标检测模型对该视频流中的部分帧图像进行目标检测处理,以获得候选跟踪物体;以及
50.根据该候选跟踪物体,更新在该当前帧图像中需要跟踪的该被跟踪物体。
51.根据本发明的另一方面,本发明进一步提供了电子设备,包括:
52.一近眼显示光学系统;和
53.一多目标实时跟踪系统,其中所述多目标实时跟踪系统被配置于所述近眼显示光学系统,用于实时跟踪经由所述近眼显示光学系统采集的视频流中的目标,其中所述多目标实时跟踪系统包括依次可通信地连接的:
54.一目标跟踪模块,用于在第一线程中,通过光流法根据被跟踪物体在该视频流的上一帧图像中的位置计算该被跟踪物体在该视频流的当前帧图像中的位置,以获得在该当
前帧图像中跟踪到的每个该被跟踪物体的身份标识;
55.一目标检测模块,用于在第二线程中,通过训练好的基于深度学习的目标检测模型对该视频流中的部分帧图像进行目标检测处理,以获得候选跟踪物体;以及
56.一目标更新模块,用于根据该候选跟踪物体,更新在该当前帧图像中需要跟踪的该被跟踪物体。
57.通过对随后的描述和附图的理解,本发明进一步的目的和优势将得以充分体现。
58.本发明的这些和其它目的、特点和优势,通过下述的详细说明,附图和权利要求得以充分体现。
附图说明
59.图1是根据本发明的一实施例的多目标实时跟踪方法的流程示意图。
60.图2示出了根据本发明的上述实施例的所述多目标实时跟踪方法的一个应用示例。
61.图3示出了根据本发明的上述实施例的所述多目标实时跟踪方法的目标跟踪步骤的流程示意图。
62.图4a和图4b示出了根据本发明的上述实施例的所述多目标实时跟踪方法的所述目标跟踪步骤中均值计算的一个示例。
63.图5a和图5b示出了根据本发明的上述实施例的所述多目标实时跟踪方法的所述目标跟踪步骤中标识确定的一个示例。
64.图6示出了根据本发明的上述实施例的所述多目标实时跟踪方法的目标检测步骤的流程示意图。
65.图7示出了根据本发明的上述实施例的所述多目标实时跟踪方法的目标更新步骤的流程示意图。
66.图8示出了根据本发明的上述实施例的所述多目标实时跟踪方法中交并比计算的一个示例。
67.图9示出了根据本发明的一实施例的多目标实时跟踪系统的框图示意图。
68.图10示出了根据本发明的一实施例的一电子设备的框图示意图。
69.图11示出了根据本发明的一实施例的另一电子设备的立体示意图。
具体实施方式
70.以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
71.在本发明中,权利要求和说明书中术语“一”应理解为“一个或多个”,即在一个实施例,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个。除非在本发明的揭露中明确示意该元件的数量只有一个,否则术语“一”并不能理解为唯一或单一,术语“一”不能理解为对数量的限制。
72.在本发明的描述中,需要理解的是,属于“第一”、“第二”等仅用于描述目的,而不
能理解为指示或者暗示相对重要性。本发明的描述中,需要说明的是,除非另有明确的规定和限定,属于“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接或者一体地连接;可以是机械连接,也可以是电连接;可以是直接连接,也可以是通过媒介间接连结。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
73.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
74.近年来,虽然随着深度学习技术的快速发展,其应用也越来越广泛。现有的基于检测的跟踪方法通常将视频流的多目标跟踪任务分解成两个独立的子任务:目标检测和数据关联。也就是说,现有的基于检测的跟踪方法先通过离线训练好的目标检测器对视频流中的每一帧进行检测,再将过目标跟踪问题看作基于检测结果的数据关联问题,进而将属于同一目标的来自不同视频帧的检测结果关联起来连成目标的轨迹,使其具有相同的身份标识。但现有的基于深度学习的目标检测方法所利用的目标检测器(基于深度学习构建的)往往具有模型层数多、卷积计算量大以及计算耗时的特点,导致该目标检测器在诸如ar眼镜或手机等移动端运行时难以达到实时。因而,现有的基于检测的跟踪方法无法计算每一帧的检测结果,进而该现有的基于检测的跟踪方法无法实现实时的多目标跟踪。
75.因此,为了解决上述问题,本发明提出一种多目标实时跟踪方法及其系统和电子设备,其能够提高实现实时的多目标跟踪,尤其是诸如ar眼镜或手机等移动端的应用场景。
76.示意性方法
77.参考说明书附图之图1至图8所示,根据本发明的一实施例的一种多目标实时跟踪方法被阐明。具体地,如图1所示,所述多目标实时跟踪方法包括步骤:
78.s100:在第一线程中,通过光流法根据被跟踪物体在视频流的上一帧图像中的位置计算所述被跟踪物体在所述视频流的当前帧图像中的位置,以获得在所述当前帧图像中跟踪到的每个所述被跟踪物体的身份标识;
79.s200:在第二线程中,通过训练好的基于深度学习的目标检测模型对所述视频流中的部分帧图像进行目标检测处理,以获得候选跟踪物体;以及
80.s300:根据所述候选跟踪物体,更新在所述当前帧图像中需要跟踪的所述被跟踪物体。
81.值得注意的是,如图2所示,本发明的所述多目标实时跟踪方法采用双线程的工作方式,将目标跟踪和目标检测的过程分别在不同的线程中进行运行,以在一个线程中通过光流法对所述视频流中每一帧图像均进行目标跟踪来实现实时的多目标跟踪的同时,还能够在另一个线程中通过目标检测模型对所述视频流中的部分帧图像进行目标检测处理来获得候选的跟踪物体,并利用这些候选的跟踪物体来更新被跟踪物体,以便及时修正多目标的跟踪结果,从而维持持续且稳定的跟踪效果。
82.换言之,由于所述基于深度学习的目标检测模型是在一个独立线程中来进行目标检测处理的,因此本发明的所述多目标实时跟踪方法无需考虑所述目标检测模型是否能够处理所述视频流中的每一帧图像,而是可以间隔地处理所述视频流中的部分帧图像,以便在充分利用所述基于深度学习的目标检测模型在目标检测上的高精度优势的情况下,不会影响在另一个独立线程中多目标跟踪的实时性。因而,本发明的所述多目标实时跟踪方法能够在确保实现实时地多目标跟踪的同时,也能够提升多目标跟踪的准确度和精度。
83.更具体地,如图3所示,本发明的所述多目标实时跟踪方法的所述步骤s100,可以包括步骤:
84.s110:根据所述被跟踪物体的包围框的中心,计算所述被跟踪物体的所述包围框内光流特征点的位移平均值和相对于所述包围框的中心的缩放平均值;
85.s120:将所述位移平均值和所述缩放平均值叠加至所述被跟踪物体在所述上一帧图像中的包围框位置,以得到所述被跟踪物体在所述当前帧图像中的包围框位置;以及
86.s130:根据所有的所述被跟踪物体在所述当前帧图像中的包围框位置,确定每个所述被跟踪物体的身份标识。
87.示例性地,在本发明的一示例中,如图4a和图4b所示,本发明的所述多目标实时跟踪方法的所述步骤s110,可以包括步骤:
88.s111:通过对所述当前帧图像进行fast特征点检测处理,获得初始特征点;
89.s112:基于所述初始特征点,通过lucas-kanade算法计算光流,以获得所述光流特征点的位置;
90.s113:根据所述被跟踪物体的所述包围框位置和所述光流特征点的位置,以所述包围框的中心为中心点,计算在所述包围框内每个所述光流特征点相对于所述中心点的缩放值的平均值,以获得所述缩放平均值;以及
91.s114:根据所述被跟踪物体的包围框位置和所述光流特征点的位置,计算在所述包围框内每个所述光流特征点的位移值的平均值,以获得所述位移平均值。
92.可以理解的是,如图4b所示,在获得所述位移平均值和所述缩放平均值之后,本发明可以将所述位移平均值和所述缩放平均值作为所述包围框的缩放值和位移值,并将所述包围框的缩放值和位移值叠加至所述被跟踪物体在前一阵图像中的包围框位置上,以得到所述被跟踪物体在所述当前帧图像中的包围框位置。
93.值得一提的是,虽然通过光流法能够获得所述被跟踪物体在所述当前帧图像中的包围框位置,但是当所述被跟踪物体的可信度较低时,所述被跟踪物体在所述当前帧图像中的包围框位置则有可能存在错误,或者所述被跟踪物体将无法被正常跟踪到。因此,在通过简单的在线实时跟踪方法确定每个所述被跟踪物体的身份标识的过程中,本发明的所述多目标实时跟踪方法的需要先根据所述被跟踪物体在前后帧的关联系数进行筛选,以剔除掉可信度较低的被跟踪物体,即放弃对可信度较低的被跟踪物体进行跟踪。
94.具体地,在本发明的一示例中,如图5a所示,本发明的所述多目标实时跟踪方法的所述步骤s130,可以包括步骤:
95.s131:计算每个所述被跟踪物体在所述当前帧图像和所述上一帧图像之间的相关性系数;
96.s132:响应于所述相关性系数大于预定关联阈值,将相应的所述被跟踪物体在所
述当前帧图像中的包围框位置作为检测物体的边框位置;以及
97.s133:根据所述检测物体的边框位置,通过简单的在线实时跟踪方法计算并匹配在前后帧图像中物体的身份标识,以获得每个所述被跟踪物体的身份标识。
98.示例性地,在所述步骤s131中,可以通过相关性系数计算模型来计算每个所述被跟踪物体在所述当前帧图像和所述上一帧图像之间的相关性系数,其中所述相关性系数计算模型可以但不限于被实施为:
[0099][0100]
其中:ncc为所述被跟踪物体在所述当前帧图像和所述上一帧图像之间的相关性系数;t和s分别为较小图像和较大图像的灰度值;m*n为较小图像的分辨率;e为灰度值均值;s
i,j
为较大图像在(i,j)处大小为m*n的区域;s
i,j
(s,t)为区域(s,t)处的灰度值。
[0101]
值得注意的是,所述相关性系数ncc的取值范围通常为-1至1,其中当所述相关性系数ncc越大,则表明关联性越强,所述被跟踪物体的可信度就越高;当所述相关性系数ncc越小,则表明关联性越弱,所述被跟踪物体的可信度就越低。
[0102]
优选地,在所述步骤s132中,所述预定关联阈值被实施为0.1至0.5。这样,当所述被跟踪物体的所述相关性系数大于所述预定关联阈值时,则认为所述被跟踪物体的可信度较高,并将所述被跟踪物体在所述当前帧图像中的包围框位置作为检测物体的边框位置,以继续跟踪所述被跟踪物体;而当所述被跟踪物体的所述相关性系数不大于(即小于或等于)所述预定关联阈值时,则认为所述被跟踪物体的可信度较低,并剔除所述被跟踪物体,以停止跟踪所述被跟踪物体。
[0103]
而在所述步骤s133中,所述简单的在线实时跟踪方法(英文simple online and realtime tracking,简称sort)优选地融合了卡尔曼滤波(kalman filter)和匈牙利算法(hungarian algorithm),以便实现快速实时的多目标跟踪。具体地,如图5b所示,先根据在所述上一帧图像中已被跟踪物体的包围框位置,通过卡尔曼滤波预测所述已被跟踪物体在所述当前帧图像中的位置估计值;再通过匈牙利算法找到每个所述检测物体的边框位置与所述已被跟踪物体在所述当前帧图像中的位置估计值之间的最佳分配,如果存在最佳分配,则认为所述检测物体与所述已被跟踪物体属于同一物体,将所述已被跟踪物体的身份标识赋予所述检测物体;如果不存在最佳分配,则认为所述检测物体属于新的物体,将新的身份标识(如将已有的最大身份标识加1)赋予所述检测物体,以确保同一物体具有同样的身份标识,而不同的物体具有不同的身份标识。
[0104]
换言之,在所述步骤s133中,根据所述检测物体的边框位置和所述已被跟踪物体在所述当前帧图像中的位置估计值,通过匈牙利算法计算所述当前帧图像中的检测物体与在所述上一帧图像中已被跟踪物体之间的关联性,以根据所述当前帧图像与所述上一帧图像的物体关联结果,生成所述检测物体的身份标识,以获得在所述当前帧图像中跟踪到的每个所述被跟踪物体的身份标识。
[0105]
示例性地,在实际应用过程中,如图2所示,当输入视频流中的每一帧图像时,首先,判断跟踪器是否初始化,如果跟踪器未初始化(即所述跟踪器中不存在任何被跟踪物体),则初始化跟踪器,以存入被跟踪物体;如果跟踪器已初始化(即所述跟踪器中存在被跟
踪物体),则利用光流法由所述被跟踪物体在前一帧图像中的位置来计算所述被跟踪物体在当前帧图像中的位置。接着,遍历每个所述被跟踪物体在前后帧图像中的相关性系数,如果相关性系数大于0.3,则认为所述被跟踪物体的可信度高,以继续跟踪;否则停止跟踪所述被跟踪物体。之后,将得到全部被跟踪物体在所述当前帧图像中的位置作为检测物体的位置,以输入所述sort算法。最后,通过所述sort算法计算所述检测物体与所述已跟踪物体之间的关联性,进而输出每个所述被跟踪物体的身份标识。
[0106]
例如,在所述sort算法初始化之后,身份标识的初值为0,这样每检测到一个新的物体,身份标识的值将加1,以此类推,身份标识的值不重复使用。特别地,如果没有已被跟踪物体,则将当前所有的检测物体均作为新的物体,依次将已有的最大身份标识的值加1作为所述检测物体的身份标识。而如果当前的检测物体与已被跟踪物体匹配为同一物体,则将所述已被跟踪物体的身份标识赋予所述检测物体;但如果当前的检测物体无法与已被跟踪物体匹配为同一物体,则仍将已有的最大身份标识的值加1作为所述检测物体的身份标识。
[0107]
值得一提的是,本发明的所述多目标实时跟踪方法的所述步骤s100和所述步骤s200分别在不同的线程中执行,使得在所述步骤s200中的所述基于深度学习的目标检测模型虽然在目标检测时需要进行较大的计算量和耗费较长的时间,但却无需对所述视频流中的每一帧图像均进行目标检测,而是可以间隔地处理所述视频流中的部分帧图像,以充分利用所述基于深度学习的目标检测模型在目标检测方面的高精度优势,进而提升所述多目标实时跟踪方法的跟踪精度和跟踪效率。
[0108]
示例性地,如图6所示,本发明的所述多目标实时跟踪方法的所述步骤s200,可以包括步骤:
[0109]
s210:在输入所述视频流中的当前帧图像时,判断所述基于深度学习的目标检测模型是否正在运行;
[0110]
s220:响应于所述基于深度学习的目标检测模型正在运行,跳过检测所述当前帧图像;以及
[0111]
s230:响应于所述基于深度学习的目标检测模型未运行,通过所述基于深度学习的目标检测模型对所述当前帧图像进行目标检测处理,以得到所述候选跟踪物体。
[0112]
当然,在本发明的其他示例中,所述多目标实时跟踪方法的所述步骤s200可以每间隔预定时间段,从所述视频流中提取当前帧图像进行目标检测,进而根据检测出的所述候选跟踪物体来更新被跟踪物体,以修正目标跟踪进程,从而获得更好的多目标实时跟踪结果。
[0113]
优选地,所述基于深度学习的目标检测模型可以被实施为ssd mobilenet模型,以在输入所述视频流中某帧图像之后,输出该帧图像中目标(即所述候选跟踪物体)的包围框位置、置信度得分以及类别。可以理解的是,所述置信度得分表明所述候选跟踪物体被成功检测的置信度,得分越高表明所述候选跟踪物体被准确地检测的可能性越高。
[0114]
值得注意的是,在通过所述步骤s200获得所述候选跟踪物体之后,由于所述候选跟踪物体与已有的被跟踪物体(即所述上一帧图像中的已被跟踪物体)可能属于同一物体,因此在所述步骤s300中,需要先判断所述候选跟踪物体与已有的被跟踪物体是否属于同一物体,再根据判断结果来更新在所述当前帧图像中的被跟踪物体。可以理解的是,在所述步
骤s100中,所述当前帧图像中的所述被跟踪物体可以是在所述上一帧图像中的已被跟踪物体(即已有的被跟踪物体),也可以是经由所述基于深度学习的目标检测模型检测出来的所述候选跟踪物体。此外,所述步骤s300既可以在所述第一线程中执行,也可以在所述第二线程中执行,本发明对此不再赘述。
[0115]
示例性地,如图2所示,在所述第二线程中,每间隔一定时间将对所述视频流中的一帧图像进行检测计算处理,并将检测结果作为候选跟踪物体;之后,根据候选跟踪物体与已被跟踪物体的数据关联,来判断所述候选跟踪物体是否是新的物体,如果否,则移除所述候选跟踪物体,将所述已被跟踪物体作为在所述当前帧图像中需要跟踪的被跟踪物体;如果是,则将所述候选跟踪物体作为在所述当前帧图像中需要跟踪的被跟踪物体。
[0116]
具体地,如图7所示,本发明的所述多目标实时跟踪方法的所述步骤s300,可以包括步骤:
[0117]
s310:监测是否存在已有的被跟踪物体;
[0118]
s320:响应于存在所述已有的被跟踪物体,计算所述候选跟踪物体与所述已有的被跟踪物体之间的交并比;
[0119]
s330:响应于所述交并比大于预定交并比阈值,比较所述候选跟踪物体的置信度得分与所述已有的被跟踪物体的置信度得分的大小;
[0120]
s340:响应于所述已有的被跟踪物体的置信度得分不小于所述候选跟踪物体的置信度得分,将所述已有的被跟踪物体作为在所述当前帧图像中需要跟踪的所述被跟踪物体;以及
[0121]
s350:响应于所述已有的被跟踪物体的置信度得分小于所述候选跟踪物体的置信度得分,或所述交并比不大于所述预定交并比阈值,或不存在所述已有的被跟踪物体,将所述候选跟踪物体作为在所述当前帧图像中需要跟踪的被跟踪物体。
[0122]
特别地,如图8所示,以两个矩形框分别表示所述已有的被跟踪物体和所述候选跟踪物体的包围框,两者的位置存在重叠区域。因而,所述候选跟踪物体与所述已有的被跟踪物体之间的交并比iou被实施为两者重叠区域的面积i与两者总面积u之间的比值i/u,以表示所述已有的被跟踪物体和所述候选跟踪物体之间的重叠率。
[0123]
优选地,所述预定交并比阈值可以被实施为0.1至0.4。这样,当所述候选跟踪物体与所述已有的被跟踪物体之间的交并比iou大于所述预定交并比阈值时,则可以认为所述候选跟踪物体和所述已有的被跟踪物体可能属于同一物体,进而通过置信度得分来判断所述候选跟踪物体和所述已有的被跟踪物体作为被跟踪物体的可信度高低,将置信度得分高的物体作为在所述当前帧图像中需要跟踪的被跟踪物体。
[0124]
当然,在本发明的其他示例中,响应于所述已有的被跟踪物体的置信度得分不小于所述候选跟踪物体的置信度得分,也可以继续计算所述已有的被跟踪物体在前后帧图像中的相关联系数,进而当所述已有的被跟踪物体在前后帧图像中的相关性系数大于所述预定关联阈值时,将所述已有的被跟踪物体作为在所述当前帧图像中需要跟踪的所述被跟踪物体;否则,将所述候选跟踪物体作为在所述当前帧图像中需要跟踪的所述被跟踪物体。
[0125]
值得一提的是,在本发明的上述步骤s133中,在通过所述匈牙利算法进行最佳分配之前,还可以先判断所述检测物体与所述已被跟踪物体的交并比是否小于所述预定交并比阈值,如果是,则认为所述检测物体为新的物体,可以在最大的已有身份标识的基础上加
1作为所述检测物体的身份标识;否则,通过所述匈牙利算法进行最佳分配。
[0126]
示意性系统
[0127]
参考说明书附图之图9所示,根据本发明的一实施例的一多目标实时跟踪系统被阐明。具体地,如图9所示,所述多目标实时跟踪系统1可以包括相互可通信地连接的一目标跟踪模块10、一目标检测模块20以及一目标更新模块30。所述目标跟踪模块10用于在第一线程中,通过光流法根据被跟踪物体在视频流的上一帧图像中的位置计算该被跟踪物体在该视频流的当前帧图像中的位置,以获得在该当前帧图像中跟踪到的每个该被跟踪物体的身份标识。所述目标检测模块20用于在第二线程中,通过训练好的基于深度学习的目标检测模型对该视频流中的部分帧图像进行目标检测处理,以获得候选跟踪物体。所述目标更新模块30用于根据该候选跟踪物体,更新在该当前帧图像中需要跟踪的该被跟踪物体。
[0128]
更具体地,如图9所示,所述目标跟踪模块10包括相互可通信地连接的一均值计算模块11、一位置叠加模块12以及一标识确定模块13,其中所述均值计算模块11用于根据该被跟踪物体的包围框的中心,计算该被跟踪物体的该包围框内光流特征点的位移平均值和相对于该包围框的中心的缩放平均值;其中所述位置叠加模块12用于将该位移平均值和该缩放平均值叠加至该被跟踪物体在该上一帧图像中的包围框位置,以得到该被跟踪物体在该当前帧图像中的包围框位置;其中所述标识确定模块13用于根据所有的该被跟踪物体在该当前帧图像中的包围框位置,确定每个该被跟踪物体的身份标识。
[0129]
值得注意的是,在本发明的一示例中,所述均值计算模块11进一步用于通过对该当前帧图像进行fast特征点检测处理,获得初始特征点;基于该初始特征点,通过lucas-kanade算法计算光流,以获得该光流特征点的位置;根据该被跟踪物体的包围框位置和该光流特征点的位置,以该包围框的中心为中心点,计算在该包围框内每个该光流特征点相对于该中心点的缩放值的平均值,以获得该缩放平均值;以及根据该被跟踪物体的包围框位置和该光流特征点的位置,计算在该包围框内每个该光流特征点的位移值的平均值,以获得该位移平均值。
[0130]
此外,所述标识确认模块13进一步用于计算每个该被跟踪物体在该当前帧图像和该上一帧图像之间的相关性系数;响应于该相关性系数大于预定关联阈值,将相应的该被跟踪物体在该当前帧图像中的包围框位置作为检测物体的边框位置;以及根据该检测物体的边框位置,通过简单的在线实时跟踪方法计算并匹配在前后帧图像中物体的身份标识,以获得每个该被跟踪物体的身份标识。
[0131]
值得一提的是,在本发明的一示例中,所述目标检测模块20进一步用于在输入该视频流中的当前帧图像时,判断该基于深度学习的目标检测模型是否正在运行;响应于该基于深度学习的目标检测模型正在运行,跳过检测该当前帧图像;以及响应于该基于深度学习的目标检测模型未运行,通过该基于深度学习的目标检测模型对该当前帧图像进行目标检测处理,以得到该候选跟踪物体。
[0132]
在本发明的一示例中,如图9所示,所述目标更新模块30包括相互可通信地连接的一监测模块31、一交并比计算模块32、一置信度比较模块33、一保留模块34以及一更新模块35,其中所述监测模块31用于监测是否存在已有的被跟踪物体;其中所述交并比计算模块32用于响应于存在该已有的被跟踪物体,计算该候选跟踪物体与该已有的被跟踪物体之间的交并比;其中所述置信度比较模块33用于响应于该交并比大于预定交并比阈值,比较该
候选跟踪物体的置信度得分与该已有的被跟踪物体的置信度得分的大小;其中所述保留模块34用于响应于该已有的被跟踪物体的置信度得分不小于该候选跟踪物体的置信度得分,将该已有的被跟踪物体作为在该当前帧图像中需要跟踪的该被跟踪物体;其中所述更新模块35用于响应于该已有的被跟踪物体的置信度得分小于该候选跟踪物体的置信度得分,或该交并比不大于该预定交并比阈值,或不存在该已有的被跟踪物体,将该候选跟踪物体作为在该当前帧图像中需要跟踪的该被跟踪物体。
[0133]
示意性电子设备
[0134]
下面,参考图10来描述根据本发明的一实施例的电子设备。如图10所示,电子设备90包括一个或多个处理器91和存储器92。
[0135]
所述处理器91可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备90中的其他组件以执行期望的功能。换言之,所述处理器91包括被配置成执行指令的一个或多个物理设备。例如,所述处理器91可被配置成执行作为以下各项的一部分的指令:一个或多个应用、服务、程序、例程、库、对象、组件、数据结构、或其他逻辑构造。这种指令可被实现以执行任务、实现数据类型、转换一个或多个部件的状态、实现技术效果、或以其他方式得到期望结果。
[0136]
所述处理器91可包括被配置成执行软件指令的一个或多个处理器。作为补充或替换,所述处理器91可包括被配置成执行硬件或固件指令的一个或多个硬件或固件逻辑机。所述处理器91的处理器可以是单核或多核,且在其上执行的指令可被配置为串行、并行和/或分布式处理。所述处理器91的各个组件可任选地分布在两个或更多单独设备上,这些设备可以位于远程和/或被配置成进行协同处理。所述处理器91的各方面可由以云计算配置进行配置的可远程访问的联网计算设备来虚拟化和执行。
[0137]
所述存储器92可以包括一个或多个计算程序产品,所述计算程序产品可以包括各种形式的计算可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算可读存储介质上可以存储一个或多个计算程序指令,所述处理器11可以运行所述程序指令,以实现上文所述的本发明的上述示意性方法中的部分或全部步骤,以及/或者其他期望的功能。
[0138]
换言之,所述存储器92包括被配置成保存可由所述处理器91执行以实现此处所述的方法和过程的机器可读指令的一个或多个物理设备。在实现这些方法和过程时,可以变换所述存储器92的状态(例如,保存不同的数据)。所述存储器92可以包括可移动和/或内置设备。所述存储器92可包括光学存储器(例如,cd、dvd、hd-dvd、蓝光盘等)、半导体存储器(例如,ram、eprom、eeprom等)和/或磁存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、mram等)等等。所述存储器92可包括易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址设备。
[0139]
可以理解,所述存储器92包括一个或多个物理设备。然而,本文描述的指令的各方面可另选地通过不由物理设备在有限时长内持有的通信介质(例如,电磁信号、光信号等)来传播。所述处理器91和所述存储器92的各方面可被一起集成到一个或多个硬件逻辑组件中。这些硬件逻辑组件可包括例如现场可编程门阵列(fpga)、程序和应用专用的集成电路(pasic/asic)、程序和应用专用的标准产品(pssp/assp)、片上系统(soc)以及复杂可编程
逻辑器件(cpld)。
[0140]
在一个示例中,如图10所示,所述电子设备90还可以包括输入装置93和输出装置94,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。例如,该输入装置93可以是例如用于采集图像数据或视频数据的摄像模组等等。又如,所述输入装置93可以包括诸如键盘、鼠标、触摸屏或游戏控制器之类的一个或多个用户输入设备或者与其对接。在一些实施例中,所述输入装置93可以包括所选择的自然用户输入(nui)部件或与其对接。这种元件部分可以是集成的或外围的,并且输入动作的转导和/或处理可以在板上或板外被处理。示例nui部件可包括用于语言和/或语音识别的话筒;用于机器视觉和/或姿势识别的红外、色彩、立体显示和/或深度相机;用于运动检测和/或意图识别的头部跟踪器、眼睛跟踪器、加速计和/或陀螺仪;以及用于评估脑部活动和/或身体运动的电场感测部件;和/或任何其他合适的传感器。
[0141]
该输出装置94可以向外部输出各种信息,包括分类结果等。该输出装置94可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0142]
当然,所述电子设备90还可以进一步包括所述通信装置,其中所述通信装置可被配置成将所述电子设备90与一个或多个其他计算机设备通信地耦合。所述通信装置可以包括与一个或多个不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信子系统可被配置成用于经由无线电话网络或者有线或无线局域网或广域网来进行通信。在一些实施例中,所述通信装置可允许所述电子设备90经由诸如因特网这样的网络将消息发送至其他设备以及/或者从其它设备接收消息。
[0143]
将会理解,此处描述的配置和/或方法本质是示例性的,这些具体实施例或示例不应被视为限制性的,因为许多变体是可能的。此处描述的具体例程或方法可以表示任何数量的处理策略中的一个或多个。如此,所示和/或所述的各种动作可以以所示和/或所述顺序、以其他顺序、并行地执行,或者被省略。同样,上述过程的次序可以改变。
[0144]
当然,为了简化,图10中仅示出了该电子设备90中与本发明有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备90还可以包括任何其他适当的组件。
[0145]
根据本发明的另一方面,本发明进一步提供了诸如配置有摄像模组的近眼显示光学系统等等之类的电子设备,其中所述电子设备配置有上述多目标实时跟踪系统,用于处理经由近眼显示光学系统采集的视频流。示例性地,如图11所示,所述电子设备包括一近眼显示光学系统600和所述多目标实时跟踪系统1,其中所述多目标实时跟踪系统1被配置于所述近眼显示光学系统600,用于实时跟踪经由所述近眼显示光学系统600采集的视频流中的目标。可以理解的是,所述近眼显示光学系统600可以但不限于被实施为具有摄像功能的ar眼镜。
[0146]
示意性计算程序产品
[0147]
除了上述方法和设备以外,本发明的实施例还可以是计算程序产品,其包括计算程序指令,所述计算程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本发明各种实施例的方法中的步骤。
[0148]
所述计算程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本发明实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如
java、c++等,还包括常规的过程式程序设计语言,诸如c语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
[0149]
此外,本发明的实施例还可以是计算可读存储介质,其上存储有计算程序指令,所述计算程序指令在被处理器运行时使得所述处理器执行本说明书上述方法中的步骤。
[0150]
所述计算可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0151]
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,在本发明中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
[0152]
本发明中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0153]
还需要指出的是,在本发明的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。
[0154]
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0155]
本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明。本发明的目的已经完整并有效地实现。本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1