目标追踪方法、装置和计算机可读存储介质与流程

文档序号:18944492发布日期:2019-10-23 01:26阅读:150来源:国知局
目标追踪方法、装置和计算机可读存储介质与流程

本公开涉及视频处理技术领域,特别是一种目标追踪方法、装置和计算机可读存储介质。



背景技术:

基于视频的目标检测及追踪在视觉研究领域有着广泛的应用,如自动驾驶、人脸识别、行人检测、运动跟踪、行为识别与分析等技术均依赖于视频的目标检测追踪。视频标注是在视频预览或录像回放过程中,直接在视频上进行突出标记,使视频更具有针对性的处理方式,处理后的视频可用于定位和重点关注某些目标对象,也可用于以视频或图像作为源数据的神经网络的训练。

在目前常见的视频标注方法中,往往需要预先录制多段视频,发给专门的标注员,逐帧标注。这样的方式需要耗费大量的人力和财力,且效率低。



技术实现要素:

发明人发现,在相关的目标检测算法中,如利用图像的传统特征(如hog(histogramoforientedgradient,方向梯度直方图),sift(scale-invariantfeaturetransform,尺度不变特征变换),haar等),结合分类器完成视频的半自动标注,或将神经网络用于视频半自动/自动标注,在目标对象较小,运动剧烈,或有遮挡的情况下,很容易造成漏检、误检,从而导致目标对象丢失或者错误的跟踪。

本公开的一个目的在于提高视频图像中目标追踪的全面性和可靠性。

根据本公开的一个方面,提出一种目标追踪方法,包括:通过特征匹配算法获取当前帧图像的第一目标候选框,根据第一目标候选框的特征向量和上一帧图像中目标框的特征向量确定第一空间距离;通过cnn(convolutionalneuralnetwork,卷积神经网络)目标检测算法获取当前帧图像的第二目标候选框,根据第二目标候选框的特征向量和上一帧中目标框的特征向量确定第二空间距离;根据第一空间距离和第二空间距离的大小,基于预定选择策略确定目标在当前帧的目标框。

可选地,预定选择策略包括:在当前帧图像中目标的第二目标候选框不存在,或第二空间距离不小于第二预定阈值的情况下,若目标的第一目标候选框存在且第一空间距离小于第一预定阈值,则确定第一目标候选框为当前帧的目标框,其中,第二预定阈值大于第一预定阈值。

可选地,预定选择策略还包括:在目标的第二目标候选框存在,且第二空间距离小于第二预定阈值的情况下,确定第二目标候选框为当前帧的目标框。

可选地,预定选择策略还包括:在目标的第二目标候选框不存在,或第二空间距离不小于第二预定阈值的情况下,若目标的第一目标候选框不小于第一预定阈值,则确定当前帧的目标框不存在。

可选地,通过特征匹配算法获取当前帧图像的第一目标候选框包括:通过特征匹配算法获取当前帧图像中每个目标的第一目标框;获取每个第一目标框的特征向量;根据第一目标框的重叠面积组合第一目标框,获得第一目标候选框。

可选地,通过cnn目标检测算法获取当前帧图像第二目标候选框包括:通过cnn目标检测算法获取当前帧图像中每个目标的第二目标框;获取每个第二目标框的特征向量;根据第二目标框的重叠面积组合第二目标框,获得第二目标候选框。

可选地,还包括:在当前帧图像中标注目标框。

可选地,第一空间距离为第一目标候选框的特征向量与上一帧图像中目标框的特征向量间的欧式距离;第二空间距离为第二目标候选框的特征向量与上一帧图像中目标框的特征向量间的欧式距离。

通过这样的方法,能够采用特征匹配算法和cnn算法分别得到图像的目标候选框,并根据目标候选框与上一帧中目标框的距离选择确定目标框,防止单一算法导致的目标漏追踪、误追踪,提高视频图像中目标追踪的全面性和可靠性。

