一种基于目标检测的跟踪方法及设备与流程

文档序号:18400902发布日期:2019-08-09 23:52阅读:205来源:国知局
一种基于目标检测的跟踪方法及设备与流程

本发明涉及人工智能领域,尤其涉及一种基于目标检测的跟踪方法及设备。



背景技术:

现有技术中,目标跟踪是对图像帧序列的每一帧图像中的目标位置进行持续预测的过程,通过在每一帧图像中定位目标位置,能够生成所述目标的运动轨迹,目标跟踪的前提是定位了目标的位置,利用当前定位后的目标在后续图像帧中找到与所述定位的目标最佳匹配的目标的位置,侧重于目标在后续帧中的匹配。

目标跟踪能够应用于人工智能的各个领域,实现对视频帧(图像帧)序列中的动态目标进行跟踪,由于目标跟踪基于对定位的目标进行跟踪,一般的,在目标跟踪开始时刻定位目标位置后不再重新定位目标位置,并且由于目标跟踪的运动目标的不确定性,长期进行目标跟踪容易导致目标丢失的问题。



技术实现要素:

本发明提供了一种基于目标检测的跟踪方法及设备,利用间隔图像帧进行目标检测的方法每间隔图像帧重新确定一次目标的位置,保证长期进行目标跟踪时,目标不易丢失,提高了目标跟踪的性能,改善了目标跟踪时丢失目标的问题。

第一方面,本发明提供一种基于目标检测的跟踪方法,该方法包括:

利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

作为一种可选的实施方式,利用同一图像帧的跟踪框对检测框进行校正,包括:

确定同一图像帧的跟踪框及检测框之间的代价函数值;

根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

作为一种可选的实施方式,确定同一图像帧的跟踪框及检测框之间的代价函数值,包括:

确定同一图像帧的跟踪框及检测框之间的交并比iou。

作为一种可选的实施方式,根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正,包括:

所述代价函数值大于预设阈值时,确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;

对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

作为一种可选的实施方式,根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正,还包括:

所述代价函数值不大于预设阈值时,确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

作为一种可选的实施方式,根据匹配结果利用同一图像帧的跟踪框对检测框进行校正,包括:

得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

作为一种可选的实施方式,所述目标检测模型是基于深度学习的模型,包括以下任一种:

基于区域的全卷积网络r-fcn模型;

基于区域的卷积神经网络r-cnn模型;

更快的基于区域的卷积神经网络fasterr-cnn模型;

单步多框检测ssd模型。

作为一种可选的实施方式,所述目标跟踪算法包括以下任一种:

光流算法;

模板匹配算法;

卡尔曼滤波算法。

第二方面,本发明提供一种基于目标检测的跟踪设备,该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器用于执行如下步骤:

利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

作为一种可选的实施方式,所述处理器具体用于:

确定同一图像帧的跟踪框及检测框之间的代价函数值;

根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

作为一种可选的实施方式,所述处理器具体用于:

确定同一图像帧的跟踪框及检测框之间的交并比iou。

作为一种可选的实施方式,所述处理器具体用于:

所述代价函数值大于预设阈值时,确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;

对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

作为一种可选的实施方式,所述处理器具体还用于:

所述代价函数值不大于预设阈值时,确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

作为一种可选的实施方式,所述处理器具体用于:

得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

作为一种可选的实施方式,所述目标检测模型是基于深度学习的模型,包括以下任一种:

基于区域的全卷积网络r-fcn模型;

基于区域的卷积神经网络r-cnn模型;

更快的基于区域的卷积神经网络fasterr-cnn模型;

单步多框检测ssd模型。

作为一种可选的实施方式,所述目标跟踪算法包括以下任一种:

光流算法;

模板匹配算法;

卡尔曼滤波算法。

第三方面,本发明提供另一种基于目标检测的跟踪设备,该设备包括:检测模块、跟踪模块、校正模块,其中:

检测模块,用于利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

跟踪模块,用于利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

校正模块,用于每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

作为一种可选的实施方式,所述校正模块具体用于:

确定同一图像帧的跟踪框及检测框之间的代价函数值;

根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

作为一种可选的实施方式,所述校正模块具体用于:

