一种基于TLD和深度多尺度时空特征的视觉物体跟踪方法与流程

文档序号:18400921发布日期:2019-08-09 23:52阅读:227来源:国知局
一种基于TLD和深度多尺度时空特征的视觉物体跟踪方法与流程
本发明涉及计算机图像处理
技术领域
,特别涉及一种基于tld和深度多尺度时空特征的视觉物体跟踪方法。
背景技术
:物体跟踪是计算机视觉及其相关研究领域中的一个重要而具有挑战性的任务,同时也是各类机器视觉研究领域中一个开放性的研究问题,在自动监控、人机交互、车辆导航、生物医学、虚拟现实、机器人、安全监控、等领域有着广泛的应用。在视频跟踪领域,单一的深度卷积网络模型由于缺乏正确标注的训练样本数据信息,因此无法直接应用于视觉物体跟踪任务中;此外,有学者提出将视觉物体跟踪分成两个过程,即:离线预训练阶段以及在线微调和跟踪阶段。实验结果表明,虽然这种方式训练得到的深度网络模型应用于视觉物体跟踪任务时取得了非常好的跟踪性能,但是,不管是离线预训练,还是在线微调都会花费很长的时间。kala等人提出的“跟踪-学习-检测”中,选取的是固定大小的目标物体,不能识别物体的尺度变化,在视频图像序列中一旦目标物体出现大尺度的变化,就会导致无法检测到目标物体,从而导致跟踪失败。现有的视觉物体跟踪算法计算量一般较大,且无法很好地适应各种不同目标物体的形变,当物体在视频中放大、缩小,或者发生形变和遮挡等表观变化时,现有算法难以对目标物体进行跟踪和确定边界,且精确度和鲁棒性较低。技术实现要素:针对现有技术不能有效识别目标物体尺度变化的问题,本发明提供一种基于tld和深度多尺度时空特征的视觉物体跟踪方法,通过将目标物体的多尺度时空特征和tld(tracking-learning-detection,跟踪-学习-检测)框架结合,用于识别目标物体的形变,以对目标物体进行跟踪检测。为了实现上述目的,本发明提供以下技术方案:一种基于tld和深度多尺度时空特征的视觉物体跟踪方法,包括以下步骤:s1:从网络上选择视频序列,用于进行目标物体的跟踪;s2:选择视频序列中任一帧的图像作为初始帧图像,并进行处理得到第一数据,第一数据包括目标物体的上下文区域、多尺度模板、分类标签以及回归标签;s3:将得到的第一数据输入构建的模型中进行训练,得到模型的初始参数,初始参数为目标物体的分类值和回归值;s4:通过构建的模型计算目标物体的状态信息,状态信息包括位置、尺度和运动方向。优选的,所述s2包括以下步骤:s2-1:以目标物体为中心构建目标框,再以目标框为边界裁剪一个图像块作为第一图像块,用于代表目标物体;s2-2:在第一图像块的周围,裁剪第一图像块的上下文区域得到第二图像块,并将第二图像块缩放至127×127像素,且第二图像块和第一图像块应满足以下公式m0=m+0.5×(m+n),n0=m+0.5×(m+n)(1)公式(1)中,m表示第一图像块的宽度,n表示第一图像块的高度,m0表示第二图像块的宽度,n0表示第二图像块的高度;s2-3:在第二图像块周围以尺度步长为r=1.05来采集67个不同大小的多尺度模板,再对第二图像块进行网格绘制得到网格点,每个网格点依次用67个多尺度模板去匹配,得到第二图像块的分类标签;s2-4:将视频序列中目标物体的预测框和实际目标框的坐标进行参数化以建立三维矩阵,得到第二图像块的回归标签。优选的,所述s3包括以下步骤:s3-1:构建msstresnet网络模型:在经典的深度残差网络基础上,删除了res5,并用分类损失层和回归损失层分别代替全连阶层和平均池化层,从而构建了msstresnet网络模型,以提升网络对于物体和背景的区分能力;s3-2:将得到的第一数据输入msstresnet网络模型中进行训练,得到模型的初始参数。优选的,模型的初始参数包括分类值回归值,分类值的表达式如下:公式(2)中,yi表示样本是目标物体的预测概率;若样本为正,则如果样本为负,则回归值的表达式如下:公式(3)中,i表示样本,x表示预测框的x坐标轴的坐标,y表示预测框的y坐标轴的坐标,w表示预测框的宽,h表示预测框的高,表示平滑损失函数;ti表示预测边框坐标系的参数化;表示实际边框坐标系的参数化优选的,所述第二图像块的大小应满足以下公式:e=max(z,z0),z0=m0×n0(4)公式(4)中,e表示第二图像块的大小,z表示第二图像块的预期大小,z0表示计算所得的第二图像块的预期大小。优选的,所述s4包括以下步骤:s4-1:计算目标物体在视频序列变化后的帧图像中的状态信息;计算出目标物体的分类值lcls和回归值lreg,并取最大分类值以确定目标物体在当前视频帧图像中的最佳状态最佳状态的计算公式如下:公式(5)中,表示在第t个视频帧的图像中目标物体的尺度是α;s4-2:进行检测器阈值的动态更新;对目标物体进行跟踪过程中,采用动态的检测阈值,在某一个视频帧的图像中,一旦检测到小于当前阈值的情况,就需要重新学习,并设定新的检测阈值。优选的,所述检测器阈值的动态更新包括以下步骤:s4-1:计算第t帧中目标物体最大分类值和回归值,记为第一阈值τ1;s4-2:计算第t+1帧中目标物体最大分类值和回归值,记为第二阈值τ2,并将第二阈值τ2和第一阈值τ1进行对比,从而更新检测器的阈值;若τ2>τ1,则将τ2作为检测器的更新阈值;若τ2<τ1,则重新对模型进行10次迭代训练从而计算计算得到τ3,以τ3作为检测器的阈值。综上所述,由于采用了上述技术方案,与现有技术相比,本发明至少具有以下有益效果:本发明通过将深度特征融入“跟踪-学习-检测”框架,建立用于区分目标物体和周围的背景的分类器,并对每个目标物体提取多尺度模板、分类标签和回归标签,用于训练学习器,提高学习器的精度;根据目标动态对检测器进行阈值更新,提高目标跟踪的精准度;能对目标物体的大尺度变化进行识别,降低了目标物体跟踪的难度。附图说明:图1为根据本发明示例性实施例的一种基于tld和深度多尺度时空特征的视觉物体跟踪方法流程示意图。具体实施方式下面结合实施例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本
发明内容所实现的技术均属于本发明的范围。图1为本发明示例性实施例的一种基于tld和深度多尺度时空特征的视觉物体跟踪方法,具体包括以下步骤:s1:从网络上选择视频序列进行目标物体的跟踪。本实施例中,可从网络上的数据集otb-2015和vot-2016中选取视频序列,用于进行目标物体的跟踪。s2:选择视频序列中任一帧的图像作为初始帧图像进行处理得到第一数据。本实施例中,为防止图像训练过程中出现过拟合的情况,需对视频序列初始帧的图像进行处理得到第一数据,即深度多尺度时空特征,具体包括以下步骤:s2-1:对图像进行裁剪得到第一图像块。在需处理的视频序列初始帧的图像中,以需跟踪的目标物体为中心构建目标框(目标框的大小为127×127像素),再以目标框为边界裁剪一个图像块作为目标物体的第一图像块。为了简化批处理,利用双线性插值将裁剪的图像块缩放至127×127像素。s2-2:获取目标物体的上下文区域,得到第二图像块。目标物体的上下文区域过大会增大背景干扰项,过小会丢失有用的背景信息。因此本实施例中,在第一图像块的周围,根据公式(1)在需处理的视频序列初始帧的图像中裁剪,从而得到一个包含目标物体上下文区域的第二图像块,并将第二图像块缩放至127×127像素。m0=m+0.5×(m+n),n0=m+0.5×(m+n)(1)公式(1)中,m表示第一图像块的宽度,n表示第一图像块的高度,m0表示第二图像块的宽度,n0表示第二图像块的高度。在网络中,若目标物体过小,则得到的第二图像块同样很小,则表示目标物体的上下文区域很小,会造成背景信息丢失。因此本实施例中,第二图像块的大小应满足公式(2)的规定:e=max(z,z0),z0=m0×n0(2)公式(2)中,e表示第二图像块的大小,z表示第二图像块的预期大小,z0表示计算所得的第二图像块的预期大小。s2-3:对第二图像块进行网格绘制,并对网格点进行分类标签(label_cls)的计算。本实施例中,先在第二图像块周围以尺度步长为r=1.05来采集67个不同大小的多尺度模板(尺度步长为:1.05,尺度因子为:{1.05-33,1.05-32,1.05-31,…,1.0531,1.0532,1.0533})。本实施例中,第二图像块的大小为127×127像素,以8像素为步长,依次在第二图像块中绘制网格点,就得到了16×16的网格点(127/8≈16),然后在每个网格点依次用67个多尺度模板去匹配,即计算多尺度模板与目标框之间的重叠率(即每个网格点都与67个不同大小的多尺度模板进行匹配,共有67个对应的分类标签label_cls)。若多尺度模板与s2-1中得到的目标框之间的重叠率大于0.7,我们把该网格点的分类标签label_cls标记为1,即为正样本(正样本是包括目标物体的一个图像块);如果模板框与目标框之间的重叠率小于0.3,我们把该网格点的分类标签label_cls标记为-1,即为负样本(负样本是不包括目标物体的背景图像块);如果重叠率大于0.3而小于0.7,则分类标签label_cls标记为0,表示既包含一部分目标物体又包括背景的图像块。因此可得到16×16×67个分类标签。s2-4:回归标签(label_reg)的计算。本实施例中,将需处理的视频序列初始帧的图像左下角的点(图像左侧和下侧的交点)为坐标原点,下侧为x轴,左侧为y轴建立坐标系,为便于计算,将预测框和实际目标框的坐标进行参数化以建立三维矩阵,用于进行回归图中回归标签的计算,则三维矩阵的计算公式如下:公式(3)中,x、xs、x*分别表示预测框(即跟踪算法生成的目标框)、训练样本框(训练样本是包括原始图像块,67个多尺度模版,带正负标签的样本)和实际目标框的的中心位置的x坐标轴的坐标;y、ys、y*预测框、训练样本框和实际目标框的中心位置的y坐标轴的坐标;w、ws、w*分别表示预测框、训练样本框和实际目标框的宽;h、hs、h*分别表示预测框、训练样本框和实际目标框的高。tx、ty、tw、th、分别表示x、y、x*、y*、w、h、w*、h*参数化后的三维矩阵。本实施例中,需处理的视频序列初始帧的图像的大小是127×127像素,网格点的步长是8像素,因此图像的网格点数是16×16,每个网格点有67个不同大小的多尺度标签,则三维矩阵tx、ty、和的大小均是16×16×67,三维矩阵tw、th、和的大小是1×1×67,即需处理的视频序列初始帧的图像可以生成16×16×(67×4)=16×16×268个回归图。本实施例中,第一数据包括第二图像块、67个多尺度模板、分类标签以及回归标签。s3:将得到的第一数据输入构建的模型中进行训练,得到模型的初始参数。s3-1:构建msstresnet网络模型:在经典的深度残差网络(drn,deepresidualnetwork)基础上,删除了res5,并用分类损失层lcls和回归损失层lreg分别代替全连阶层和平均池化层从而构建了msstresnet网络模型,以提升网络对于物体和背景的区分能力。本实施例中,msstresnet网络模型中残差层的所有参数均采用零均值高斯分布随机初始化,固定学习率为10-4,允许在不破坏初始化的情况下进行微调,权重衰减设置为0.005,动量参数设置为0.9。为了消除边界不连续的效果,每个残差层的特征通道采用余弦窗加权,进行视频跟踪时所有这些参数均保持固定不变。本实施例中,在初始帧图像中,有很多的物体,均可称为样本,目标物体也是样本的一种。从网络上选择视频序列的也可看作为带标签的训练样本,且训练样本经过步骤s2可得到多个尺度和多个任务,需输入构建的模型进行处理。则本发明采用多任务损失函数l来训练分类损失层lcls和回归损失层lreg。公式(4)中,xi表示训练样本;是分类损失层和回归损失层的共同输出;是分类标签,若样本为正,则如果样本为负,则yi表示样本是目标物体的预测概率;表示与正训练样本有关的实际边框的参数化,ti表示预测边框的参数化;λk表示分类损失层和回归损失层之间的平衡权重;ncls和nreg分别表示用于分类损失层和回归损失层的训练样本数;表示模型中的回归损失,只有正的训练样本才可以激活回归损失。本实施例中,为方便模型计算,因此将多尺度和多任务问题进行最小化,表达式如下:公式(5)中,w表示检测器;k表示尺度数;αk表示多任务损失函数l的权重,平衡不同尺度的训练样本的重要性,可将αk设置为1,表示模型中尺度都是同等重要;s={s1,s2,…,sk},sk表示包含k个尺度模型在内的训练样本的子集。s3-2:将得到的第一数据输入msstresnet网络模型中进行训练。本实施例中,将s2步骤得到的第一数据输入到构建的msstresnet网络模型中进行训练,训练次数为50次,从而得到网络模型的初始参数,初始参数包括分类值和回归值。则分类值的表达公式如下:公式(6)中,yi表示样本i是目标物体的预测概率;若样本i为正,则如果样本i为负,则回归值的表达公式如下:公式(7)中,i∈{x,y,w,h}表示样本,表示平滑损失函数;ti表示预测边框坐标系的参数化;表示实际边框坐标系的参数化,即本实施例中,采用随机梯度下降方法进行训练,批处理大小为128张图像,每张图像提取5个时间块来优化参数。且为了防止训练过程中出现过拟合,我们在随机梯度下降中采用时间采样机制进行批处理生成。本实施例中,在对视频序列中的目标物体进行跟踪时,若在第a帧图像中检测到目标物体跟踪失败,则将第a帧图像的前10帧图像及其每张图像所对应的分类标签和回归标签输入msstresnet网络模型进行再次训练,经过10次迭代训练后,通过对网络参数的微调,学习得到新的网络参数以继续跟踪目标物体。这样可以通过不断的更新网络模型的初始参数,更好地对目标物体进行跟踪。s4:通过构建的模型计算目标物体的状态信息。视频序列中的目标物体很少会是匀速或者直线运动,所以在连续的视频序列中估计目标物体的运动轨迹时难免会出现误差,随着跟踪时间的累积,每个视频帧的估计误差也会逐渐累加,当误差累加到一定程度时,就会出现跟踪失败或者跟踪目标发生偏移。s4-1:计算目标物体在视频序列变化后的帧图像中的状态信息。本实施例中,从残差单元res3和res4输出的具有多尺度特征的特征图送入分类和归回层来计算分类值和回归值,用于将物体和背景分离,并根据分类值和回归值确定目标物体在当前视频帧的图像中的状态信息,包括位置、尺度和运动方向。本实施例中,一个视频序列初始帧中标记为第一帧,包含目标物体和周围背景的上下文区域为r1,目标物体的初始状态为v1。检测器的目标是在视频序列后续的第t帧中,估计目标物体的状态为以及包含目标和背景的上下文区域根据公式(6)和(7)可分别计算出目标物体的分类值lcls和回归值lreg,并取最大分类值以确定目标物体在当前视频帧图像中的最佳状态最佳状态的计算公式如下:公式(8)中,表示在第t个视频帧的图像中目标物体的尺度是α。s4-2:进行检测器阈值的动态更新。本实施例中,为了避免误差累加,同时利用了跟踪器和检测器。跟踪器用于提供弱标签的训练数据以改进在检测器每个独立的视频序列图像中的检测性能,而检测器可以重新初始化一个跟踪器以最小化跟踪误差。且在对目标物体进行跟踪过程中,采用动态的检测阈值,在某一个视频帧的图像中,一旦检测到小于当前阈值的情况(当前阈值可根据上一次的检测结果更新得到),就需要重新学习,并设定新的检测阈值。s4-2-1:计算第t帧中目标物体最大分类值和回归值,记为第一阈值。本实施例中,以第t帧中目标物体的目标框为中心,步长为1.05,选取3个大小不同的第二图像块,并将3个图像块均缩放至127×127像素,记为第二数据,将第二数据输入训练好的msstresnet网络中,将分类值score_cls和回归分值score_reg分值最大(分类值可根据公式(4)计算获得,回归值可根据公式(5)计算获得)的设置为检测器的第一阈值τ1。其中,分类值score_cls用于粗略定位目标,回归分值score_reg用于精确定位目标。s4-2-2:计算第t+1帧中目标物体最大分类值和回归值,记为第二阈值,将第二阈值和第一阈值进行对比,从而更新检测器的阈值。本实施例中,在输入第t+1帧图像时,同时将第二数据输入训练好的msstresnet网络中,若在第t+1帧图像中计算得到的目标物体的最大分类值和回归值,标记为第二阈值τ2。若τ2>τ1,则用τ2代替τ1作为检测器的阈值进行后续阈值比较,并根据对应的分类值和回归值计算目标物体的状态信息。若τ2<τ1,表示目标物体发生了显著地外观变化或检测到跟踪失败,则将第t+1帧之前的10帧图像及其每张图像所对应的分类标签和回归标签输入msstresnet网络模型进行10次迭代训练以对msstresnet网络模型参数进行调整,再对第t+1帧图像的最大分类值进行二次计算得到τ3,以更新检测器的阈值,即无论τ3是否大于τ1,都将二次计算得到的τ3作为检测器的阈值。并根据τ3对应的分类值和回归值来确定目标物体在当前视频帧的图像中的最佳位置。在数据集vot-2016上对各种算法进行了评估,主要从加权平均重叠率(overlap)、平均加权健壮度(r-rank)、加权平均失败次数(failures)以及a-排名(a-rank)方面进行评估,如表1所述。表1算法评估结果本发明tcnnccotmdnet_nmldfebtssatddcstaplepsiamrnr-rank8.2812.389.6812.627.88.6711.714.7214.3217.92failures0.720.830.890.910.921.051.051.271.311.36a-rank9.95.67.85.513.1817.823.685.774.53.6overlap0.520.550.540.540.490.460.580.540.550.55从表1的数值中可看出,本发明在各方面的评价较高,表明本发明在健壮度方面表现优秀,并保持了很高的跟踪精度。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1