目标跟踪方法及装置与流程

文档序号:17492857发布日期:2019-04-23 20:49阅读:235来源:国知局
目标跟踪方法及装置与流程

本发明属于图像处理技术领域,具体而言,涉及一种目标跟踪方法、跟踪装置、计算机可读介质及电子设备。



背景技术:

目前,由于神经网络的快速发展,在目标识别,目标检测领域取得了突破性进展,但是在目标跟踪领域却发展缓慢。原因是神经网络需要用大量多样性样本才能发挥出强大的拟合能力,但是目标跟踪只给定了第一帧标注,训练样本单一;同时目标跟踪对算法的时效性有较高的要求,而神经网络一般计算量较大,难以实时。本发明实现一种基于神经网络的实时多目标长时间跟踪方法。该技术可以用于智能电视、个人电脑、平板电脑和智能手机等电子设备。

现有目标长时间跟踪方法主要是tld(tracking-learning-detection)系列,但是该方法效果一般,对环境变化、目标表面变化比较敏感,容易丢失;同时计算量大,无法实现多目标跟踪要求。

实际场景中多目标长时间跟踪面临的挑战也是巨大的:

(1)环境复杂,光线、运动模糊、角度变化,遮挡等

(2)样本单一,难以训练处好的检测器和分类器

(3)计算量大

(4)目标丢失后,需要重新捕获到目标

因而如何开发快速而稳定的目标跟踪算法已成为目前急需解决的问题,而对于多目标跟踪算法而言,跟踪、再检测、算法优化是至关重要的部分。



技术实现要素:

本发明为了解决上述现有技术的缺点,提出了一种快速而稳定的目标跟踪方法和装置,可以高效地运用到单目标和多目标跟踪场景中,具体地,第一方面,本发明实施例提供了一种目标跟踪方法,包括如下步骤:

s120、获取图像帧,利用目标跟踪器获取目标的当前位置矩形,并对当前位置矩形提取特征向量,利用目标评估器判断当前位置矩形的位置得分;

s130、根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域,在所述目标检测区域内滑动形成待检测框,计算所述待检测框的特征向量与模板特征向量之间的相似度,取出分数最高的阈值个待检测框为检测框,利用目标评估器获取所述检测框的目标概率得分;

s140、判断所述位置得分和所述目标概率得分中最高者大于阈值时,认定跟踪成功,并将最高得分对应的检测框或者当前位置矩形中的图像作为目标。

进一步地,所述步骤s140还包括,判断所述位置得分和所述目标概率得分中最高者小于阈值时,认定跟踪失败;所述步骤s130中,所述根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域包括:判断上一帧图像跟踪失败时,设定所述目标检测区域为当前帧图像的全部区域。

进一步地,还包括步骤:

s150、判断步骤s140中跟踪成功时,根据当前帧图像中的目标特征向量和当前模板特征向量更新所述模板特征向量,重复执行步骤s120至步骤s140直至图像结束。

进一步地,所述更新所述模板特征向量的步骤包括:根据如下公式进行更新,feattmp=feattmp×(1-alpha)+featcur×alpha,其中feattmp为模板特征向量,featcur为当前帧目标特征向量,alpha为学习率。

进一步地,还包括步骤:

s160、判断步骤s140中跟踪成功时,计算当前目标的特征向量与用于训练目标评估器的样本池中的样本的特征向量的相似度,判断相似度小于阈值时,将所述目标加入到所述样本池中,利用更新后的样本池训练形成更新后的目标评估器,采用更新后的目标评估器作为所述目标评估器,重复执行步骤s120至步骤s140直至图像结束。

进一步地,还包括:

s110、从初始帧图像中获取跟踪目标框,根据所述跟踪目标框初始化目标跟踪器和目标评估器,提取所述跟踪目标框内的特征向量作为模板特征向量;

所述步骤s110中根据所述跟踪目标框初始化目标跟踪器和目标评估器的步骤包括:根据所述目标跟踪框和初始帧图像进行回归训练,获取所述目标跟踪器。

进一步地,所述步骤s110中根据所述跟踪目标框初始化目标跟踪器和目标评估器的步骤包括:在初始帧图像中生成随机框,计算所述随机框与所述跟踪目标框的交并比,判断所述交并比大于第一阈值时,将对应的随机框作为正样本,判断所述交并比小于第二阈值时,将对应的随机框最为负样本,利用所述正样本和所述负样本训练形成所述目标评估器。

