0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于机器视觉的典型多目标追踪算法应用实践

新机器视觉 来源:Deepexi滴普科技 2023-06-15 17:22 次阅读

视频目标追踪算法机器视觉中一项很实用重要的算法,视频目标追踪算法应用场景很广,比如智能监控、机器人视觉系统、虚拟现实(人体跟踪)、医学诊断(细胞状态跟踪)等。本文由滴普科技2048团队AI产品部算法工程师朱晓丽介绍基于机器视觉的典型多目标追踪算法应用实践。

一、概 述

目标追踪算法分为单目标追踪SOT(Single-Object Track和多目标追踪MOT(Multi-Object Track)[1][2]。在单目标跟踪中,使用给定的初始目标位置,在后续视频帧中对给定的物体进行位置预测。而多目标跟踪算法,大部分都是不考虑初始目标位置的,目标可自行消失与产生。对目前小组项目而言只需用到MOT,所以本文提到的追踪默认为MOT

MOT的分类

1)TBD(Tracking-by-Detection)与DFT(Detection-Free Tracking)也即基于检测的多目标跟踪与基于目标外形的先验知识无需检测器的多目标跟踪。TBD是目前学界业界研究的主流。 2) 传统的跟踪方式有在线跟踪(Online)与离线跟踪(Offline)两种。在线跟踪算法中,只能使用当前帧及之前帧的信息来进行当前帧的跟踪。而在离线跟踪算法中则没有了这个限制,对每一帧的预测,都可以使用整个视频的信息,这样更容易获得一个全局最优解。两种方式各有优劣,一般视应用场合而定,离线跟踪算法的效果一般会优于在线跟踪算法。而介于这两者之间,还有一种称之为接近在线的多目标跟踪算法(NOMT),即可以部分利用未来帧的信息。 在跟踪结果可修改性方面,在线跟踪是不允许修改以往的跟踪结果的。因为一旦修改,算法自然就不再符合在线跟踪原则,从而不能利用未来帧,进而变成了Near-Online或者Offline的跟踪方式。 需要特别注意,在线跟踪不等于Real-Time实时跟踪,实时跟踪一定属于在线跟踪的,但绝大部分在线跟踪算法速度还太慢,不足以支持实时处理的要求. 尤其是应用了深度学习的算法,往往需要大量运算,对实时处理有较大压力。

MOT常用评价标准

7b0ac294-0b5a-11ee-962d-dac502259ad0.jpg

表1.常用评价指标

此外,还有两种评价方式CLEAR MOT Metrics与ID Scores,这里不做详细介绍。

MOT的难点

MOT最常用的类别是Tracking-By-DetectionOnline,对应的算法处理步骤:

7b23a5de-0b5a-11ee-962d-dac502259ad0.jpg

图1 MOT算法处理步骤

其中,有两个难点:1)遮挡,这也是ID交换和轨迹分段的主要原因;2)两个轨迹非常靠近,ID容易匹配不准,出现错位或丢失。目前所有目标追逐算法都围绕着这两大难点进行优化,优化的方向围绕着这四个步骤,如:运用Private Dataset,挑选合适检测模型,提升检测精度;特征提取不局限于一般的CNN,还有Siamese Network网络;特征间的相似度,不再是简单的Distance Metric,也开始运用CNN、RNN、LSTM等;数据关联匹配除了传统经典的Hungarian Algorithm,也可以当作图优化的问题处理。常用的效果较好的有以下几种(详细介绍见“二”节):
  • Sort(Simple nline and real time tracking)

  • Deep Sort(Deep simple online and realtime tracking)

  • FairMot(A simple baseline for multi-object tracking)

  • Graphnn Multi-object Trachking。(后面简写为Graphnn-mot)

二、典型的追踪算法介绍

1. SortDeep SortSort和Deep Sort[9]是经典的追踪算法之一,算法原理流程图如下:

7b3da416-0b5a-11ee-962d-dac502259ad0.jpg

图2.Deep Sort算法的简单流程图

