一种基于FPN神经网络的目标跟踪方法与流程

文档序号:15965487发布日期:2018-11-16 23:08阅读:348来源:国知局

本发明属于计算机视觉技术领域,具体涉及一种基于fpn神经网络的目标跟踪方法。

背景技术

目标跟踪由于其在行为分析、车辆导航、人机交互、医学成像、视频监控等众多领域都有着广阔的应用,从而成为计算机视觉技术最活跃的研究之一。目标跟踪是指在给定视频第一帧中的目标位置,对之后的每一帧进行目标定位。目标跟踪的核心问题紧跟随着时间不断变化的目标。尽管近年来在国内外学者的不断研究下,目标跟踪算法得到了迅速发展,但在光照变化剧烈、目标快速运动、部分遮挡等情况下仍然无法取得很好效果。

近年来,国内外学者提出了多种跟踪算法,主要可以分成两类:一类是基于对于目标本身进行描述和刻画的生成式模型;另一类旨在将目标和背景分离开的判别式模型。生成式模型重点在于建立目标外观模型的表征,虽然构建有效的外观模型以处理跟踪中的各种具有挑战性的情况至关重要,但是与此同时,也会增加很大的计算复杂度,并且还会丢弃了可用于更好地将对象与背景分离的目标区域周围的有用信息;判别式模型将跟踪问题转换为目标和背景的二分类问题,即把跟踪的目标作为前景,利用在线学习或离线训练的判断器来区分前景目标和背景,从而得到前景目标的位置。在进行判断前往往会进行特征提取,以作为判断依据提高判断的精确度,但是这也会导致有大量的候选样本需要进行特征提取,使得难以达到实时性。

相关滤波是一种传统的信号处理方法,其描述了两个样本之间的相似程度。2010年mosse算法将其引入到目标跟踪中,从而使得跟踪算法速度达到高速状态,但是由于其采用的是随机采样,从而导致正负训练数目不足而使得精度较低。2012年csk算法基于mosse算法通过建立循环位移的结构将目标进行稠密采样,以此增加正负样本的数目,以此解决目标跟踪之中训练样本不足的问题。除此之外,通过对于这些样本进行循环位移的处理,将对目标样本的计算转化到频率域中的求解,通过使用快速傅里叶变换的方法,大大地提高目标跟踪的效率。然而csk算法采用的是单通道灰度特征,在特征表征上不够鲁棒。针对以上问题,2015年cn算法改用多通道的颜色特征,kcf算法改用多通道hog特征,使得精度得到提高。但是cn算法和kcf算法在卷积求解中使用的固定大小的模板,从而导致模型没有尺度自适应的功能,dsst算法在原本的位置滤波器基础上增加了一个尺度滤波器,fdsst算法在dsst算法的基础上进行改进增加其跟踪速度,samf算法通过多尺度采样获取候选样本来使得模型具有尺度适应性。由于使用循环位移构造样本增加正负样本数量,图像像素会跨越边界,这样就产生的错误样本,使得分类器判别力降低,即所谓的边界效应。2015年提出的srdcf算法通过引入成一种符合空间约束的正则化权重系数从而极大地减小了边界效应,提高了跟踪精度。基于相关滤波的跟踪算法属于判别式跟踪算法,其在进行判断前往往会进行特征提取,以作为判断依据提高判断的精确度,特征的表征能力在很大程度上决定了跟踪效果。自从2012年hinton利用alexnet深度卷积神经网络在imagenet图像分类比赛中一举获得第一后,深度卷积神经网络开始兴起,其在许多任务中也展现了其令人惊叹的性能,特别是其所具有的强大的特征提取能力。2015年提出deepsrdcf算法将vgg深度卷积神经网络应用于srdcf算法中,使得精度得到进一步的提高,但是其只能使用单层神经网络所输出的特征图,这一局限极大地限制了其原本具有的潜力。2016年c-cot算法通过训练连续性卷积滤波器的方法,从而使得能有效地结合多层神经网络输出的深度特征图。但是c-cot算法结合多层神经网络输出的深度特征图的方式只是在高维度空间上进行简单地结合,并没有很好地融合神经网络浅层网络输出的深度特征图所具有的空间信息和深层网络输出的深度特征图所具有的判别能力。

针对目前跟踪算法不能和好地融合神经网络浅层网络输出的深度特征图所具有的空间信息和深层网络输出的深度特征图所具有的判别能力,需要设计一种跟踪算法,使其能很好地利用神经网络浅层网络输出的深度特征图所具有的空间信息和深层网络输出的深度特征图所具有的判别能力,从而使得跟踪精度得到提高。



技术实现要素:

针对现有技术存在的缺陷,本发明提出了一种基于fpn神经网络的目标跟踪方法。

为达到上述目的,本发明采用如下技术方案:

