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

文档序号:22616719发布日期:2020-10-23 19:17阅读:126来源:国知局
目标跟踪方法、电子设备及存储介质与流程

本申请涉及目标跟踪技术领域,特别是涉及一种目标跟踪方法、电子设备及存储介质。



背景技术:

目标跟踪是计算机视觉中一个基础的问题,其在视频监控中被应用得非常广泛。其中,能够进行目标跟踪的算法有很多,以核相关滤波模型(kcf)为例,kcf能够基于给定的上一帧图像中的目标检测框对当前帧图像中的目标位置进行预测,从而实现目标跟踪。然而,现有技术中利用kcf进行目标跟踪的结果不够准确。



技术实现要素:

本申请提供一种目标跟踪方法、电子设备及存储介质,能够解决现有的利用kcf进行目标跟踪的结果不够准确的问题。

为解决上述技术问题,本申请采用的一个技术方案是:提供一种目标跟踪方法,该方法包括:从图像序列中获取一帧待跟踪图像作为当前帧图像;利用核相关滤波模型对当前帧图像和上一帧图像中待跟踪目标的最终位置进行处理,得到当前帧图像中待跟踪目标的预测位置;调整当前帧图像中待跟踪目标的预测位置,得到当前帧图像中待跟踪目标的最终位置;基于待跟踪目标的预测位置和最终位置得到并更新核相关滤波模型的参数;从图像序列中获取当前帧图像的下一帧图像作为新的当前帧图像,并重新执行利用核相关滤波模型对当前帧图像和上一帧图像中待跟踪目标的最终位置进行处理以及后续步骤。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种电子设备,该电子设备包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述方法。

为解决上述技术问题,本申请采用的再一个技术方案是:提供一种存储介质,存储有程序指令,该程序指令被执行时能够实现上述方法。

通过上述方式,本申请能够利用核相关模型对当前帧图像中待跟踪目标进行跟踪,得到预测位置,对得到的预测位置进行调整,得到更加准确的最终位置,以作为待跟踪目标的位置,从而能够逐帧调整待跟踪目标的预测位置,增加核相关滤波模型的鲁棒性;并且,在每次完成对当前帧图像中待跟踪目标的跟踪之后,还会基于当前帧图像中待跟踪目标的预测位置和最终位置进行核相关滤波模型在线学习,以更新核相关模型的参数,使得核相关滤波模型对后续帧的跟踪更加有效。

附图说明

图1是本申请目标跟踪方法第一实施例的流程示意图;

图2是本申请待跟踪图像中检测框示意图;

图3是本申请目标跟踪方法第二实施例的流程示意图;

图4是图3中s210的具体流程示意图;

图5是图4中s211的具体流程示意图;

图6是本申请目标图像示意图;

图7是本申请目标图像对应的红色二值图像示意图;

图8是本申请目标图像对应的黄色二值图像示意图;

图9是本申请目标图像对应的绿色二值图像示意图;

图10是图3中s220的具体流程示意图;

图11是本申请当前帧图像中待跟踪目标调整前的预测检测框示意图;

图12是本申请当前帧图像对应的黄色二值图像示意图;

图13是本申请当前帧图像中待跟踪目标调整后的最终检测框示意图;

图14是本申请目标跟踪方法第三实施例的流程示意图;

图15是本申请目标跟踪方法第四实施例的流程示意图

图16是本申请电子设备一实施例的结构示意图;

图17是本申请存储介质一实施例的结构示意图。

具体实施方式

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

本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,在不冲突的情况下,本文所描述的实施例可以与其它实施例相结合。

图1是本申请目标跟踪方法第一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例可以包括:

s110:从图像序列中获取一帧待跟踪图像作为当前帧图像。

图像序列可以为由摄像器件拍摄得到的完整视频流序列,也可以为从完整视频流序列中截取的一部分视频流序列。

可选地,图像序列包括第一帧图像以及位于第一帧图像之后的若干帧待跟踪图像。具体而言,图像序列中每帧图像具有对应的帧序号,因此可基于帧序号将图像序列中的图像分为第一帧图像(帧序号最小)、位于第一帧图像之后的若干帧待跟踪图像。其中,图像序列的第一帧图像中目标的位置已知(可以人为给定,也可以根据相关算法计算得到),除第一帧图像之外的其他帧图像中目标的位置未知,换句话说,目标在第一帧图像中的位置已知,而在其他帧图像中的位置未知,故本申请所指待跟踪图像为图像序列中位于第一帧图像之后的若干帧图像。

s120:利用核相关滤波模型对当前帧图像和上一帧图像中待跟踪目标的最终位置进行处理,得到当前帧图像中待跟踪目标的预测位置。