如上图,算法模块,根据目前MOT常用的算法步骤:a.检测, b.特征提取、轨迹预测, c.计算相似度,d.数据匹配,Deep Sort算法就这四个步骤,按序简介涉及到的核心知识点五个:Setection、ReID model、Kalman Filter、iou与余弦/马氏距离、Hungarian Algorithm Detection:常用的检测网络,如Faster Rcnn、Yolov4、SSD,可根据实际项目对精度或时间的要求挑选。本文复现时,上面的几种网络都有尝试,源代码使用了商汤的mmdetection框架下的cascade-rcnn,但项目考虑时间和精度,最终使用了Yolov4[3]作为检测来源。 ReID model:源代码使用了多重粒度网络(Mutiple Granularity Network),是以Resnet50作为backbone,以Softmax_2048分支作为id特征。考虑到2048维特征过大,数据关联时,时间会比较长,所以一般项目上会采用MobileNetv2[4]作为主干网络,id特征维度可以下降到751,减少运算量。 Kalman Filter:卡尔曼滤波,预测confirmed id在下一帧的中心点位置以及box的size。iou与余弦距离:用于计算数据匹配的代价矩阵。1-iou的值作为box间的距离值,余弦距离函数值作为id特征值间的距离。 Hungarian Algorithm:匈牙利匹配算法用于目标预测与目标检测的关联匹配,确定目标的轨迹。 相比之下,Sort算法比起Deep sort算法少了ReID model与余弦距离判断,所以ID切换的过于频繁,精度要低很多。速度几乎只取决于Detection模型的预测速度。如果对速度要求很高的,可以考虑用sort算法。2.FairMotFairMot追踪算法[10],算法处理流程图如下:

7b62735e-0b5a-11ee-962d-dac502259ad0.jpg

图3.FairMot算法的简单流程图

FairMot算法重点突破a. 比起之前两步(先检测后Re-ID)的追踪算法,FairMot完成检测与Re-ID共享网络参数,减少算法推理时间,速度大幅度提升。 b. 比起之前单步的追踪算法JDE[12],存在的一些不足,如:一个物体可能被多个anchor负责并进行检测,或实际物体的中心可能与负责对该物体进行检测的anchor中心有偏差,都会导致id频繁变换。Fairmot针对这些不足,不用anchor-based的检测方式,以anchor-free目标检测范式代替。 涉及到的核心知识点:一个有效简洁的网络结构DLA34、Kalman Filter、iou与余弦距离、Hungarian Algorithm。下面详细介绍DLA34网络,至于Kalman,Distance Metrixes, Hungarian AlgorithmDeep Sort的内容一致,这里不多做解释。 FairMot旨在将检测与Re-ID揉在一个网络结构里,且需要是anchor-free的目标检测方式,所以DLA34网络结构必需要预估目标中心点的位置和对应目标的features。FairMot的网络结构图如下:

7b80e154-0b5a-11ee-962d-dac502259ad0.jpg

图4.FairMot网络结构及检测示意图

DLA34backboneResnet34[5]Resnet网络结构是里程碑似的出现,比起一般的plain networkResnet直接使用stride=2down sample并且用global average pool层替换全连接层,保持了网络的复杂度,并有效解决了深度网络的退化问题。 DLA34[6]是对Resnet34加强,除了Down Sample,还有Up Sample,有点类似FPN[7]的网络结构,跨层添加features,使得多层融合,跨层stride=4 heatmap head:用于预估目标中心位置,使用了与focal loss类似的损失函数,详情推导见源文。 box offset head:目的是使得预估的目标位置更精准,辅助目标中心位置的预估。box size head:对每个预估了的目标中心,预估其对应的box的长和宽。offsetsize两个头加入在一个l1 loss函数里面。 Re-ID branch:一个分类任务,旨在对每个预估出的目标中心产生64维的features,通过features用于后续计算前后帧的目标的相似度。使用了通用的softmax损失函数。 3.Graphnn-motGraphnn-mot算法[11],简单流程图如下:

7b9fc66e-0b5a-11ee-962d-dac502259ad0.jpg

图5.Graphnn-mot算法的处理流程

