APP下载

基于深度学习的视觉多目标跟踪算法综述

2021-07-14卢焕章张路平胡谋法

计算机工程与应用 2021年13期
关键词:表观关联深度

张 瑶,卢焕章,张路平,胡谋法

国防科技大学 电子科学学院 自动目标识别重点实验室,长沙410073

随着人工智能技术的飞速发展,基于计算机视觉技术的智能监控系统、自动驾驶领域较以往取得了重大的突破,进一步减少了人力资源的浪费,提高了安防和交通领域的安全性。视觉多目标跟踪技术是这些领域中的关键基础性技术之一,视觉多目标跟踪算法的准确鲁棒性对于进一步提升高层智能应用的安全有效性具有重要意义。然而,当前视觉多目标跟踪技术还面临着较大的挑战,首先,视觉多目标跟踪需要解决单目标跟踪中存在的诸如目标形变、场景环境变化等挑战之外,还面临着由于目标数量不确定所带来的实时目标数量更新及维持目标各自身份(Identity,ID)的任务,因此视觉多目标跟踪还需要处理更为复杂关键的问题诸如:目标数量不确定、频繁目标遮挡、同类目标的相似度区分等。具体来说,在安防监控和自动驾驶应用中,目标频繁进出视野是普遍且正常的行为,这就导致了多目标跟踪所面对的目标数量是不确定的,这就要求多目标跟踪算法必须具备实时检测定位场景中出现的感兴趣目标数量。在场景复杂的情况下,背景对于目标的遮挡,以及目标与目标的遮挡会造成目标遮挡再出现时目标身份切换(ID switch,IDs),这就要求算法必须提取到鲁棒的目标特征,在短时和长时的遮挡过后,保持遮挡前后目标ID一致性。多目标跟踪任务要求维持同一目标的ID,同类目标表观相似度较高且具备相似的行为,对稳定维持正确目标ID 带来了进一步的挑战,算法必须具备提取同类目标可分性特征。

视觉多目标跟踪的目的是利用数字图像处理技术稳定跟踪图像序列中的多个感兴趣目标,得到各个目标在每一时刻正确位置。近几年随着基于深度学习检测算法的精度较传统算法性能大幅度提高,视觉多目标跟踪随之取得了较大的突破。基于深度学习的视觉多目标跟踪算法的应用基本覆盖了空海地多个典型场景[1-3],但较为详细的关于视觉多目标跟踪综述论文较少,已有的相关综述[4-5]一部分是基于传统方法的在雷达领域应用较多且运算比较复杂的数据关联算法,与当前主流的多目标跟踪方法存在较大的差异,另一部分较新的关注了基于深度学习的视觉多目标跟踪方法,重点是基于检测的多目标跟踪方法[6-7]。本文根据视觉多目标跟踪框架的不同,将基于深度学习的视觉多目标跟踪方法分为DBT与JDT两类算法展开论述,阐述深度学习在两种框架中的模块功能及优缺点,结合公开数据集对比分析基于深度学习的视觉多目标跟踪方法,通过进一步提升检测器性能、更好地在多目标跟踪任务中融合单目标跟踪、拓展基于深度学习的数据关联等方面提升多目标跟踪的性能。

本文第1 章首先对基于深度学习的视觉多目标跟踪技术及相关数据集进行总体概述,在第2 章和第3 章分别阐述基于深度学习的DBT与JDT两种视觉多目标跟踪框架,第4章对近年来在公开数据集中性能优异的视觉多目标跟踪方法进行实验比较分析,第5章基于前面的讨论,对未来可能研究方向进行展望。

1 基于深度学习的视觉多目标跟踪概述

基于深度学习的视觉多目标跟踪算法从不同的角度有不同的综述方法,本文结合该领域最新技术的发展趋势,从算法分类、相关数据集、算法评价指标三个方面对基于深度学习的视觉多目标跟踪进行概述。

1.1 基于深度学习的视觉多目标跟踪算法分类

随着深度学习技术在与视觉多目标跟踪相关任务中的应用且取得的巨大成功,当前基于深度学习的视觉多目标跟踪技术框架呈现较为两阶段模式,即基于目标检测结果进行数据关联实现多目标跟踪的DBT 模式。DBT 是当前基于深度学习的视觉多目标跟踪中的主流方法,但是从深度神经网络的结构来看,DBT中的子模块如特征提取等可以融合在目标检测网络中,基于DBT中子模块的融合,联合检测跟踪,即JDT模式,用一个深度网络框架实现视觉多目标跟踪是近两年发展的新趋势。

