一种多目标跟踪方法以及终端设备与流程

文档序号:18872804发布日期:2019-10-14 19:56阅读:183来源:国知局
一种多目标跟踪方法以及终端设备与流程

本申请涉及目标检测技术领域,尤其涉及一种多目标跟踪方法以及终端设备。



背景技术:

在全国争建“平安城市”的大背景下,摄像头安装越来越密集,监控到的数据量也越来越大,因而对监控视频内容准确、快速的自动化分析技术的需求越来越迫切。其中,多目标跟踪(即匹配不同目标获取目标轨迹)在视频监控系统中具有举足轻重的作用。随着近些年目标检测技术的提升,基于检测结果的目标跟踪逐渐成为多目标追踪的主要手段。“准确”、“快速”已经成为当前目标跟踪的核心诉求。

然而,在复杂场景下,目标之间经常会存在交互行为,尤其是在目标被遮挡的情况下,对目标准确、快速的跟踪是一项巨大的技术挑战。人脑在处理这种情形下的目标跟踪时,会首先通过人眼寻找整体特征,再辅以局部特征加以确认(如行人的头肩特征),甚至再辅以更局部的特征(如一顶特别的帽子),利用这些局部特征进行比对跟踪。

考虑到局部特征(如行人的头肩)被遮挡可能性比整体特征(如整个行人)小的事实,目前被广泛采用的核相关滤波(kernelcorrelationfilter,kcf)算法就是利用局部特征进行跟踪,但当局部特征(如行人的头肩)也被遮挡时,跟踪毫无疑问会失效。而目前主流关联算法在目标发生遮挡时,目标检测框的特征变化巨大,关联就会失效,跟踪也就失败了。



技术实现要素:

本申请实施例提供了一种多目标跟踪方法以及终端设备,用于在目标被遮挡时,还能准确关联上该目标,实现对目标的关联跟踪。

有鉴于此,本申请实施例第一方面提供了一种多目标跟踪方法,该方法包括:

终端设备通过读取图片或解码视频等多种方式得到某一时刻的待处理帧,再对该待处理帧中的目标进行检测得到检测结果;之后,终端设备将检测结果与记录到的跟踪结果(即终端设备上一时刻记录到的检测结果)分割成相同的至少两个区域框,并计算检测结果的各个区域框的深度特征与跟踪结果的各个区域框的深度特征,得到检测结果各个区域框与跟踪结果各个区域框之间的区域相似度,并进一步根据区域相似度得到检测结果与跟踪结果之间整体的相似度;最后,若得到的相似度满足预设条件,则终端设备将该检测结果与该跟踪结果进行关联跟踪,这也就意味着跟踪成功。这里需要说明的是,终端设备可以是计算机、手机、摄像设备等可移动智能终端设备,也可以是具有显示功能的智能手表等智能可穿戴设备,具体此处不做限定。

在本申请实施例中,终端设备通过将检测结果与该终端设备记录到的跟踪结果分割成相同的若干区域框,并分别计算每一个分割后的检测结果的区域框与每一个分割后的跟踪结果的区域框的深度特征之间的区域相似度,之后再由区域相似度计算得到检测结果与跟踪结果之间整体的相似度。这样,通过将检测结果以及跟踪结果分割成小区域后再依次进行匹配,来计算相似度,那么在目标被部分遮挡时,也能准确关联上该目标,实现对目标的关联跟踪。

结合本申请实施例第一方面,在本申请实施例第一方面的第一种实施方式中,终端设备根据区域相似度得到检测结果与跟踪结果之间的相似度具体可以是:首先终端设备获取到检测结果被分割成的各个区域框的特征权重,每个区域框的特征权重对应有一个计算得到的区域相似度,之后终端设备将区域相似度与对应的区域框的特征权重进行权重加和的运算,从而得到该检测结果与该跟踪结果之间的相似度。

在本申请实施例中,具体阐述了如何根据检测结果各个区域框的特征权重以及区域相似度来计算得到检测结果与跟踪结果之间整体的相似度,简单易操作,具备实用性。