根据本公开的另一个方面,提出一种目标追踪装置,包括:第一空间距离计算模块,被配置为通过特征匹配算法获取当前帧图像的第一目标候选框,根据第一目标候选框的特征向量和上一帧图像中目标框的特征向量确定第一空间距离;第二空间距离计算模块,被配置为通过cnn目标检测算法获取当前帧图像的第二目标候选框,根据第二目标候选框的特征向量和上一帧中目标框的特征向量确定第二空间距离;目标框确定模块,被配置为根据第一空间距离和第二空间距离的大小,基于预定选择策略确定目标在当前帧的目标框。

可选地,目标框确定模块被配置为:在当前帧图像中目标的第二目标候选框不存在,或第二空间距离不小于第二预定阈值的情况下,若目标的第一目标候选框存在且第一空间距离小于第一预定阈值,则确定第一目标候选框为当前帧的目标框,其中,第二预定阈值大于第一预定阈值。

可选地,目标框确定模块还被配置为:在目标的第二目标候选框存在,且第二空间距离小于第二预定阈值的情况下,确定第二目标候选框为当前帧的目标框。

可选地,目标框确定模块还被配置为:在目标的第二目标候选框不存在,或第二空间距离不小于第二预定阈值的情况下,若目标的第一目标候选框不小于第一预定阈值,则确定当前帧的目标框不存在。

可选地,第一空间距离计算模块包括:特征匹配单元,被配置为通过特征匹配算法获取当前帧图像中每个目标的第一目标框;特征向量提取单元,被配置为获取每个第一目标框的特征向量;候选框确定单元,被配置为根据第一目标框的重叠面积组合第一目标框,获得第一目标候选框。

可选地,第二空间距离计算模块包括:cnn目标检测单元,被配置为通过cnn目标检测算法获取当前帧图像中每个目标的第二目标框;特征向量提取单元,被配置为获取每个第二目标框的特征向量;候选框确定单元,被配置为根据第二目标框的重叠面积组合第二目标框,获得第二目标候选框。

可选地,还包括:目标标注模块,被配置为在当前帧图像中标注目标框。

可选地,第一空间距离为第一目标候选框的特征向量与上一帧图像中目标框的特征向量间的欧式距离;第二空间距离为第二目标候选框的特征向量与上一帧图像中目标框的特征向量间的欧式距离。

根据本公开的又一个方面,提出一种目标追踪装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行上文中任意一种目标追踪方法。

这样的装置能够采用特征匹配算法和cnn算法分别得到图像的目标候选框,并根据目标候选框与上一帧中目标框的距离选择确定目标框,防止单一算法导致的目标漏追踪、误追踪,提高视频图像中目标追踪的全面性和可靠性。

根据本公开的再一个方面,提出一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上文中任意一种目标追踪方法的步骤。

通过执行这样的计算机可读存储介质上的指令,能够采用特征匹配算法和cnn算法分别得到图像的目标候选框,并根据目标候选框与上一帧中目标框的距离选择确定目标框,防止单一算法导致的目标漏追踪、误追踪,提高视频图像中目标追踪的全面性和可靠性。

附图说明

此处所说明的附图用来提供对本公开的进一步理解,构成本公开的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:

图1为本公开的目标追踪方法的一个实施例的流程图。

图2为本公开的目标追踪方法中预定选择策略的一个实施例的流程图。

图3为本公开的目标追踪方法的另一个实施例的流程图。

图4为本公开的目标追踪装置的一个实施例的示意图。

图5a为本公开的目标追踪装置中第一空间距离计算模块的一个实施例的示意图。

图5b为本公开的目标追踪装置中第二空间距离计算模块的一个实施例的示意图。

图6为本公开的目标追踪装置的另一个实施例的示意图。

图7为本公开的目标追踪装置的又一个实施例的示意图。

具体实施方式

下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。

本公开的目标追踪方法的一个实施例的流程图如图1所示。

