单目标跟踪和多目标跟踪的区别:
单目标跟踪是指在视频的初始帧上框出单个目标,然后预测后续帧中该目标的大小和位置,单目标跟踪典型算法有:Mean Shift、TLD(基于在线学习的跟踪)、KCF(基于相关滤波性)。
多目标跟踪不像单目标跟踪一样先在初始帧上框出单个目标,而是追踪多个目标的大小和位置,且每一帧中目标的数量和位置都会有变化,多目标跟踪算法典型有:SORT、DeepSORT。
多目标跟踪MOT(Multi-Object-Tracking):主要任务是给定一个图像序列,找到图像序列中运动的物体,并将不同帧的运动物体进行识别,也就是给定一个确定准确的ID,这些物体可以是任意的,物体可以是人、车辆、各种动物等。
多目标跟踪的主要步骤:
1、获取原始视频帧
2、利用目标检测器对视频帧种的目标进行检测
3、将检测到的目标框中特征提取出来,该特征包括外观特征(方便特征对比避免ID转移)和运动特征(运动特征方便卡尔曼滤波对其进行预测)
4、利用匈牙利算法和级联匹配计算前后两帧目标之间的匹配程度,为每个追踪到的目标分配 ID
sort:
Deepsort的前身是sort算法,sort算法的核心是卡尔曼滤波算法和匈牙利算法。
卡尔曼滤波算法:该算法的主要作用就是当前的一系列运动变量去预测下一时刻的运动变量,但是第一次的检测结果用来初始化卡尔曼滤波的运动变量。
匈牙利算法