多目标跟踪算法是很多系统中的核心模块,有很多框架。
一种常见的框架是 “tracking by detection”,该框架首先对单帧进行目标检测,然后对帧和帧之间的目标进行关联,简称 “先检测,后跟踪”。
1. SORT
2016年研究者在论文《Simple Online and Realtime Tracking》中提出了一种基于“tracking by detection” 框架的算法,简称 SORT。
该算法有四个核心模块:
- 检测模块
- 运动估计模块
- 目标关联模块
- 目标生成和消亡模块
1.2 检测模块
一般采用神经网络对单帧传感器数据进行目标检测
1.3 运动估计模块
采用卡尔曼滤波的方法或者优化的方法来实现,这些方法将历史目标预测到当前帧,然后和当前帧检测出来的目标进行关联
1.4 目标关联模块
在 SORT 算法中,采用 KM(Kuhn-Munkres)算法进行目标关联。在讨论 KM 算法前,首先需要讨论匈牙利算法。
1.4.1 匈牙利算法
顶点集 V 可以分为不相交的两部分 M(历史目标)和 N (当前帧目标),现在在 M 和 N 中存在一些关联