在步骤101中,通过特征匹配算法获取当前帧图像的第一目标候选框,根据第一目标候选框的特征向量和上一帧图像中目标框的特征向量确定第一空间距离。在一个实施例中,图像特征可以包括灰度、hog、haar、sift等特征。针对不同的待检测目标对象,可以使用滑动窗口框架,将一张图分解为几百万个不同位置不同尺度的子窗口,针对每一个窗口提取特征,使用分类器判断是否包含目标。在一个实施例中,第一空间距离可以是特征向量之间的欧式距离、马氏距离等。

在步骤102中,通过cnn目标检测算法获取当前帧图像第二目标候选框,根据第二目标候选框的特征向量和上一帧中目标框的特征向量确定第二空间距离。在一个实施例中,可以利用卷积层与池化层操作来提取深度特征,能够采用的具体算法可以包括:rcnn(regionswithcnnfeatures,有cnn特征的区域)系列(rcnn,fastrcnn,fasterrcnn,maskrcnn),yolo(youonlylookonce,只看一次),ssd(singleshotmultiboxdetector,单个深度神经网络检测)等。在一个实施例中,第二空间距离可以是特征向量之间的欧式距离、马氏距离等。在一个实施例中,第一空间距离和第二空间距离的计算采用同种算法。

在一个实施例中,步骤101与步骤102没有先后顺序,可以并行执行以提高运算效率。

在步骤103中,根据第一空间距离和第二空间距离的大小,基于预定选择策略确定目标在当前帧的目标框。当空间距离过大时,则可以认为其相应的目标候选框的置信度较低。在一个实施例中,可以设置预定阈值,通过第一空间距离、第二空间距离与预定阈值的比较来排除目标跟踪错误的情况,进而从第一目标候选框和第二目标候选框中选出更加准确的作为目标框。

通过这样的方法,能够采用特征匹配算法和cnn算法分别得到图像的目标候选框,并根据目标候选框与上一帧中目标框的距离选择确定目标框,防止单一算法导致的目标漏追踪、误追踪,提高视频图像中目标追踪的全面性和可靠性。

基于上一帧图像中的每个目标框,本公开的目标追踪方法中预定选择策略的一个实施例的流程图如图2所示。

在步骤201中,针对判断单个目标的第二目标候选框是否存在。若不存在,则确定cnn目标检测算法未能检测到该目标,执行步骤202;若存在,则确定cnn目标检测算法检测到了该目标,执行步骤204。

在步骤202中,判断目标的第一目标候选框是否存在。若不存在,则执行步骤206;若存在,则执行步骤203。

在步骤203中,判断第一空间距离是否小于第一预定阈值。若第一空间距离小于第一预定阈值,则确定特征匹配算法得到的目标候选框的置信度满足要求,执行步骤207;若第一空间距离不小于第一预定阈值,则确定特征匹配算法得到的目标候选框的置信度不满足要求,执行步骤206。

在步骤204中,判断第一空间距离是否小于第一预定阈值。若第一空间距离不小于第一预定阈值,则确定特征匹配算法得到的目标候选框的置信度满足要求,执行步骤208;若第一空间距离小于第一预定阈值,则需要从第一目标候选框和第二目标候选框中选择更加准确的目标框,执行步骤205。

在步骤205中,判断第二空间距离是否小于第二预定阈值。若第二空间距离不小于第二预定阈值,则确定cnn目标检测算法得到的目标候选框的置信度不能满足要求,执行步骤207;若第二空间距离小于第二预定阈值,则确定cnn目标检测算法得到的目标候选框的置信度也能够满足要求,执行步骤208。第二预定阈值大于第一预定阈值,从而使得对将特征匹配算法得到的目标候选框作为目标框的标准更加严苛,降低误选的可能。

在步骤206中,确定上一帧图像中该目标对象在本帧图像中丢失。

在步骤207中,确定第一目标候选框为当前帧的目标框,从而能够降低漏选的可能性。

在步骤208中,确定第二目标候选框为当前帧的目标框。

通过这样的方法,能够优先将更加准确的通过cnn目标检测算法得到的目标候选框作为目标框,当cnn目标检测算法的置信度不能够满足要求,或采用特征匹配算法得到的目标候选框更加准确时,采用通过特征算法得到的目标候选框作为目标框。这样的方法一方面降低了漏选的可能;另一方面实现目标框的优选,提高准确性;再一方面也能够及时察觉未检测到目标候选框,或检测到的目标候选框的置信度低,从而确定目标消失,降低误选的可能性。