结合本申请实施例第一方面的第一种实施方式,在本申请实施例第一方面的第二种实施方式中,在终端设备将区域相似度与对应的区域框的特征权重进行权重加和的运算得到该检测结果与该跟踪结果之间的相似度之前,还可以先进一步获取到检测结果的遮挡关系,该遮挡关系包括检测结果的未被遮挡区域以及被遮挡区域,之后,将检测结果中被遮挡区域所分割成的各个区域框的特征权重的取值都赋值为零。

在本申请实施例中,终端设备先获取到检测结果的遮挡关系,终端设备可以基于获取到的遮挡关系确定检测结果中的哪一部分是被遮挡区域,这样终端设备就可以进一步将被遮挡区域所分割成的区域框的特征权重的取值设置为零,从而简化了计算量,具备高效性。

结合本申请实施例第一方面的第一种实施方式以及本申请实施例第一方面的第二种实施方式,在本申请实施例第一方面的第三种实施方式中,终端设备将区域相似度与区域相似度对应的特征权重进行权重加和得到检测结果与跟踪结果之间的相似度具体可以通过如下公式计算得到:

其中,aff(deti,trackj)就表示检测结果与跟踪结果之间的相似度。ωk为检测结果中第k个区域框的特征权重,affk(deti,trackj)为检测结果中第k个区域框与跟踪结果中第k个区域框之间的区域相似度。

在本申请实施例中,给出具体的计算公式说明如何终端设备如何根据区域相似度计算得到整体的相似度,具备可操作性。

结合本申请实施例第一方面的第二种实施方式,在本申请实施例第一方面的第四种实施方式中,终端设备获取检测结果的遮挡关系具体可以是:终端设备从待处理帧中获取到的n个(n为正整数)检测结果按照靠近待处理帧上边缘距离(即纵向离边缘距离)依次排序,待处理帧中所有检测结果经过上述排序后都会有一个序号,依次记为1,2,3……,n。距离待处理帧上边缘越近的检测结果,则序号越小,这样排序后,序号越大则越靠近拍摄图片或视频的摄像头。因为靠近摄像头的检测结果(即远离待处理帧上边缘的检测结果)会挡住有重叠的靠后的检测结果(即靠近待处理帧上边缘的检测结果),所以可以计算出每个检测结果的未被遮挡区域。具体而言,可以先把当前待处理帧所有像素点值设为零,之后终端设备再循环从1到n把序号为i的检测结果(即检测结果i,其中i为正整数,1≤i≤n)内的像素点值都设为i。这样最后检测结果i内像素点值仍然为i的区域就是检测结果i中未被遮挡区域,除此之外检测结果i中的其他区域(即检测结果i的像素点值不为i的区域)就是被遮挡区域。

在本申请实施例中,具体阐述了终端设备如何计算得到检测结果的遮挡关系,易于操作,具体可实施性。

结合本申请实施例第一方面、本申请实施例第一方面的第一种实施方式至本申请实施例第一方面的第四种实施方式,在本申请实施例第一方面的第五种实施方式中,终端设备对待处理帧进行目标检测以获取到检测结果,该检测结果具体可以是获取到目标检测框,该目标检测框是用目标的位置、目标的长宽等表示,在待处理帧中,目标检测框可以是一个,也可以是多个,具体由用户需要获取的检测结果来确定。还需要说明的是,终端设备获取到的检测结果除了可以是获取到目标检测框,也可以是获取目标关键点检测信息(如当目标是人时,则可以把人分为头、胸部、腰部、四肢等区域,这些区域的位置、长宽等就构成上述目标关键点信息),具体此处对检测结果不做限定。类似地,终端设备记录到的跟踪结果也可以是目标跟踪框或目标关键点跟踪信息,具体此处不做限定。

在本申请实施例中,进一步说明了检测结果可以有多种形式存在,可以应用在不同的实际场景,具备灵活性。

结合本申请实施例第一方面、本申请实施例第一方面的第一种实施方式至本申请实施例第一方面的第五种实施方式,在本申请实施例第一方面的第六种实施方式中,若相似度满足预设条件,则该终端设备将检测结果与跟踪结果进行关联跟踪具体可以是:终端设备判断该相似度是否满足匈牙利算法,如果满足匈牙利算法,终端设备就将该检测结果与跟踪结果进行关联跟踪。

在本申请实施例中,终端设备采用匈牙利算法来确定得到的检测结果与跟踪结果之间的相似度是否满足被关联跟踪的条件,具备实用性。