确定同一图像帧的跟踪框及检测框之间的交并比iou。

作为一种可选的实施方式,所述校正模块具体用于:

所述代价函数值大于预设阈值时,确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;

对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

作为一种可选的实施方式,所述校正模块具体还用于:

所述代价函数值不大于预设阈值时,确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

作为一种可选的实施方式,所述校正模块具体用于:

得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

作为一种可选的实施方式,所述目标检测模型是基于深度学习的模型,包括以下任一种:

基于区域的全卷积网络r-fcn模型;

基于区域的卷积神经网络r-cnn模型;

更快的基于区域的卷积神经网络fasterr-cnn模型;

单步多框检测ssd模型。

作为一种可选的实施方式,所述目标跟踪算法包括以下任一种:

光流算法;

模板匹配算法;

卡尔曼滤波算法。

第四方面,本发明提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面所述方法的步骤。

本发明提供的一种基于目标检测的跟踪方法及设备,具有以下有益效果:

能够利用间隔的对图像帧序列进行目标检测的方法,确定当前检测的图像帧中所要跟踪的目标的位置,利用间隔图像帧进行目标检测的方法每间隔图像帧重新确定一次目标的位置,利用当前定位后的目标在后续图像帧中找到与所述定位的目标最佳匹配的目标的位置,保证长期进行目标跟踪时,目标不易丢失,提高了目标跟踪的性能,改善了目标跟踪时丢失目标的问题。

附图说明

图1为本发明实施例提供的一种基于目标检测的跟踪方法流程图;

图2为本发明实施例提供的一种基于目标检测的跟踪方法具体流程图;

图3为本发明实施例提供的一种基于目标检测的跟踪设备示意图;

图4为本发明实施例提供的另一种基于目标检测的跟踪设备示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明实施例基于目标检测模型对目标进行定位,从而基于定位的目标实现目标的跟踪,目前,可以利用目标检测模型定位目标的位置,目标检测大多是基于深度学习实现的,根据获取的每一帧图像,对所述图像中的目标进行检测,确定所述目标的分类以及所述目标在所述图像中的位置。

现有技术中,也可以利用目标检测模型实现类似对目标的“跟踪”(伪跟踪)效果,但所述目标检测的“跟踪”的实质是对每一图像帧进行检测,并且,由于所述目标检测模型基于深度学习的模型,将消耗大量计算机资源,因此,在嵌入式设备上无法兼顾性能与实时性,对每一图像帧目标检测的耗时较长,检测帧率较低。综上,利用目标检测实现目标的“跟踪”不能满足实时性要求。

另外,由于目标跟踪基于对定位的目标进行跟踪,一般的在目标跟踪开始时刻定位目标位置后不再重新定位目标位置,并且由于目标跟踪的运动目标的不确定性,长期进行目标跟踪容易导致目标丢失的问题,因此,本发明实施例提供了一种基于目标检测的跟踪方法,利用间隔图像帧进行目标检测的方法每间隔图像帧重新确定一次目标的位置,保证长期进行目标跟踪时,目标不易丢失,提高了目标跟踪的性能。

本发明实施例提供的方法的整体思想是,获取图像帧序列,相隔设定的图像帧进行一次目标检测,同时对检测到的目标进行若干次跟踪,对该过程不断重复,在某时刻,根据同一图像帧中检测的目标及跟踪的目标,确定保留的目标及舍弃的目标,从而重置待跟踪的目标。

如图1所示,该方法具体实施步骤如下:

步骤10:利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框。

获取图像帧序列后,利用目标检测模型对设定间隔的图像帧进行目标检测,所述设定间隔可以根据实际情况进行调整,保证调整后的设定间隔既要起到目标跟踪的效果又不影响目标跟踪的结果。利用所述目标检测模型检测到的所述图像帧中的目标可能是一个也可能是多个,得到的上述检测框可能是一个也可能是多个,该检测框检测出的当前图像帧中的目标的数量,与该当前图像帧中实际的目标数量以及该目标检测模型(算法)的性能有关。

所述检测框包括目标类型及目标位置,并且,所述目标位置包括:位置坐标,宽度及高度,即根据所述检测框能够确定目标在对应的图像帧的位置区域。