在一个实施例中,第一预定阈值、第二预定阈值的大小可以通过实验测试确定和调节,从而提高目标跟踪结果对环境的适应能力和结果的可靠性。在一个实施例中,第一预定阈值可以为5,第二预定阈值为6。

本公开的目标追踪方法的另一个实施例的流程图如图3所示。

在步骤301中,通过传统的特征匹配算法,在本帧图像中获取针对上一帧中各个目标的第一目标框。第一目标框可以有一个或多个。在一个实施例中,以灰度特征为例,可以利用opencv(opensourcecomputervisionlibrary,开源计算机视觉库)的模板匹配,采用归一化相关系数匹配法(cv_tm_ccoeff_normed),获取目标选框。

输入:上一帧已标注的目标对象与位置(x,y,w,h);

输出:当前帧模板匹配的候选框(x,y,w,h)及置信度;

依据上一帧的目标对象选框进行padding(填充)操作,上下左右各扩展0.5倍,获取当前帧进行模板匹配的候选区域,在候选范围内进行模板匹配操作,获取匹配结果。该操作利用视频前后帧的相关性,可有效降低模板匹配的运算复杂度,提高效率。

在一个实施例中,针对不同的目标对象可以利用不同的特征进行特征匹配,如进行行人检测可以采取hog特征,进行人脸检测可以采取haar特征等

在步骤302中,获取每个第一目标框的特征向量。在一个实施例中,可以利用resnet50提取第一目标框的特征向量。

在步骤303中,根据第一目标框的iou(intersectionoverunion,重叠度),组合针对同一个目标的第一目标框,获得第一目标候选框。

在步骤311中,通过cnn目标检测算法,在本帧图像中获取针对上一帧中各个目标的第二目标框。针对每个目标的第二目标框可以有一个或多个。在一个实施例中,可以将视频图像数据输入cnn目标检测模块中,得到行人在视频中的位置(x,y,w,h),cnn目标检测算法会将行人区域从图像中单独切割出来。

在步骤312中,获取每个第二目标框的特征向量。在一个实施例中,可以利用resnet50提取第二目标框的特征向量。

在步骤313中,根据第二目标框的重叠面积iou,组合针对同一个目标的第二目标框,获得第二目标候选框。

在步骤34中,根据第一空间距离和第二空间距离的大小,基于预定选择策略确定目标在当前帧的目标框。在一个实施例中,可以通过上文中如图2所示实施例中的方式选择目标框。

在步骤35中,在一个实施例中,可以在当前帧图像中标注目标框。在一个实施例中,可以将将标注的目标框作为确定下一帧图像中目标框的基础。

通过这样的方法,能够先将针对单一目标的多个目标框归一化,进而计算空间距离,从而降低计算量,提高计算效率。另外,这样的方法利用图像包含传统的图像特征及cnn提取的深度特征在内的多维特征,进行视频的自动标注与目标追踪,从而有效改善漏检率及提高标注精度。

本公开的目标追踪装置的一个实施例的示意图如图4所示。第一空间距离计算模块41能够通过特征匹配算法获取当前帧图像的第一目标候选框,根据第一目标候选框的特征向量和上一帧图像中目标框的特征向量确定第一空间距离。在一个实施例中,第一空间距离可以是特征向量之间的欧式距离、马氏距离等。

第二空间距离计算模块42能够通过cnn目标检测算法获取当前帧图像第二目标候选框,根据第二目标候选框的特征向量和上一帧中目标框的特征向量确定第二空间距离。在一个实施例中,第二空间距离可以是特征向量之间的欧式距离、马氏距离等。在一个实施例中,第一空间距离和第二空间距离的计算采用同种算法。