本申请实施例第二方面提供了一种终端设备,该终端设备包括:

第一获取单元,用于获取待处理帧;

检测单元,用于检测该待处理帧中的目标,得到检测结果;

分割单元,用于将该检测结果与跟踪结果分别分割成至少两个区域框,该跟踪结果为该终端设备记录到的上一时刻的检测结果;

计算单元,用于通过计算该检测结果的各个区域框的深度特征与该跟踪结果的各个区域框的深度特征,得到该检测结果各个区域框与该跟踪结果各个区域框之间的区域相似度;

第二获取单元,用于根据该区域相似度得到该检测结果与该跟踪结果之间的相似度;

关联单元,用于若该相似度满足预设条件,则将该检测结果与该跟踪结果进行关联跟踪。

结合本申请实施例第二方面,在本申请实施例第二方面的第一种实施方式中,该第二获取单元包括:

第一获取模块,用于获取该检测结果各个区域框的特征权重;

第二获取模块,用于将该区域相似度与该区域相似度对应的该特征权重进行权重加和,得到该检测结果与该跟踪结果之间的相似度。

结合本申请实施例第二方面的第一种实施方式,在本申请实施例第二方面的第二种实施方式中,第二获取单元还可以包括:

第三获取模块,用于获取该检测结果的遮挡关系,该遮挡关系包括该检测结果的未被遮挡区域以及被遮挡区域;

赋值模块,用于将该被遮挡区域分割成的区域框的特征权重的取值置为零。

结合本申请实施例第二方面的第一种实施方式以及本申请实施例第二方面的第二种实施方式,在本申请实施例第二方面的第三种实施方式中,第二获取模块具体可以用于:

根据公式计算该检测结果与该跟踪结果之间的相似度aff(deti,trackj);

其中,ωk为该检测结果中第k个区域框的特征权重,affk(deti,trackj)为该检测结果中第k个区域框与该跟踪结果中第k个区域框之间的区域相似度。

结合本申请实施例第二方面的第二种实施方式,在本申请实施例第二方面的第四种实施方式中,该第三获取模块具体可以用于:

从该待处理帧中获取到的n个检测结果按照靠近该待处理帧上边缘距离的远近依次排序,其中n为正整数;

将该待处理帧的像素点值设为零;

循环从1到n把检测结果i内的像素点值设为i,其中i为正整数且1≤i≤n,该检测结果i为序号为i的检测结果;

确定该检测结果i的像素点值依然为i的区域为该检测结果i中未被遮挡区域,并确定该检测结果i的像素点值不为i的区域为该检测结果i中的被遮挡区域。

结合本申请实施例第二方面、本申请实施例第二方面的第一种实施方式至本申请实施例第二方面的第四种实施方式,在本申请实施例第二方面的第五种实施方式中,该检测结果包括:检测单元获取到的目标检测框,或,检测单元获取到的目标关键点检测信息;该跟踪结果包括:终端设备获取到的目标跟踪框,或,终端设备获取到的目标关键点跟踪信息。

结合本申请实施例第二方面、本申请实施例第二方面的第一种实施方式至本申请实施例第二方面的第五种实施方式,在本申请实施例第二方面的第六种实施方式中,该关联单元具体用于:

若该相似度满足匈牙利算法,则将该检测结果与该跟踪结果进行关联跟踪。

本申请实施例第三方面还提供了一种终端设备,该终端设备包括:

处理器,存储器,总线和输入输出接口,该处理器、存储器和输入输出接口通过该总线连接;该存储器中存储有程序代码,该程序代码用于存储操作指令;该处理器用于调用该存储器中的程序代码时执行本申请实施例中任一项多目标跟踪方法中的步骤。

本申请实施例第四方面提供一种包含指令的计算机程序产品,当其在终端设备上运行时,使得该终端设备执行本申请实施例中任一项多目标跟踪方法中的步骤。

本申请实施例第五方面还提供一种计算机可读存储介质,需要说明的是,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,用于储存为上述相关装置所用的计算机软件指令,当该指令在终端设备上运行时,使得终端设备执行本申请实施例中任一项多目标跟踪方法中的步骤。

该存储介质可以是u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质,具体此处不做限定。

