本申请涉及计算机领域,尤其涉及一种视觉目标跟踪方法及装置。
背景技术:
视觉跟踪是计算机视觉的重要研究内容,其目的是给定视频中的任意跟踪目标,在视频的后续图像中的标记出目标的区域,从而开展进一步的分析。近十年来,视觉跟踪方法得到了广泛的研究,并应用于视觉导航、人机交互、安防监控等领域。然而,由于在现实场景中存在目标形变、环境光照变化、外部遮挡、相似物干扰等挑战,使得设计一个实时、准确、鲁棒的视觉跟踪方法仍然是一个开放性的问题。
近年来,基于深度卷积神经网络(cnn)的深度学习技术极大的提高了目标检测、分割等领域的性能,同样在视觉跟踪领域表现出巨大的潜力,成为当下的研究热点。相关技术中,基于深度卷积神经网络的跟踪方法大致可以分为两类:基于在线分类器学习的方法和基于相似性度量学习的方法。基于在线分类器学习的方法中,一些跟踪模型把cnn当作特征提取器,并结合相关滤波、支持向量机等传统分类技术;还有一些跟踪模型,在预训练cnn模型的基础上,使用优化方法微调最后几层。这些跟踪方法尽管能够取得很好的准确度,但是速度往往只有几赫兹,无法满足实时应用的场景。而基于相似性度量学习的方法则通过构建相似性度量网络模型,通过大数据进行离线训练,学习到通用的相似性匹配函数,这类方法在模型应用阶段可以不进行模型更新,因而大大提高了跟踪速度,同时能够保证不错的准确性,满足工程落地的实时性需求。
文章“fullyconvolutionalsiamesenetworksforobjecttracking.ineuropeanconferenceoncomputervision.2016.”(全卷积孪生网络视觉跟踪方法)提出了一种孪生网络结构,输入一对包含跟踪目标的参考图像和搜索图像,经过同一个特征提取网络后利用相关层输出目标的位置。但是需要提取长宽比固定的多尺度图像以确定目标的尺寸,导致模型跟踪的速度和精度不太理想。
文章“highperformancevisualtrackingwithsiameseregionproposalnetwork.inproceedingsoftheieeeconferenceoncomputervisionandpatternrecognition.2018.”(基于孪生区域候选网络的高性能视觉跟踪方法)结合孪生网络和区域候选网络,解决了孪生网络需要多尺度搜索的问题,提高了跟踪的准确性和速度,然而该方法使用性能较低的alexnet作为特征提取网络,使得跟踪准确性不足。
文章“siamrpn :evolutionofsiamesevisualtrackingwithverydeepnetworks.inproceedingsoftheieeeconferenceoncomputervisionandpatternrecognition.2019.”(siamrpn :基于深层网络的孪生网络跟踪方法)利用随机偏移训练,解决resnet、mobilenet等更深网络无法应用于孪生网络跟踪的问题,大大提高了模型的性能,但跟踪的速度有所降低。
以上基于孪生网络的相似性度量跟踪模型,尽管取得了不错的性能,然而在利用相关层进行匹配时,目标中语义特征对结果的影响往往大于非语义特征,这使得模型倾向于语义目标的检测,导致模型的判别能力降低。
技术实现要素:
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种视觉目标跟踪方法及装置。
第一方面,本申请提供了一种视觉目标跟踪方法,包括:获取第一帧中的标定目标区域;以标定目标区域为中心剪裁第一帧,得到参考图像;使用网络模型,确定参考图像的特征图,其中,网络模型包括:特征提取子网络、匹配激活子网络,以及互补区域候选子网络,其中,互补区域候选子网络包含两个分类分支和一个回归分支,一个分类分支以参考图像的特征图和经过匹配激活图擦除后的搜索图像的特征图作为输入,另一个分类分支以参考图像的特征图和搜索图像的特征图作为输入;对于第一帧之后的每帧,以上一帧的目标区域为中心,剪裁得到当前帧的搜索图像;使用网络模型,根据当前帧的搜索图像和参考图像的特征图,确定当前帧中目标对应每个锚框的得分和相应的回归框,其中,每个锚框的得分包括:匹配激活子网络输出的当前帧的搜索图像中锚框对应位置的相似度、互补区域候选子网络的两个分类分支输出的两个目标类别,其中,每个位置包括多个锚框;使用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框。
在某些实施例中,上述视觉目标跟踪方法,还包括:训练网络模型,其中训练网络模型包括:建立训练数据集,其中,训练数据集中每个样本包括:同一个标注好的视频内间隔不超过t的两帧图像i0和it,i0为参考图像,it为搜索图像;以及,样本标签;使用训练数据集训练网络模型。
在某些实施例中,对于匹配激活子网络,输出响应图为
在某些实施例中,训练网络模型的损失函数为多任务的损失函数,包括:匹配激活子网络的相似度损失,以及互补区域候选子网络的分类损失和回归损失,其中,总的损失为相似度损失、分类损失和回归损失的加权求和。
在某些实施例中,相似度损失使用二值sigmod交叉熵损失,分类损失使用二分类softmax交叉熵损失,回归损失使用平滑l1损失。
在某些实施例中,对i0和it中的目标,其包围框为(cx,cy,w,h),以(cx,cy)为中心,以边长为
在某些实施例中,使用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框,包括:按照以下方式确定每个锚框的得分:s=(1-λ1)avg(c1,c2) λ1w λ2rsim,其中,
在某些实施例中,上述视觉目标跟踪方法,还包括:通过尺度的增量线性更新来平滑跟踪结果。
第二方面,本申请提供了一种视觉目标跟踪装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序;计算机程序被处理器执行时实现视觉目标跟踪方法的步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,网络模型中,互补区域候选子网络包含两个分类分支和一个回归分支,一个分类分支以参考图像的特征图和经过匹配激活图擦除后的搜索图像的特征图作为输入,另一个分类分支以参考图像的特征图和搜索图像的特征图作为输入,由此,增强匹配过程中的非语义特征,实现了对任意目标的实时、准确跟踪。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的视觉目标跟踪方法一种实施方式的过程示意图;
图2为本申请实施例提供的网络模型一种实施方式的结构示意图;
图3为本申请实施例提供的网络模型训练一种实施方式的过程示意图;
图4为本申请实施例提供的目标跟踪一种实施方式的过程示意图;
图5为本申请实施例提供的视觉目标跟踪装置一种实施方式的结构框图;
图6a为本申请实施例提供的一个示例的单次测试精确度曲线对比图;
图6b为本申请实施例提供的一个示例的单次测试成功率曲线对比图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
本申请实施例提供了一种任意目标的视觉跟踪方法及装置,采用本方法,能够实现对任意目标的实时、准确跟踪。具体的,本申请实施例提供了一种基于互补学习的孪生网络视觉目标跟踪方法。该方法包括:构建互补孪生网络模型,结合互补特征,同时预测目标的位置和尺度;采用大规模数据集进行多任务训练;结合时空约束的模型推理。
参考图1所示,本申请实施例的视觉目标跟踪方法包括:建立网络模型、模型离线训练和模型应用跟踪。下面分别对本申请实施例的建立网络模型、模型离线训练和模型应用跟踪进行说明。
网络模型
在本申请实施例中,参考图2所示,网络模型,包括:特征提取子网络202、匹配激活子网络204和互补区域候选子网络206。网络模型的输入为包含目标的参考图像和搜索图像,首先通过相同的特征提取子网络202,输出多通道特征图。将多通道特征图输入匹配激活子网络204,通过匹配激活子网络204判别不同区域特征的匹配程度,输出目标在每个位置的相似度和搜索图像的匹配激活图。设置匹配激活图的阈值,对超过阈值的相应特征进行擦除。将原始特征图和擦除特征图输入互补区域候选子网络206(图2中的分类1),输出目标对应每个锚框的得分和相应的回归框。
在本申请实施例中,特征提取子网络202,采用空洞卷积resnet50的前三个阶段,取第三个阶段作为输出,并去除第一个卷积层的填充。
在本申请实施例中,匹配激活子网络204由卷积核为1*1的通道上采样层、批归一化层、线性整流层、逐通道互相关层、求和层组成。并可以通过每个通道响应图的峰值位置的偏移来确定该通道是否被激活,从而确定二值化权值,通过特征图的加权和获得匹配激活图。
在本申请实施例中,互补区域候选子网络206由包含两个分类分支(图2中分别为分类1和分类2)和一个回归分支的区域候补网络组成。互补区域候选子网络206是在原有区域候补网络的基础上,添加额外的分类分支,该分支(图2中的分类1)接受经过匹配激活图擦除后的特征图作为输入,最后的结果由两个互补的分类分支和一个回归分支融合得到。
在本申请实施例中,锚框为搜索图像上每个位置上预定义的多个(优选地,为5个)不同长宽比的目标框。
网络模型训练
参考图3所示,网络模型训练包括:构建数据集、构造模型的损失函数,以及网络模型的参数优化。数据集中的样本由参考图像、搜索图像和相应的标签组成。损失函数为多任务损失,包括:匹配激活子网络204的二值交叉熵损失和互补区域候选子网络206的损失。利用随机梯度下降法,对损失进行反向传播,更新网络参数使得模型收敛。
在本申请实施例中,每个样本包括参考图像和搜索图像,样本标签为目标在搜索图像中的位置。设置每次训练输入样本的批大小和每个周期的训练次数,以及训练的总周期数。每一批样本输入网络模型,输出的结果和标签进行比较,计算多任务损失。利用随机梯度下降法,对损失进行反向传播,同时调整学习率,使得模型收敛。
作为一个示例,数据集中参考图像、搜索图像和标签构建步骤如下:(1)在同一个标注好的视频内,选取间隔不超过t的两帧图像;(2)以其中一帧中目标为中心,裁剪2倍于目标区域大小的图像区域,并将分辨率重采样到127*127,作为参考图像;(3)以另一帧中目标为中心,裁剪4倍于目标区域大小的图像区域,并进行随机偏移,将分辨率重采样到255*255,作为搜索图像;(4)已知目标在搜索图像中的包围框坐标,匹配激活子网络204输出的每个位置的相似度标签是以偏移目标中心的一定距离内为正样本,其余为负样本。互补区域候补子网络输出的类别标签,是以每个锚框和目标框交并比作为判断依据,设定两个阈值(分别为高阈值和低阈值),高于高阈值的为正样本,低于低阈值的为负样本,在高阈值与低阈值之间的忽略;正样本的锚框和目标框之间的空间变换关系作为回归标签。
具体的,根据标注好的视频序列构建训练数据集,包括参考图像、搜索图像及相应的标签。
其中,选取同一个标注好的视频内间隔不超过t的两帧图像i0和it,选取i0为参考图像,it为搜索图像。对参考图像和搜索图像中的目标,其包围框为(cx,cy,w,h),以(cx,cy)为中心,分别以边长为
其中,对于匹配激活子网络204,输出响应图为
其中,r为半径,优选地设置为2,但不限于此。
其中,对于互补区域候选子网络206,对搜索图像的每个位置设置k个不同长宽比的锚框,优选地,k=5,长宽比为{1/3,1/2,1/1,2/1,3/1}。对于两个分类分支,每个分类分支的输出为
其中,1代表正样本,0代表负样本,-1代表忽略,iou代表当前锚框和目标框的交并比,thresholdhigh和thresholdlow分别代表高阈值和低阈值,优选地,thresholdhigh=0.6,thresholdlow=0.4。互补区域候选子网络206中,回归分支的输出为
其中,多任务的损失函数,包含:匹配激活子网络204的相似度损失、互补区域候选子网络206的分类损失和回归损失。相似度损失使用二值sigmod交叉熵损失,分类损失使用二分类softmax交叉熵损失,回归损失使用平滑l1损失。总的损失为以上损失的加权求和。
其中,作为一个示例,网络模型参数优化采用随机梯度下降算法,每个周期训练600000个样本,共训练20个周期。学习率使用热身训练策略,并在前10个周期冻结特征提取子网络202的参数,并在后10个周期激活参数优化。
目标跟踪
目标跟踪,包括:获取第一帧中的标定目标区域;以标定目标区域为中心剪裁第一帧,得到参考图像;使用网络模型,确定参考图像的特征图;对于第一帧之后的每帧,以上一帧的目标区域为中心,剪裁得到当前帧的搜索图像;使用网络模型,根据当前帧的搜索图像和参考图像的特征图,确定当前帧中目标对应每个锚框的得分和相应的回归框,其中,每个锚框的得分包括:匹配激活子网络输出的当前帧的搜索图像中锚框对应位置的相似度、互补区域候选子网络的两个分类分支输出的两个目标类别,其中,每个位置包括多个锚框;使用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框。
下面对目标跟踪进行具体说明。
参考图2所示,使用建立的网络模型,以为包含目标的参考图像和搜索图像为输入,通过特征提取子网络202提取特征,然后利用匹配激活子网络204判别不同区域特征的匹配程度,对超过阈值的特征位置进行擦除,最后将原始特征和擦除特征输入互补区域候选子网络。输出为匹配激活子网络204得到的目标在每个位置的相似度以及互补区域候选子网络206的得到的每个锚框对应的类别得分和相应的回归框,最后通过融合网络模型的输出与时空约束对目标进行跟踪,得到最终结果。
在这个阶段无需更新网络参数和参考图像。给定视频第一帧中的目标,裁剪出参考图像,输入网络模型得到参考特征图;在随后帧中,以上一帧目标为中心裁剪搜索图像,输入网络模型得到匹配激活子网络204输出和互补区域候选子网络206输出,融合后得到每个锚框对应的分类得分和回归框,并施加余弦窗和尺度变化惩罚得到目标框,最后通过尺度的增量线性更新来平滑跟踪结果。
具体的,给定视频第一帧中目标区域,裁剪以目标区域为中心的图像块作为参考图像,输入网络模型,计算得到参考图像特征图;在随后的每一帧中,以上一帧目标位置为中心裁剪出搜索图像,输入网络模型,并利用参考图像特征图获得网络输出,网络输出由匹配激活子网络204和互补区域候补子网络融合得到。然后利用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框。最后,为了平滑跟踪结果,对跟踪框的尺度采用线性增量更新的方案。
参考图4所示,目标跟踪,包括三个部分:网络模型的初始化、模型推理、结合时空约束跟踪。
其中,模型的初始化主要是加载网络参数,对视频第一帧的目标,裁剪出参考图像,并输入特征提取子网络202得到参考图像的特征图,并在后续不再更新。模型推理是将后续帧中,以上一帧目标位置为中心,裁剪搜索图像,输入模型后得到匹配激活子网络204的相似度图、互补孪生网络的分类图和回归关系。结合时空约束,由相似度图
s=(1-λ1)avg(c1,c2) λ1w λ2rsim(3)
其中,
得分最高的锚框在经过回归之后,得到新的目标尺度为(wt,ht),上一帧的目标尺度为(wt-1,ht-1),则最终的目标尺度为:
(w,h)=λ(wt,ht) (1-λ)(wt-1,ht-1)(4)
其中,(wt,ht)为得分最高的锚框的回归框的目标尺度,(wt-1,ht-1)为上一帧的目标尺度,λ为权重系数。
目标框的中心为得分最高的锚框的中心,这种增量更新保证了目标尺度不会发生突变。
本申请实施例还提供了一种视觉目标跟踪装置,参考图5所示,包括图像采集单元502、模型训练单元504、图像跟踪单元506和伺服驱动单元508。
其中,图像采集单元502,用于历史图像的采集和实时图像的获取。模型训练单元504,用于使用公开数据集和历史图像,对跟踪模型的参数进行训练和微调。图像跟踪单元506,用于在视频图像中,利用跟踪模型确定目标在图像中的位置。伺服驱动单元508,用于利用目标偏离图像中心的偏差作为脱靶量,驱动图像采集单元502跟随目标运动,实现持续跟踪。
作为本申请实施例的一个示例,采用视觉目标跟踪数据集otb100,这个数据集包含了100段视频序列。该数据集计算跟踪器在所有帧上预测的目标框和真实目标框之间的交并比,当交并比大于某个阈值时,跟踪器在该帧成功跟踪目标。通过计算不同阈值下跟踪成功帧数占总帧数的比率,绘制成功率图。此外,通过设置跟踪框中心偏移真实目标框中心的像素数,在不同阈值下所占帧数比率作为精度图。在单次评估准则下,绘制精度图和成功率图,并使用曲线下面积作为评价指标。通过对比其他已有算法,比如siamfc、sanet、crest、siamfc-dw、siamrpn、siamrpn-dw、dasiam、siamrpn 、atom、dimp,结果如图6a和6b所示。可以看出本方法优于其他方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
1.一种视觉目标跟踪方法,其特征在于,包括:
获取第一帧中的标定目标区域;
以所述标定目标区域为中心剪裁所述第一帧,得到参考图像;
使用网络模型,确定所述参考图像的特征图,其中,所述网络模型包括:特征提取子网络、匹配激活子网络,以及互补区域候选子网络,其中,所述互补区域候选子网络包含两个分类分支和一个回归分支,一个分类分支以参考图像的特征图和经过匹配激活图擦除后的搜索图像的特征图作为输入,另一个分类分支以参考图像的特征图和搜索图像的特征图作为输入;
对于所述第一帧之后的每帧,以上一帧的目标区域为中心,剪裁得到当前帧的搜索图像;
使用所述网络模型,根据所述当前帧的搜索图像和所述参考图像的特征图,确定当前帧中目标对应每个锚框的得分和相应的回归框,其中,每个锚框的得分包括:所述匹配激活子网络输出的当前帧的搜索图像中锚框对应位置的相似度、所述互补区域候选子网络的两个分类分支输出的锚框对应的两个目标类别,其中,每个位置包括多个锚框;
使用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框。
2.根据权利要求1所述的视觉目标跟踪方法,其特征在于,还包括:训练所述网络模型,其中训练所述网络模型包括:
建立训练数据集,其中,所述训练数据集中每个样本包括:同一个标注好的视频内间隔不超过t的两帧图像i0和it,i0为参考图像,it为搜索图像;以及,样本标签;
使用所述训练数据集训练所述网络模型。
3.根据权利要求2所述的视觉目标跟踪方法,其特征在于,
对于所述匹配激活子网络,输出响应图为
对于所述互补区域候选子网络,对搜索图像的每个位置设置k个不同长宽比的锚框,对于所述两个分类分支,每个分类分支的输出为
其中,1代表正样本,0代表负样本,-1代表忽略,iou代表当前锚框和目标框的交并比,thresholdhigh和thresholdlow分别代表高阈值和低阈值。
4.根据权利要求2所述的视觉目标跟踪方法,其特征在于,训练所述网络模型的损失函数为多任务的损失函数,包括:所述匹配激活子网络的相似度损失,以及互补区域候选子网络的分类损失和回归损失,其中,总的损失为所述相似度损失、所述分类损失和所述回归损失的加权求和。
5.根据权利要求4所述的视觉目标跟踪方法,其特征在于,所述相似度损失使用二值sigmod交叉熵损失,所述分类损失使用二分类softmax交叉熵损失,所述回归损失使用平滑l1损失。
6.根据权利要求2所述的视觉目标跟踪方法,其特征在于,对i0和it中的目标,其包围框为(cx,cy,w,h),以(cx,cy)为中心,以边长为
7.根据权利要求1所述的视觉目标跟踪方法,其特征在于,使用时空约束,对每个锚框的得分施加余弦窗得到得分最高的锚框,对得分最高的锚框的回归框进行尺度惩罚,得到最终的跟踪框,包括:
按照以下方式确定每个锚框的得分:s=(1-λ1)avg(c1,c2) λ1w λ2rsim,其中,
按照以下方式最终的目标尺度:(w,h)=λ(wt,ht) (1-λ)(wt-1,ht-1),其中,(wt,ht)为得分最高的锚框的回归框的目标尺度,(wt-1,ht-1)为上一帧的目标尺度,λ为权重系数。
8.根据权利要求1所述的视觉目标跟踪方法,其特征在于,还包括:通过尺度的增量线性更新来平滑跟踪结果。
9.一种视觉目标跟踪装置,其特征在于,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;
所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的视觉目标跟踪方法的步骤。
技术总结