基于上述分析,本文将基于深度学习的视觉多目标跟踪技术分为基于深度学习的DBT与基于深度学习的JDT 模式,再具体分析两种模式的结构,阐述深度学习在这两种框架中实现的功能,具体分类结构如图1 所示。同时先将文中典型的基于深度学习的DBT算法及JDT 算法的特点、优缺点等整理成表1[8-11]和表2[12-15]所示,后续在文中再对各个流派中的算法进行详细展开,拓展分析。

图1 基于深度学习的视觉多目标跟踪算法分类

表1 基于深度学习的DBT算法

表2 基于深度学习的JDT算法

1.2 数据集

深度学习相较于传统机器学习方法的优势在于自动学习给定数据中适用于指定任务的特征,数据集对于基于深度学习的计算机视觉方法非常重要。因此,对当前在视觉多目标跟踪任务中常用的数据集进行搜集概述得到结果如表3 所示。当前90%以上的视觉多目标跟踪算法应用领域都集中在行人和车辆目标,行人和车辆多目标跟踪数据集成为主流,这也与近十年来视觉多目标跟踪算法数据集引用频率结果相对应。Multiobject Tracking(MOT)行人数据集[16-18]由于更新频率高,数据集场景更贴合现实等因素,许多最新的性能表现优秀的算法都在MOT数据集中进行验证,MOT数据集已经成为了视觉多目标跟踪领域最令人关注的数据集,因此,本文重点对MOT数据集进行阐述。

表3 视觉多目标跟踪数据集总结

MOT 数据集源于MOTChellenge 多目标跟踪挑战赛,针对目标检测器性能对最终评价指标影响过大,将赛道分为基于公开检测的赛道和基于私人检测的赛道,MOT数据集详情如表4所示。其中MOT15是采集旧的数据集视频进行修正,而MOT16是全新的数据集,相对MOT15 行人密度更高、难度更大,MOT17 的视频内容与MOT16一致,但提供了3个检测器检测结果,MOT20是最新发布的MOT 数据集,增加了8 个全新的稠密人群视频系列,行人密度进一步增加。

表4 MOT数据集

1.3 评价指标

为了客观公平地比较视觉多目标跟踪算法的性能表现,设置合理精确的评价指标尤为重要。目前视觉多目标跟踪算法中使用的指标有经典的CLEAR MOT指标[19]、较新的ID 指标[20],再加上多数跟踪正确轨迹(Mostly Tracked trajectories,MT)、多数跟踪失败轨迹(Mostly Lost trajectories,ML),其中CLEAR MOT 评价指标是最为重要的体现算法性能的评价指标,下面对CLEAR MOT进行介绍。

CLEAR MOT 根据目标跟踪框与观测框IOU 阈值及目标跟踪的正确稳定性,建立基础的评估指标如下所示。

错误正样本(False Positive,FP):整个视频中被预测为正的负样本数。

错误负样本(False Negatives,FN):整个视频中被预测为负的正样本数。

IDs:跟踪过程中目标ID切换总数。

基于这3个基础性指标,构建最常用的多目标跟踪准确度(Multiple Object Ttacking Accuracy,MOTA)和多目标跟踪精度(Multiple Object Ttacking Precision,MOTP)如式(1)和(2)所示:

其中,GT是所有真实值的数目,dt,i和ct分别表示匹配对之间的距离度量和第t帧匹配成功的检测框数目。MOTA基于FN、FP、IDs综合判定跟踪错误次数,体现跟踪算法的准确度,而MOTP 则更偏向于检测器,主要根据目标预测框和真实值的边界框重叠度计算跟踪精度。

2 基于深度学习的DBT算法

DBT的一般流程图如图2所示,由于相似度分析与特征提取同步进行,因此下面根据深度学习在目标检测、特征提取、数据关联3 个主模块中实现的功能和在多目标跟踪中提高的性能效果展开论述。

图2 DBT框架视觉多目标跟踪流程图

2.1 基于深度学习目标检测的DBT算法

随着卷积神经网络(Convolution Neural Networks,CNN)模型不断发展完善[21],深度学习在图像分类任务的优异表现甚至超过人类,基于CNN的目标检测算法也随之取得了飞速的发展。从2014年至今,Region-based Convolutional Neural Networks(R-CNN)系列检测器[22-24]、Single Shot MultiBox Detector[25](SSD)、You Only Look Once(YOLO)系列检测器[26-29]等一批优秀的开源深度神经网络,大幅度增强了目标检测能力。基于单帧图像检测能力的增强,多目标跟踪任务呈现出从初始的关注计算量复杂的数据关联优化算法如联合概率数据关联[30](Joint Probabilistic Data Association,JPDA)和多假设跟踪[31](Multiple Hypothesis Tracking,MHT)趋向于依赖于检测结果的DBT框架。