从以上技术方案可以看出,本申请实施例具有以下优点:

终端设备通过读取图片或解码视频等得到某一时刻的待处理帧,再对该待处理帧中的目标进行检测得到检测结果;之后,终端设备将检测结果与记录到的跟踪结果(即终端设备上一时刻记录到的检测结果)分割成相同的至少两个区域框,并计算检测结果的各个区域框的深度特征与跟踪结果的各个区域框的深度特征,得到检测结果各个区域框与跟踪结果各个区域框之间的区域相似度,并进一步根据区域相似度得到检测结果与跟踪结果之间整体的相似度;最后,若得到的相似度满足预设条件,则终端设备将该检测结果与该跟踪结果进行关联跟踪,这也就意味着跟踪成功。在本申请实施例中,终端设备通过将检测结果与该终端设备记录到的跟踪结果分割成相同的若干区域框,并分别计算每一个分割后的检测结果的区域框与每一个分割后的跟踪结果的区域框的深度特征之间的区域相似度,之后再由区域相似度计算得到检测结果与跟踪结果之间整体的相似度。这样,通过将检测结果以及跟踪结果分割成小区域后再依次进行匹配,来计算相似度,那么在目标被部分遮挡时,也能准确关联上该目标,实现对目标的关联跟踪。

附图说明

图1为本申请实施例多目标检测中标出的三个目标检测框;

图2为本申请实施例多目标检测中标出的目标关键点信息;

图3为本申请实施例的当前待处理帧中目标检测框之间的遮挡情况;

图4为本申请实施例对各目标检测框标注像素点值的示意;

图5为本申请实施例对目标检测框以及目标跟踪框分割成若干区域框的示意;

图6为本申请实施例计算目标检测框与目标跟踪框之间深度特征的相似度的示意;

图7为本申请实施例中终端设备的一个实施例示意图;

图8为本申请实施例中终端设备的另一实施例示意图;

图9为本申请实施例中终端设备的另一实施例示意图;

图10为本申请实施例中终端设备的另一实施例示意图。

具体实施方式

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

本申请实施例首先提供了一种多目标跟踪方法,用于在目标被遮挡时,还能准确关联上该目标,实现对目标的跟踪。首先,终端设备(如计算机)会解析摄像头拍摄到的图片或解码该摄像头拍摄到的视频,以得到待处理帧。之后,终端设备对上述待处理帧进行目标检测以获取到检测结果(如终端设备可以通过终端设备上的检测器、检测模块等对待处理帧进行目标检测,具体此处不做限定。但为便于阐述,后续均用检测器对本申请实施例进行描述),具体可以是获取到目标检测框,该目标检测框是用目标的位置、目标的长宽等表示,在待处理帧中,目标检测框可以是一个,也可以是多个,具体由用户需要获取的检测结果来确定。如图1所示意的是多目标检测中标出的三个目标检测框,分别为目标检测框a、目标检测框b、目标检测框c,若用户需要获取的检测结果是人物信息,则目标检测框就包括目标检测框a、目标检测框c,若用户需要获取的检测结果是动物信息,则目标检测框就包括目标检测框b,若用户需要获取的检测结果是活动的物体信息,则目标检测框就包括目标检测框a、目标检测框b、目标检测框c。

需要说明的是,终端设备对待处理帧进行目标检测,是利用深度学习网络来对待处理帧进行目标检测的,可以是利用更快速基于区域的卷积神经网络(fasterregion-basedconvolutionalneuralnetworks,fasterr-cnn)对待处理帧进行目标检测,也可以是利用掩码基于区域的卷积神经网络(maskregion-basedconvolutionalneuralnetworks,maskr-cnn)对待处理帧进行目标检测,具体此处对深度学习网络不做限定。

还需要说明的是,终端设备通过检测器对上述待处理帧进行目标检测以获取到检测结果,除了可以是获取到目标检测框,也可以是获取目标关键点检测信息(如当目标是人时,则可以把人分为头、胸部、腰部、四肢等区域,这些区域的位置、长宽等就构成上述目标关键点信息),具体此处对检测结果不做限定。如图2所示,目标关键点检测信息就可以包括a人物的头、腰部、左上肢、右上肢以及b人物的头、腰部、左上肢、右上肢,可分别标记为区域1、区域2、区域3、区域4、区域5、区域6、区域7、区域8。在本申请实施例中,终端设备无论获取的是目标检测框还是目标关键点检测信息,本申请所阐述的多目标跟踪方法都是类似的。为便于阐述,终端设备通过检测器对上述待处理帧进行目标检测以获取到检测结果均以该检测结果为获取到的目标检测框为例进行说明。