一种基于fpn神经网络的目标跟踪方法,具体步骤包括:

步骤一、对于第一帧图像t=1,跟踪任务给予的第一帧跟踪目标的中心位置(xt,yt)以及跟踪目标区域大小信息(lt,ht),对跟踪目标区域进行一定比例的扩大(lp,t,hp,t)=α(lt,ht),根据目标中心位置(xt,yt)以及扩大后的跟踪目标区域大小(lp,t,hp,t)在该帧图像中进行采样,得到训练样本;其中xt为跟踪目标中心位置的横坐标,yt为跟踪目标中心位置的纵坐标,lt为原跟踪目标区域的长度,ht为原跟踪目标区域的宽度,α为扩大比率,lp,t为扩大后跟踪目标区域的长度,hp,t为扩大后跟踪目标区域的宽度;

步骤二、对于在第一帧图像中采样得到的训练样本t,将其输入到fpn神经网络中,提取出fpn神经网络中的p2层的特征其中t表示训练样本,zt表示fpn神经网络中通道数为n的p2层特征,表示fpn神经网络中的p2层的特征zt中第n维特征;

步骤三、将训练样本t经过fpn神经网络后提取得到的p2层的特征用于相关滤波器参数的计算;

步骤四、对于下一帧图像t+1,根据上一帧跟踪目标中心位置(xt,yt)以及扩大后的跟踪目标区域大小(lp,t,hp,t),对上一帧扩大后的跟踪目标区域(lp,t,hp,t)进行多尺度缩放,得到多种候选区域大小{(lp,t+1,hp,t+1)}={β(lp,t,hp,t)},其中β为缩放尺度,β={0.985,0.99,,0.995,1,1.005,1.01,1.015}而后,根据上一帧跟踪目标中心位置(xt,yt)和多种候选区域大小{(lp,t+1,hp,t+1)}={β(lp,t,hp,t)},对该帧图像进行采样得到候选样本集x=(x1x2…x7);

步骤五、对于采样得到的候选样本集x,将其输入到fpn神经网络中,提取出fpn神经网络中的p2层的特征其中表示第一个候选样本x1输入到fpn神经网络中提出得到通道数为n的p2层特征,即

步骤六、将候选样本集每个候选样本经过fpn神经网络后提取得到的p2层的特征zx,用于响应图的计算,最终确定该帧跟踪目标的中心位置(xt+1,yt+1)和跟踪目标区域大小(lt+1,ht+1);

步骤七、在得到跟踪目标的中心位置和区域大小后,不断重复步骤一至步骤六、直到视频结束,完成对跟踪目标的中心位置以及区域大小的跟踪。

所述步骤三中的相关滤波器参数的计算,具体为:

首先,对p2层的特征进行快速傅立叶变换,从而将其从时域变换到频域特征得到

其次,对于每个特征通道k=1,2,…n,将其向量化后进行再构造成对角矩阵,即

将特征中所有通道构造成的对角矩阵k=1,2,…n重新组合构造成一个对角矩阵,即

利用这个对角矩阵dt进行计算得到at和其中,

其中,w为空间正则化系数构造成的正则化矩阵;为高斯标签经过快速傅立叶变换和实数化后得到的标签;

最后,根据公式计算得到相关滤波参数具体方法如下:先将矩阵a1分解为上三角矩阵l1和下三角矩阵u1,即a1=l1+u1;而后进行高斯-赛德尔迭代,得到实数化后的相关滤波器参数最后通过计算得到相关滤波器参数其中b为标准正交基组成的酉矩阵,其作用是将相关滤波器参数实数化。

所述步骤六具体方法如下:

首先,将候选样本集每个候选样本经过fpn神经网络后提取得到的p2层的特征zx,进行快速傅立叶变换,得到频域特征其中k=1,2…7为第k个候选样本p2层的特征经过快速傅立叶变换,得到频域特征

而后,对于候选样本集中每个候选样本经过快速傅立叶变化的特征k=1,2…7,将其与经过快速傅立叶变换的相关滤波器参数进行点乘,而后进行反傅里叶变换,得到该候选样本对应的响应图k=1,2…7,即

其中为第k个候选样本xk,k=1,2…7的相应图,f-1为反傅里叶变换;

最后,对于候选样本集中所有候选样本对应的响应图找出响应值最大的点(xt+1,yt+1),该点对应的位置即为该帧跟踪目标位置,该点对应的候选样本的大小即为扩大后的跟踪目标区域大小(lp,t+1,hp,t+1),将其根据扩大比率α,计算得到目标区域大小

与现有技术相比,本发明方法具有如下的突出的优点:

本方法不再使用传统的vgg深度神经网络,而是改用fpn深度神经网络,本发明利用fpn深度神经网络中对神经网络浅层网络输出的深度特征图所具有的空间信息和深层网络输出的深度特征图所具有的判别能力很好的融合能力,从而提高目标跟踪精度。该方法是一种实时鲁棒性的跟踪算法,在不同的跟踪场景中取得了不错的效果。

附图说明

图1为本发明的方法流程图。

具体实施方式

下面结合附图,对本发明的具体实施例做进一步的说明。

如图1所示,一种基于fpn神经网络的目标跟踪方法,具体步骤包括:

步骤一、对于第一帧图像t=1,跟踪任务给予的第一帧跟踪目标的中心位置(xt,yt)以及跟踪目标区域大小信息(lt,ht),对跟踪目标区域进行一定比例的扩大(lp,t,hp,t)=α(lt,ht),根据目标中心位置(xt,yt)以及扩大后的跟踪目标区域大小(lp,t,hp,t)在该帧图像中进行采样,得到训练样本;其中xt为跟踪目标中心位置的横坐标,yt为跟踪目标中心位置的纵坐标,lt为原跟踪目标区域的长度,ht为原跟踪目标区域的宽度,α为扩大比率,lp,t为扩大后跟踪目标区域的长度,hp,t为扩大后跟踪目标区域的宽度;

步骤二、对于在第一帧图像中采样得到的训练样本t,将其输入到fpn神经网络中,提取出fpn神经网络中的p2层的特征其中t表示训练样本,zt表示fpn神经网络中通道数为n的p2层特征,表示fpn神经网络中的p2层的特征zt中第n维特征;

步骤三、将训练样本t经过fpn神经网络后提取得到的p2层的特征用于相关滤波器参数的计算;

首先,对p2层的特征进行快速傅立叶变换,从而将其从时域变换到频域特征得到

其次,对于每个特征通道k=1,2,…n,将其向量化后进行再构造成对角矩阵,即

将特征中所有通道构造成的对角矩阵k=1,2,…n重新组合构造成一个对角矩阵,即

利用这个对角矩阵dt进行计算得到at和其中,

其中,w为空间正则化系数构造成的正则化矩阵;为高斯标签经过快速傅立叶变换和实数化后得到的标签;

最后,根据公式计算得到相关滤波参数具体方法如下:先将矩阵a1分解为上三角矩阵l1和下三角矩阵u1,即a1=l1+u1;而后进行高斯-赛德尔迭代,得到实数化后的相关滤波器参数最后通过计算得到相关滤波器参数其中b为标准正交基组成的酉矩阵,其作用是将相关滤波器参数实数化。

步骤四、对于下一帧图像t+1,根据上一帧跟踪目标中心位置(xt,yt)以及扩大后的跟踪目标区域大小(lp,t,hp,t),对上一帧扩大后的跟踪目标区域(lp,t,hp,t)进行多尺度缩放,得到多种候选区域大小{(lp,t+1,hp,t+1)}={β(lp,t,hp,t)},其中β为缩放尺度,β={0.985,0.99,,0.995,1,1.005,1.01,1.015}而后,根据上一帧跟踪目标中心位置(xt,yt)和多种候选区域大小{(lp,t+1,hp,t+1)}={β(lp,t,hp,t)},对该帧图像进行采样得到候选样本集x=(x1x2…x7);

步骤五、对于采样得到的候选样本集x,将其输入到fpn神经网络中,提取出fpn神经网络中的p2层的特征其中表示第一个候选样本x1输入到fpn神经网络中提出得到通道数为n的p2层特征,即

步骤六、将候选样本集每个候选样本经过fpn神经网络后提取得到的p2层的特征zx,用于响应图的计算,最终确定该帧跟踪目标的中心位置(xt+1,yt+1)和跟踪目标区域大小(lt+1,ht+1);

首先,将候选样本集每个候选样本经过fpn神经网络后提取得到的p2层的特征zx,进行快速傅立叶变换,得到频域特征其中k=1,2…7为第k个候选样本p2层的特征经过快速傅立叶变换,得到频域特征

而后,对于候选样本集中每个候选样本经过快速傅立叶变化的特征k=1,2…7,将其与经过快速傅立叶变换的相关滤波器参数进行点乘,而后进行反傅里叶变换,得到该候选样本对应的响应图k=1,2…7,即

其中为第k个候选样本xk,k=1,2…7的相应图,f-1为反傅里叶变换;

最后,对于候选样本集中所有候选样本对应的响应图找出响应值最大的点(xt+1,yt+1),该点对应的位置即为该帧跟踪目标位置,该点对应的候选样本的大小即为扩大后的跟踪目标区域大小(lp,t+1,hp,t+1),将其根据扩大比率α,计算得到目标区域大小

步骤七、在得到跟踪目标的中心位置和区域大小后,不断重复步骤一至步骤六、直到视频结束,完成对跟踪目标的中心位置以及区域大小的跟踪。

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