SORT[9]是最早利用卷积神经网络检测行人的多目标跟踪算法之一,该算法在传统的匈牙利关联算法基础上,将Aggregate Channel Feature(ACF)检测替换为Faster R-CNN 目标检测网络,在MOT15 行人数据集上取得了惊人的突破,将多目标跟踪准确度提高了18.9%,算法的运行速度高达60 Hz。该算法的突出表现,引起了研究者的广泛关注,但是该算法的数据关联部分仅简单地依赖于检测框的交并比(Intersetion over Union,IOU),造成对于目标的相互遮挡适应性不强,密集行人的跟踪效果较差,它的后续改良版本是DeepSort[10],与SORT相比,进一步提取稳定的表观特征,提高了目标遮挡情况下算法的表现,但也大幅度降低了算法的运行速度。针对Faster R-CNN检测器带来的复杂计算量以及检测质量不佳的问题,Yu 等[32]通过去池化[33]和提取多尺度特征[34]技术改进适用于多目标跟踪任务的Faster R-CNN,使得检测模块的精度和速度上进一步提高,同时证明了在具备高质量检测结果后可以减少多目标跟踪数据关联部分的复杂度而可以达到相近的多目标跟踪结果。

SSD、YOLO 等深度网络检测器同样被一些学者引入视觉多目标跟踪。Zhang 等[35]、Lu 等[36]使用单阶段的SSD作为检测器,分别实现了对单类目标和多类目标的多目标跟踪任务,由于YOLO 系列具有更快的检测速度,后续的YOLO版本更是在目标检测精度与目标速度上达到了均衡,也常被用为视觉多目标跟踪的检测模块。Kim 等[37]针对行人密集情况下进行多目标跟踪的计算花销过大,引入YOLO算法在检测阶段进一步降低了计算量。高新闻等[38]将YOLO v3 作为检测器,结合SORT 算法的框架,成功地将SORT 算法应用于实际的交通异常监控中,但是对于场景中目标较多的情况下产生较多的IDs。

2.2 基于深度学习特征提取的DBT算法

视觉多目标跟踪任务中,通常关注目标的表观特征和运动特征,下面分为基于深度学习的表观特征提取和运动特征提取进行展开。

2.2.1 基于深度学习的表观特征提取

面向目标跟踪任务,基于深度学习的表观特征提取的是目标同类可分性特征,提取的表观特征是更类似于视觉身份重识别(Re-identification,REID)领域所提取的特征。目前,基于行人的REID 已经取得了较大的进展[39],根据表观特征提取网络结构可划分为基于经典的CNN和基于孪生网络[40]两类。

Wang等[41]首先提出了在多目标跟踪中使用深度学习提取表观特征的方法,提出了一个自编码器网络,用于改进提取的视觉特征,将多目标关联任务转换为最小生成树问题,提取到的特征大幅改善了多目标跟踪算法的性能,实验结果表明了基于深度学习的表观特征提取对于视觉多目标跟踪性能的提升。受此启发,Kim 等[8]尝试在传统的数据关联算法中基于深度学习方法提取表观特征,使用预先训练的CNN 将提取的视觉特征嵌入到MHT算法中,实验表明传统的MHT数据关联算法MOTA 较之前提高了3 个百分点,但是MHT 固有的随目标数量增加所带来的复杂计算量仍限制其进一步提升性能。受到深层骨干网络对于图像分类的加成作用启发,Yu等[32]使用改进的GoogleNet[42]在大规模REID数据集中进行预训练,将获得的表观特征与空间运动特征相结合获得更为精确的代价矩阵。SORT 的改进版是DeepSORT,其改进在于加入了基于ResNet 网络[43]提取的预训练表观特征向量,将特征之间的余弦距离作为代价矩阵嵌入SORT 算法,较好地解决了SORT 算法中存在的明显IDs 问题。后续许多学者如Mahmoudi 等[44]、Bea等[45]、Fang等[46]、Sheng等[47]、Chen等[48]也都采用类似的GoogleNet、ResNet、InceptionNet[49]等CNN 网络,通过改变任务相关的训练数据,改进相关的损失函数,学习得到具备同类目标之间可区分的表观特征,尝试提取更为鲁棒的表观特征,但是特征提取骨干网络的加深并未给多目标跟踪性能带来进一步突破性的提升。除了改善升级骨干网络之外,候建华等[50]引进视觉注意力机制,有效克服了遮挡问题后,针对其在特征融合阶段易丢失不同通道空域结构信息的不足进行了改进,提出用交并比代替加权池化进行特征融合,提高了关联精度。目前通过经典CNN获取目标表观特征效果最显著的是文献[51]提出的AP_HWDPL_p,它利用多个CNN 的特征融合得到目标的表观特征,同时为每个目标对象保留历史外观模型,在MOT 数据集上的获得了较为靠前的排名,但是设计的CNN结构过于复杂,运算量巨大。