本发明实施例第二方面,提供了一种目标跟踪装置,包括:

位置得分获取模块,用于获取图像帧,利用所述目标跟踪器获取目标的当前位置矩形,并对当前位置矩形提取特征向量,利用目标评估器判断当前位置矩形的位置得分;

目标概率获取模块,根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域,在所述目标检测区域内滑动形成待检测框,计算所述待检测框的特征向量与模板特征向量之间的相似度,取出分数最高的阈值个待检测框为检测框,利用目标评估器获取所述检测框的目标概率得分;

目标获取模块,用于判断所述位置得分和所述目标概率得分中最高者大于阈值时,认定跟踪成功,并将最高得分对应的检测框或者当前位置矩形中的图像作为目标。

本发明第三方面,提供了一种电子设备,包括:

一个或多个处理器;

存储装置,其上存储有一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的方法。

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

本发明实施例通过利用初始帧图像和预先标注的初始目标框,然后进行跟踪器评估器的初始化训练和形成初始模板特征,之后,根据跟踪器获取后续帧图像中目标位置框,利用评估器获取第一概率,然后根据上一帧目标检测的区域内进行扩展滑动检索,判断相似性,取出前几个相似性较高的框对应的特征利用评估器,计算相应第二概率,判断第一概率和第二概率中最高的框所对应的概率大于阈值时,判定跟踪成功。本发明实施例中的跟踪方法计算快速,且在多目标场景下,效果明显。在多目标场景下,初始目标框有多个。对应地,后续的结果又多套,从而能够确定出多个跟踪目标。

附图说明

通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:

图1为本发明一些实例中的目标跟踪方法、提取装置运行的系统架构示意图;

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

图3为本发明一些实施例中的目标跟踪方法特征提取器和目标评估器网络示意图;

图4为本发明另一些实施例中的目标跟踪方法流程示意图;

图5为本发明另一些实施例中的目标跟踪方法流程示意图;

图6为本发明另一些实施例中目标跟踪方法中的方法流程示意图;

图7为本发明另一些实施例中的目标跟踪装置系统架构示意图;

图8为本发明一些实施例中目标跟踪方法或者提取装置运行的计算机系统结构示意图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

图1示出了可以应用本申请实施例的目标跟踪方法或视目标跟踪装置的实施例的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送数据(例如视频)等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如视频播放软件、视频处理类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持数据传输的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的视频提供支持的后台服务器。后台服务器可以对接收到的图像处理请求等数据进行分析等处理,并将处理结果(例如对视频进行分割后得到的视频片段或其他数据)反馈给与其通信连接的电子设备(例如终端设备)。

需要说明的是,本申请实施例所提供的目标跟踪方法可以由服务器105执行,相应地,目标跟踪装置可以设置于服务器105中。此外,本申请实施例所提供的目标跟踪方法也可以由终端设备101、102、103执行,相应地,目标跟踪装置也可以设置于终端设备101、102、103中。

需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。当目标跟踪方法运行于其上的电子设备不需要与其他电子设备进行数据传输时,该系统架构可以仅包括用于分割视频方法运行于其上的电子设备(例如终端设备101、102、103或服务器105)。

图2示出了依照本发明实施例的一种目标跟踪方法的一般流程,即,提供了一种基于卷积神经网络的多目标长时间跟踪方法。多个目标的跟踪与一个目标跟踪方式相同,多个目标只需创建多个跟踪实例。图2示出了本发明方法的一般流程图。主要模块及步骤如下:

模块介绍:

基础跟踪器:本发明采用kcf(kcfkernelizedcorrelationfilter)作为基础跟踪器,该方法对于具有跟踪速度快,对环境适应能力强,跟踪精度高等特点。基础跟踪器:不限于kcf跟踪器,比如medianflowtracker跟踪等高精度、快速跟踪方式。

特征提取器:参考图3中的featurenet部分。输入为待处理图像和待提取特征检测框,输出为所有检测框归一化后的特征向量。用vgg16的前3个卷积层作为特征提取层,结合roipooling层和normalize层一次前向运算即可提取所有检测框固定维度归一化后的特征向量。由于网络很小,并且采用全卷积的方式,因此执行次数与目标个数无关,只需要执行一次前向运算,速度很快。2.特征提取器:不限于vgg16的前3层联合roi-pooling和normalize的方式,比如resnet联合roi-pooling和normalize,edgeboxes等方式。

