目标跟踪方法、装置、设备及存储介质与流程

文档序号:17443630发布日期:2019-04-17 05:10阅读:252来源:国知局
目标跟踪方法、装置、设备及存储介质与流程

本发明涉及计算机技术领域,尤其涉及一种目标跟踪方法、装置、设备及存储介质。



背景技术:

传统的跟踪目标方法为了实现目标跟踪,目前主要是通过获取目标对象在检测器中的检测框,以及在滤波器中的跟踪框,然后将得到的检测框和跟踪直接进行关联匹配,并根据得到关联匹配结果以确定跟踪目标,但是这种方法的计算复杂度高,且容易受到滤波器的本身的模型限制,滤波器模型存在对光照快速变化的图像上的可移动的目标的锁定效果不好,对颜色统计特征的提取不敏感,使得对光照变化明显和背景相似颜色的图像上的可移动的目标的获取不够准确,存在获取错误,即得到的跟踪框不准确或是错误的,导致跟踪的目标丢失,造成目标跟踪的准确度降低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种目标跟踪方法、装置、设备及存储介质,以解决传统目标跟踪技术中目标跟踪的准确度不高的问题。

一种目标跟踪方法,包括:

获取待处理视频数据,并按照预设的提取方式从所述待处理视频数据中提取预设帧数的视频图像;

在预先训练好的目标检测器中,对每帧所述视频图像进行目标检测,得到每帧所述视频图像中的n个原始目标区域,以及每个所述原始目标区域的原始位置信息,并对第一帧所述视频图像中的每个所述原始目标区域包含的原始检测目标设置预设的标识信息,其中,n为正整数;

在预先训练好的目标预测器中,对每帧所述视频图像的每个所述原始检测目标进行目标预测,得到每帧所述视频图像中每个所述原始检测目标在下一帧所述视频图像中对应的预测目标区域和所述预测目标区域的预测位置信息,其中,每个所述预测目标区域包含一个预测跟踪目标;

在每帧所述视频图像中,根据每个所述原始目标区域的原始位置信息和每个所述预测目标区域的预测位置信息,计算每个所述原始检测区域和每个所述预测目标区域之间的马氏距离;

针对每帧所述视频图像的每个所述预测目标区域,从所述预测目标区域对应的马氏距离中选取数值最小的马氏距离,并将该数值最小的马氏距离对应的原始目标区域中的原始检测目标作为所述预测跟踪区域包含的所述预测跟踪目标对应的待评估基础目标;

在每帧所述视频图像中,若所述预测跟踪目标仅对应一个所述待评估基础目标,则确认所述待评估基础目标为所述预测跟踪目标对应的上一帧所述视频图像中的所述原始检测目标的跟踪目标,并将所述待评估基础目标的标识信息设置为上一帧所述视频图像中的所述原始检测目标的标识信息;

在每帧所述视频图像中,若所述预测跟踪目标对应的所述待评估基础目标超过一个,则将所述预测跟踪目标对应的上一帧所述视频图像中的所述原始检测目标作为待处理目标;

对每个所述待处理目标进行深度特征提取,得到每个所述待处理目标的深度特征向量;

基于匈牙利匹配算法,将每帧所述视频图像中的每个所述待处理目标的深度特征向量和下一帧所述视频图像中的每个所述待处理目标的深度特征向量进行匹配,得到每帧所述视频图像中每个所述待处理目标对应的匹配结果;

针对每帧所述视频图像中的每个所述待处理目标,若当前帧中的所述待处理目标对应的所述匹配结果为匹配成功,则将当前帧中的所述待处理目标在下一帧中的跟踪目标确定为得到该匹配结果的下一帧中的所述待处理目标,并将得到该匹配结果的下一帧中的所述待处理目标的标识信息设置为当前帧中所述待处理目标的标识信息。

一种目标跟踪装置,包括:

数据获取模块,用于获取待处理视频数据,并按照预设的提取方式从所述待处理视频数据中提取预设帧数的视频图像;

目标检测模块,用于在预先训练好的目标检测器中,对每帧所述视频图像进行目标检测,得到每帧所述视频图像中的n个原始目标区域,以及每个所述原始目标区域的原始位置信息,并对第一帧所述视频图像中的每个所述原始目标区域包含的原始检测目标设置预设的标识信息,其中,n为正整数;

目标预测模块,用于在预先训练好的目标预测器中,对每帧所述视频图像的每个所述原始检测目标进行目标预测,得到每帧所述视频图像中每个所述原始检测目标在下一帧所述视频图像中对应的预测目标区域和所述预测目标区域的预测位置信息,其中,每个所述预测目标区域包含一个预测跟踪目标;

距离计算模块,用于在每帧所述视频图像中,根据每个所述原始目标区域的原始位置信息和每个所述预测目标区域的预测位置信息,计算每个所述原始检测区域和每个所述预测目标区域之间的马氏距离;

距离选取模块,用于针对每帧所述视频图像的每个所述预测目标区域,从所述预测目标区域对应的马氏距离中选取数值最小的马氏距离,并将该数值最小的马氏距离对应的原始目标区域中的原始检测目标作为所述预测跟踪区域包含的所述预测跟踪目标对应的待评估基础目标;