除了经典的CNN 网络之外,孪生网络是当前提取同类目标可区分表观特征的代表性网络。Kim 等[52]提出了使用对比损失进行训练的孪生网络如图3所示,当前获取目标REID 特征的主流方式是基于损失函数的REID算法,通过改进损失函数,获取更具同类目标区分度的表观特征。其中,Zhang等[53]提出了一个损失函数,称为SymTriplet损失,独特点在于这个网络结构具有三条相同的CNN支路,训练阶段输入三个图像目标,形成两个正负对,通过SymTriplet使得网络学习到同一目标独特的表观特征。Leal-Taixé 等[54]提出了一种Siamese CNN,输入两个包含目标的图像块,输出两个图像中目标属于同一目标的概率,使用类似的输出对网络进行训练以学习到最具代表性的表观特征。Son等[55]提出了一种新的类孪生网络体系结构,称为Quad-CNN,该模型在三条CNN 支路的基础上又增加了一条支路,采取类似的损失函数训练网络,网络使用学习到的嵌入表观特征进行两次检测,正确判决了检测结果为同一目标的概率。随着孪生网络结构分支从两个到四个的增加以及对应损失函数的改进结果表明了多支路的孪生网络对于跟踪任务具备更好的适用性。除了CNN 网络外,魏颖等[56]尝试用生成对抗网络学习到目标的主要特征与精细特征,并同样用生成对抗网络生成多目标运动轨迹,实验表明该试验减少了IDs,但是准确度的提升并不高。

图3 孪生网络结构图

2.2.2 基于深度学习的运动特征提取

除了表观特征外,运动特征也是多目标跟踪中常提取的有效特征,但是通过深度学习提取运动特征通常网络结构更为复杂,计算量较大。因此,大多数的多目标跟踪算法中更趋向于基于深度学习提取更精确的表观特征,采用较为简单的传统方法提取运动特征作为辅助特征。

但为了解决在复杂场景下,表观特征难以获取的情况,仅利用运动特征完成跟踪任务非常必要。一些学者利用深度学习方法进行运动特征提取作了许多工作。Rosello等[57]在算法中用强化学习框架得到运动特征,没有采用任何视觉信息,因此作者认为该算法可以改善经典算法性能受视觉特征影响很大的不足,但由于在训练数据集上进行测试,因此实验结果并不可靠。此外,Babaee 等[58]提出了一种长短时记忆网络(Long Shot Memory Network,LSTM),该LSTM学习图像目标序列过去的运动特征,再预测当前目标的运动特征,结合IOU使用贪婪算法得到多目标跟踪结果,由于网络学习到了大量过去帧的目标运动,该方法有效地减少了目标IDs频率。

2.3 基于深度学习数据关联的DBT算法

DBT模式中,优化算法和关联代价是数据关联的两大关键部分。目前,基于深度学习的数据关联算法偏向于获取有效的深度特征提升关联度量部分,在优化算法提升较少。

2.3.1 基于深度学习数据关联DBT算法分析

当前,基于深度学习的数据关联方法更多的是设计合理的融合表观特征和运动特征的代价矩阵,从而简单的进行相邻帧的匹配[59]。直接基于深度学习用于数据关联算法执行跟踪算法仍处于起步阶段,Xu 等[60]提出的TrctrD15 算法直接根据视觉多目标跟踪的评价指标特性设置损失函数,设计了一个深度匈牙利网络,输入相邻帧目标之间的距离矩阵,直接输出有利于提高评测指标的代价矩阵,这种训练方式提升了多目标跟踪的性能指标,但是将匈牙利算法替换为深度匈牙利网络带来了更多的计算,影响算法的运行速度。针对各种数据关联阶段计算量复杂的问题,Pang 等[11]提出的TubeTK 克服了提取REID 特征带来了计算量,直接通过对目标的时空位置和局部移动轨迹进行编码,一步到位跟踪多个目标,不受外部检测结果的影响,也得到了当时最先进的性能。基于深度循环神经网络(Recurrent Neural Network,RNN)在运动预测和状态更新任务上表现良好,使用RNN 网络或其衍生网络可以更好地保留历史信息,得到更准确的目标关联结果。Fang 等[61]提出的RAR15 在RNN 的基础上,提出一个循环自回归网络(Recurrent Autoregressive Network,RAN),通过耦合内外存储结构描述随时间变化的多目标表观和运动状态变化,通过RAN的外层记忆每个轨迹的先前输入,而内部存储结构处理外部存储结构学习总结长期跟踪轨迹并关联检测,其有效性在MOT15及MOT16中高度拥挤和遮挡场景中得到验证,但RAN 结构对于长期跟踪存在优势,对于存在视野中时间较短的目标跟踪效果较差。Kim 等[62]针对结合长期表观模型也难以有效解决目标严重遮挡和多次漏检情况下的困境,提出一种新型的双线型LSTM 改进长期表观模型,改进在于将传统LSTM中的加性耦合改变为乘性耦合,跟踪性能有部分提升,但没有完全学习好目标的时空特征。Milan等[63]、Yoon等[64]类似地利用RNN及其衍生网络得到帧间目标的关联信息实现多目标跟踪数据关联问题。