目标评估器:参考图3中的validatenet部分。用3个fc层网络搭建一个分类网络,输入为特征提取器提取的检测框的特征向量,输出该检测框属于目标的概率。不同目标的网络结构相同,但网络模型的权值不同,为每个目标建立一个目标评估器。由于每个评估器的输入是特征提取器提取的特征,并且采用具有强大拟合能力3层fc网络进行分类,因此目标评估器的性能比较好;同时需要评估的目标框较少,因此速度快。3.目标评估器:不限于神经网络方式,比如svm方式。

主要步骤:

step1:从初始帧中标记出的待跟踪目标框groundtruth_box。

初始情况是人工标记出待跟踪目标,标注的框记为:groundtruth_box

(1)基础跟踪器(kcftracker)用当前帧图像与groundtruth_box建模。建模的过程是在groundtruth_box附近采样,训练一个回归器,该回归器能够计算图像像素位置的响应值。越靠近目标中心响应越大,越远离目标响应越小。

回归跟踪器就是基础kcf跟踪器,训练好回归跟踪器的作用是找到目标的最优位置。然后用目标评估器进行评估,判断当前跟踪的目标是否正确。

(2)用特征提取器提取groundtruth_box内的特征向量作为模板特征向量feattmp。

(3)在初始帧中生成随机框,计算所有框与groundtruth_box的iou值,iou>0.7作为正样本,iou<0.3的作为负样本,并对正样本做数据增强丰富样本的多样性,训练目标评估器。其中iou为所有框与groundtruth_box的重叠度,计算公式如下:

其中:detectionrect为检测框,groundtruth为目标标注框

iou是交并比,是目标检测中度量检测精度的一种方式。

数据增强:就是对每个正样本做一定角度的随机旋转,亮度、对比度、色彩饱和度做随机变化,增加样本的多样性。

step1是算法输入,(1),(2),(3)是根据人工标记的目标框初始化算法,是对step1的细化,(1)是初始化kcf跟踪器,(2)是在提取目标特征,(3)是在搜集正负样本,用于训练目标评估器。其中正样本为与groundtruth交并比大于0.7的框,负样本为交并比小于0.3的框。

groundtruth为人工标注目标标注框,

step2:读入后续帧图像,用kcf估计出目标的当前位置tracker_box;对tracker_box用特征提取器提取特征向量,并用目标评估器计算tracker_box的得分tracker_score。

step3:根据上一帧目标为中心,上下左右各扩展1倍目标长边大小的范围作为目标检测区域。保持原始目标长宽比不变,分别以5种尺度(0.8,0.9,1.0,1.1,1.2)大小的框在检查区域内滑动,滑动步进为8,获取所有待检测框。对检测区域执行前向运算,提取每个检测框的特征向量featcurs,计算每个检测框与模板特征向量feattmp的相似度(cos距离),取出分数最高的5个检测框,并用目标评估器评估这5个检测区域属于目标的概率proposal_scores。

(0.8,0.9,1.0,1.1,1.2)为尺寸的倍数关系,为上一帧目标的size缩放的系数。

滑动步进:根据尺度系数计算当前检测框的size;然后在图像横轴、纵轴方向逐步移动检测框,每次移动8个像素;每移动一次就会得到一个检测区域,这里记为待检测框。

前向运算:每得到一个待检测框,就将检测框内的图像内容作为特征提取器的输入,计算特征提取器的输出,将输出作为该检测框的特征。特征提取器是个神经网络,前向运算就是给定输入,根据网络的权值计算网络输出。

计算向量间的cos距离的公式如下:

由于经过特征提取器得到的是归一化后的特征向量,因此,公式(2)的分母归一化为1,公式(2)简化为公式(3),如下所示:

其中a,b为两组向量,n为向量的维度

step4:将tracker_score与proposal_scores排序,取分数最高者作为最终的跟踪结果tracker_result,如果分数小于阈值(例如为0.65),则认为跟踪失败。

step5:当目标丢失后再次出现,设置检查区域为全图,通过step3重新捕获到目标,再用目标评估器对新出现的目标评估,取最大值作为目标重新出现的最大响应,如果最大响应大于阈值(例如为0.85),则认为目标重新捕获成功。