目标确认模块,用于在每帧所述视频图像中,若所述预测跟踪目标仅对应一个所述待评估基础目标,则确认所述待评估基础目标为所述预测跟踪目标对应的上一帧所述视频图像中的所述原始检测目标的跟踪目标,并将所述待评估基础目标的标识信息设置为上一帧所述视频图像中的所述原始检测目标的标识信息;

目标处理模块,用于在每帧所述视频图像中,若所述预测跟踪目标对应的所述待评估基础目标超过一个,则将所述预测跟踪目标对应的上一帧所述视频图像中的所述原始检测目标作为待处理目标;

特征提取模块,用于对每个所述待处理目标进行深度特征提取,得到每个所述待处理目标的深度特征向量;

目标匹配模块,用于基于匈牙利匹配算法,将每帧所述视频图像中的每个所述待处理目标的深度特征向量和下一帧所述视频图像中的每个所述待处理目标的深度特征向量进行匹配,得到每帧所述视频图像中每个所述待处理目标对应的匹配结果;

目标确定模块,用于针对每帧所述视频图像中的每个所述待处理目标,若当前帧中的所述待处理目标对应的所述匹配结果为匹配成功,则将当前帧中的所述待处理目标在下一帧中的跟踪目标确定为得到该匹配结果的下一帧中的所述待处理目标,并将得到该匹配结果的下一帧中的所述待处理目标的标识信息设置为当前帧中所述待处理目标的标识信息。

一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述目标跟踪方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述目标跟踪方法的步骤。

上述目标跟踪方法、装置、设备及存储介质,通过获取待处理视频数据的每帧视频图像的对应的检测结果,进而基于待处理视频数据的第一帧视频图像对应的检测结果,获取待处理视频数据的其他帧视频图像对应的预测结果,然后,基于每帧视频图像的对应的检测结果和预测结果各自包括的信息,计算得到每帧视频图像对应的多个马氏距离,对得到的多个马氏距离进行分析,并根据分析结果确定跟踪目标,这种目标跟踪方法操作简单,计算复杂度小,能够提高确定跟踪目标的效率,然后,基于匈牙利匹配算法,将每帧视频图像上没找到跟踪目标的待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配,并将匹配成功的原始检测目标确定为待处理目标的跟踪目标,这种在马氏距离确定跟踪目标的基础上,再对未找到跟踪目标的待处理目标之间做进一步的特征提取和匹配分析,并根据得到的匹配结果确定跟踪目标的方法,能够保证待处理目标提取到的特征的精度,以及未找到跟踪目标的待处理目标之间的匹配精度,从而提高对目标跟踪的准确度。

附图说明

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

图1是本发明一实施例中目标跟踪方法的一应用环境示意图;

图2是本发明一实施例中目标跟踪方法的一流程图;

图3是本发明一实施例中目标跟踪方法中步骤s4的实现流程图;

图4是本发明一实施例中目标跟踪方法中步骤s8的实现流程图;

图5是本发明一实施例中目标跟踪方法中步骤s9的实现流程图;

图6是本发明一实施例中目标跟踪方法中步骤s904的实现流程图;

图7是本发明一实施例中目标跟踪装置的一示意图;

图8是本发明一实施例中计算机设备的一示意图。

具体实施方式

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

图1示出了本发明实施例提供的应用环境,该应用环境包括服务端和客户端,其中,服务端和客户端之间通过网络进行连接,客户端用于获取包含跟踪目标的视频数据,并且将获取到的视频数据发送到服务端,客户端具体可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备;服务端用于处理视频数据,完成对跟踪目标的准确跟踪,服务端具体可以用独立的服务器或者多个服务器组成的服务器集群实现。本发明实施例提供的目标跟踪方法应用于服务端。

请参阅图2,图2示出本实施例提供的目标跟踪方法的实现流程。详述如下:

s1:获取待处理视频数据,并按照预设的提取方式从待处理视频数据中提取预设帧数的视频图像。

具体地,获取待处理视频数据的方式具体可以是手动导入或者自动定时从本地数据库中获取,还可以是其他获取方式,此处不做限制。

其中,手动导入待处理视频数据,具体可以是通过接收客户端的用户输入的视频链接地址,从该视频链接地址中获取该地址对应保存的待处理视频数据。

其中,自动定时从本地数据库中获取待处理视频数据具体可以是启动定时获取任务获取待处理视频数据,其中,定时获取任务具体可以是按照预设的时间间隔进行读取。优选地,时间间隔可以设置为20分钟、10分钟或5分钟,但并不限于此,其具体可以根据实际应用的需要进行设置,此处不做限制。

进一步地,按照预设的提取方式从待处理视频数据中提取预设帧数的视频图像具体可以是特定提取、随机提取,或者是其他提取方式,此处不做限制。

其中,特定提取是在每个待处理视频数据中均提取待处理视频数据中的固定的某一帧图像,如“固定提取每个待处理视频数据中的第三帧图像、第六帧图像和第九帧图像等等”,或者“在待处理视频数据中提取每一帧图像”。随机提取是在每个待处理视频数据中随机任意提取m帧图像,如“在待处理视频数据中随机提取了第五帧图像、第八帧图像和第十七帧图像等等”。