杨博等[65]在基于红外目标特性的基础上,由于目标的特殊性,其采取两层数据关联的方式,在未借助深度学习的情况下获得了更为精确的结果,提高了算法的抗干扰性能,但手工特征较差,效果有待进一步加强。基于这种策略,高燕[66]和方岚等[67]在分层关联策略基础上,进一步通过深度学习提高提取外观特征的手段,改善了长时多目标跟踪及遮挡情况下的跟踪准确度。

2.3.2 基于深度学习数据关联算法轻量化分析

通过2.3.1小节基于深度学习的数据关联方法研究距离现实应用还存在一定距离,主要体现在算法进行特征提取关联度量的过程存在较为复杂的计算量,在实际算法进行边缘化设备部署时算法的性能往往不佳。

关联度量过程的主要计算量来自于基于深度学习神经网络的特征提取,因此通过对当前神经网络主流轻量化方法列举如表5 所示。主流的神经网络轻量化可以运用到多目标跟踪的数据关联部分,用以提升算法的运行速度。

表5 主流神经网络轻量化趋势

另一方面,从数据关联DBT算法自身设计出发,从SORT 中可知,通过单纯引入简单的特征可以实现快速的检测目标数据关联,缺点在于存在较多的IDs,而此后的DBT类算法着重于提高多目标跟踪算法的跟踪准确度及减少IDs,引入各种复杂的表观特征根及运动特征,加之各种深度学习模块技巧的堆叠,多目标跟踪算法设计得越来越臃肿。DBT类算法中,由于检测模块与数据关联模块的分离,使得两个模块之间的融合度较差,检测模块与数据关联模块中存在较多的冗余,因此,JDT类算法框架可以降低两者间的冗余,通过共享同一网络结构,降低算法复杂度的同时通过增加子模块之间的耦合度还可以进一步增加算法的准确度。

3 基于深度学习的JDT算法

近两年兴起的JDT类算法框架在减轻了DBT类框架复杂度的同时,也提高了多目标跟踪的精度。它的策略是在DBT的基础上对部分功能模块进行一定程度上的融合,降低分阶段处理带来的算法复杂性同时增加功能模块之间的耦合度。总体来说有三个方向,首先结合深度神经网络的特性,改造检测网络,将跟踪任务融入进检测网络,使网络学习到序列帧目标之间的关联概率;其次,利用单目标跟踪任务与多目标跟踪任务之间强烈的关联性,融合单目标跟踪领域优秀的算法;此外,在一个网络中同时学习到表观和运动特征,实现深度特征的融合。

3.1 基于深度目标检测网络改进的JDT算法

从上述分析可知,多目标跟踪的结果对于前端的目标检测网络依赖性很高,为了进一步实现算法的简洁性,实现检测跟踪两阶段的权值共享,改进高性能的目标检测网络用以实现多目标跟踪算法成为了近年提高多目标跟踪评价指标的研究热点。

文献[68]最先尝试改进目标检测网络加入跟踪分支,将两阶段的R-FCN[69]目标检测网络的第一阶段所获得的多尺度特征图进行交互,第二阶段增加了一个偏移量回归的任务,即将多目标跟踪任务转换为相邻两帧图像目标位置的相对偏移量的匹配问题,实验验证算法有效地提高了视觉多目标跟踪的精度和速度。但是实质上仍然是两阶段的多目标跟踪算法,为了进一步融合跟踪模块,Bergmann 等[12]提出全新的联合检测跟踪Tracktor++框架,将类似Faster R-CNN中的RPN模块用数据中的跟踪框与真实框替代,利用简单轻量的数据关联算法实现跟踪框和观测框的匹配,用一个深度检测网络生成整个跟踪序列结果,在当时MOT 挑战赛排名居于前列,第一次将目标检测和数据关联两个模块融合,融合之后检测模块对于最终的跟踪结果更为关键。因此,受Tracktor++框架启发,Zhang 等[70]进一步改进检测网络,增加预测光流特征模块,学习相邻帧偏移量。Huang 等[71]也在改进运动模型、表观模型和数据关联部分后,进一步提高了Tracktor++框架的性能表现,这种模式的局限性还是在于功能模块之间的融合度不高。因此,Peng 等[72]提出的CTrack 将目标检测、特征提取、相似度计算3个任务集成到同一个端对端的网络结构中,借助链式结构和成对注意力回归技术使得CTrack变得简单快速有效。

