概述
前边我们讲了sort算法的原理,并且指出了它的不足–IDsw过大,为了解决该问题,17年时候sort算法的团队又提出了DeepSort算法。Deepsort在原来Sort算法的基础上,改进了以下内容:
- 使用级联匹配算法:针对每一个检测器都会分配一个跟踪器,每个跟踪器会设定一个time_since_update参数。
- 添加马氏距离与余弦距离:实际上是针对运动信息与外观信息的计算。
- 添加深度学习特征:这一部分也就是ReID的模块,也是deepsort的亮点之一。
代码流程
由于deepsort的流程和算法原理几乎和sort一样,只是说增加了上边三个特色,因此我们直接从代码开始讲起:
整体流程图
算法的整体流程图如下所示:
源码流程
首先我们从主函数部分开始说起,主函数部分整体逻辑是比较简单的,首先是将命令行参数进行解析,解析的内容包括,MOTChanlleng序列文件所在路径、需要检测文件所在的目录等一系列参数。解析之后传递给run方法,开始运行。