待跟踪目标可以简称为上述提及的目标,其可以为各种类别的标志牌,例如安全标志牌,警示标志牌、禁止标志牌等。待跟踪目标为第一帧图像中的目标,因此本申请提供的目标跟踪方法实质是用于跟踪第一帧图像中出现的目标在各待跟踪图像中的位置。其中,第一帧图像中目标的数量可能为一个,也可能为多个。

在本申请中,也将待跟踪目标的位置称为检测框,其表示方法可以为检测框的左上坐标、右下坐标。当然,在其他实施方式中,也可以表示为检测框的左上坐标、长度和宽度,或者可以表示为检测框的右下坐标、长度和宽度等,待跟踪图像中检测框1示例请参阅图2。在跟踪过程中,每个目标具有对应的检测框。

所谓上一帧图像,即为图像序列中当前帧图像的上一帧图像。可将当前帧图像和待跟踪目标在当前帧图像的上一帧图像中的位置输入核相关滤波模型(kcf),以利用kcf预测出待跟踪目标在当前帧图像中的位置,即预测位置。

其中,当前帧图像的上一帧图像可能是图像序列的第一帧图像,也可能不是图像序列的第一帧图像。由于在目标跟踪过程中,是按照帧序号依次对目标在图像序列的待跟踪图像中的位置进行跟踪。故当前帧图像为第二帧图像时,其上一帧图像是第一帧图像;当前帧图像为其他帧待跟踪图像时,其上一帧图像不是第一帧图像。

由于目标在第一帧图像中的位置已知,因此当上一帧图像是图像序列中第一帧图像时,上一帧图像中目标的最终位置是指第一帧图像中目标的已知位置。

当上一帧图像不是图像序列中第一帧图像时,上一帧图像中目标的最终位置为对上一帧图像中待跟踪目标的预测位置进行调整而得到的,其中上一帧图像中目标的预测位置的获取方式与当前帧图像的获取方式相同,具体获取和调整的方式请参见后面的实施例。

s130:调整当前帧图像中待跟踪目标的预测位置,得到当前帧图像中待跟踪目标的最终位置。

一些外界因素可能会影响利用kcf得到的当前帧图像中目标位置的准确度。例如,拍摄距离的不同会造成目标在当前帧图像中的尺寸与在上一帧图像中的尺寸有一定差距,但实际预测出来的待跟踪目标在当前帧图像中的检测框尺寸与在上一帧图像中相同,使得当前帧中目标的位置准确度受到影响,故可对得到的预测位置进行调整,具体调整方式可参见后面的实施例。

s140:基于待跟踪目标的预测位置和最终位置得到并更新核相关滤波模型的参数。

可利用目标的预测位置和最终位置进行核相关滤波模型在线学习,以更新kcf的参数,使其用于对下一帧图像的预测更加有效。

本步骤执行完之后,可跳转至上述s110,以从图像序列中获取当前帧图像的下一帧图像作为新的当前帧图像,并重新执行利用核相关滤波模型对新的当前帧图像和上一帧图像中目标的最终位置进行处理以及后续步骤,以完成各待跟踪图像中目标位置的预测。

通过上述实施例的实施,本申请能够利用核相关模型对当前帧图像中待跟踪目标进行跟踪,得到预测位置,对得到的预测位置进行调整,得到更加准确的最终位置,以作为待跟踪目标的位置,从而能够逐帧调整待跟踪目标的预测位置,增加核相关滤波模型的鲁棒性;并且,在每次完成对当前帧图像中待跟踪目标的跟踪之后,还会基于当前帧图像中待跟踪目标的预测位置和最终位置进行核相关滤波模型在线学习,以更新核相关模型的参数,使得核相关滤波模型对下一当前帧的跟踪更加有效。

图3是本申请目标跟踪方法第二实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图3所示的流程顺序为限。其中,上述s130之前还可以包括s210,在此基础上,第一实施例中s130可以扩展为s240,如图3所示,本实施例可以包括:

s210:确定当前帧图像之前的图像中待跟踪目标的最终位置所对应的第一图像区域,并利用第一图像区域的内容,获得待跟踪目标的参考目标信息。

可选地,当前帧图像之前的图像为当前帧图像的上一帧图像,或者为图像序列中的第一帧图像。第一图像区域为当前帧图像之前的图像中待跟踪目标的最终检测框区域,参考目标信息为第一图像区域中一预设颜色区域的占比以及预设颜色区域的中心位置。

参考目标信息可以作为对当前帧图像中待跟踪目标的预测位置进行调整的依据。

因此,若当前帧图像之前的图像为图像序列中的第一帧图像,可直接将第一帧图像对应的参考目标信息作为当前帧图像中待跟踪目标的预测位置进行调整的依据。此时意味着只需要计算第一帧图像的参考目标信息作为后续每帧待跟踪图像的预测位置调整依据即可。

