钟晓伟,王志胜,丛玉华
(南京航空航天大学自动化学院,江苏 南京 211106)
随着计算机视觉的快速发展,无人机视觉跟踪技术已广泛应用于安防侦察、灾情检测、人员搜救等领域[1]。然而,与一般的目标跟踪任务相比,基于无人机的目标跟踪任务更具挑战性。由于无人机机载处理器资源受限,要求跟踪算法具有低参数量和低运算复杂度[2]。此外,无人机跟踪还涉及尺度变化、低分辨率、部分遮挡等极具挑战性的任务场景,跟踪算法需要具有良好的跟踪性能才能保证跟踪任务完成。因此,如何平衡视觉跟踪算法的实时性和跟踪性能,以使其适用于无人机跟踪任务,是当前研究的热点技术问题。
目前,目标跟踪算法主要分为生成式跟踪算法和判别式跟踪算法[3]。生成式跟踪算法,如均值漂移、粒子滤波等算法,通常忽略背景对目标的影响,因此无法满足复杂场景的跟踪需求。
主流的判别式跟踪算法可以分为基于相关滤波和基于深度学习两类。基于相关滤波的跟踪算法,如MOSSE[4]、CSK[5]、KCF[6]等,基本思想是利用设计的滤波模板确定目标在当前帧的位置。此类算法虽然具有较低的计算复杂度,但只能利用简单特征进行学习,准确率和鲁棒性较差。
基于深度学习的跟踪算法中,以孪生神经网络为核心的算法具有强大的特征提取和学习能力,使其在目标跟踪任务上有优越表现。其中,SiamFC(fully-convolutional siamese networks)算法[7]将跟踪任务定义为相似性匹配任务,以较快的速度实现了目标跟踪任务。SiamRPN[8]把孪生网络和区域推荐网络融合,将目标跟踪问题抽象成为样本检测问题,提高了准确率和运算速度。SiamRPN++[9]选用复杂度高的神经网络,进一步提高了跟踪性能,但复杂的网络导致算法实时性降低。TCTrack利用历史帧的时空信息[9-10],提高了算法的跟踪性能,但引入Transformer增加了模型的参数量。Stark[11]算法使用了臃肿的编码器-解码器架构,运算速度无法满足目标跟踪的实时性要求。
基于上述分析,文中提出了一种基于轻量化设计的孪生网络目标跟踪算法SiamLD(siamese network target tracking algorithm based on lightweight design)。该算法在特征提取的主干网络中引入了MobileNetV3轻量级神经网络并进行改进。同时,在特征提取网络中采用了ECA(efficient channel attention)注意力机制[12],提高图像的分类能力。接着,对高低层网络的特征进行融合,使得最终的特征图能够增加对低层细节信息的关注,降低背景干扰、形变等问题的影响。同时,还采取了多分支交叉相关,增强了模板局部特征的作用。最后,在回归分支中引入完全交并比以获取更准确的目标预测框。
文中提出的跟踪算法整体框架如图1所示。该框架主要由轻量化特征提取网络、特征融合模块、多分支交叉相关、分类回归分支和边界框回归分支组成。对于一个待跟踪的视频序列,文中算法SiamLD首先利用改进后的MobileNetV3网络对3×127×127的目标模板和3×255×255的搜索图像进行特征提取,然后通过特征融合模块得到强化低层语义信息的特征图。接着,经过深度相关和像素相关处理后,通过分类回归分支和边界框回归分支得出被跟踪目标在搜索图像上的预测边界框。
图1 文中算法整体结构框架图Fig.1 Overall framework diagram of the algorithm
为了在视觉跟踪算法中兼顾准确性和实时性,文中引入了轻量化网络MobileNetV3,并对其进行了改进。MobileNetV3使用深度可分离卷积取代传统卷积进行特征提取。深度可分离卷积利用深度卷积使每个通道只被一个卷积核提取特征,并通过逐点卷积将深度卷积得到的特征图进行组合。这种卷积方式将传统卷积的特征提取和组合过程分开进行,使特征提取网络可以用更少的参数和计算量来学习空间和通道特征,从而大幅度减小了模型大小和计算复杂度。原始的MobileNetV3网络需要多次下采样操作才能得到图像特征图,而过多的下采样会导致输出特征图分辨率降低,容易在跟踪过程中丢失部分信息,同时还会增加计算资源消耗。因此,文中对网络结构进行了调整,减少了下采样次数,去除了冗余部分网络。改进后的主干网络参数如表1所示。
表1 轻量化主干网络参数Table 1 Lightweight backbone network parameters
MobileNetV3采用了SE(squeeze-and-excitation)注意力机制,在通道内对特征图进行全局池化操作,通过全连接层和激活函数得到特征图的权重,并与特征图相乘,以提高图像的分类能力。然而,SE注意力机制中包含两个全连接层,会增加神经网络的计算量,并且SE通道注意力中的降维操作会破坏通道之间的交流,导致产生的通道权重较差。因此,文中引入ECA注意力机制来代替MobileNetV3中的SE注意力机制,ECA注意力机制的示意图如图2所示。ECA注意力机制去除了全连接层,而直接在全局平均池化层后使用1×1卷积层。该模块只需利用少量参数就可以达到良好的特征提取效果。
图2 ECA注意力机制示意图Fig.2 Schematic diagram of ECA attention mechanism
卷积神经网络中不同特征层所包含的信息起到的作用不同。低层特征包含更多的细节信息,例如颜色、纹理等,但由于经过较少的卷积层,因此其语义性较低,同时也伴随着更多的噪声。相比之下,高层特征具有更强的语义特征,能够降低背景干扰和形变等因素对跟踪效果的影响,但通过多层神经网络后,分辨率会降低,无法感知细节信息。在无人机航拍视角下,目标物体成像较小,目标分辨率较差,因此更需要关注低卷积层的特征信息。
为了进一步提高文中跟踪算法的准确性和鲁棒性,提出一种高低层特征融合模块,其整体结构如图3所示。该模块主要由全局平均池化GAP(global average pooling)、点卷积层、ReLU激活函数和Sigmoid激活函数构成。
图3 高低层特征融合模块结构图Fig.3 Structure diagram of the feature fusion module
对于给定的两个特征X和Y进行特征融合,其中X表示包含更多细节信息的低层特征,Y表示具有更多语义信息的高层特征。首先这两个特征经过全局平均池化提取全局特征注意力,然后经过点卷积和ReLU激活函数处理,得到特征图M。接下来,通过点卷积和归一化处理BN(batch normalization)进行调整,最后通过Sigmoid激活函数得到权重值Z。具体的计算公式为:
M=δ1(Conv(GAP(X+Y)))
(1)
Z=δ2(B(Conv(M)))
(2)
式中:GAP表示全局平均池化;Conv表示点卷积;δ1、δ2分别表示ReLU和Sigmoid激活函数;B表示归一化处理。
文中目标模板X和搜索图像Y通过权值共享的孪生神经网络φ,分别得到对应的模板特征fX=φ(X)和搜索图像特征fY=φ(Y)。通过对模板特征fX和搜索图像特征fY进行互相关操作,可以得到模板与图像在当前位置的相似程度。
SiamRPN++采用深度相关操作(depth-wise correlation)实现模板与图像的互相关,逐通道互相进行内积运算,最终得到特征相似图。尽管深度相关能够注重整体特征的相似性,但是由于需要进行卷积,会增加模型参数和计算复杂度。
为了减少计算复杂度,文中提出了多分支交叉相关。在深度相关的基础上,引入逐像素相关(pixel-wise correlation)。逐像素相关将模板特征分解成H×W个1×1特征,将这H×W个特征分别与搜索图像特征相乘,得到通道数为S的相关图。逐像素相关并将相关操作转化为矩阵计算,提高了运算速度,同时使得相关特征图具有更小的核尺寸和更多样化的目标表达,更好地保留了目标的边界信息和尺度信息。
文中设计了多分支交叉相关,既保留了深度相关的优点,又引入了逐像素相关的特点。同时,还将孪生网络输出的目标特征图和搜索图像特征图进行交叉相关,具体的计算过程为:
(3)
(4)
式中:φ(X)、φ(Y)分别表示模板图像特征和搜索图像特征;Pixel表示逐像素相关;Depth表示深度相关;pcls和preg分别表示经过逐像素相关后得到的分类响应图和回归响应图;dcls和dreg分别表示经过深度相关后得到的分类响应图和回归响应图。
将不同相关分支得出的特征图进行拼接,并经过3×3卷积,可得到最终的分类响应图和回归响应图,其数学表达式为:
Zcls=Conv(pcls+dcls)
(5)
Zreg=Conv(preg+dreg)
(6)
式中:Conv表示点卷积;Zcls和Zreg分别表示最终的分类响应图和回归响应图。
损失函数的设计会对孪生神经网络的性能起到较大的影响,文中在分类分支采用二分类交叉熵损失函数进行训练,其数学表达式为:
(7)
式中:Lcls表示分类损失;(i,j)表示响应图上的位置;y(i,j)表示对应位置的标注值;p(i,j)表示该位置预测的概率。
在回归分支中,目标框的预测准确度直接影响跟踪器的性能优劣。完全交并比同时考虑到重叠面积、高宽比和中心点距离,可以在回归分支得出更准确的目标框。因此,文中在设计回归分支损失函数时考虑了完全交并比RCIOU,其数学表达式分别为[13]:
(8)
(9)
(10)
式中:Bgt和bgt表示真实框和真实框的中心位置坐标;B和b表示预测框与预测框的中心位置坐标;ρ表示真实框和预测框的中心距离;c表示相交的真实框和预测框的对角线距离;w,h和wgt,hgt分别表示预测框的宽与高和真实标注框的宽与高。
回归分支损失函数Lreg可表示为:
(11)
式中:(i,j)表示响应图上的具体位置;p(i,j)表示该位置预测的概率。
孪生网络最终损失函数Lloss可表示为:
Lloss=λ1Lcls+λ2Lreg
(12)
式中:λ1和λ2分别表示对应损失函数的损失权重因子。
文中将目标模板大小设置为3×127×127,将搜索图像大小设置为3×255×255。将批量大小设置为64,采用随机梯度下降法SGD(stochastic gradient descent),并将初始学习率设置为0.005,最终衰减至0.000 5。网络总共训练50个epoch,每个epoch迭代次数为32 000。
2.2.1 数据集
文中选取GOT-10K[14],Lasot[15],ImageNet VID[16],COCO[17]四个数据集进行网络训练,并在无人机目标跟踪数据集UAV123和DTB70上分别进行算法性能测试。UAV123大小约14 G,包含123个视频序列[18],这些视频序列涵盖了室内、室外、天空、城市和农村等多种复杂场景,数据集中的运动目标包括人、车、动物等,且在不同的环境中以不同的速度和方向移动,所有视频都是由无人机拍摄的,具有高动态范围和高清晰度,同时包含了具有挑战性的多种跟踪场景,这使得UAV123数据集成为目标跟踪算法评估的理想数据集之一。DTB70数据集包括短期和长期空中目标[19],包含70个视频序列,总共大小约1.34 G。此数据集中的视频序列是由摄像机实际拍摄的,具有真实性和可靠性,可以更好地反映实际应用场景中的目标跟踪问题。上述两个无人机基准数据集可以全面地评估文中算法在无人机视角下的跟踪性能。
2.2.2 评估指标
文中利用准确率和成功率评估算法的跟踪性能,利用帧率评估算法的实时性能。跟踪算法的成功率Psuc是指预测边界框和人工标注边界框的重叠率大于某一阈值的帧数占总帧数的比例,其计算公式为:
(13)
式中:α代表阈值,通常设置为0.5。
重叠率RIoU是指预测边界框与真实边界框之间的交并,其计算公式为:
(14)
式中:B和Bgt分别表示预测框和真实标注框。
准确率是指预测边界框的中心位置与人工标注边界框的中心位置的距离δ小于某一阈值的帧数占总帧数的比例,计算公式为:
(15)
式中:β代表阈值,通常设置为20。
目标中心位置误差δ的计算公式为:
(16)
式中:(xr,yr)和(xp,yp)分别表示预测边界框的中心位置坐标和人工标注边界框的中心位置坐标。
2.3.1 UAV123跟踪基准实验结果
在UAV123跟踪基准上对文中提出的SiamLD算法进行跟踪性能评估,并与11种跟踪算法进行对比,用于对比的算法包括:KCF,DSST[20],SRDCF[21],UDT[22],SiamFC,ECO_HC[23],TADT[24],SiamDW[25],SiamRPN,SiamBAN[26],TcTrack。
在UAV123跟踪基准上,文中算法与其他11种对比算法的成功率和准确率如图4和图5所示。从实验结果可以看出,文中提出的SiamLD算法跟踪成功率达到了0.612,跟踪准确率达到了0.8,取得了具有竞争力的跟踪性能。
图4 不同算法在UAV123跟踪基准的成功率图Fig.4 Success rate chart of different algorithms on UAV123 tracking benchmark
图5 不同算法在UAV123跟踪基准的准确率图Fig.5 Accuracy charts of different algorithms for tracking benchmarks in UAV123
在无人机空中目标跟踪过程中,由于无人机飞行特性,目标尺寸变化、相机移动等跟踪场景频发,容易引发目标框选漂移或者丢失。为了应对这些挑战性场景,测试文中算法在挑战性场景的跟踪性能和鲁棒性,在UAV123跟踪基准上选择了纵横比变化、相机移动、目标尺寸变化三种场景,对文中提出的跟踪算法进行性能评估。
图6展示了在三种挑战性场景下,文中算法的跟踪成功率和准确率。
图6 文中算法在挑战性场景下的跟踪成功率和准确率图Fig.6 Tracking success rate and accuracy chart of the algorithm in challenging scenarios in this article
由图6可以看出,在纵横比变化、相机移动、目标尺寸变化场景下,文中所提出跟踪算法的成功率均为最优,准确率也均为优秀,说明了在具有挑战性的无人机跟踪场景下,文中算法依然能拥有良好的性能。
当无人机跟踪场景出现纵横比变化、相机移动、目标尺寸变化等情况时,搜索图像中会包含干扰信息。为了应对这些干扰,文中算法改进了特征提取网络的网络结构,减少下采样次数,使得分辨率得以提高。同时,引入了ECA机制,提高算法的图像分类能力。文中算法引入了多分支交叉相关,通过深度相关和逐像素相关,使得相关特征图在注重整体特征的相似性的同时,更好地保留了目标的边界信息和尺度信息,提高了算法的抗干扰能力。
2.3.2 DTB70跟踪基准实验结果
DTB70数据集包含了70个剧烈运动的无人机视角下的视频,稳定跟踪目标是该数据集中的难点。将文中提出的算法在DTB70跟踪基准中进行性能评估,并与11种跟踪算法进行对比分析。用于对比的算法包括:KCF,DSST,SRDCF,UDT,TADT,SiamFC,ECO_HC,SiamAPN[27],SiamRPN,SiamAPN++[28],TcTrack。
表2展示了12种跟踪算法在DTB70跟踪基准上的跟踪性能。提出算法在70个无人机剧烈运动的场景下取得了具有竞争力的跟踪性能,跟踪成功率和准确率分别达到了0.638和0.830。相较于参数量巨大的次优算法TcTrack,文中算法在跟踪成功率和准确率上提升了2.6%和2.1%,充分说明了文中算法能够适用于运动变化较大的无人机平台。
表2 不同算法在DTB70跟踪基准上的实验结果Table 2 Experimental results of different algorithms on the DTB70 tracking benchmark
文中算法提出了高低层特征融合模块,特征提取能够关注到低层神经网络中包含的颜色、纹理等细节信息,使得文中算法可以适应在目标分辨率低无人机视角下的跟踪。由于文中算法在损失函数中引入了完全交并比,可以在回归分支得出更准确的目标框,提高了目标跟踪算法的精确度和鲁棒性。
2.3.3 算法实时性分析
考虑到无人机机载嵌入式平台计算资源有限,文中算法采用了轻量化的特征提取主干网络,并在高低层特征融合和特征互相关中均考虑到轻量化设计。因此,文中所设计的跟踪器框架具有较低的参数量和运算量。表3展示了文中算法与其他算法在参数量和运算量上的对比结果。对比结果表明,文中算法的轻量化设计,能够让算法的运算量和参数量大幅降低。
表3 不同算法参数量和运算量对比Table 3 Comparison of parameter quantity and operation quantity of different algorithms
为充分评估文中设计的目标跟踪算法的实时性能,在PC端和无人机机载嵌入式平台上进行了算法实时性测试实验。文中算法与其他算法在PC端和嵌入式NUC机载电脑上的帧率对比如表4所示。通过轻量化设计,文中算法在PC端运行速率达到155 帧/s,在无人机嵌入式平台上运行速率达到41 帧/s,远高于其他算法,能够满足实时性要求。
表4 不同算法实时运行速度对比Table 4 Comparison of real time running speeds of different algorithms
此外,在运行过程中,文中算法仅占用机载电脑内存容量的4.7%,节约了有限的计算资源,有利于接入其他运算需求,充分说明了文中算法轻量化设计的有效性和部署至无人机平台的可行性。
为了直观地展示实验中各不同跟踪算法的跟踪效果,从UAV123中挑选了4组视频序列,并与ECO_HC,SiamFC,SRDCF,SiamBAN和TADT 5种跟踪算法进行了对比,对比效果图如图7~图10所示。不同的算法用不同颜色的预测框表示,其中绿色框代表真实标注(ground-truth)。预测边界框与真实标注边界框重叠的面积越大,说明此算法的跟踪性能更优。
图7 UAV123视频序列不同算法跟踪船9目标结果对比图Fig.7 Comparison of tracking boat 9 results of different algorithms for UAV123 video sequences
在图7 boat 9视频序列中,被跟踪目标表现出快速运动和分辨率较低的特点。各算法在序列号(SN)第102帧时还能够准确跟踪目标,但随着被跟踪目标分辨率的持续降低,到第896帧时,SiamBAN算法已经出现丢失目标的情况。从第1 390帧可以看出,被跟踪目标经过多次尺度变化后,只有文中提出的算法与绿色标注框重合面积最大,跟踪效果最佳。
在图8 car 6_2视频序列中,出现了相机视野、视角变化两种挑战性的跟踪场景。在第799帧目标超出相机视野时,SRDCF算法已经丢失了目标,在第961帧目标重新出现在视野中时,文中算法相较于其他算法,与绿色人工标注框重合率最大,效果更优。
图8 UAV123视频序列不同算法跟踪轿车6_2目标结果对比图Fig.8 Comparison of tracking car 6_2 results of different algorithms for UAV123 video sequences
在图9 group3_1视频序列中,被跟踪目标出现相似目标干扰、部分遮挡的特点。在第903帧目标出现部分遮挡时,TADT和SRDCF算法无法继续跟踪目标,而文中算法依然可以准确跟踪部分被遮挡的目标,体现了文中算法的抗干扰性能。
图9 UAV123视频序列不同算法跟踪group 3_1目标结果对比图Fig.9 Comparison of tracking group 3_1 results of different algorithms for UAV123 video sequences
在图10 truck1视频序列中,被跟踪目标出现了尺寸变化和多个相似目标干扰的特点。在第154帧出现多个相似目标干扰时,只有文中算法和SiamBAN能够准确跟踪目标,但文中算法与绿色标注框重合率高于SiamBAN,说明文中算法跟踪性能优于其他对比算法。
图10 UAV123视频序列不同算法跟踪卡车1目标结果对比图Fig.10 Comparison of tracking truck 1 results of different algorithms for UAV123 video sequences
综上所述,文中提出的SiamLD算法在较为复杂的无人机跟踪场景下具有更好的跟踪效果和抗干扰性能,可以为无人机任务中的目标跟踪应用提供可靠的支持。
针对无人机平台下目标跟踪算法难以平衡跟踪性能和实时性的问题,文中提出了一种基于轻量化设计的孪生网络目标跟踪算法SiamLD,并在UAV123和DTB70无人机跟踪基准上完成了算法整体性能评估。实验结果表明,文中提出的SiamLD算法在DTB70跟踪基准上跟踪成功率和准确率分别达到了0.638和0.830,并且在嵌入式NUC机载电脑中运行速率达到41 帧/s,实现了跟踪性能和实时性的平衡。下一步工作将时空上下文信息引入跟踪算法,进一步提高算法跟踪性能。