Graphnn-mot是基于图神经网络[8]的离线MOT,利用图结构同时执行特征提取和数据关联匹配,提出了时间感知信息传递网络对节点和连接边信息的更新。 涉及到的核心知识点:图构造、特征编码、信息传递、轨迹预测。 图构造:对需检测的所有图片(图片之间要有时间关联,最好是视频),进行目标检测。构建图,其中节点对应检测目标,边对应检测目标之间的连接。对图中的每条边引入了一个二元变量,如果某些边连接了属于同一条跟踪轨迹且在同一条跟踪轨迹上是时间连续的节点,那么其标签为1,否则为0。一个节点不会属于超过一个跟踪轨迹。论文提出直接学习预测图中的哪条边被激活,即边上的二元变量的最终值,为此将这个任务视为边上的二分类任务,标签就是二元变量值y。 特征编码:在边界框图像上应用一个卷积神经网络,初始化节点的外观特征嵌入。对于每一条边也就是不同帧的每一对检测,我们计算一个具有编码了他们的边界框之间的相对大小,位置以及时间差的特征的向量。然后将其输入到一个多层感知器中得到边的几何嵌入。 信息传递:我们在整个图上执行了一系列的信息传递步骤。对于每一轮的信息传递,节点会与他们的连接边分享外观信息,边会与他们的伴随节点分享几何信息。最后,能够获得节点和边的更新嵌入信息,其包含了依赖于整个图结构的高阶信息。轨迹预测:根据最后的所有边嵌入预测的连续的二元结果,获得最终的跟踪轨迹。

三、实际算法测试分析

本文对Deep Sort、FairMot、Graphnn-mot算法进行横向测试,并使用追踪经典指标评估(见表1),基于MOTChallenge数据集实际测试进行评估,评估结果如下表(测试环境详见附录1):

7bc45358-0b5a-11ee-962d-dac502259ad0.png

表2.追踪算法实际测试的时间和精度(精度含义见表1)

如表所示,无论时间还是精度,Farimot更有优势。影响精度的原因主要是两个: 1. 检测目标聚集,被遮挡,ID switches频率太高。三种追踪算法都有出现这类情况,严重程度graphnn mot >deep sort>fairmot,可见下面拥挤场景例图:

7be9e0b4-0b5a-11ee-962d-dac502259ad0.jpg

组图1:拥挤场景中的graphnn mot追踪算法

7c1bec62-0b5a-11ee-962d-dac502259ad0.jpg

组图2:拥挤场景中的deep sort追踪算法

7c457186-0b5a-11ee-962d-dac502259ad0.jpg

组图3:拥挤场景中的farimot追踪算法

如上图红上衣人为例,graphnn mot对应的id号为:无->15->20,id号连续变换;deep sort对应的id号:32->32->48,id号部分变换,只在最聚集的地方变换了id号;fairmot对应的id号:30->30->30,id号一直很稳定。 2. 目标检测精度不高,漏检与误检。主要是graphnn mot算法有明显漏检,可见下面例图:

7c647dd8-0b5a-11ee-962d-dac502259ad0.jpg

组图4:graphnn追踪算法目标检测漏检示例图

对于目前最常使用的追踪算法,都是tracking-by detection,所以目标检测的精度直接影响追踪的精度。

四、总结

对于跟踪模块,目前来说更好的解决方案,比如使用MOTDT[13],此算法在DeepSort的基础上加入了轨迹评分的机制,目前像FairMOT、JDE使用的跟踪模块都是MOTDT,从精度和速度上此算法表现都是较优的。图神经网络在追踪上的运用,还处于刚起步阶段。属于离线跟踪算法之一,而且目标检测与ReID检测结果没有进行融合,所以速度方面,没有太大优势。对于实际项目来说,对综合目标跟踪效果影响最大的因素是目标检测的精确度,相对于公共数据集,当使用实际项目的数据集时,使用的目标检测精度提升后,实际跟踪效果能达到比较理想的水平。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4607

    浏览量

    92840
  • 机器视觉
    +关注

    关注

    161

    文章

    4369

    浏览量

    120282
  • 模型
    +关注

    关注

    1

    文章

    3226

    浏览量

    48809