若当前帧图像之前的图像为当前帧图像的上一帧图像,则意味着需要在得到上一帧图像中目标的最终位置之后,基于上一帧图像中目标的最终位置更新参考目标信息,以作为当前帧图像中待跟踪目标的预测位置进行调整的依据。

为提高目标跟踪过程的精度,在对待跟踪图像的跟踪结果较理想时,才将当前帧图像的上一帧图像作为当前帧图像之前的图像。

参阅图4,s210中利用第一图像区域的内容,获得待跟踪目标的参考目标信息可以包括:

s211:获取第一图像区域中各预设颜色区域的面积。

预设颜色也可以被称为先验颜色,其可以依据图像序列/第一帧图像中包含的标志牌颜色设定,例如基于设定的预设颜色包括绿色(安全)、黄色(警示)、红色(禁止)。

其中,可直接基于当前的颜色空间(rgb)对第一图像区域中各预设颜色区域的面积进行计算,也可以先对第一图像区域进行颜色空间转换后,基于转换后的颜色空间对第一图像区域中各预设颜色区域的面积进行计算,后者计算出来的各预设颜色区域面积更加准确。

下面对后者计算各预设颜色区域面积的步骤进行说明,参阅图5,计算各预设颜色区域面积可以包括:

s2111:截取相应图像区域,作为目标图像。

可以将第一图像区域从对应帧图像中截取出来作为目标图像。

s2112:对目标图像进行颜色空间转换。

目标图像当前所处的颜色空间为rgb,可将其转换到颜色空间hsv。当然,也可以将其转换到其他颜色空间,本实施例以转换到颜色空间hsv为例进行说明。

s2113:基于转换后的颜色空间计算各预设颜色区域的面积。

可基于各预设颜色在hsv对应通道的范围,对目标图像进行处理,以得到各预设颜色对应的二值图像(mask图像),并基于各预设颜色在对应的mask图中的连通域计算各预设颜色区域的面积。

举例说明,预设颜色包括绿色、黄色和红色,图6为目标图像示例,图7-9分别为目标图像对应的红色mask图像、黄色mask图像和绿色mask图像,可先确定mask图像中预设颜色的连通域,然后计算连通域的面积作为对应预设颜色区域面积,从而可以确定黄色区域的面积最大,将黄色区域作为参考颜色区域。

s212:将面积满足预设选择条件的预设颜色区域作为参考颜色区域,并获取参考颜色区域在第一图像区域中的占比以及参考颜色区域的中心位置,作为参考目标信息。

可选地,预设选择条件为面积最大。因此可将面积最大的预设颜色区域(参考颜色区域)在第一图像区域中的占比以及面积最大的预设颜色区域中心位置(参考颜色区域中心位置)作为参考目标信息。例如,黄色区域的面积最大,则将黄色作为参考颜色,将黄色区域作为参考颜色区域,将黄色区域中心作为参考颜色区域中心位置。

s220:利用待跟踪目标的参考目标信息,调整当前帧图像中待跟踪目标的预测位置,得到当前帧图像中待跟踪目标的最终位置。

可将当前帧图像中的目标信息与参考目标信息进行比较,以得到当前帧图像中目标的最终位置。在其他实施方式中,也可以通过其他方式来得到目标的最终位置,在此不作具体限定。

结合参阅图10,以比较当前帧图像中的目标信息与参考目标信息,来得到当前帧图像中目标的最终位置的方法为例进行说明。s220具体可以包括:

s221:确定当前帧图像中待跟踪目标的预测位置所对应的第二图像区域,并利用第二图像区域的内容,获得待跟踪目标的当前目标信息。

可选地,第二图像区域为当前帧图像中对应于待跟踪目标的预测检测框的区域,当前目标信息为第二图像区域中一预设颜色区域的占比以及预设颜色区域的中心位置。

同一目标的当前目标信息与参考目标信息对应。具体而言,第二图像区域中一预设颜色区域的占比为第二图像区域中参考目标区域的占比,预设颜色区域的中心位置为参考目标区域中心位置。

举例说明,标志牌的参考目标信息为在第一图像区域中黄色区域的占比和中心位置,那么该标志牌的当前目标信息为在第二图像区域中黄色目标区域的占比和中心位置。图11为当前帧图像示例,图11中待跟踪目标的预测检测框2区域为第二图像区域,图12为第二图像区域对应的黄色mask图像。

当前目标信息的获取方式与上述参考目标信息的获取方式的不同之处在于,只需基于转换后的颜色空间获取参考颜色对应的mask图,并基于该mask图中参考颜色的连通域计算参考颜色区域的面积。

s222:对待跟踪目标的当前目标信息与参考目标信息进行比较。