优选地,本实施例采用的提取方式是特定提取。

具体地,通过启动视频定时获取任务,间隔预定的时间间隔自动从本地数据库中读取待处理视频数据,然后按照特定提取,对获取到的待处理视频数据进行每一帧的图像提取,得到若干帧视频图像。

s2:在预先训练好的目标检测器中,对每帧视频图像进行目标检测,得到每帧视频图像中的n个原始目标区域,以及每个原始目标区域的原始位置信息,并对第一帧视频图像中的每个原始目标区域包含的原始检测目标设置预设的标识信息,其中,n为正整数。

在本实施例中,预先训练好的目标检测器实际业务需求进行训练得到的,目标检测器通常是采用人工神经网络模型进行构建,用于检测每帧视频图像中原始目标区域,其中,原始目标区域是在当前帧图像中包含了可移动对象的区域,每个可移动对象对应一个原始目标区域,该原始目标区域以矩形框的形式显示,原始目标区域中的可移动对象即为原始检测目标,目标区域的目标位置信息包括区域的左上角坐标a。

进一步地,对第一帧视频图像中的每个原始目标区域包含的原始检测目标设置预设的标识信息具体可以是对第一帧视频图像中的每个原始检测目标设置唯一的数字编号、id或者字符串代号等等,此处不做限制。

具体地,将每帧视频图像输入预先训练好的目标检测器中,通过目标检测器对每帧视频图像进行图像特征提取,然后,将图像特征按照目标检测器的模型定义进行分类得到每帧视频图像上的n个原始检测目标,输出每个原始检测目标对应的原始目标区域,以及原始目标区域对应的原始位置信息,进而,对第一帧视频图像中的每个原始目标区域包含的原始检测目标设置唯一的id,作为每个原始检测目标的标识信息。

例如,将一帧图像输入预先训练好的目标检测器中,通过目标检测器对这帧图像进行图像特征提取,然后,将提取到的图像特征按照目标检测器的模型定义进行分类,将不属于图像背景的可移动对象在以矩形框的形式显示出来,得到这帧视频图像上的每个原始检测目标,假设得到检测到6个可移动对象,作为6个原始检测目标,以及6个原始检测目标对应6个原始目标区域,还有得到该6个目标区域对应的目标位置信息。

需要说明的是,通过预先训练好的目标检测器对每帧视频图像进行原始目标检测,通过在目标检测器中对每帧视频图像进行图像特征提取,能够更加准确区分出每帧视频图像中的可移动对象,并获取准确的原始检测目标的位置信息,避免人工画出的原始检测区域不准确,导致原始位置信息不准确的情况,从而提高对目标跟踪的准确率。

s3:在预先训练好的目标预测器中,对每帧视频图像的每个原始检测目标进行目标预测,得到每帧视频图像中每个原始检测目标在下一帧视频图像中对应的预测目标区域和预测目标区域的预测位置信息,其中,每个预测目标区域包含一个预测跟踪目标。

在本实施例中,预先训练好的目标预测器实际业务需求进行训练得到的,目标预测器通常是采用卡尔曼滤波结构模型进行构建,用于预测前一帧视频图像中的原始检测目标,会在当前帧视频图像中出现的位置,即每帧视频图像中的每个预测目标区域中的预测跟踪目标,均是基于前一帧视频图像中的每个原始检测区域中的原始检测目标进行预测得到的,可以理解为前一帧视频图像中出现h个原始检测目标,则当前视频图像则会对应预测得到h个预测跟踪目标,其中,每个预测跟踪目标对应一个预测目标区域,该预测目标区域以矩形框的形式显示,且预测目标区域的目标位置信息包括预测目标区域的左上角坐标b。

具体地,通过目标预测器对每帧视频图像的每个原始检测目标进行卡尔曼滤波计算,然后,将计算得到的每个卡尔曼滤波按照目标预测器的模型定义进行分类,得到每帧视频图像中每个原始检测目标在下一帧视频图像中对应的预测跟踪目标,输出每个预测跟踪标对应的预测目标区域,以及预测目标区域对应的预测位置信息。

s4:在每帧视频图像中,根据每个原始目标区域的原始位置信息和每个预测目标区域的预测位置信息,计算每个原始检测区域和每个预测目标区域之间的马氏距离。

在本实施例中,由于马氏距离是一个常用的距离定义,可用于表示在m维空间中多个点之间的协方差距离,是一种有效计算两个未知样本之间的相似度的方法,因此,通过计算每个原始检测区域和每个预测目标区域之间的马氏距离,能够最快速、直观地反映出每个原始目标区域中的原始检测目标和每个预测目标区域中的预测跟踪目标之间的相似程度。

具体地,针对每帧视频图像,将步骤s2中得到该帧视频图像的每个原始目标区域的原始位置信息和步骤s3中得到的该帧视频图像的每个预测目标区域的预测位置信息,代入马氏距离公式中,经过计算可以得到每个原始检测区域和每个预测目标区域之间的马氏距离之间的若干个马氏距离。