此处的step3重新捕获目标的方法是:目的是在当前帧中捕获到目标,捕获区域称为待检测区域,有两种情况:跟踪器丢失目标,跟踪器没有丢失目标。

如果跟踪器没有丢失目标,就是step3的情况,以上一帧目标作为中心,周围扩展1倍目标大小作为待检测区域。因为相邻两帧之间目标不会跑太远。

如果跟踪器丢失目标,就是step5的情况,以上一帧目标作为中心已没有参考意义,所以直接将待检测区域设置为全图。

step6:模板更新,当跟踪成功时更新,否则不更新。更新方式为:

feattmp=feattmp×(1-alpha)+featcur×alpha(4)

其中:feattmp为模板特征向量,featcur为当前帧目标特征向量,alpha为学习率(例如为0.25)。

step7:目标评估器模型更新,当跟踪成功时更新,否则不更新。用k-mean方式收集不同姿态的样本作为正样本,姿态的变化量是特征提取器提取当前帧特征向量与所有正样本的特征向量的相似度的最大值,相似度越大,姿态变化越小,反之,姿态变化越大。如果当前帧姿态变化较大,则保存该样本为正样本,并且更新当前目标评估器;否则丢弃该样本,同时也不更新。负样本的收集方式为全图均匀采样,正负样本比例控制在1:3。

k-mean方式收集样本:收集时域上的所有样本到样本池中,收集的方式采用k-mean聚类。就是每次跟踪完一帧目标,计算这一帧目标和样本池中的目标的相似度,如果非常相似,则丢弃这一帧,否则,把这一帧保存到样本池中。这样就保证了样本池中的所有样本的相似度都很低,相似度低说明样本的多样性就好。(相似度的计算是计算当前帧样本与样本池中每个样本特征向量的cos距离)

姿态变化较大:就是计算当前帧与样本池中所有样本计算相似度,相似度大,姿态变化就小,否则,姿态变化就大。

重新训练目标评估器:目标评估器训练样本是用样本池中的样本进行训练的,step1(3)中的样本在样本池中,故会参与训练。

本发明实施例提供的一种基于神经网络的多目标长时间跟踪方法,包括目标跟踪,特征提取,目标评估等部分,其具有的有益效果如下:使用无标识的通用性网络模型vgg16作为特征提取器。特征提取器只需一次前向运算即可提取出所有检测区域的归一化后的目标特征向量,不仅一次提取出所有框的特征,而且简化了相似度计算,为算法实时性提供了保障。算法给不同的目标创建不同的目标评估器,每个评估器的输入为特征提取器提取的特征向量。目标评估器采用k-mean方式收集正样本,维持正样本姿态的多样性和均衡性,对于提升网络的性能有较大的帮助。对于目标评估器更新,只有当姿态发生较大变化时才更新当前目标评估器,减少更新次数,进一步提升算法的实时性;同时也让网络及时适应目标的变化,提升网络的性能。通过通用的特征提取器结合roi-pooling层和normalize层一次前向运算提取出所有检测框归一化后的特征向量,简化大量计算。将特征提取器提取的特征向量作为目标评估器的输入,不用重新提取特征。通过用k-mean的方式收集不同姿态的正样本更新目标评估器,维持样本姿态的多样性和均衡性,对于提升分类器的性能有较大的提升。在目标跟踪过程中,目标评估器只有在姿态有较大变化时才更新模型,大大减少了模型更新次数;并且使网络及时适应目标的变化,提升网络性能。

如图4所示,本发明另一些实施例提供了一种目标跟踪方法,包括如下步骤:

s110、从初始帧图像中获取跟踪目标框,根据所述跟踪目标框初始化目标跟踪器和目标评估器,提取所述跟踪目标框内的特征向量作为模板特征向量;利用初始帧图像和跟踪目标框对目标跟踪器进行训练初始化目标跟踪器,然后在初始帧图像中随机形成框,运用与跟踪目标框的交并比选取正样本和负样本训练目标评估器,训练的输入为利用特征提取器对所有框的计算形成的特征向量。

需要说明的是步骤s110也可以在另一计算装置上实现,为了实现本发明实施中的跟踪方法,初始状态即可为已有训练好的跟踪器和目标评估器,要实现本发明的方法训练的步骤不是必须的;为了使得整个方法步骤运行流畅,体现出相应的输入关系,在此进行说明。