s223:根据比较结果对当前帧图像中待跟踪目标的预测位置进行调整。

可选地,基于第一图像区域和第二图像区域间的预设颜色区域的中心位置差异,调整当前帧图像中对应于待跟踪目标的预测检测框的中心位置,并基于第一图像区域和第二图像区域间的占比差异,对当前帧图像中对应于待跟踪目标的预测检测框进行缩放。图13为通过上述方式对图11中待跟踪目标的预测检测框2区域调整后得到的最终检测框3区域示例。

通过上述实施例的实施,本申请能够基于当前帧图像中的当前目标信息与参考目标信息,对当前帧图像中待跟踪目标的预测位置的尺度和位置进行调整,能够提高核相关滤波模型对下一待跟踪图像进行跟踪的准确度;并且,基于颜色空间得到的当前帧图像的参考目标信息对预测位置进行调整,计算过程简单,不需要占用过多的计算资源。

图14是本申请目标跟踪方法第三实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图14所示的流程顺序为限。本实施例是对上述s140的进一步扩展,如图14所示,s140可以包括:

s610:基于待跟踪目标的预测位置确定核相关滤波模型的第一参数,以及基于待跟踪目标的最终位置确定核相关滤波模型的第二参数。

第一参数与第二参数的获取方法请参见后面的第四实施例。

s620:对核相关滤波模型的第一参数和第二参数进行加权处理,得到并更新核相关滤波模型的参数。

对第一参数和第二参数进行加权处理的公式可以如下:

其中,为第一参数,为第二参数,β为权重。

在上述s110之前,本实施例还可以包括:基于第一帧图像中待跟踪图像的最终位置获得核相关滤波模型的初始参数。参阅图15,图15为本申请第四实施例的流程示意图,如图15所示,对核相关滤波模型的初始参数、第一参数、第二参数的确定可以包括:

s710:将相应目标位置所在区域放大预设倍数,得到搜索区域。

相应目标位置为目标的预测位置或目标的最终位置(若为第一帧图像,则为第一帧图像中的已知位置)。可将相应目标位置所在区域放大预设倍数,其中预设倍数可以为1.6、1.8等,考虑到kcf的计算时间以及计算结果的精度,可在[1.2,1.8]内对预设倍数取值。

其中,将相应目标位置所在区域放大预设倍数,也即将目标的检测框放大预设倍数,并截取当前帧图像中将经放大的检测框作为搜索区域。

s720:对搜索区域进行灰度化处理得到灰度化图像。

s730:将灰度化图像划分为多个图像单元,并将多个图像单元中每预设数量个图像单元组成一个块,并将每个块中图像单元的hog特征串联得到对应块的特征。

其中,hog特征包括梯度的大小和方向。

例如,一个图像单元(cell)包括6*6个像素,每相邻的四个cell组成一个块(block)。因此将每相邻的四个cell的hog特征串联得到对应块的特征。

s740:利用块特征构建得到特征矩阵,并为特征矩阵中每个块特征构建高斯标签。

每个目标对应一搜索区域,每个搜索区域的块特征构成特征矩阵中一行向量。例如,目标数量为3个,每个搜索区域被划分为6个块,则可以构成一个3行6列的特征矩阵。高斯标签即为对应块特征的权重,可以为特征矩阵中每一块特征赋予一权重,其中,离图像中心位置越近的块的特征被赋予的权重越大。

s750:利用特征矩阵以及对应的高斯标签,得到核相关滤波模型的相应参数。

kcf参数的计算公式如下:

其中,特征矩阵,为高斯标签矩阵,为关于的核相关矩阵,λδ为预设值,可根据环境因素(如遮挡度)设定。

其中,利用目标的预测位置对应的特征矩阵以及高斯标签得到的参数为第一参数,利用目标的最终位置对应的特征矩阵以及高斯标签得到的参数为第二参数。

当前帧图像为第一帧图像时,利用目标在第一帧图像中的已知位置对应的特征矩阵以及高斯标签得到参数的过程为核相关滤波模型参数的初始化过程。

图16是本申请电子设备一实施例的结构示意图。如图16所示,该电子设备包括处理器810、与处理器耦接的存储器820。

其中,存储器820存储有用于实现上述任一实施例的方法的程序指令;处理器810用于执行存储器820存储的程序指令以实现上述方法实施例的步骤。其中,处理器810还可以称为cpu(centralprocessingunit,中央处理单元)。处理器810可能是一种集成电路芯片,具有信号的处理能力。处理器810还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

图17是本申请存储介质一实施例的结构示意图。如图17所示,本申请实施例的存储介质900存储有程序指令910,该程序指令910被执行时实现本申请上述实施例提供的方法。其中,该程序指令910可以形成程序文件以软件产品的形式存储在上述存储介质900中,以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质900包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

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