针对Trackor++模式,上述改进的不足在于,目标检测算法都是基于锚框,除了在检测小目标和目标数量较多情景下效果不好之外,还带来了更多的计算量。

Zhou 等[73]受到JDT 模式的启发,通过将Faster R-CNN变换为基于无锚框模式的CenterNet设计了一种多目标跟踪算法,即CenterTrack[15],将多目标跟踪问题转化为非常简单的基于目标中心点的跟踪,同时实现了二维和三维多目标跟踪,包括人和车辆,在MOT、KITTI等数据集上均取得了SOTA 的成绩。但是其局限性在于CenterTrack 并未提取重识别特征,在目标长时丢失情况下IDs 情况较多。同时为了解决CenterTrack 对带标注数据的需求,Karthik等[74]提出的UnsupTrack采用无监督的方式预测生成标签并结合CenterTrack,无需跟踪监督就在流行的公开数据集上实现了最新的性能。

3.2 基于单目标跟踪融合的JDT算法

单目标跟踪任务与视觉多目标跟踪任务具有强相关性,单目标跟踪算法中具备单个目标跟踪所应具备的运动与表观特征,随着单目标跟踪领域的快速发展,近年来融合单目标跟踪进行多目标跟踪的算法也不断出现。

Zhu 等[75]提出的DMAN 将基于改进版ECO[76]的单目标跟踪模块嵌入多目标跟踪的网络结构中,利用网络中包含目标定位和分类信息的响应图信息提取到目标特征,实现了端对端的多目标跟踪。Chu 等[77]提出的FAMNet和Yin等[78]提出的UMA Tracker,类似地利用单目标跟踪中的孪生网络模块隐式获得目标特征,在数据关联模块分别采取时空注意力机制、降低多帧关联复杂度等方式,得到了较好的跟踪结果,但这种机制不可避免的在目标较多及目标随意进出的场景下效果不佳。此外,Feng 等[79]针对遮挡问题导致的目标轨迹碎片过多,提出了LSST,借鉴单目标跟踪领域中快速精确的SiamRPN 框架获取短期的轨迹特征,结合基于REID 算法提取的表观特征具备长期稳定的特点,在抗遮挡性上算法表现良好。贺思远[80]基于马尔科夫决策,针对交通道路场景将目标检测、单目标跟踪、数据关联有效结合,借助快速相关滤波跟踪及高性能神经网络,使得算法在速度和精度上均有较好的表现,但是缺乏在当前主流数据集上的验证。Chu 等[13]提出的KCF 算法结构比较复杂,设计了Instance-aware SOT,并对检测结果进行校正,及时更新模型等多种手段在MOT 挑战赛上名列前茅,局限性还是体现在实际应用上的算法速度不佳。

融合单目标跟踪融合任务的JDT 模式优势和劣势都很明显,当场景中的目标数量较少时,基于单目标跟踪强大的特征提取和定位能力,对于目标虚警漏警等问题具备一定的鲁棒性,同时可以有效减少常见的目标遮挡问题。但是基于单目标跟踪融合模式的多目标跟踪主要问题在于当目标数量增加时,对于每一个目标都要添加一个单目标跟踪器,效率方面面临的问题极大,因此,如何更有效地融合单目标跟踪还需要进一步研究。

3.3 基于深度特征融合复用的JDT算法

基于DBT 算法的分析可知,在目标检测网络中提取的深度特征和数据关联所依赖的深度表观特征存在差异性,为了增加神经网络的复用性以实现特征融合复用,一些学者研究在网络中融合检测相关深度特征和REID特征或融合表观特征和运动特征。

Wang 等[14]提出了一个JDE 模型,在基于YOLO v3检测算法的基础上,将原本基于预训练模型得到的表观特征提取网络嵌入为深度检测网络中的一部分,实现端对端的视觉多目标跟踪。JDE 将表观模型嵌入单阶的目标检测网络中共享网络权值,以便模型可以同时输出检测结果及对应的表观特征,基于这种融合策略提高了多目标跟踪的准确度和实时性。在JDE 初步将检测框架与REID融合的基础上,Zhang等[81]提出FairMot,由于JDE 锚框的存在,当目标密集度密集度较高时,降低了多目标跟踪的准确度,采用类似CenterTrack 的无锚框设计,进一步提高了算法的MOTA 及运行速度。Liang等[82]分析视觉多目标跟踪任务与REID 中存在的差异,指出任务的差异导致了与任务相关的特征学习不准确,提出一个互相关网络,有效促使各个分支学习与任务相关的表观学习,并将整个网络集成为一个CSTrack跟踪网络,这个端对端的网络充分实现了模块间的特征共享,有效提高了多目标跟踪的精度。

