多目标跟踪算法FairMOT

2021/10/26 17:10:34

本文主要是介绍多目标跟踪算法FairMOT,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1 引言

FairMOT从以下角度分析了此前方法的缺陷,

Unfairness Caused by Anchors

1、忽略了re-ID任务。Track R-CNN以级联的方式连接检测模型和re-ID模型,因此re-ID特征的质量很大程度取决于目标检测产生的边界框的质量;

2、一个anchor对应多个ID;

3、多个anchor负责一个ID.

 

Unfairness Caused by Features

对于one-shot跟踪器,目标检测和re-ID任务共享大多数特征,但对于目标检测任务,其需要深层的抽象信息来估计目标的种类以及位置,而re-ID任务则需要低层特征来获得目标的外观特征以区分同一类别的不同实例。

Unfairness Caused by Feature Dimension

之前研究方法得到的re-ID特征往往具有高维度,当训练数据较小时,高维度特征会增加过拟合风险;此外,学习低维的re-ID特征能提高跟踪速度。

2 方法论

Backbone Network

采用 ResNet-34 作为主干网络并使用 Deep Layer Aggregation (DLA) 来融合多层特征。上采样模块中使用的卷积层均由可变形卷积代替以适应目标的尺度变换。输入图像:3×H×W输出特征:C×H/4×W/4(仅进行4下采样,目的是为了获得分辨率较大的特征图,便于目标检测)。

 Detection Branch

检测分支基于 CenterNet,在 DLA-34 后面接了3个 head,分别估计 heatmapsobject center offsets bounding box sizes。每个 head 又分别连接了一个3×3卷积和一个1×1卷积以生成最终目标。

1、Heatmap Head

该 head 用于预测目标的中心位置,heatmap 尺寸为 1×H×W。

对于图像中的每个 GT box ,计算其中心位置,对目标中心位置下采样得到对应坐标,再利用高斯分布将物体的中心映射到 heatmap 上,

损失函数如下:

 2、Box Offset Head 和 Box Size Head

使用 box offset 可以更精确地定位目标中心位置(弥补下采样引入的偏差)。

 

这两个分支的损失函数如下:

 re-ID Branch

该分支用于产生可以区分不同目标的特征。不同类目标特征之间的相似性应小于同类目标的特征相似性。

对于图像中的每个 GT box ,从 heatmap 上得到预估的目标中心位置 ,提取对应的 re-ID 的特征向量,并将其映射为类别分布向量 。损失函数如下:

 Online Inference

 1、Network Inference

 

2、Online Association 

FairMOT 遵循标准的在线跟踪算法来关联检测框。 首先根据第一帧中的估计框初始化许多轨迹。 然后在随后的帧中,根据在 re-ID 特征上计算的余弦距离和匈牙利匹配将检测到的框关联到现有轨迹。 此外,还使用卡尔曼滤波来预测当前帧中轨迹的位置。 如果距离关联检测框太远,则将相应的成本设置为无穷大,这有效地防止了将检测与大运动联系起来。随后,根据检测框的重叠率进行第二次关联匹配,目的是为了防止目标遗漏。最后,将当前帧没有匹配上轨迹的检测框初始化,再依据最大缓存次数来决定是否保留没有匹配上检测框的历史轨迹。



这篇关于多目标跟踪算法FairMOT的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程