终端设备通过检测器获取到目标检测框之后,为了获得目标中未被遮挡部位的特征,就需要知道当前待处理帧所有已获取到的目标检测框的遮挡关系,计算遮挡关系的方式可以如下所述:

具体请参阅图3,终端设备从待处理帧中获取到的n个(n为正整数)目标检测框按照靠近待处理帧上边缘301距离(纵向离边缘距离)依次排序,待处理帧中所有目标检测框经过上述排序后都会有一个序号,依次记为1,2,3……,n。距离待处理帧上边缘301越近的目标检测框,则序号越小,这样排序后,序号越大则越靠近摄像头。因为靠近摄像头的目标检测框(即远离待处理帧上边缘的目标检测框)会挡住有重叠的靠后的目标检测框(即靠近待处理帧上边缘的目标检测框),所以可以计算出每个目标检测框的未被遮挡区域。具体而言,可以先把当前待处理帧所有像素点值设为0,之后终端设备再循环从1到n把序号为i的目标检测框(i为正整数,1≤i≤n)内的像素点值都设为i。这样最后目标检测框i内像素点值仍然为i的区域就是目标检测框i中未被遮挡区域,除此之外目标检测框i中的其他区域就是被遮挡区域。为便于理解,这里以图4为例进行说明,若终端设备共获取到3(即n=3)个目标检测框,依照图3所述的标记序号的方式将这3个目标检测框分别记为框1、框2、框3。标记好序号之后,首先将当前获取到的待处理帧401中的所有像素点值都设为“0”(即图4中待处理帧401中每一个“0”所处的位置就是一个像素点)。之后,则从框1开始将框1中所有像素点值设为“1”(其中待处理帧中为“0”的像素点值未示出),标记好框1的像素点值之后,再将框2中所有像素点值设为“2”,从图4中可以看出,由于框1有部分区域被框2遮挡,因此框1被框2遮挡的区域的像素点值则会由原来的“1”更新为“2”。类似地,标记好框2的像素点值之后,再将框3中所有像素点值设为“3”,而又由于框2有部分区域被框3遮挡,因此框2被框3遮挡的区域的像素点值则会由原来的“2”更新为“3”。当需要获取框1的遮挡关系时,则从图4中可知,像素点值依然为“1”的区域就是框1的未遮挡区域;当需要获取框2的遮挡关系时,则像素点值依然为“2”的区域就是框2的未遮挡区域;当需要获取框3的遮挡关系时,则像素点值依然为“3”的区域就是框3的未遮挡区域。类似地,若终端设备获取的目标检测框有n个,则按上述方式依次类推,直至标记好第n个目标检测框中的像素点值。当用户需要获取第i个目标检测框的遮挡关系时,则像素点值依然为“i”的区域就是第i个目标检测框的未遮挡区域。

当对检测器检测到的多目标(假设共有n个目标)中的某个目标进行跟踪时,则需要依次比较终端设备通过检测器检测到的目标(也可称为检测目标i,1≤i≤n)和终端设备所记录的所有的m个目标(也可称为跟踪目标,跟踪器会记录到m个跟踪目标,m为正整数,n与m可以相同,也可以不同)之间的相似度,以此来判别检测目标i是否与跟踪目标j(1≤j≤m)是同一个目标。需要说明的是,终端设备可以通过终端设备上的跟踪器、模块模块等对待处理帧上一时刻的m个目标进行记录,具体此处不做限定。但为便于阐述,后续均用跟踪器对本申请实施例进行描述)。而目标的相似度,主要是用目标检测框的深度特征和目标跟踪框的深度特征之间的相似度来进行表征。其中,目标跟踪框为跟踪器所记录下来的检测框,在多目标跟踪中,目标跟踪框的数量与跟踪目标的数量相同,都可记为m。具体地,可以利用深度学习模型(如vggm、siamesenet)一次提取某个目标检测框(如目标检测框i)的深度特征以及目标跟踪框(如目标跟踪框j)的深度特征。这里需要说明的是,若目标检测框i与目标跟踪框j的大小不一样,在利用深度学习模型提取深度特征时,就会将目标检测框i与目标跟踪框j匹配成相同大小的框,以便于后续的进一步处理。之后,终端设备会分别将目标检测框i与目标跟踪框j以同样的分割方式分割成若干个区域框。如图5所示,将目标检测框i分割成8*5的区域框a,同样地,将目标跟踪框j也分割成同样大小的8*5的区域框b,区域框a与区域框b的大小一样。在图5中,跟踪器在t-1时刻获取到目标跟踪框时,此时目标跟踪框j未被任何东西遮挡,而检测器在t时刻检测到目标检测框时,目标检测框i正被目标检测框i+1遮挡住了一部分。

