ByteTrack算法原理及流程

ByteTrack

主要方法:

1 对当前帧中(置信度高于最低阈值的)所有检测框,根据置信度中间阈值分成 高置信度检测框 和 低置信度检测框。(几乎保留所有检测框进行轨迹匹配)

2 对于高置信度的检测框,很容易关联到之前的轨迹中(伪代码17-19行)

​ (2.1)使用当前帧的检测框和上一帧的卡尔曼滤波预测(或估计)结果,使用IOU计算相似度(或者如果有用ReID的话,会计算特征间距离计算相似度)。

​ (2.2)基于相似度采用匈牙利算法进行匹配。

​ (2.3)要保留未匹配到轨迹的高置信度检测框(即当前帧剩的检测框) 和 未匹配到检测框的上一帧存在的轨迹(即上一帧剩的轨迹)。

3 对于低置信度的检测框(伪代码20-21行)

​ (3.1)先与(2.3)中剩的轨迹关联。其实就是当前低置信度的检测框和(2.3)中剩下的轨迹关联。这里值得说明的是,此处关联要使用IOU计算相似度,因为低置信度检测框通常模糊或存在遮挡,此时用ReID并不可靠。

​ (3.2)要保留(3.1)中仍然未匹配到检测框的轨迹

​ (3.3)删除在(3.1)中未匹配到轨迹的低置信度的检测框。认为这些低置信度的检测框不包含目标。

4 对于未匹配到轨迹的高置信度检测框,作为新的轨迹保存。(伪代码23-27)

BYTE伪码图示:

在这里插入图片描述

ref

ref1: https://zhuanlan.zhihu.com/p/613223235

猜你喜欢

转载自blog.csdn.net/qq_42835363/article/details/131959827