s120、获取后续帧图像,利用所述目标跟踪器获取目标的当前位置矩形,并对当前位置矩形提取特征向量,利用目标评估器判断当前位置矩形的位置得分;

s130、根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域,在所述目标检测区域内滑动形成待检测框,计算所述待检测框的特征向量与模板特征向量之间的相似度,取出分数最高的阈值个待检测框为检测框,利用目标评估器获取所述检测框的目标概率得分;例如可以选取5个为检测框。当上一帧中检测到目标时,基于上一帧目标的位置在当前帧中扩展搜索区域进行检测,检测过程中,通过步进滑动的方式,对形成的多个待检测框提取特征向量,利用评估器计算相应的概率得分。

s140、判断所述位置得分和所述目标概率得分中最高者大于阈值时,认定跟踪成功,并将最高得分对应的检测框或者当前位置矩形中的图像作为目标。

上述特征的提取过程采用vgg16模型进行提取,采用前向运算获取目标框、检测框的特征向量,能够快速获取特征向量。

进一步地,所述步骤s140还包括,判断所述位置得分和所述目标概率得分中最高者小于阈值时,认定跟踪失败;所述步骤s130中,所述根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域包括:判断上一帧图像跟踪失败时,设定所述目标检测区域为当前帧图像的全部区域。能够应对目标丢失的情况。

进一步的,如图5所示,可以更新模块,具体还包括步骤:

s150、判断步骤s140中跟踪成功时,根据当前帧图像中的目标特征向量和当前模板特征向量更新所述模板特征向量,重复执行步骤s120至步骤s150直至图像结束。

具体地,所述更新所述模板特征向量的步骤包括:根据如下公式进行更新,feattmp=feattmp×(1-alpha)+featcur×alpha,其中feattmp为模板特征向量,featcur为当前帧目标特征向量,alpha为学习率。

进一步地,如图6所示,可以进行模型更新,具体还包括步骤:

s160、判断步骤s140中跟踪成功时,计算当前目标的特征向量与用于训练目标评估器的样本池中的样本的特征向量的相似度,判断相似度小于阈值时,将所述目标加入到所述样本池中,利用更新后的样本池训练形成更新后的目标评估器,采用更新后的目标评估器作为所述目标评估器,重复执行步骤s120至步骤s160直至图像结束。仅在相似度足够低时(即形态差异较大时)进行模型更新,能够减少模型更新的次数,同时保证跟踪质量;进一步地,也可以将时域上获得的目标进行聚类(例如k-means)将聚类后的目标进行相似度判断,小于阈值时进行模型更新,这样,进一步保证了模型更新的频次。正负样本的比例可以控制在1:3左右。

进一步地,所述步骤s110中根据所述跟踪目标框初始化目标跟踪器和目标评估器的步骤包括:根据所述目标跟踪框和初始帧图像进行回归训练,获取所述目标跟踪器。

进一步地,所述步骤s110中根据所述跟踪目标框初始化目标跟踪器和目标评估器的步骤包括:在初始帧图像中生成随机框,计算所述随机框与所述跟踪目标框的交并比,判断所述交并比大于第一阈值(例如0.7)时,将对应的随机框作为正样本,判断所述交并比小于第二阈值(0.3)时,将对应的随机框最为负样本,利用所述正样本和所述负样本训练形成所述目标评估器。

通过本发明实施例的目标跟踪算法,能够高效的进行目标跟踪,特征提取器利用前向运算,批量处理框,形成特征向量,之后利用评估器对特征向量进行评估概率得分,计算快速。同时,更新模板和评估器模型时,利用姿态变化较大的样本重新进行训练,使得动态性能较好,同时,减少了更新的频次。

基于上述的目标跟踪方法,如图7所示,本发明实施例提供了一种目标跟踪装置100,包括:

初始化模块110,用于从初始帧图像中获取跟踪目标框,根据所述跟踪目标框初始化目标跟踪器和目标评估器,提取所述跟踪目标框内的特征向量作为模板特征向量;

位置得分获取模块120,用于获取后续帧图像,利用所述目标跟踪器获取目标的当前位置矩形,并对当前位置矩形提取特征向量,利用目标评估器判断当前位置矩形的位置得分;