目标框选模块43能够根据第一空间距离和第二空间距离的大小,基于预定选择策略确定目标在当前帧的目标框。在一个实施例中,可以设置预定阈值,通过第一空间距离、第二空间距离与预定阈值的比较来排除目标跟踪错误的情况,进而从第一目标候选框和第二目标候选框中选出更加准确的作为目标框。

这样的装置能够采用特征匹配算法和cnn算法分别得到图像的目标候选框,并根据目标候选框与上一帧中目标框的距离选择确定目标框,防止单一算法导致的目标漏追踪、误追踪,提高视频图像中目标追踪的全面性和可靠性。

在一个实施例中,目标追踪装置还可以包括目标标注模块44,能够在当前帧图像中标注目标框,从而在帮助用户直观识别目标的同时,也便于作为确定下一帧图像中目标框的基础。

在一个实施例中,目标框选模块43可以采用如图2所示实施例中的方式,针对图像中的同一个目标,将第一空间距离、第二空间距离分别为第一预定阈值、第二预定阈值相比较,确定选择第一目标候选框或第二目标候选框作为目标框。

由于cnn目标检测算法检测出的结果更准确,但容易发生漏检,而特征匹配能够有效解决遮挡、背景复杂、目标对象较小时的漏检问题,为cnn目标检测带来极大补充,但是容易造成误检,上述实施例中的装置一方面降低了漏选的可能,另一方面实现目标框的优选,提高准确性,再一方面也能够及时察觉未检测到目标候选框,或检测到的目标候选框的置信度低,从而确定目标消失,降低误选的可能性。

本公开的目标追踪装置中第一空间距离计算模块的一个实施例的示意图如图5a所示。

特征匹配单元511能够通过传统的特征匹配算法,在本帧图像中获取针对上一帧中各个目标的第一目标框。第一目标框可以有一个或多个。特征向量提取单元512能够获取每个第一目标框的特征向量,一个实施例中,可以利用resnet50提取第一目标框的特征向量。候选框确定单元513能够根据第一目标框的iou,组合针对同一个目标的第一目标框,获得第一目标候选框。

本公开的目标追踪装置中第二空间距离计算模块的一个实施例的示意图如图5b所示。

特征匹配单元521能够通过cnn目标检测算法,在本帧图像中获取针对上一帧中各个目标的第二目标框。针对每个目标的第二目标框可以有一个或多个。特征向量提取单元522能够获取每个第二目标框的特征向量,在一个实施例中,可以利用resnet50提取第二目标框的特征向量。候选框确定单元523能够根据第二目标框的重叠面积iou,组合针对同一个目标的第二目标框,获得第二目标候选框。

在一个实施例中,图5a、5b中的特征向量提取单元、候选框确定单元可以相同,通过输入不同的目标框输出对应的目标候选框。

这样的装置能够先将针对单一对象的多个目标框归一化,进而计算空间距离,从而降低计算量,提高计算效率。

本公开目标追踪装置的一个实施例的结构示意图如图6所示。目标追踪装置包括存储器601和处理器602。其中:存储器601可以是磁盘、闪存或其它任何非易失性存储介质。存储器用于存储上文中目标追踪方法的对应实施例中的指令。处理器602耦接至存储器601,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器602用于执行存储器中存储的指令,能够提高视频图像中目标追踪的全面性和可靠性。

在一个实施例中,还可以如图7所示,目标追踪装置700包括存储器701和处理器702。处理器702通过bus总线703耦合至存储器701。该目标追踪装置700还可以通过存储接口704连接至外部存储装置705以便调用外部数据,还可以通过网络接口706连接至网络或者另外一台计算机系统(未标出)。此处不再进行详细介绍。

在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,能够提高视频图像中目标追踪的全面性和可靠性。

在另一个实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现目标追踪方法对应实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

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

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

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

至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

可能以许多方式来实现本公开的方法以及装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法以及装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。

最后应当说明的是:以上实施例仅用以说明本公开的技术方案而非对其限制;尽管参照较佳实施例对本公开进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本公开的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本公开技术方案的精神,其均应涵盖在本公开请求保护的技术方案范围当中。

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