1、342023 adio Engineering Vol.53 No.1doi:103969/jissn10033106202301005引用格式:任进,李文邦,郭昱汝基于无人机平台的多目标跟踪算法J 无线电工程,2023,53(1):3439EN Jin,LIWenbang,GUO YuruMulti-target Tracking Algorithm Based on UAV Platform J adio Engineering,2023,53(1):3439基于无人机平台的多目标跟踪算法任进,李文邦,郭昱汝(北方工业大学 信息学院,北京 100144)摘要:针对目前无人机平台多目标跟踪技
2、术的跟踪精确度低、占用内存大的问题,提出了一种基于不同检测器算法和 DeepSort 算法结合而成的多目标跟踪算法,提高在无人机上对地面行人在跟踪数据集中的效果。使用深度学习的多目标跟踪技术通过构建卷积神经网络(Convolutional Neural Network,CNN),用卡尔曼滤波算法实现了对目标轨迹的预测,匈牙利算法则使卡尔曼滤波的预测结果得以分配,使 DeepSort 算法在保证跟踪效果的同时,也保证了跟踪时的速度。实验结果显示,DeepSort 在与 YOLOv5x 检测器配合后,多目标跟踪精度可提高 20%。关键词:无人机平台;多目标跟踪;目标检测;YOLOv5中图分类号:T
3、P39141文献标志码:A开放科学(资源服务)标识码(OSID):文 章 编 号:10033106(2023)01003406Multi-target Tracking Algorithm Based on UAV PlatformEN Jin,LI Wenbang,GUO Yuru(School of Information Science and Technology,North China University of Technology,Beijing 100144,China)Abstract:To address the issues of low tracking accurac
4、y and large memory occupation of current multi-target tracking technology onUAV platform,a multi-target tracking algorithm based on different detector algorithms and DeepSort algorithm is proposed to improve theeffect of tracking data set for pedestrians on the ground on UAV The multi-target trackin
5、g technology using deep learning realizes theprediction of target trajectory with Kalman filter algorithm by constructing a Convolutional Neural Network(CNN)The prediction resultsof Kalman filter is distributed by the Hungarian algorithm,so the DeepSort algorithm ensures not only the tracking effect
6、,but also thetracking speed The experimental results show that the multi-target tracking accuracy can be improved by 20%by the combination ofDeepSort and YOLOv5x detectorKeywords:UAV platform;multi-target tracking;target detection;YOLOv5收稿日期:20221008基金 项 目:北 京 市 优 秀 人 才 培 养 资 助 青 年 骨 干 个 人 项 目(40105
7、3712002);2022 年北京市大学生创新创业训练计划项目(22XN238)Foundation Item:Beijing Outstanding Young Backbone Individual Project(401053712002);2022 Beijing College Students Innovation and Entre-preneurship Training Program Project(22XN238)0引言目标跟踪任务是无人机一项极为重要的功能,无论是目标抓捕、自动检测打击或是移动跟拍等都有着广泛的需求,因此无人机目标跟踪的完善与实践具有极强的现实意义。无人
8、机的跟踪算法主要有生成式算法和滤波类判别式跟踪算法13。生成式算法早期主要是根据提取的目标特征,对目标建模后进行跟踪。与生成式目标跟踪算法相比,判别式跟踪不仅考虑目标的模型描述4,而且将目标的特征信息和其所在位置的环境背景信息加入了考虑范围5。相关滤波类算法由于通过傅里叶变换在频域中进行计算6,运行速度较快,能够满足无人机目标跟踪最基本的实时性的需要。MOSSE 算法作为目标跟踪算法,在 669 帧/秒的速度下,对亮度、尺度、位姿和不严格变形的鲁棒性比较好7。深度学习的方法提升了多目标跟踪算法的精度89,大都是通过预训练出卷积神经网络(Convo-lutional Neural Network
9、,CNN)以 分 析 目 标 的 特征10,此后再提取深度特征,得到特征信息后进行专题:面向 B5G/6G 的无人机通信2023 年 无线电工程 第 53 卷 第 1 期35特征的分类,以此为基础实现目标的确定与跟踪。但是其也依赖于 GPU 的性能,运行速度较慢,所以深度学习和相关滤波相结合的方法渐渐成为主流。目前,基于无人机平台的跟踪算法依然存在诸多问题,如目标的移动过快以至于脱离视线、拍摄后低分辨率等,这一系列问题使得学者们对跟踪算法的研究有了新的方向与目标11。有的算法如核相关滤波(Kernel Correlation Filter)算法利用梯度直方图特征并融合多通道特征,通过多种方法结
10、合使得跟踪结果更加准确1213。本文提出一种无人机多目标跟踪算法,旨在使用无人机跟踪地面行人目标,该算法需要在复杂环境和距离变化下依然能够高效地跟踪目标,在围绕无人机特性设计多目标跟踪算法的同时也应该注意目标检测、特征提取和相似度等之间的关联,力求在保证算法时效性和速度的同时,尽可能提高精度。1多目标跟踪算法11YOLOv5 算法YOLOv5 网络结构可分为输入端(Input)、骨干网络(Backbone)、多尺度特征融合模块(Neck)和输出端(Output)共 4 个部分。YOLOv5 包含了 4 个目标检测版本:YOLOv5s,YOLOv5m,YOLOv51 和 YOLOv5x。4 种模
11、型有着一样的网络结构,通过改变网络宽度来改变转换器(Conv)中卷积核的数量,通过改变网络深度来改变瓶颈层(BottleneckC3)中 C3 的数量,实现不同网络深度和不同网络宽度之间的组合,达到精度与效率的平衡14。YOLOv5s 是这 4 种里面网络深度最浅、特征图宽度最小的 YOLOv5 网络,有着非常不错的性能,其在 TeslaP100 上检测速度达到 140 帧/秒。其他 3 种模型都在 YOLOv5s 基础上不断加深、加宽,并且各个网络的网络深度与特征宽度都可用代码控制,在使用时复杂度降低,节约了成本。4 种 YOLOv5 与 EfficientDet 检测器15 对比如图 1
12、所示。由图 1 可以看出,在性能上 YOLOv5sYOLOv5m YOLOv51 YOLOv5x,与 EfficientDet-D0相比,YOLOv5s 可以获得更高的 AP 和更快的推理速度;与 EfficientDet-D4 相比,YOLOv5x 可以获得更高的 AP,且其推理时间是 EfficientDet-D4 的 1/5左右。图 14 种 YOLOv5 与 EfficientDet 检测器对比Fig1Comparison of four YOLOv5 detectors andEfficeintDet detector12DeepSort 算法DeepSort 算法由 SOT 算法改
13、进得来16。相比于 SOT 算法,DeepSort 算法的改进在于内容匹配,实现了避免内容匹配忽略多目标身份变换的问题,使用集成表观信息来遏制身份变换的发生频率,采用了一个简单的 CNN 来提取被检测物体(检测框物体)的外观特征(用低维向量表示),在每次检测+追踪后,进行一次物体外观特征的提取并保存17。在后面每执行一步时,当前帧中被检测到的物体外观特征与之前存储的外观特征都要执行一次相似度的计算,这个相似度将作为一个重要的判别依据。DeepSort 的核心流程是预测、观测和更新 3 步结合的方式。DeepSort 匹配过程分为以下几种情况:卡尔曼滤波的预测未被检验,出现这种情况时结果会进入重
14、叠度(Intersection over Union,IoU)匹配进行核实。卡尔曼滤波的预测和检测器匹配。在匹配时会出现 2 种情况:Tracks 和 Detections 匹配成功,则更新卡尔曼滤波并进入下一帧 Tracks 未匹配。在这种情况下,结果会进入 IoU 匹配中,并重新生成Tracks,重复这一步。Detections 或 Tracks 未匹配,这种情况下会进入 IoU 匹配,之后进行二次匹配。若二次匹配失败,算法会标记其为一个不真实轨迹纳入考虑,然后再次进行 IoU 匹配,如果在第 3 次匹配时成功了,则将其列为真实轨迹加入计算中。如果再次失败,则会将其列为漏检再次纳入考虑范围
15、。若有轨迹被标记为不真实轨迹,则将其删除并不再考虑。专题:面向 B5G/6G 的无人机通信362023 adio Engineering Vol.53 No.1DeepSort 算法流程如图 2 所示。YOLO 预测的位置信息作为观测值输入 DeepSort 后,卡尔曼滤波先判断是否存在 Track,如果存在,对其位置信息进行先验概率预测,然后在匹配模块先后进行级联匹配和 IoU 匹配,最终得到匹配成功列表。在卡尔曼更新模块,对匹配成功的元素进行后验预测,得到最终的修正坐标,更新卡尔曼增益等参数。一直循环上述操作,直至处理完全部视频。图 2DeepSort 算法流程Fig2DeepSort a
16、lgorithm flow chart121卡尔曼滤波卡尔曼滤波1819 对系统产生的噪声有很好的容错率,它的预测在一定程度上考虑了系统的不稳定性。卡尔曼滤波的预测非常全面,结果也更加接近真实的结果。基于这些优点,卡尔曼滤波逐渐成为各领域中常用的动态系统估算方法:zk=Hkxk+k,(1)xk=Akxk1+Bk+wk1,(2)式中,Ak为状态转移矩阵;xk为系统状态矩阵;Hk为状态观测矩阵;wk1表示过程噪声;zk为状态阵的观测量(实测),与系统模拟得到的状态 xk相对应;B 为控制输入矩阵;k为高斯测量白噪声。为了使卡尔曼滤波的测量更加准确,在以上公式中过程噪声和测量噪声 2 个误差量起到了重要的作用,wk1和 k的加入使卡尔曼滤波即使面对系统的线性变化,依然表现良好。122匈牙利算法使用匈牙利算法解决分配问题,该算法解决了卡尔曼滤波算法预测框和检测框的匹配问题。将视频前后帧中的检测框看成 2 组数据,这2 组数据存在匹配关系(同一个目标,在前后帧中的检测框为一对),而同一帧中的目标框,可被认为是不同的目标,不存在匹配关系。显然,前后帧中目标框的匹配问题是一个求二分图最大匹配数的问题