目标概率获取模块130,根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域,在所述目标检测区域内滑动形成待检测框,计算所述待检测框的特征向量与模板特征向量之间的相似度,取出分数最高的阈值个待检测框为检测框,利用目标评估器获取所述检测框的目标概率得分;

目标获取模块140,用于判断所述位置得分和所述目标概率得分中最高者大于阈值时,认定跟踪成功,并将最高得分对应的检测框或者当前位置矩形中的图像作为目标。

进一步地,所述目标获取模块还用于,判断所述位置得分和所述目标概率得分中最高者小于阈值时,认定跟踪失败;所述目标概率获取模块还用于,所述根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域包括:判断上一帧图像跟踪失败时,设定所述目标检测区域为当前帧图像的全部区域。

进一步地,还包括步骤:

模板更新模块150,用于当目标跟踪成功时,根据当前帧图像中的目标特征向量和当前模板特征向量更新所述模板特征向量,使得重复位置得分获取模块、目标概率获取模块、目标获取模块和模板更新模块重复运行直至图像处理结束。

具体地,所述模板更新模块用于,根据如下公式进行更新,feattmp=feattmp×(1-alpha)+featcur×alpha,其中feattmp为模板特征向量,featcur为当前帧目标特征向量,alpha为学习率。

进一步地,还包括评估器更新模块160,用于当目标跟踪成功时,计算当前目标的特征向量与用于训练目标评估器的样本池中的样本的特征向量的相似度,判断相似度小于阈值时,将所述目标加入到所述样本池中,利用更新后的样本池训练形成更新后的目标评估器,采用更新后的目标评估器作为所述目标评估器,使得位置得分获取模块、目标概率获取模块、目标获取模块、模板更新模块和评估器更新模块或者位置得分获取模块、目标概率获取模块、目标获取模块和评估器更新模块重复运行直至图像处理完。

所述初始化模块110具体还用于,根据所述目标跟踪框和初始帧图像进行回归训练,获取所述目标跟踪器。

所述初始化模块具体还用于,在初始帧图像中生成随机框,计算所述随机框与所述跟踪目标框的交并比,判断所述交并比大于第一阈值时,将对应的随机框作为正样本,判断所述交并比小于第二阈值时,将对应的随机框最为负样本,利用所述正样本和所述负样本训练形成所述目标评估器。

进一步,还包括图像采集装置、图像存储装置,用户交互装置,图像采集装置用于采集图像,传输给图像存储装置,初始化模块从图像存储装置和用户交互装置中获取信息,进行初始化,然后位置得分模块和目标概率获取模块从图像存储装置获取后续图像进行处理。

通过本发明实施例的目标跟踪装置,能够高效的进行目标跟踪,特征提取器利用前向运算,批量处理框,形成特征向量,之后利用评估器对特征向量进行评估概率得分,计算快速。同时,更新模板和评估器模型时,利用姿态变化较大的样本重新进行训练,使得动态性能较好,同时,减少了更新的频次。

上述各个模块的具体执行步骤在目标跟踪方法中对应的步骤中已进行详细叙述,在此不做过多赘述。

下面参考图8,其示出了适于用来实现本申请实施例的控制设备的计算机系统800的结构示意图。图8示出的控制设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图8所示,计算机系统800包括中央处理单元(cpu)801,其可以根据存储在只读存储器(rom)802中的程序或者从存储部分808加载到随机访问存储器(ram)803中的程序而执行各种适当的动作和处理。在ram803中,还存储有系统800操作所需的各种程序和数据。cpu801、rom802以及ram803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。

以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本申请的方法中限定的上述功能。

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向目标的程序设计语言—诸如python、java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、分割单元、确定单元和选择单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取待处理绘本图像的单元”。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取图像帧,利用所述目标跟踪器获取目标的当前位置矩形,并对当前位置矩形提取特征向量,利用目标评估器判断当前位置矩形的位置得分;根据上一帧图像中的目标的位置和大小,在当前帧图像中进行扩展形成目标检测区域,在所述目标检测区域内滑动形成待检测框,计算所述待检测框的特征向量与模板特征向量之间的相似度,取出分数最高的阈值个待检测框为检测框,利用目标评估器获取所述检测框的目标概率得分;判断所述位置得分和所述目标概率得分中最高者大于阈值时,认定跟踪成功,并将最高得分对应的检测框或者当前位置矩形中的图像作为目标。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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