原文标题:基于机器视觉的典型多目标追踪算法应用实践

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    仿人足球机器目标定位技术与追踪算法改进

    移动机器视觉的研究主要集中在颜色模型建立、目标识别、定位以及跟踪等方面。目标的实时识别与定位是足球机器人在足球赛中精确踢球的前提。文章主要
    发表于 09-19 11:18 2691次阅读

    基于QT+OpenCv的目标跟踪算法实现

    视频目标跟踪,本文将首先向大家介绍常用的粒子滤波视频目标跟踪算法,对其原理进行简单的分析,为后续进一步选择和应用算法实现目标跟踪提供基础。一
    发表于 09-21 10:42

    【方案分享】基于C6678+Zynq-7045 的目标追踪视觉技术

    随着现代科技的高速发展,机器视觉技术在无人机、安防监控、工业检测、ADAS高级驾驶辅助系统、医疗诊断等方面有着广泛的应用。目标追踪视觉技术
    发表于 05-19 17:10

    多目标优化算法有哪些

    多目标优化算法有哪些,该文围绕包含柴油发电机、风力发电、光伏发电和铅酸蓄电池的独立微网系统中的容量配置问题,提出了包含微网全寿命周期内的总成本现值、负荷容量缺失率和污染物排放的多目标优化设计模型。该
    发表于 07-12 06:52

    一种适用于空间观测任务的实时多目标识别算法分享

    硬件平台,运用散点聚类、轨迹跟踪、特征提取技术快速识别目标。对算法的功能需求、数据流向、运算流程和处理结果,进行了详细阐述。实践结果表明,该识别算法具有很强的实用性。关键词
    发表于 12-21 07:02

    遗传算法求解多目标柔性Job-shop问题

    本文描述了基于可变机器约束的多目标柔性Job-shop调度问题模型,并应用一种改进的遗传算法进行求解。我们采用了表示工序先后顺序及机器选择的二维编码方式,以
    发表于 08-31 11:17 13次下载

    仿人足球机器目标定位与追踪算法改进方案免费下载

    热点,目标的实时识别与定位是足球机器人在足球赛中精确踢球的前提。文章主要是针对目前足球机器人在视觉系统上所存在的问题进行了颜色模型建立及目标
    发表于 09-21 11:31 52次下载

    基于演化硬件的多目标进化算法的研究

    基于演化硬件的多目标进化算法的研究
    发表于 01-08 14:47 0次下载

    改进霍夫森林框架的多目标跟踪算法

    针对单目视觉对多个相似的目标跟踪因遮挡等因素影响而失效的问题,提出一种基于改进霍夫森林框架的多目标跟踪算法。在将多目标跟踪问题归结为基于
    发表于 12-14 17:09 0次下载

    基于约束修补的多目标优化算法

    针对传统的优化算法求解多目标动态环境经济调度( MODEED)模型时极难获得高质量的可行解,且收敛速度慢等问题,根据MODEED模型约束特征,设计了一种约束修补策略;然后将该策略嵌入非支配排序算法
    发表于 01-05 14:31 0次下载

    如何使用机器视觉机器学习应用程序执行多目标识别

    观看iVeia的首席技术官Michael Fawcett,演示了采用Zynq Ultrascale + MPSoC的模块上的Atlas 2Z8系统如何使用机器视觉机器学习应用程序执行多目标
    的头像 发表于 11-26 06:22 2986次阅读

    一种基于多智能体协同强化学习的多目标追踪方法

    针对现有多目标追踪方法通常存在学习速度慢、追踪效率低及协同追踪策略设计困难等问题,提岀一种改进的多目标
    发表于 03-17 11:08 20次下载
    一种基于多智能体协同强化学习的<b class='flag-5'>多目标</b><b class='flag-5'>追踪</b>方法

    高速列车多目标约束横向半主动控制算法

    高速列车多目标约束横向半主动控制算法
    发表于 06-29 14:44 4次下载

    多目标跟踪算法总结归纳

    多目标跟踪是计算机视觉领域中的一个重要任务,它旨在从视频或图像序列中准确地检测和跟踪多个移动目标。不过在落地部署时,有一些关键点需要解决。
    的头像 发表于 04-28 09:42 1846次阅读
    <b class='flag-5'>多目标</b>跟踪<b class='flag-5'>算法</b>总结归纳

    多目标智能识别系统

    智慧华盛恒辉多目标智能识别系统是一种利用现代计算机视觉技术和人工智能算法,从图像或视频中同时识别和分类多个目标物体的系统。这种系统广泛应用于自动驾驶、智能监控、人机交互、军事侦察、灾害
    的头像 发表于 07-16 10:42 1.3w次阅读