一种基于交并比引导孪生网络的目标跟踪方法
技术领域
本发明属于图像处理技术领域,涉及基于孪生网络的目标跟踪方法。
背景技术
目标跟踪技术是计算机视觉领域最基本的技术之一,它旨在给定一个视频或者一个图像序列,然后在该视频或图像序列中连续地预测一个指定的目标位置与大小。近年来由于目标跟踪技术的不断发展,该技术已经成功应用于诸如监控安防,无人驾驶,智能医疗等领域。尽管如此,在面对复杂多变的真实环境,想要精确对任意目标进行跟踪仍然是一个极具挑战的任务,所以目标跟踪技术具有极大的实用价值和迫切的社会需求。
目前,目标跟踪的方法主要分为两类:基于相关滤波的跟踪方法和基于孪生网络的跟踪方法。基于相关滤波的方法以KCF(High-speed tracking with kernelizedcorrelation filters)为代表,得意于循环矩阵的特性,卷积运算可以从时域转化到频域,所以KCF能轻松在CPU上以每秒上百帧运行。但是,深度卷积特征相比于手工提取的特征更具判别性,所以后续的大多基于相关滤波的方法通过联合手工特征与深度卷积特征来进行跟踪。尽管联合手工特征与深度卷积特征能提升跟踪器的性能,但由于基于相关滤波的跟踪方法需要在线跟踪时对模型进行微调,更新模板图像的特征,这样会导致跟踪速度大大降低。然而基于孪生网络的跟踪方法,经过深度神经网络提取到具有强判别性的语义特征,对视频中目标变化具有较强的鲁棒性,并且,基于孪生网络的跟踪方法始终以初始模板图像作为模板,在整个跟踪过程中保持不变,不需要在线对模型进行微调,所以基于孪生网络的跟踪方法具有较强的鲁棒性与较高的实时性。然而在基于孪生区域建议网络的跟踪方法中,仍然存在如下问题:1)在训练时,分类分数与回归精度之间的相关性较低,在跟踪时依赖分类得分选择相应的Anchor,这将对跟踪性能造成一定的影响;2)在训练回归分支时,每一个Anchor对回归损失的权重都是一样的,即每一个Anchor都倾向于精准的对目标大小进行回归。但是对于目标跟踪任务来说,仅需要一个Anchor对目标进行定位。所以这损害了跟踪器对目标的定位精度。为了解决以上问题,本发明提供了一种基于IoU引导的孪生网络目标跟踪方法。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种基于交并比引导孪生网络的目标跟踪方法。本发明的技术方案如下:
一种基于交并比引导孪生网络的目标跟踪方法,其包括以下步骤:
步骤1:分别对模板图像与搜索图像进行预处理;
步骤2:将模板图像与搜索图像分别输入到孪生网络的模板分支与搜索分支,经过AlexNet提取到模板图像的特征与搜索图像的特征,然后以模板图像特征与搜索图像特征为输入分别经过两个互相关卷积后得到的两类特征,这两类特征一类输入到分类头对目标进行分类,一类输入到回归头对目标大小进行回归;还设计了一个交并比IoU预测器,该IoU预测器平行于回归头,预测所有正样本的Anchor与目标之间的IoU分数,然后将IoU分数与分类分数共同作为选取最终的Anchor的依据;
步骤3:采用为每一个Anchor对回归损失的贡献分配一个权重,这个权重正比于Anchor与目标之间的IoU,即当某个框与目标之间的IoU越大,那么相应的权重也越大,它对回归损失的贡献也越大;
步骤4:分别计算分类标签、回归标签与IoU预测器标签,然后将网络预测到的分类分数、回归坐标与IoU分数分别与对应的标签通过损失函数计算得到损失,然后通过随机梯度下降优化算法迭代训练得到最终的网络模型;
步骤5:在线跟踪阶段将网络预测到的每个Anchor的分类得分与预测到的每个Anchor的IoU得分相乘,在回归分支选择与得分最高的Anchor相对应的框,作为最后的预测结果。
进一步的,所述步骤1对模板图像与搜索图像进行预处理具体包括以下步骤:
1.1模板图像处理:在一个图像中,目标区域以目标区域以矩形框标定,矩形框的中心点代表目标中心点位置,在目标矩形框四边分别扩充p个像素,若矩形框超出图像边界,超出部分用图像像素均值填充,最后将裁剪的目标图像块尺寸缩放至127×127像素大小;
1.2搜索图像处理:在一个图像中,目标区域以目标区域以矩形框标定,矩形框的中心点代表目标中心点位置,在目标矩形框四边分别扩充p个像素,若矩形框超出图像边界,超出部分用图像像素均值填充,最后将裁剪的目标图像块尺寸缩放至255×255像素大小。
进一步的,所述步骤2具体包括以下步骤:
2.1特征提取以5层结构的AlexNet为基础框架,其改动为:1)去掉整个AlexNet的padding和全连接层;2)网络的第一层、第二层内的LRN层用BatchNorm批归一化层替换;3)第三层与第四层中添加BatchNorm批归一化层;4)第五层中去掉ReLu修正线性单元层与MaxPooling最大池化层,并添加BatchNorm批归一化层;
2.2将预处理好的模板图像与搜索图像输入到该AlexNet网络分别得到模板图像特征与搜索图像特征;
2.3将模板图像特征经过一个3×3卷积运算得到的特征与搜索图像特征经过3×3卷积运算得到的特征进行一个深度互相关卷积,深度互相关卷积后的特征经过两个1×1的卷积后得到的结果用于最后的目标分类;
2.4将模板图像特征经过一个3×3卷积运算得到的特征与搜索图像特征经过3×3卷积运算得到的特征进行一个深度互相关卷积,深度互相关卷积后的特征分别经过两个1×1的卷积得到两类特征,一类用于IoU预测,另一类用于目标坐标预测。
进一步的,所述步骤3采用为每一个Anchor对回归损失的贡献分配一个权重具体包括以下步骤:
3.1根据IoU预测器得到的每一个Anchor与跟踪目标之间的IoU,作为回归分支中每一个Anchor对于回归损失权重的依据。考虑到整个回归损失不变,所有Anchor的权重被归一化到1;
3.2将得到的权重作用到每一个Anchor中,具体体现在权重w为每一个Anchor对回归损失的贡献进行重新加权。
进一步的,所述步骤3.1将所有Anchor的权重被归一化到1,具体公式为:
其中,w为Anchor对于回归损失的权重,i*为IoU预测器输出的一个Anchor与目标之间的IoU,Npos为正样本个数,I*表示IoU预测器预测到的所有Anchor与目标之间的IoU的集合,sum()表示预测到的所有IoU之和。
进一步的,所述步骤3.2权重w为每一个Anchor对回归损失的贡献进行重新加权,具体公式为:
其中,Lr为回归分支的总损失,wi为第i个Anchor的权重,Li为第i个Anchor的回归损失。
进一步的,所述步骤4具体包括以下步骤:
4.1计算分类标签:分类标签通过计算每一个Anchor与目标之间的IoU得到,当一个Anchor与目标之间的IoU大于0.6,则这个Anchor属于正样本,标签为1;当一个Anchor与目标之间的IoU小于0.3,则这个Anchor属于负样本,标签为0;当一个Anchor与目标之间的IoU在0.3到0.6之间,则在训练分类时,忽略掉这个Anchor,标签为-1;
4.2计算坐标标签:回归分支不直接输出目标的坐标,而是得到通过如下公式换算后的坐标(δ[0],δ[1],δ[2],δ[3]):
δ[0]=(Tx-Ax)/Aw
δ[1]=(Ty-Ay)/Ah
其中,Tx是目标矩形框的左上角x坐标,Ty目标矩形框的左上角y坐标,Tw是目标矩形框的宽,Th是目标矩形框的高,Ax是Anchor左上角x坐标,Ay是Anchor左上角y坐标,Aw是Anchor的宽,Ah是Anchor的高;
4.3计算IoU标签:IoU标签是用已回归后的Anchor与目标框计算IoU得到,首先把预测到的(δ[0],δ[1],δ[2],δ[3])还原成预测的目标坐标(Bx,By,Bw,Bh),还原公式为:
Bx=δ[0]×Aw+Ax
By=δ[1]×Ah+Ay
Bw=exp(δ[2])×Aw
Bh=exp(δ[3])×Ah
利用还原后的预测坐标与Anchor计算得到的IoU即为IoU标签;
4.4根据步骤2的网络预测输出:分类分数、位置坐标、IoU分数,以及步骤3中的权重因子,计算整个模型训练的损失,采用随机梯度下降优化算法对模型进行迭代训练,分类损失采用交叉熵损失函数,回归损失采用smooth L1损失函数,IoU损失采用BCE损失函数;
4.5判断深度神经网络模型是否达到收敛条件,如果不是,回到步骤2;如果是,结束训练,获得训练好的深度神经网络模型。
进一步的,所述步骤5具体包括以下步骤:
5.1在线跟踪时,图像视频或者图像序列的第一帧目标被选择作为模板图像,在整个跟踪期间,孪生网络模板分支通过模板图像预先计算并固定,后续帧输入搜索图像到孪生网络的搜索分支,然后网络预测每个Anchor的三个输出:分类分数cls、交并比分数iou与目标坐标loc;
5.2将分类分数与IoU分数相乘得到每一个Anchor最后的得分:score=cls×iou,选择最后score中得分最高的Anchor的坐标作为最后的跟踪结果。
本发明的优点及有益效果如下:
1.一个性能优秀的跟踪器对于实际应用非常重要。现在大多数跟踪器(SiamRPN、C-RPN、SiamRPN++等)把一个跟踪任务分解成一次性检测任务,分类分支用于目标的分类,回归分支用于目标大小的回归。这些跟踪器在训练时,分类分支与回归分支相互独立,却在跟踪时,由分类分数直接选择相应的回归框,这是极度不合理的。由于分类分支与回归分支相互独立地进行训练,所以分类分数高,不能说明对应的Anchor回归状态好,即:分类分数高可能对应的Anchor与目标之间的IoU较低。所以本发明提出了一个IoU预测分支,该分支预测回归后的Anchor与目标之间的IoU,然后将预测到的IoU分数与分类得分分数相乘作为选择最终的回归框的依据。这样一来,提高了分类分支与回归分支的相关性,也就提高了跟踪器的鲁棒性。
2.对于跟踪任务来说,仅仅只有一个跟踪目标。现在的把跟踪任务看成一次性检测任务的跟踪器都倾向于使每一个正样本的Anchor都精准的预测出目标的大小,即:每一个正样本对于回归损失的贡献都被同等对待。然而,对于众多正样本来说,IoU较小的样本远比IoU较大的样本多,一旦所有样本被同等对待,那么回归损失将被IoU较小的那些样本主导,训练出来的跟踪模型也比较关注IoU较小的回归框,这将严重损害跟踪的定位精度。本发明采用为每一个Anchor对回归损失的贡献分配一个权重,这个权重正比于Anchor与目标之间的IoU,即当某个Anchor与目标之间的IoU越大,那么相应的权重也越大,这个Anchor对回归损失的贡献也越大。这将使训练出的跟踪模型将更加关注与目标之间IoU高的那些框。
附图说明
图1是本发明提供优选实施例的IoU引导孪生网络的目标跟踪模型结构示意图;
图2为本发明的在OTB100数据集中MotorRolling视频上的跟踪效果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
本发明实施例基于SiamRPN目标跟踪框架为基本框架,详见文献Bo Li,JunjieYan,Wei Wu,Zheng Zhu,and Xiaolin Hu.High performance visual tracking withsiamese region proposal network.In Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition,pages 8971–8980,2018.。首先利用SiamRPN为基础搭建跟踪框架,然后构建一个IoU预测器,最后为每一个Anchor对回归损失的贡献进行加权。在跟踪过程中,将分类得分与IoU分数相乘得到的最终分数作为选择最后的回归框的依据。
图1是本发明实施例提供的IoU引导的孪生网络模型结构示意图,包括如下步骤:
步骤一:对模板图像与搜索图像进行预处理,具体如下
1.1模板图像处理:在一个图像中,目标区域以目标区域以矩形框标定,矩形框的中心点代表目标中心点位置,在目标矩形框四边分别扩充p个像素,若矩形框超出图像边界,超出部分用图像像素均值填充,最后将裁剪的目标图像块尺寸缩放至127×127像素大小。
1.2搜索图像处理:在一个图像中,目标区域以目标区域以矩形框标定,矩形框的中心点代表目标中心点位置,在目标矩形框四边分别扩充p个像素,若矩形框超出图像边界,超出部分用图像像素均值填充,最后将裁剪的目标图像块尺寸缩放至255×255像素大小。
步骤二:将模板图像与搜索图像分别输入到孪生网络的模板分支与搜索分支,经过AlexNet提取到模板图像的特征与搜索图像的特征,然后以模板图像特征与搜索图像特征为输入分别经过两个互相关卷积后得到的两类特征,这两类特征一类输入到分类头对目标进行分类,一类输入到回归头对目标大小进行回归。为了增加分类分数与回归定位的相关性,设计了一个IoU预测器,该IoU预测器平行于回归头,预测所有正样本的Anchor与目标之间的IoU分数。然后将IoU分数与分类分数共同作为选取最终的Anchor的依据。具体如下:
2.1特征提取以5层结构的AlexNet为基础框架,其改动为:1)去掉整个AlexNet的padding和全连接层;2)网络的第一层、第二层内的LRN层用BatchNorm(批归一化)层替换;3)第三层与第四层中添加BatchNorm(批归一化)层;4)第五层中去掉ReLu(修正线性单元)层与MaxPooling(最大池化)层,并添加BatchNorm(批归一化)层;
2.2将预处理好的模板图像与搜索图像输入到该AlexNet网络分别得到模板图像特征与搜索图像特征。
2.3将模板图像特征经过一个3×3卷积运算得到的特征与搜索图像特征经过3×3卷积运算得到的特征进行一个深度互相关卷积。深度互相关卷积后的特征经过两个1×1的卷积后得到的结果用于最后的目标分类。
2.4将模板图像特征经过一个3×3卷积运算得到的特征与搜索图像特征经过3×3卷积运算得到的特征进行一个深度互相关卷积。深度互相关卷积后的特征分别经过两个1×1的卷积后得到两类特征,一类用于IoU预测,另一类用于目标坐标预测。
步骤3:计算每一个Anchor对回归损失的权重,然后对回归损失进行加权,具体如下:
3.1根据IoU预测器得到的每一个Anchor与跟踪目标之间的IoU,作为回归分支中每一个Anchor对于回归损失权重的依据。考虑到整个回归损失不变,所有Anchor的权重被归一化到1,具体公式为:
其中,w为Anchor对于回归损失的权重,i*为IoU预测器输出的一个Anchor与目标之间的IoU,Npos为正样本个数,I*表示IoU预测器预测到的所有Anchor与目标之间的IoU的集合。sum()表示预测到的所有IoU之和。
3.2将得到的权重作用到每一个Anchor中,具体体现在权重w为每一个Anchor对回归损失的贡献进行重新加权,具体公式为:
其中,Lr为回归分支的总损失,wi为第i个Anchor的权重,Li为第i个Anchor的回归损失。
步骤4:分别计算分类标签、回归标签与IoU预测器标签。然后将网络预测到的分类分数、回归坐标与IoU分数分别与对应的标签通过损失函数计算得到损失,然后通过随机梯度下降优化算法迭代训练得到最终的网络模型。具体如下:
4.1计算分类标签:分类标签通过计算每一个Anchor与目标之间的IoU得到,当一个Anchor与目标之间的IoU大于0.6,则这个Anchor属于正样本,标签为1;当一个Anchor与目标之间的IoU小于0.3,则这个Anchor属于负样本,标签为0;当一个Anchor与目标之间的IoU在0.3到0.6之间,则在训练分类时,忽略掉这个Anchor,标签为-1。
4.2计算坐标标签:回归分支不直接输出目标的坐标,而是得到通过如下公式换算后的坐标(δ[0],δ[1],δ[2],δ[3]):
δ[0]=(Tx-Ax)/Aw
δ[1]=(Ty-Ay)/Ah
其中,Tx是目标矩形框的左上角x坐标,Ty目标矩形框的左上角y坐标,Tw是目标矩形框的宽,Th是目标矩形框的高,Ax是Anchor左上角x坐标,Ay是Anchor左上角y坐标,Aw是Anchor的宽,Ah是Anchor的高。
4.3计算IoU标签:IoU标签是用已回归后的Anchor与目标框计算IoU得到。首先把预测到的(δ[0],δ[1],δ[2],δ[3])还原成预测的目标坐标(Bx,By,Bw,Bh),还原公式为:
Bx=δ[0]×Aw+Ax
By=δ[1]×Ah+Ay
Bw=exp(δ[2])×Aw
Bh=exp(δ[3])×Ah
利用还原后的预测坐标与Anchor计算得到的IoU即为IoU标签。
4.4根据步骤2的网络预测输出:分类分数、位置坐标、IoU分数,以及步骤3中的权重因子,计算整个模型训练的损失,采用随机梯度下降优化算法对模型进行迭代训练。分类损失采用交叉熵损失函数,回归损失采用smooth L1损失函数,IoU损失采用BCE损失函数。
4.5判断深度神经网络模型是否达到收敛条件,如果不是,回到步骤2;如果是,结束训练,获得训练好的深度神经网络模型。
步骤5:在线跟踪:将网络预测到的每个Anchor分类得分与预测到的每个Anchor的IoU得分相乘,在回归分支选择与得分最高的Anchor相对应的框,作为最后的预测结果。具体如下:
5.1在线跟踪时,图像视频或者图像序列的第一帧目标被选择作为模板图像,在整个跟踪期间,孪生网络模板分支通过模板图像预先计算并固定。后续帧输入搜索图像到孪生网络的搜索分支,然后网络预测每个Anchor的三个输出:分类分数cls、IoU分数iou与目标坐标loc。
5.2将分类分数与IoU分数相乘得到每一个Anchor最后的得分:score=cls×iou,选择最后score中得分最高的Anchor的坐标作为最后的跟踪结果。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。