由于上述已经利用深度学习模型一次提取到了目标检测框i的深度特征以及目标跟踪框j的深度特征,那么将上述目标检测框i以及目标跟踪框分别分割成若干区域框之后,也将得到目标检测框i分成的若干区域框a的深度特征以及模板跟踪框j分成的若干区域b的深度特征。这样,目标检测框i(也可记为deti)与跟踪器记录的目标跟踪框j(也可记为trackj)之间的相似度aff(deti,trackj)就可以表示成目标检测框i和目标跟踪框j各个区域框的特征赋权重加和:

其中,ωk为目标检测框i中第k个区域框a的特征权重,affk(deti,trackj)为目标检测框i中第k个区域框a的深度特征与目标跟踪框j中第k个区域框b的深度特征之间的区域相似度。该区域相似度可以通过多种方式计算得到,例如欧式距离、卡方距离、cos距离等,具体此处对如何计算得到的区域相似度不做限定。由于终端设备已经根据上述遮挡关系计算得到了目标检测框i的未遮挡区域,相应地也就知道了目标检测框i的遮挡区域,那么由目标检测框i的遮挡区域分割的若干区域框的特征权重将全部赋值为0。而针对上述计算得到的目标检测框i的未遮挡区域,若由该目标检测框i的未遮挡区域分割成的某区域框(如区域框6)的遮挡比例超过了一定阈值,该区域框6就标记为遮挡,权重ωk也被赋值为0。这里需要说明的是,ωk是可以根据不同场景自行进行相应调整的,例如,在拥挤的街道要跟踪行人q,那么行人头、肩所在的区域框就更为重要,那么就可以把行人头、肩所处区域框的特征权重相应提高。

这样,终端设备就根据上述公式得到了目标检测框i与目标跟踪框j的相似度。之后,再采用匈牙利算法对该相似度进行匹配关联,若该相似度满足该匈牙利算法,则目标检测框i与目标跟踪框j关联成功,目标检测框i中的检测目标i与目标跟踪框j中的跟踪目标j为同一目标。若该相似度不满足该匈牙利算法,则目标检测框i与目标跟踪框j关联失败,目标检测框i中的检测目标i与目标跟踪框j中的跟踪目标j不是同一目标。之后目标检测框i可以采用上述方式继续再与目标跟踪框j+1、j+2、……、m顺次匹配,来继续查找与目标检测框i相匹配的目标跟踪框。

