参考资源
b站:https://www.bilibili.com/video/BV1m44y1H7SJ/?spm_id_from=333.788.recommend_more_video.0&vd_source=ed09a620bf87401694f763818a31c91e
视频笔记
多目标跟踪,又叫MOT。 跟踪算法同时为每个目标分配一个id。 目标跟踪需要在目标检测的基础上,进一步做数据关联。也就是说多目标跟踪需要考虑两帧之间哪两个目标属于同一个目标对象。
多目标跟踪流程
首先,将视频划分成为帧并输入到多目标跟踪算法中,假设我们运行到了第t帧,通过一系列特征提取算法来获取当前帧中每个检测目标的特征,特征可以是外观特征,也可以是运动特征,然后把每一个目标的特征与前t-1帧中的跟踪对象特征进行相似度计算以及数据关联,得到最终的跟踪结果。
多目标跟踪算法的分类
分类方式分为以下三种: 第一种:DBT/DFT,该分类方式是从检测信息的输入角度进行的。DBT是指采用检测器在每一帧中提取目标,然后利用数据关联的方法将当前帧的检测结果跟过往帧的跟踪对象关联起来,最终获取目标运动轨迹。DFT是指在初始帧通过人为初始化跟踪目标位置 ,再利用跟踪算法获取目标的运动轨迹。
第二种,online和offline。online算法会成为mot的研究趋势。
第三种:基于深度学习 or 基于传统算法 全局最近邻标准滤波是最早提出并被广泛应用的在线数据关联算法,其核心思想是考虑当前帧的检测结果与已有目标轨迹,计算所有可能存在的匹配,并基于求解二元分配问题,生成最大概率分配假设。联合概率数据关联方法能够考虑所有的可能性。将候选检测结果进行匹配。目前,网络流数据关联算法多为传统多目标跟踪中在视觉领域应用最多的算法,网络流算法将整个跟踪过程建模为网络表示和目标函数,以此求解最小化的问题。多假设跟踪,它最初被应用于雷达的目标跟踪,是一种基于延迟逻辑的方法,其核心思想是基于随时间推移对所有潜在的数据关联进行假设。根据接下来收到的结果以处理当前帧中相对关联的歧义。
经典算法介绍
sort算法只包含特征提取和数据关联部分,需要额外的检测器提供目标位置信息,他可以与任意的检测器进行组合。 卡尔曼滤波是将两种存在误差的测量方式进行互相优化,得到一个更优的测量结果。在这里是将线性运动的预测模型得到的bounding box 和 目标检测得到的bounding box 做一个优化,得到更加可靠的目标位置。 匈牙利算法主要用于解决跟踪对象和检测对象的最优匹配问题。
deepsort在sort算法的基础上,1增加了reid模型提取目标的外观特征,2增加了外观匹配以及距离匹配度,而不仅仅是sort算法中的iou匹配度。3引入matching cascade方法来进行特征匹配。 fairmot结构非常简单,在无锚框目标检测算法centernet的网络基础上,增加重识别头以实现联合检测和身份嵌入,在我们得到每一个检测对象的同时,会输出其对应的reid,其中的检测分支和reid分支的具体输出如右侧2图所示。如左下图,采用多层特征聚合的方式,使得深层和浅层特征融合,平衡2种任务。 原理很简单就是计算距离,但是效果很好。
多目标跟踪评价指标
数据集介绍
平台及框架介绍
|