PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析( 三 )


本文插图

消息传递机制中 , 对于边权的更新和节点的更新方式如下:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

其中对于边的更新就是由节点特征和原始边权通过 MLP 过程更新的 。 对于节点的更新 , 由于一个节点连接有多条边 , 所以需要进行聚合 , 聚合方式可以求和、取平均 , 还可以是取最大值 。 而更新的代数 L 自然也就决定了图卷积网络的感受野 , 当 L 越大时 , 与之相关的节点在时间跨度上越大 。
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

上面这个图从左往右是不同时间帧的节点 , 这里举的例子是一个相邻三帧的节点连接 。 原始的更新机制中 , 对于节点的更新会将周围边的影响通过求和的方式聚合 。 而这里作者考虑了时间因素 , 将时间分为了过去和未来两个部分:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

然后通过拼接的方式聚合 , 最后利用 MLP 结构实现特征降维 。
可以看下消息传递代数的影响:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

我们发现在 3 代的时候就已经达到了性能上限 , 不过为了保证鲁棒性 , 作者还是选了 12.
不得不说离线的方法在 IDF1 指标上的表现很好:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

PS:大家可能对于第一张图中的 Edge Classification 有疑惑 , 即如何实现的边的稀疏化 。 这里由于每条边权都经过了一个 sigmoid 层 , 因此作者直接利用固定阈值 0.5 进行了裁剪 。
GNN3DMOT
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

论文标题:Graph Neural Network for 3D Multi-Object Tracking with Multi-Feature Learning
论文来源:CVPR 2020
论文链接:https://arxiv.org/abs/2006.07327
代码链接:https://github.com/xinshuoweng/GNN3DMOT
从这篇开始 , 接下来的全是这个组的文章 。 这篇文章所涉及的算法框架很完整 , 值得一读:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

算法流程通过这张图可以很容易得到 , 运动特征是通过 LSTM 网络回归得到的 , 表观特征是通过 CNN 网络得到的 , 二者相拼接 。 其中 3D 部分的输入则是点云信息和 3D 位置信息 , o 表示物体 , d 表示检测 。 将 2D 和 3D 特征拼接/相加得到每个节点的特征 。 而节点自然就是上一帧存在的目标和当前帧的观测 。
对于边权/相似度矩阵的确定 , 作者尝试了三种方式 , 余弦距离、欧氏距离还有网络回归 , 即上图中的 Edge Regression:
当然这个也是边权更新的机制 , 而对于节点 消息传递机制 , 作者也设计了四种:
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

方法很明了 , 我就不细讲了 , 可以看到聚合方式都是求和 。 另外由算法框架示意图可知 , 每次消息传递都会计算关联矩阵的损失 , 那么为什么会采用 batch triplet loss呢?
PaperWeekly|论文盘点:基于图卷积GNN的多目标跟踪算法解析
本文插图

作者把关联矩阵中的每条边权看作了 N 对匹配 , 三元组损失中 , 首先选取相邻帧中的一对连接 i,j , 然后分别选取不同 id 的两帧节点 r,s , 计算上述损失 。 即要保证不同帧间不同 id 身份的边权的最小距离越大越好 。 而对于相似度损失 , 则是采用了两种交叉熵损失:


推荐阅读