为便于理解,下面以图6为例对如何获取到目标检测框i与目标跟踪框j的相似度进行说明。这里我们只针对一个目标检测框进行说明,若有多个目标检测框,则每个目标检测框都是按照类似的方式进行相似度的计算,此处不再赘述。在图6中,假设当前时刻为t时刻,在t时刻终端设备通过检测器获取到的当前待处理帧(即第t帧)包括2个目标检测框,分别为目标检测框1和目标检测框2(目标检测框2在图6中只示意出了遮挡住目标检测框1的部分,其余区域的被省去)。而在t-1时刻,终端设备通过跟踪器记录到的第t-1帧时,那时下面的光头男子还未进入到第t-1帧中的画面,因此终端设备通过跟踪器获取到的目标跟踪框只有目标跟踪框1(即t-1时刻的目标跟踪框1就是检测器在t-1时刻获取到的目标检测框1)。现在我们试图检测器中第t帧画面的检测目标1(即t时刻目标检测框1中打电话的男子)与跟踪器中第t-1帧画面的跟踪目标1关联起来,那么就可以通过计算第t帧画面的检测目标框1与跟踪器中第t-1帧画面的目标跟踪框1的相似度来得到。首先,利用深度学习模型一次提取目标检测框1的深度特征以及目标跟踪框1的深度特征,并将目标检测框1分割为7*3的区域框,将目标跟踪框也分割成7*3的区域框。由于目标检测框1中的打电话的男子被前方的光头男子遮挡住了下本身,则根据上述计算相似度的公式将目标检测框1中下半部分被遮挡区域中所分割成的区域框(即目标检测框1中下面4*3的区域框)的特征权重ω全部置为0,如果试图与跟踪器中的目标跟踪框1进行深度特征的比对,则也需要将目标跟踪框1同样的下半部分(即目标跟踪框1中下面4*3的区域框)的特征权重ω也置为0。也就是说,目标检测框1与目标跟踪框1分割成的每个区域框的特征权重ωk都是由目标检测框1来决定的。之后终端设备获取目标检测框1上半部分(即目标检测框1中上面的3*3的区域框)的特征权重ωk(即目标检测框1中的ω1、ω2、ω3、ω4、ω5、ω6、ω7、ω8、ω9),再来比对目标检测框1与目标跟踪框1相同的未被遮挡的上半部分各个区域深度特征的相似度affk(det,track)。最后将每个区域框的特征权重ωk代入上述计算相似度的公式,就可以得到第t帧画面的检测目标框1与跟踪器中第t-1帧画面的目标跟踪框1的相似度。之后,再采用匈牙利算法对该相似度进行匹配关联。这样,对于复杂场景下的目标被遮挡的情形,就可以实现有效的关联跟踪。

最后,对于关联成功的目标检测框,则更新跟踪器中的目标跟踪框为该目标检测框;而对于关联失败的目标检测框,则把该目标检测框初始化为跟踪器中新的目标跟踪框。之后,就是采用上述方式继续下一时刻待处理帧的操作。

上述对本申请实施例中的多目标跟踪方法进行了具体说明,下面对本申请实施例中的终端设备进行具体说明,请参阅图7,本申请实施例中终端设备的一个实施例包括:

第一获取单元701,用于获取待处理帧;

检测单元702,用于检测该待处理帧中的目标,得到检测结果;

分割单元703,用于将该检测结果与跟踪结果分别分割成至少两个区域框,该跟踪结果为该终端设备记录到的上一时刻的检测结果;

计算单元704,用于通过计算该检测结果的各个区域框的深度特征与该跟踪结果的各个区域框的深度特征,得到该检测结果各个区域框与该跟踪结果各个区域框之间的区域相似度;

第二获取单元705,用于根据该区域相似度得到该检测结果与该跟踪结果之间的相似度;

关联单元706,用于若该相似度满足预设条件,则将该检测结果与该跟踪结果进行关联跟踪。

在本申请实施例中,第一获取单元701通过读取图片或解码视频等得到某一时刻的待处理帧,再通过检测单元702对该待处理帧中的目标进行检测得到检测结果;之后,分割单元703将检测结果与记录到的跟踪结果(即终端设备上一时刻记录到的检测结果)分割成相同的至少两个区域框,并通过计算单元704计算检测结果的各个区域框的深度特征与跟踪结果的各个区域框的深度特征,得到检测结果各个区域框与跟踪结果各个区域框之间的区域相似度,并通过第二获取单元705进一步根据区域相似度得到检测结果与跟踪结果之间整体的相似度;最后,若得到的相似度满足预设条件,则关联单元706将该检测结果与该跟踪结果进行关联跟踪,这也就意味着跟踪成功。在本申请实施例中,终端设备通过将检测结果与该终端设备记录到的跟踪结果分割成相同的若干区域框,并分别计算每一个分割后的检测结果的区域框与每一个分割后的跟踪结果的区域框的深度特征之间的区域相似度,之后再由区域相似度计算得到检测结果与跟踪结果之间整体的相似度。这样,通过将检测结果以及跟踪结果分割成小区域后再依次进行匹配,来计算相似度,那么在目标被部分遮挡时,也能准确关联上该目标,实现对目标的关联跟踪。