随着图神经网络(Graph Neural Networks,GNN)不断取得突破,GNN 开始应用于特征融合并在多目标跟踪中取得了较大的进展。王亚新[83]将CNN与GNN融合于数据关联模块实现了端对端的多目标跟踪网络,改善了目标遮挡和目标之间相互遮挡时的跟踪精度。Liu等[84]提出的GSMTracktor 设计一种新颖的图形表示,既考虑单目标的特性,又考虑目标之间的关系,同时专门设计图形匹配模块以减轻不可靠关系的影响。Shan等[85]提出的FUFET 同样利用GNN 解决目标位置、外观和历史信息特性的融合,解决不同帧中同一目标特征不一致的问题。Wang等[86]提出的GSDT结合GNN在时间和空间域中对可变大小的目标进行建模,整体学习用于检测和数据关联的可区分特征,在MOT 系列数据集中进行广泛实验证明了基于GNN的JDT模式的有效性。

在一个网络中生成多种深度特征并进行相似度计算策略提高了多目标跟踪的准确性和速度,但是不同特征之间融合比较的有效性还待改善。基于GNN的特征融合近年在多目标跟踪领域的应用取得了较大的突破,但是网络的复用和特征的融合生成难度较大,仍然有待进一步研究。

4 实验分析

为了对当前基于深度学习的视觉多目标跟踪算法进行比较分析,本章通过MOTChelleng挑战赛结果进行分析比对,探究验证基于深度学习的视觉多目标跟踪算法性能表现。结合以下条件,设计实验分析表格如表6~9 所示。由第2 章介绍,MOTA 和MOTP 数值越大越好,FN、FP、IDs越小越好。

(1)由于MOT17 数据集内容与MOT16 一致,MOT20 参与测试的算法还较少,因此选择MOT15 和MOT16数据集分析算法。

(2)CLEAR MOT评价指标虽然存在着过于依赖检测器的表现,但是研究表明这是当前最为符合人类视觉判断的参考指标。

(3)由于基于公共检测和基于私人检测的算法差异性过大,因此分开讨论算法性能,由于现实中应用场景更广的是在线多目标跟踪算法,这里仅分析在线多目标算法。

4.1 整体分析

通过表6~9 列举了不同多目标跟踪算法在MOT15和MOT16 上的CLEAR MOT 指标分数,根据数据进行总体分析如下:

表6 基于公共检测多目标跟踪算法MOT15 CLEAR MOT评价指标(按MOTA排序)

表7 基于私人检测多目标跟踪算法MOT15 CLEAR MOT评价指标(按MOTA排序)

表8 基于公共检测多目标跟踪算法MOT16 CLEAR MOT评价指标(按MOTA排序)

表9 基于私人检测多目标跟踪算法MOT16 CLEAR MOT评价指标(按MOTA排序)

(1)从基于公共检测和私人检测来看,基于私人检测的多目标跟踪算法在准确度和精度上大幅领先基于公共检测的多目标跟踪算法,多目标跟踪对于前端的检测算法依赖性很高,提高检测器的性能对于提高多目标跟踪表现至关重要。

(2)从式(1)可知,MOTA 由FN、FP、IDs 共同决定,但在检测结果中FN比FP和IDs相比往往多至少一个量级,即使公共检测的方法在一定程度上减少了FN,但是私人构建和训练的检测器在减少FN最有效。

(3)IDs 指标对于多目标跟踪算法准确度MOTA 影响相对较少,但在实际应用中IDs的表现是考核算法的重要指标,大部分基于公共检测的多目标跟踪算法重点工作即在减少IDs综合提高MOTA,基于私人检测的算法在得到了较好的检测,相对而言IDs表现并不令人满意。

(4)Hz指标受限于测试的硬件及软件平台不一致,不能作为绝对的算法速度判断,但考虑到比赛挑战者大多采用当时性能最好的硬件做算法测试,因此,整体看来,当前的绝大部分多目标跟踪算法难以满足实时多目标跟踪和边缘设备部署的要求,难以落地。

4.2 基于深度学习的多目标跟踪算法优劣势

(1)基于DBT算法

在MOT15 数据集中的公共检测是基于传统的DPM 行人检测器,而基于私人检测的多目标跟踪算法仅通过改进检测器为深度神经网络检测器后,算法的准确度大大提高,整体均优于基于DPM的公共检测算法,基于深度学习对于检测器的加持对于跟踪效果提升明显。基于深度学习进行REID表观特征提取或运动特征提取作为数据关联的代价矩阵,可以得到更为稳定鲁棒的特征,增强算法数据关联的准确性,仅通过REID深度神经网络提取的表观特征DeepSort 相比Sort 大大减少了IDs。当前基于深度学习进行数据关联的算法还不能实时应用,大部分算法就是在后端使用简单的匈牙利数据关联算法,但是,基于深度匈牙利算法的TrctrD算法排名前列说明了深度学习对于提升数据关联阶段的能力。