例如,继续使用步骤s2中的例子,假设一帧视频图像通过目标检测器检测得到6个原始检测目标,且这一帧视频图像在目标预测器中得到6个预测跟踪目标,将这6个原始检测目标对应的原始目标区域的原始位置信息,以及6个预测跟踪目标对应的预测目标区域的预测位置信息,代入马氏距离公式中,能够计算出6个原始检测目标和6个预测跟踪目标之间的马氏距离,得到36个马氏距离。

s5:针对每帧视频图像的每个预测目标区域,从预测目标区域对应的马氏距离中选取数值最小的马氏距离,并将该数值最小的马氏距离对应的原始目标区域中的原始检测目标作为预测跟踪区域包含的预测跟踪目标对应的待评估基础目标。

在本实施例中,由于在步骤s4中计算得到若干个马氏距离,能够直观地反映出每个原始目标区域中的原始检测目标和每个预测目标区域中的预测跟踪目标之间的相似程度,所以在通常情况下,可以理解为原始检测目标的位置最接近预测跟踪目标,则该原始检测目标与预测跟踪目标越相似。

具体地,将步骤s4中得到的每帧视频图像的每个预测目标区域所对应的马氏距离中的任意两个马氏距离进行比较,取数值小的距离,再将该数值小的马氏距离与其他马氏距离进行比较,以此类推,直至比较出该预测目标区域所对应的马氏距离中数值最小的马氏距离,并将该数值最小的马氏距离对应的原始目标区域中的原始检测目标作为该预测跟踪区域包含的预测跟踪目标所对应的待评估基础目标。

例如,继续使用步骤s4中的例子,假设一帧视频图像中的一个预测目标区域计算得到的6个马氏距离,分别为33.63、45.03、62.24、34.13、38.55和59.06,将这6个马氏距离中任意两个马氏距离进行比较,如取33.63与45.03比较,得到33.63小于45.03,则选出33.63,然后再将33.63与其他马氏距离进行比较,如将33.63与38.55比较,得到33.63小于38.55,则选出33.63,以此类推,直到比较得出数值最小的马氏距离为33.63,则将马氏距离33.63对应的原始目标区域中的原始检测目标作为该预测跟踪区域包含的预测跟踪目标所对应的待评估基础目标。

s6:在每帧视频图像中,若预测跟踪目标仅对应一个待评估基础目标,则确认待评估基础目标为预测跟踪目标对应的上一帧视频图像中的原始检测目标的跟踪目标,并将待评估基础目标的标识信息设置为上一帧视频图像中的原始检测目标的标识信息。

具体地,由于根据每个原始目标区域的原始位置信息和每个预测目标区域的预测位置信息,计算每个原始检测区域和每个预测目标区域之间的马氏距离,并将得到的马氏距离进行比较,根据得到的比较结果确定预测跟踪目标对应的待评估基础目标,能够得到一个原始检测目标唯一对应一个预测跟踪目标的情况,即预测跟踪目标仅对应一个待评估基础目标,所以当在步骤s5中得到预测跟踪目标仅对应一个待评估基础目标时,则能够将该唯一对应的待评估基础目标确认为预测跟踪目标对应的上一帧视频图像中的原始检测目标的跟踪目标,然后,将上一帧视频图像中的原始检测目标的唯一的id赋值给该待评估基础目标,作为该待评估基础目标的标识信息,便于后续根据待评估基础目标的标识信息,对该待评估基础目标进行快速查找和分析。

s7:在每帧视频图像中,若预测跟踪目标对应的待评估基础目标超过一个,则将预测跟踪目标对应的上一帧视频图像中的原始检测目标作为待处理目标。

具体地,可以理解的是,仅针对每个预测目标区域对应的马氏距离,进行比较筛选得到的来确定预测跟踪目标对应的待评估基础目标,也会存在每个预测目标区域对应的待评估基础目标超过一个的情况,即一帧视频图像上的多个原始检测目标,对应同一预测跟踪目标,所以当在步骤s5中得到的每帧视频图像的每个预测目标区域对应的待评估基础目标超过一个时,将预测跟踪目标对应的上一帧视频图像中的原始检测目标作为待处理目标。

需要说明的是,为了减少由于一帧视频图像上的多个原始检测目标,对应同一预测跟踪目标,导致目标跟踪不准确的情况,本实施例在计算每个原始检测区域和每个预测目标区域之间的马氏距离,并将得到的马氏距离进行比较,根据得到的比较结果确定预测跟踪目标对应的待评估基础目标的基础上,对得到的每帧视频图像上的待处理目标,进行进一步的分析,以提高目标跟踪的准确度。

s8:对每个待处理目标进行深度特征提取,得到每个待处理目标的深度特征向量。

在本实施例中,对每个待处理目标进行深度特征提取具体可以是根据实际应用需求选取深度学习算法模型,此处不做限制,如卷积神经网络(convolutionalneuralnetwork,cnn)模型、循环神经网络(recurrentneuralnetwork,rnn)模型,或者深度信念网络(deepbeliefnetwork,dbn)模型等。

具体地,将每个待处理目标输入预先训练好的的卷积神经网络模型中,通过卷积神经网络模型中的卷积层对每个待处理目标进行深度特征提取,然后,将每个待处理目标对应的深度特征通过卷积神经网络模型的全连接层进行向量压缩,得到每个待处理目标的深度特征向量。