本发明对所述目标检测模型不作过多限定,该目标检测模型基于深度学习,能够实现对图像帧中的目标的定位,具体的目标检测模型可以包括以下任一种:

基于区域的全卷积网络r-fcn模型;基于区域的卷积神经网络r-cnn模型;更快的基于区域的卷积神经网络fasterr-cnn模型;单步多框检测ssd模型。

步骤11:利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框。

上述目标跟踪开始的时刻为利用上述目标检测模型得到的检测框的图像帧之后的连续图像帧中的第一帧图像,检测框定位了所要跟踪的目标后,利用目标跟踪算法,对连续图像帧中的目标位置进行跟踪,利用当前定位的目标在之后的连续图像帧中找到与所述定位的目标最佳匹配的目标的位置。

所述跟踪框包括目标位置,所述目标位置包括:位置坐标,宽度及高度,即根据所述跟踪框能够确定目标在对应的图像帧预测的位置区域。

由于所述目标跟踪算法,主要用于在之后的连续图像帧中找到与所述定位的目标最佳匹配的目标的位置,侧重于目标位置的匹配算法,因此,本发明实施例提供的目标跟踪算法包括以下任一种:

光流算法;模板匹配算法;卡尔曼滤波算法。

步骤12:每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

由于本发明实施例通过每隔所述设定间隔重置一次跟踪的目标,能够利用目标检测模型,有效防止长时间进行目标跟踪时丢失目标的问题。

具体的,利用同一图像帧的跟踪框对检测框进行校正,具体步骤如下:

步骤1:确定同一图像帧的跟踪框及检测框之间的代价函数值;

由于计算所述代价函数值即对上述同一图像帧的跟踪框及检测框所占的位置区域进行匹配,因此,可以根据计算同一图像帧的跟踪框及检测框之间的交并比iou,来确定同一图像帧的跟踪框及检测框之间的代价函数值。

本发明实施例也可以采用其他的区域匹配方法,计算同一图像帧的跟踪框及检测框之间的代价函数值,本实例不作过多限定。

步骤2:根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

步骤3:根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正,包括以下任一种情况:

1)所述代价函数值大于预设阈值时:

确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

其中,利用第一权重对所述跟踪框进行加权运算,利用第二权重对所述检测框进行加权运算,所述第一权重与第二权重的取值根据跟踪框及检测框匹配的程度可以进行调整,此处不作过多限定。

2)所述代价函数值不大于预设阈值时:

确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

当上述跟踪框及检测框的位置区域不匹配时,说明当前目标跟踪的目标已丢失,丢弃所述跟踪框,根据所述检测框定位的目标,重新对该目标进行目标跟踪,生成新的跟踪框。

另外,根据检测框与跟踪框中至少一个未得到时,有以下几种实施方式:

3)得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

未得到检测框说明当前未检测到目标,无需进行目标跟踪,可以丢弃所述跟踪框,待再次检测到目标生成检测框后,可以继续对检测到的目标进行目标跟踪。

4)得到同一图像帧的检测框且未得到跟踪框,保留所述检测框。

未得到跟踪框,可能是由于跟踪的目标丢失,未生成跟踪框,可以保留所述检测框,利用所述检测框定位的目标,重新对该目标进行目标跟踪,生成新的跟踪框。

如图2所示,下面以上述设定时间间隔为4帧图像且该图像帧中的目标分别为目标a、目标b、目标c,对本发明提供的一种基于目标检测的跟踪方法进行具体说明:

步骤21:获取图像帧。

具体的,可以连续获取图像帧,也可以间隔获取图像帧。

步骤22:利用目标检测模型对每间隔4帧图像的图像帧进行目标检测,得到包括目标类别及目标位置的检测框。

具体的,对第1帧图像进行目标检测,得到目标a的检测框a1、目标b的检测框b1、目标c的检测框c1;

步骤23:利用目标跟踪算法,对上述得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框。

具体的,对第1帧图像之后的连续4帧图像中的目标位置进行跟踪,得到连续4帧图像中每帧图像的跟踪框,分别得到第2帧、第3帧、第4帧以及第5帧图像中的目标a、目标b、目标c的跟踪框,其中第5帧图像中目标a、b、c的跟踪框分别为跟踪框a2,跟踪框b2,跟踪框c2。