基于深度学习的DBT模式最明显的劣势还是在运行速度方面,除了早期的Sort等仅利用IOU进行数据关联的多目标跟踪算法,算法处理过程简单,运算速度极快,但是包括检测效果和IDs 等表现都很差,基于DBT模式的多目标跟踪功能算法难以实现精度和速度均衡。

(2)基于JDT算法

JDT模式与DBT模式的最大不同就是在DBT四阶段中基于深度神经网络进行部分阶段融合,Tracktor++直接将数据关联阶段用两阶段检测网络的RPN网络替代,促进了检测与跟踪的融合,提高跟踪准度。基于GNN 的多目标跟踪算法在榜单排名前列在于GNN 对于特征的融合效果更好,但是GNN 也带来了更多的复杂计算。由于单目标跟踪领域的快速发展,出现了大量在精度和速度都表现优异的算法,同时基于深度学习和相关滤波具有目标的位置信息,运动信息及分类信息,基于单目标跟踪的KCF 在MOT15 和MOT16 都排名前列显示了将单目标跟踪拓展至多目标跟踪的可能,但是,随着场景内目标增多,势必为多个目标增加跟踪器,算法的速度也会越来越慢。

5 总结与展望

本文概述了近年来基于深度学习的视觉多目标跟踪算法,分为DBT与JDT两大类算法进行分析,结合公开数据集对算法进行验证,发现DBT类算法结构简单,可解释较高,但是各子模块之间关联度较低,导致算法在跟踪准确度与速度上都有较大的提升空间,而JDT类算法通过融合多模块联合学习,对跟踪性能提升显著。重点阐述了深度学习在DBT类与JDT类算法各子模块所实现的功能与优缺点,分析显示DBT 类算法通过在传统子模块中嵌入深度学习模块使得目标检测、特征提取、数据关联等模块对于目标跟踪增益巨大,但随之带来了算法速度的损失;深度学习神经网络是JDT类算法得以发展的关键,通过融合多模块联合学习,实现了在线端对端的多目标跟踪算法,其中,检测器性能对JDT类算法跟踪表现起着关键作用,从公开数据集的算法排名结果显示当前JDT类算法基本占据了榜前TOP5。通过以上对比分析与总结,目前多目标跟踪总体是从DBT类算法向JDT发展,分阶段实现算法的准确度和速度的均衡。然而,当前多目标跟踪还存在对多目标频繁遮挡、目标数量较多等场景下算法表现不佳的问题。未来可以开展的工作包括以下几个方面:

(1)数据集的制备与性能基准的构建。当前视觉多目标跟踪公开的数据集关注的场景绝大部分集中在场景相对简单的行人和车辆,在目标类别更多样、目标更密集、气候变化等复杂因素下进行数据集获取、清洗、标注、深加工等是未来可继续开展的方向。此外,通过分析可知,当前多目标跟踪的评价指标过分依赖于检测器,建立更有效的性能基准以评测出层出不穷的多目标跟踪算法全面性能,为性能优化和提升提供支持,也是未来值得研究的方向之一。

(2)多目标跟踪算法各个环节能力的提升。从文中分析结果可知,传统的目标检测、特征提取、数据关联等方法基于深度学习的改进具有极大的性能提升,但随之明显损失了算法的性能。因此,传统方法与深度学习类方法融合互补的再深入研究也是未来可推进的工作,这一方面取决于深度学习可解释性的研究推进,也取决于传统方法的适应性改进,从多目标跟踪算法解决实际问题出发的视角寻求原理性的突破,例如新的网络结构、新的训练方法、新的代价函数等以解决密集多目标跟踪的不准确、IDs频繁等痛点问题。

(3)多目标跟踪算法在具体场景中的落地。通过文中分析当前绝大多数算法缺少落地可实现性,这一问题未来可研究的方向有两方面:一方面提升算法实现的实时性,包括轻量化网络结构及其实现、硬件平台的适配优化、硬件加速等技术的提升;另一方面,针对特定问题的专用数据集的制备、针对性训练,提高泛化能力的针对性,深入研究迁移学习、强化学习等方法,降低算法对专用数据集的依赖,提升算法的泛化能力。

猜你喜欢

表观关联深度
绿盲蝽为害与赤霞珠葡萄防御互作中的表观响应
不惧于新,不困于形——一道函数“关联”题的剖析与拓展
深度理解一元一次方程
钢结构表观裂纹监测技术对比与展望
“一带一路”递进,关联民生更紧
例析对高中表观遗传学的认识
深度观察
深度观察
深度观察
奇趣搭配