需要说明的是,在本申请的一些实施方式中,该检测结果包括:检测单元获取到的目标检测框,或,检测单元获取到的目标关键点检测信息;该跟踪结果包括:终端设备获取到的目标跟踪框,或,终端设备获取到的目标关键点跟踪信息。

还需要说明的是,在本申请的一些实施方式中,该关联单元706具体可以用于:

若该相似度满足匈牙利算法,则将该检测结果与该跟踪结果进行关联跟踪。

在本申请的一些实施方式中,图7对应的实施例中该第二获取单元705具体还可以包括更多的模块,以实现更为具体的功能,具体请参阅图8,本申请实施例中终端设备的一个实施例包括:

第一获取单元801、检测单元802、分割单元803、计算单元804、第二获取单元805以及关联单元806。本申请实施例中的第一获取单元801、检测单元802、分割单元803、计算单元804、第二获取单元805以及关联单元806与图7对应的实施例中的第一获取单元701、检测单元702、分割单元703、计算单元704、第二获取单元705以及关联单元706功能类似,此处不再赘述。

其中,第二获取单元805具体可以包括:

第一获取模块8051,用于获取该检测结果各个区域框的特征权重;

第二获取模块8052,用于将该区域相似度与该区域相似度对应的该特征权重进行权重加和,得到该检测结果与该跟踪结果之间的相似度。

此外,在本申请的一些实施方式中,图8对应的实施例中该第二获取单元705具体还可以包括更多的模块,以实现更为具体的功能,具体请参阅图9,本申请实施例中终端设备的一个实施例包括:

第一获取单元901、检测单元902、分割单元903、计算单元904、第二获取单元905中的第一获取模块9051、第三获取模块9052、赋值模块9053、第二获取模块9054、关联单元906。本申请实施例中的第一获取单元901、检测单元902、分割单元903、计算单元904、第二获取单元905的第一获取模块9051和第二获取模块9054、关联单元906与图8对应的实施例中的第一获取单元801、检测单元802、分割单元803、计算单元804、第二获取单元805的第一获取模块8051和第二获取模块8052、关联单元806功能类似,此处不再赘述。

其中,第三获取模块9052,用于获取该检测结果的遮挡关系,该遮挡关系包括该检测结果的未被遮挡区域以及被遮挡区域;

赋值模块9053,用于将该被遮挡区域分割成的区域框的特征权重的取值置为零。

在本申请的一些实施方式中,图8对应的第二获取模块8052以及图9对应的第二获取模块9054具体还可以用于:

根据公式计算该检测结果与该跟踪结果之间的相似度aff(deti,trackj);

其中,ωk为该检测结果中第k个区域框的特征权重,affk(deti,trackj)为该检测结果中第k个区域框与该跟踪结果中第k个区域框之间的区域相似度。

在本申请的一些实施方式中,第三获取模块9052具体还可以用于:

从该待处理帧中获取到的n个检测结果按照靠近该待处理帧上边缘距离的远近依次排序,其中n为正整数;

将该待处理帧的像素点值设为零;

循环从1到n把检测结果i内的像素点值设为i,其中i为正整数且1≤i≤n,该检测结果i为序号为i的检测结果;

确定该检测结果i的像素点值依然为i的区域为该检测结果i中未被遮挡区域,并确定该检测结果i的像素点值不为i的区域为该检测结果i中的被遮挡区域。

图7至图9对应的实施例中的终端设备具体的功能以及结构用于实现前述实施例中的多目标跟踪方法的步骤,具体此处不再赘述。

图7至图9从模块化功能实体的角度对本申请实施例中的终端设备进行了描述,下面从硬件处理的角度对本申请实施例中的终端设备进行描述,这里需要说明的是,终端设备可以是计算机、手机、摄像设备等可移动智能终端设备,也可以是具有显示功能的智能手表等智能可穿戴设备,只要能实现上述所述的多目标跟踪方法的设备,均可以称为终端设备,具体此处不做限定。如图10所示,为本申请实施例中终端设备的一个实施例示意图,具体包括:

该终端设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在终端设备上执行存储介质1030中的一系列指令操作。

该终端设备还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等。

上述图1至图6所描述的多目标跟踪方法中的步骤由终端设备基于该图10所示的结构实现。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1