需要说明的是,通过对每个待处理目标进行深度特征提取,得到每个待处理目标的深度特征向量,可以理解为通过在卷积神经网络模型中的对每个待处理目标进行必要特征的提取,避免其他不必要特征信息的干扰,从而提高目标跟踪的准确率。

s9:基于匈牙利匹配算法,将每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配,得到每帧视频图像中每个待处理目标对应的匹配结果。

具体地,由于匈牙利匹配算法是常用匹配的算法,计算复杂度小,是采用二分图求最佳匹配的方法,基于匈牙利匹配算法,本实施例对该匹配算法进行一些扩展,通过将每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配具体可以是计算每个待处理目标的深度特征向量x=(x1,x2,...,xm)和下一帧视频图像中的每个待处理目标的深度特征向量y=(y1,y2,...,yn)之间的相似度p(x,y),将每帧视频图像中的每个待处理目标的左上角的坐标点看作每个顶点x,其中x∈x,同理,将下一帧视频图像中的每个待处理目标的左上角的坐标点看作每个顶点y,其中y∈y,将两个顶点x与y之间连接一条直线边(x,y),得到每个顶点之间的二分图,并设置该直线边的权重值为p(x,y),通过每个待处理目标的左上角的坐标点,可以计算一条直线边(x,y)的距离长度d(x,y),计算该直线边的权重值与该直线边的距离长度的乘积,然后,从每帧视频图像中的每个待处理目标对应的乘积中,选出最大乘积与预设的匹配阈值进行比较,若最大乘积大于或等于预设的匹配阈值,则匹配结果为匹配成功,若最大乘积小于预设的匹配阈值,则匹配结果为匹配失败。

s10:针对每帧视频图像中的每个待处理目标,若当前帧中的待处理目标对应的匹配结果为匹配成功,则将当前帧中的待处理目标在下一帧中的跟踪目标确定为得到该匹配结果的下一帧中的待处理目标,并将得到该匹配结果的下一帧中的待处理目标的标识信息设置为当前帧中待处理目标的标识信息。

具体地,针对每帧视频图像中的每个待处理目标,若当前帧中的待处理目标对应的匹配结果为匹配成功,则可以理解为当前帧中的待处理目标在下一帧中匹配到了唯一的待处理目标,故能够将该匹配结果中的下一帧中的待处理目标确定为当前帧中的待处理目标在下一帧中的跟踪目标,然后,为了后续步骤中能够根据得到该匹配结果的下一帧中的待处理目标的标识信息,对该得到该匹配结果的下一帧中的待处理目标进行快速查找和分析,则能够将得到该匹配结果的下一帧中的待处理目标的标识信息设置为当前帧中待处理目标的标识信息。

在本实施例中,通过获取待处理视频数据的每帧视频图像的对应的检测结果,进而基于待处理视频数据的第一帧视频图像对应的检测结果,获取待处理视频数据的其他帧视频图像对应的预测结果,然后,基于每帧视频图像的对应的检测结果和预测结果各自包括的信息,计算得到每帧视频图像对应的多个马氏距离,对得到的多个马氏距离进行分析,并根据分析结果确定跟踪目标,这种目标跟踪方法操作简单,计算复杂度小,能够提高确定跟踪目标的效率,然后,基于匈牙利匹配算法,将每帧视频图像上没找到跟踪目标的待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配,并将匹配成功的原始检测目标确定为待处理目标的跟踪目标,这种在马氏距离确定跟踪目标的基础上,再对未找到跟踪目标的待处理目标之间做进一步的特征提取和匹配分析,并根据得到的匹配结果确定跟踪目标的方法,能够保证待处理目标提取到的特征的精度,以及未找到跟踪目标的待处理目标之间的匹配精度,从而提高对目标跟踪的准确度。

在一实施例中,如图3所示,步骤s4中,即在每帧视频图像中,根据每个原始目标区域的原始位置信息和每个预测目标区域的预测位置信息,计算每个原始检测区域和每个预测目标区域之间的马氏距离具体包括如下步骤:

s401:获取每帧视频图像的每个原始目标区域的原始位置信息的左上角坐标a和每个预测目标区域的预测位置信息的左上角坐标b。

具体地,由于原始目标区域是以矩形框的形式显示的,且在步骤s2中能够得到每个原始目标区域的原始位置信息,能够获取该原始位置信息包括每个原始目标区域的矩形框的左上角的坐标a,以及预测目标区域也是以矩形框的形式显示的,且在步骤s3中能够得到每个预测目标区域的预测位置信息,并能够获取该预测位置信息包括每个预测目标区域的矩形框的左上角的坐标b,通过获取每帧视频图像的每个原始目标区域的原始位置信息的左上角坐标a和每个预测目标区域的预测位置信息的左上角坐标b,能够后续采用的计算公式,准确反映出每帧视频图像的每个原始检测目标和每个预测跟踪目标之间的位置关系,便于对跟踪目标的进一步确认。

s402:按照如下公式计算每帧视频图像中的每个原始检测区域和每个预测目标区域之间的马氏距离d:

其中,t表示转置,∏为协方差矩阵。

具体地,为了能准确反映出每个原始目标区域中的原始检测目标与每个预测目标区域的预测跟踪目标之间的位置关系,将步骤s401中得到的获取每帧视频图像的每个原始目标区域的原始位置信息的左上角坐标a和每个预测目标区域的预测位置信息的左上角坐标b,分别代入马氏距离公式中进行计算,能够快速计算出每个原始检测目标和每个预测跟踪目标之间的马氏距离。

例如,假设当前帧视频图像上的一个原始目标区域的左上角坐标为a=(50,50),当前帧视频图像上的一个预测目标区域的左上角坐标为b=(80,50)将原始目标区域的左上角坐标a和预测目标区域的左上角坐标b,代入m马氏距离公式中进行计算,得到马氏距离d1约等于5.477。

在本实施例中,通过将获取到的每帧视频图像的每个原始目标区域的原始位置信息的左上角坐标a和每个预测目标区域的预测位置信息的左上角坐标b,代入马氏距离公式计算每帧视频图像中的每个原始检测区域和每个预测目标区域之间的马氏距离d,能够准确反映出每个原始目标区域中的原始检测目标与每个预测目标区域的预测跟踪目标之间的位置关系,便于对跟踪目标的进一步确认。

在一实施例中,如图4所示,步骤s8中,即对每个待处理目标进行深度特征提取,得到每个待处理目标的深度特征向量具体包括如下步骤:

s801:采用预先训练好的人工神经网络结构,对每帧视频图像中的每个待处理目标进行物理分割,得到每个待处理目标的目标轮廓。

本实施例中,物体分割是指将待处理目标通过预先训练好的人工神经网络结构,常用的的人工神经网络结构为分割神经网络(maskroialign-convolutionalneuralnetwork,maskr-cnn)结构中,根据分割神经网络结构中像素语义分割功能,对待处理目标做语义分割,将待处理目标从视频图像中剥离出来,可以理解为将待处理目标与视频图像中的背景分割开来,实现将视频图像中的背景切除掉。

其中,分割神经网络结构是一个小巧、灵活的通用对象实例分割框架。它不仅可对视频图像中的待处理目标进行特征提取,还可以对每一个待处理目标给出一个高质量的分割结果。

语义分割是指背景和物体的颜色特征等不一样,体现在视频图像上的像素不一样,可以对视频图像做像素语义分割,将背景所在的像素切除掉,剩下的就是待处理目标的像素,体现在视频图像上就是待处理目标的轮廓。

具体地,采用预先训练好的分割神经网络结构中的像素语义分割功能,将每个视频图像中的每个待处理目标与视频图像上的背景分割开来,将背景所在的像素切除掉,得到每个待处理目标对应的像素,并将每个待处理目标对应的像素作为每个待处理目标的目标轮廓。

s802:根据预先训练好的人工神经网络结构的定义,对每个目标轮廓进行深度特征提取,得到每个目标轮廓对应的深度特征向量。

具体地,根据预先训练好的人工神经网络结构的定义,对每个目标轮廓进行深度特征提取,具体可以是按照分割神经网络结构的每个卷积层的卷积定义,将每个目标轮廓逐次通过分割神经网络结构的卷积层,实现对每个目标轮廓进行深度特征提取,得到每个目标轮廓的深度特征,然后,将每个目标轮廓对应的深度特征通过分割神经网络结构的输出层进行特征降维,即将深度特征向量进行压缩,输出每个目标轮廓的深度特征向量,对剔除了背景像素的目标轮廓进行深度特征提取,能够提高深度特征的提取精度,增加后续步骤根据深度特征向量进行匹配的准确度,从而一稿目标跟踪的准确度。

在本实施例中,通过采用预先训练好的人工神经网络结构,对每帧视频图像中的每个待处理目标进行物理分割,得到每个待处理目标的目标轮廓,能够实现将视频图像中的背景剔除掉,避免因受到冗杂的背景信息的干扰,而降低目标跟踪准确度的情况,并对得到的目标轮廓按照预先训练好的人工神经网络结构的定义,进行深度特征提取,能够提高深度特征的提取精度,增加后续步骤根据深度特征向量进行匹配的准确度,从而一稿目标跟踪的准确度。

在一实施例中,如图5所示,在步骤s9中,即基于匈牙利匹配算法,将每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配,得到每帧视频图像中每个待处理目标对应的匹配结果具体包括如下步骤:

s901:计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度。

在本实施例中,计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度,具体可以是计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度之间的欧氏距离,或者是计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度之间的余弦相似度,还可以采用其他相似度计算方法,此处不做限制。

优选地,本实施例中采用欧氏距离计算方法。

具体地,将从步骤s8中得到的每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量代入欧氏距离计算公式为中进行计算,能够得到每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度,其中,xi表示每帧视频图像中的每个待处理目标的深度特征向量x的分量,yi表示下一帧视频图像中的每个待处理目标的深度特征向量y的分量,s表示欧氏距离的值,m表示每帧视频图像中的每个待处理目标的深度特征向量的分量的总个数。