步骤24:判断是否相隔4帧图像,如果是执行步骤25,否则执行步骤23。

步骤25:计算同一图像帧的跟踪框与检测框之间的iou;

具体的,计算第5帧图像的跟踪框a2与检测框a1之间的a-iou、跟踪框b2与检测框b1之间的b-iou、跟踪框c2与检测框c1之间的c-iou。

步骤26:确定iou是否大于预设阈值,如果是执行步骤27,否则执行步骤28;

步骤27:对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框,根据校正的检测框重置跟踪的目标。

步骤28:丢弃所述跟踪框。

实施例二

基于相同的发明构思,本发明实施例二还提供了一种基于目标检测的跟踪设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图3所示,该设备包括:处理器30以及存储器31,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器30执行时,使得所述处理器30用于执行如下步骤:

利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

作为一种可选的实施方式,所述处理器30具体用于:

确定同一图像帧的跟踪框及检测框之间的代价函数值;

根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

作为一种可选的实施方式,所述处理器30具体用于:

确定同一图像帧的跟踪框及检测框之间的交并比iou。

作为一种可选的实施方式,所述处理器30具体用于:

所述代价函数值大于预设阈值时,确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;

对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

作为一种可选的实施方式,所述处理器30具体还用于:

所述代价函数值不大于预设阈值时,确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

作为一种可选的实施方式,所述处理器30具体用于:

得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

作为一种可选的实施方式,所述目标检测模型是基于深度学习的模型,包括以下任一种:

基于区域的全卷积网络r-fcn模型;

基于区域的卷积神经网络r-cnn模型;

更快的基于区域的卷积神经网络fasterr-cnn模型;

单步多框检测ssd模型。

作为一种可选的实施方式,所述目标跟踪算法包括以下任一种:

光流算法;

模板匹配算法;

卡尔曼滤波算法。

实施例三

基于相同的发明构思,本发明实施例还提供了另一种基于目标检测的跟踪设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图4所示,该设备包括:检测模块40、跟踪模块41、校正模块42,其中:

检测模块40,用于利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

跟踪模块41,用于利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

校正模块42,用于每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

作为一种可选的实施方式,所述校正模块42具体用于:

确定同一图像帧的跟踪框及检测框之间的代价函数值;

根据所述代价函数值,确定所述跟踪框及检测框中目标位置所占区域的匹配结果;

根据匹配结果利用同一图像帧的跟踪框对所述检测框进行校正。

作为一种可选的实施方式,所述校正模块42具体用于:

确定同一图像帧的跟踪框及检测框之间的交并比iou。

作为一种可选的实施方式,所述校正模块42具体用于:

所述代价函数值大于预设阈值时,确定同一图像帧的跟踪框及检测框中目标位置所占的区域匹配;

对所述跟踪框及检测框分别进行加权运算并求和,得到校正的检测框。

作为一种可选的实施方式,所述校正模块42具体还用于:

所述代价函数值不大于预设阈值时,确定所述跟踪框及检测框的位置区域不匹配,丢弃所述跟踪框。

作为一种可选的实施方式,所述校正模块42具体用于:

得到同一图像帧的跟踪框且未得到检测框,丢弃所述跟踪框。

作为一种可选的实施方式,所述目标检测模型是基于深度学习的模型,包括以下任一种:

基于区域的全卷积网络r-fcn模型;

基于区域的卷积神经网络r-cnn模型;

更快的基于区域的卷积神经网络fasterr-cnn模型;

单步多框检测ssd模型。

作为一种可选的实施方式,所述目标跟踪算法包括以下任一种:

光流算法;

模板匹配算法;

卡尔曼滤波算法。

实施例四

本发明提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如下方法的步骤:

利用目标检测模型对设定间隔的图像帧进行目标检测,得到包括目标类别及目标位置的检测框;

利用目标跟踪算法,对得到检测框的图像帧之后的连续图像帧中的目标位置进行跟踪,得到包括目标位置的跟踪框;

每隔所述设定间隔,利用同一图像帧的跟踪框对检测框进行校正,根据校正的检测框重置跟踪的目标。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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