s902:针对每帧视频图像中的每个待处理目标,从待处理目标对应的特征相似度中,获取数值最大的特征相似度作为最大特征相似度。

具体地,由于每帧视频图像中的每个待处理目标对应的相似度的数值越大,则说明该相似度对应的两个待处理目标之间越相似,从而筛选出唯一的一个与待处理目标最相似的下一帧视频图像中的待处理目标,所以针对每帧视频图像中的每个待处理目标,在待处理目标对应的特征相似度中,将每个特征相似度进行比较,从中选取出数值最大的特征相似度,作为最大特征相似度。

s903:若最大特征相似度大于或者等于预设的目标阈值,则确认待处理目标对应的匹配结果为匹配成功。

具体地,将步骤s902中得到最大特征相似度与预设的目标阈值进行比较,若该最大特征相似度大于或者等于预设的目标阈值,则可以理解为该最大特征相似度对应的下一帧视频图像中的待处理目标,与当前帧中的待处理目标最相似,故能够将认为当前帧中的待处理目标找到相匹配的目标,能够确认待处理目标对应的匹配结果为匹配成功。

s904:若最大特征相似度小于预设的目标阈值,则确认待处理目标在下一帧视频图像中的跟踪目标丢失,得到待处理目标对应的匹配结果为匹配失败。

具体地,在预设的目标阈值对当前帧中的待处理目标对应的特征相似度做进一步的限定的基础上,该待处理目标的最大特征相似度都无法满足目标阈值的要求,则表明在下一帧视频图像的待处理目标中,未能匹配到出与当前帧视频图像的待处理目标最相似的目标,那么可以将最大特征相似度小于预设的目标阈值对应的当前帧视频图像的待处理目标,确认该待处理目标在下一帧视频图像中的跟踪目标丢失,即待处理目标对应的匹配结果为匹配失败。

在本实施例中,通过计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度,并从每帧视频图像的每个待处理目标对应的特征相似度中,获取最大特征相似度,然后将最大特征相似度与目标阈值进行比较,并根据比较结果确定待处理目标的匹配结果,能够准确直观地反映出每帧视频图像中的每个待处理目标和下一帧视频图像中的每个待处理目标之间的相似程度,进而快速准确地获取到待处理目标的匹配结果。

在一实施例中,如图6所示,步骤s904中,即若最大特征相似度小于预设的目标阈值,则确认待处理目标在下一帧视频图像中的跟踪目标丢失,得到待处理目标对应的匹配结果为匹配失败具体还包括如下步骤:

s9041:若最大特征相似度小于预设的目标阈值,则获取待处理目标的标识信息。

具体地,由于当前帧的待处理目标的最大特征相似度小于预设的目标阈值,能保证的是该待处理目标在下一帧中未找到相匹配的跟踪目标,可以理解为在下一帧中是目标丢失的状态,在后续的继续匹配中存在待处理目标在后续的帧图像中目标完全丢失,以及待处理目标在后续的帧图像中不完全丢失的情况,当是待处理目标在后续的帧图像中目标完全丢失的情况时,则能确认该待处理目标对应的匹配结果为匹配失败,所以本实施例,检测待处理目标在后续的帧图像中目标完全丢失,能够通过获取待处理目标的标识信息,实现对与待处理目标有相同的标识信息的跟踪目标的快速查找。

s9042:在待处理目标所在的视频图像之后的连续预设的k帧视频图像中,查找是否存在与待处理目标有相同标识信息的跟踪目标,其中,k为正整数。

具体地,由于本实施例采用的跟踪方法是在找到跟踪目标的同时,基于前一帧中的原始检测目标的标识信息,将确认的跟踪目标的标识信息进行赋值的,所以能够根据待处理目标的标识信息,实现对与待处理目标有相同的标识信息的跟踪目标的快速查找,即在待处理目标所在的视频图像之后的连续预设的k帧视频图像中的跟踪目标中进行遍历,查找与该待处理目标有相同标识信息的跟踪目标。

s9043:若不存在与待处理目标有相同标识信息的跟踪目标,则确认待处理目标的跟踪目标丢失。

具体地,若不存在与待处理目标有相同标识信息的跟踪目标,可以理解为该待处理目标所要跟踪的目标在后续的预设的k帧视频图像中,都没有在出现,说明该待处理目标的跟踪目标后续的预设的k帧视频图像中完全丢失,所以可以确认待处理目标的跟踪目标丢失。

在本实施例中,通过获取最大特征相似度小于预设的目标阈值对应的当前帧的待处理目标的标识信息,在待处理目标所在的视频图像之后的连续预设的k帧视频图像中的跟踪目标进行遍历,查找与待处理目标有相同标识信息的跟踪目标,实现对与待处理目标有相同的标识信息的跟踪目标的快速查找,进而确认待处理目标的跟踪目标完全丢失。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在一实施例中,提供一种目标跟踪装置,该目标跟踪装置与上述实施例中目标跟踪方法一一对应。如图7所示,该目标跟踪装置包括数据获取模块701、目标检测模块702、目标预测模块703、距离计算模块704、距离选取模块705、目标确认模块706、目标处理模块707、特征提取模块708、目标匹配模块709和目标确定模块710。各功能模块详细说明如下:

数据获取模块701,用于获取待处理视频数据,并按照预设的提取方式从待处理视频数据中提取预设帧数的视频图像;

目标检测模块702,用于在预先训练好的目标检测器中,对每帧视频图像进行目标检测,得到每帧视频图像中的n个原始目标区域,以及每个原始目标区域的原始位置信息,并对第一帧视频图像中的每个原始目标区域包含的原始检测目标设置预设的标识信息,其中,n为正整数;

目标预测模块703,用于在预先训练好的目标预测器中,对每帧视频图像的每个原始检测目标进行目标预测,得到每帧视频图像中每个原始检测目标在下一帧视频图像中对应的预测目标区域和预测目标区域的预测位置信息,其中,每个预测目标区域包含一个预测跟踪目标;

距离计算模块704,用于在每帧视频图像中,根据每个原始目标区域的原始位置信息和每个预测目标区域的预测位置信息,计算每个原始检测区域和每个预测目标区域之间的马氏距离;

距离选取模块705,用于针对每帧视频图像的每个预测目标区域,从预测目标区域对应的马氏距离中选取数值最小的马氏距离,并将该数值最小的马氏距离对应的原始目标区域中的原始检测目标作为预测跟踪区域包含的预测跟踪目标对应的待评估基础目标;

目标确认模块706,用于在每帧视频图像中,若预测跟踪目标仅对应一个待评估基础目标,则确认待评估基础目标为预测跟踪目标对应的上一帧视频图像中的原始检测目标的跟踪目标,并将待评估基础目标的标识信息设置为上一帧视频图像中的原始检测目标的标识信息;

目标处理模块707,用于在每帧视频图像中,若预测跟踪目标对应的待评估基础目标超过一个,则将预测跟踪目标对应的上一帧视频图像中的原始检测目标作为待处理目标;

特征提取模块708,用于对每个待处理目标进行深度特征提取,得到每个待处理目标的深度特征向量;

目标匹配模块709,用于基于匈牙利匹配算法,将每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量进行匹配,得到每帧视频图像中每个待处理目标对应的匹配结果;

目标确定模块710,用于针对每帧视频图像中的每个待处理目标,若当前帧中的待处理目标对应的匹配结果为匹配成功,则将当前帧中的待处理目标在下一帧中的跟踪目标确定为得到该匹配结果的下一帧中的待处理目标,并将得到该匹配结果的下一帧中的待处理目标的标识信息设置为当前帧中待处理目标的标识信息。

进一步地,距离计算模块704包括:

坐标获取单元7041,用于获取每帧视频图像的每个原始目标区域的原始位置信息的左上角坐标a和每个预测目标区域的预测位置信息的左上角坐标b;

公式计算单元7042,用于按照如下公式计算每帧视频图像中的每个原始检测区域和每个预测目标区域之间的马氏距离d:

其中,t表示转置,∏为协方差矩阵。

进一步地,特征提取模块708包括:

目标分割单元7081,用于采用预先训练好的人工神经网络结构,对每帧视频图像中的每个待处理目标进行物理分割,得到每个待处理目标的目标轮廓;

向量获取单元7082,用于根据预先训练好的人工神经网络结构的定义,对每个目标轮廓进行深度特征提取,得到每个目标轮廓对应的深度特征向量。

进一步地,目标匹配模块709包括:

向量计算单元7091,用于计算每帧视频图像中的每个待处理目标的深度特征向量和下一帧视频图像中的每个待处理目标的深度特征向量之间的特征相似度;

特征选取单元7092,用于针对每帧视频图像中的每个待处理目标,从待处理目标对应的特征相似度中,获取数值最大的特征相似度作为最大特征相似度;

确认匹配单元7093,用于若最大特征相似度大于或者等于预设的目标阈值,则确认待处理目标对应的匹配结果为匹配成功;

确认结果单元7094,由于若最大特征相似度小于预设的目标阈值,则确认待处理目标在下一帧视频图像中的跟踪目标丢失,得到待处理目标对应的匹配结果为匹配失败。

进一步地,确认结果单元7094包括:

信息获取子单元70941,用于若最大特征相似度小于预设的目标阈值,则获取待处理目标的标识信息;

目标查找子单元70942,用于在待处理目标所在的视频图像之后的连续预设的k帧视频图像中,查找是否存在与待处理目标有相同标识信息的跟踪目标,其中,k为正整数;

目标丢失子单元70943,用于若不存在与待处理目标有相同标识信息的跟踪目标,则确认待处理目标的跟踪目标丢失。

关于目标跟踪装置的具体限定可以参见上文中对于目标跟踪方法的限定,在此不再赘述。上述目标跟踪装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于保存视频数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种目标跟踪方法。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例目标跟踪方法的步骤,例如图2所示的步骤s1至步骤s10。或者,处理器执行计算机程序时实现上述实施例中目标跟踪装置的各模块/单元的功能,例如图7所示模块701至模块710的功能。为避免重复,这里不再赘述。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中目标跟踪方法,或者,该计算机程序被处理器执行时实现上述装置实施例中目标跟踪装置中各模块/单元的功能。为避免重复,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)、dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

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