本文是对NeurIPS 2021接收的spotlight文章 《 Prototypical Cross-Attention Networks for Multiple Object Tracking and Segmentation- PCAN 》 的介绍, 同时也分享一下笔者团队对自动驾驶场景中高效快速地进行时序建模和多物体追踪分割的思考。
论文地址:
https://arxiv.org/abs/2106.11958
项目主页及视频资源:
https://www.vis.xyz/pub/pcan/
开源代码及模型,欢迎大家star:
https://github.com/SysCV/pcan
Bilibili视频:
https://www.bilibili.com/video/BV1Rb4y1i7zS
深度学习模型的训练和评估离不开大型数据集的支撑,欢迎大家关注由ETH Zurich & UC Berkeley推出的 学术界最大规模的自动驾驶多目标跟踪和分割(MOTS)数据集 – BDD100K Tracking and Segmentation (BDD100K, Overview – EvalAI) 。BDD Tracking Segmentation 数据集的规模是KITTI-MOTS的6倍 (3,0817 vs 5,027 training images, 480K vs 26K instance masks), 标注物体数量是KITTI的近20倍,并覆盖白天、夜间、 雨雪等更为丰富真实的自动驾驶场景。
Prediction results of PCAN on BDD100K – Day
Prediction results of PCAN on BDD100K – Night
一、引言
背景
多目标跟踪和分割 (MOTS),是自动驾驶和视频分析等许多实际应用中的一个重要问题。该任务需要将视频中给定的类别的所有物体进行检测、分类、跟踪和像素级分割。在自动驾驶场景中,复杂的路况、市区内密集且相似的车辆和行人、以及对低功耗低延时(low computation & low memory cost & online)的预测需求又给这一任务带来了新的挑战。由于引入了大规模数据集,如BDD100K、KITTI等作为深度学习模型训练和测试基准,对 MOTS/VIS 的研究兴趣正迅速增长。
问题
MOTS 的大部分online方法(MaskTrack R-CNN、SipMask等)主要遵循基于检测的跟踪范式(tracking-by-detection paradigm)。首先在单张图片内检测和分割对象,然后是帧之间的关联。尽管这些方法已取得较好的结果,但在对时序建模上仅限于物体关联阶段,并且仅在两个相邻帧之间。另一方面,时间维度包含关于场景的丰富信息,同一物体的不同时间下多个角度的视图可以提高预测的物体分割、定位和类别的质量。
然而,高效地利用历史信息(memory information)仍然是一个挑战。虽然基于注意力机制的时序建模方法(包含Self-Attention, Non-local Attention和Transformer等)已应用于视频处理,但它们通常直接对高分辨率的深度特征图进行操作。长时间序列上的密集的像素级注意力操作会产生对长度的二次复杂性(quadratic complexity),进一步带来巨大的计算负担和GPU内存消耗 (例如VisTR等),也极大地限制了它们的实际应用。
成果
PCAN 提出了一种简单高效地 利用视频时序信息的机制 , 通过对目标物体及过去帧的外观特征做高斯混合建模,得到数量较少且低秩(sparse and low-rank)的representative mixture prototypes (可以理解为多个不同的cluster centers), 实现了对历史信息(memory bank)的压缩。这一操作在降低attention运算复杂度和内存需求的同时, 也提高了视频物体分割的质量和追踪的稳定性。
PCAN包括 帧级(frame-level module)和实例级(instance-level module) 两个模块的prototypical cross-attention,前者重构过去帧的深度特征并将其与当前帧对齐,而后者聚焦于视频中的被追踪物体。为了增强对物体外观随时间变化的鲁棒性,PCAN 通过对比学习(contrastive learning)的机制分别使用foreground / positive 和 background / negative prototypes (前景和背景原型)来进一步表示每个对象实例,并且将这些prototypes以在线方式传播更新(online updating)。由于每个实例或帧的prototypes数量有限,PCAN 在视频中具有时间线性复杂度的高效地执行远程特征聚合和传播。
二、方法概述
PCAN的结构框架
PCAN首先将历史信息(memory bank)中的高分辨率 特征压缩到帧级和实例级的原型(prototypes)中,然后通过prototypical cross-attention操作,从由prototypes组成的space-time memory bank中去提取和利用过去帧中包含的丰富的appearance, texture and shape information等等。
Traditional cross-attention in space-time:
Prototypical cross-attention in space-time:
Memory bank中prototypes的数量 ,这有效地避免了对整个高分辨率的历史特征做逐像素密集的attention操作。PCAN采用高斯混合模型(Gaussian Mixture Models, GMM)来进行无监督特征聚类,并选取EM(Expectation-Maximization)迭代算法的得到的高斯分布拟合聚类中心作为prototypes。其中,每个像素特征点到prototype中心 的距离定义为 。
PCAN Framework- Overview
Frame-level PCAN
对于memory bank中的帧特征,我们首先进行基于GMM的聚类(高斯分布拟合)以获得key 和value prototypes,并根据当前帧的产生的key根据cross-attention weights将其低秩重建。
Reconstruct frame feature based on prototypes and current frame.
重建的特征 不仅与当前帧 对齐,还通过有限数量的高斯分布拟合去除了特征中冗余信息(noise reduced),在保持像素点特征空间差异的同时,相似点间的内部差异得到进一步缩小。随后,重建特征与当前帧特征做加权融合,产生的新时序特征用于后续MOTS中的分类,检测,分割和追踪等多个子任务。
Overview of our frame-level prototypical cross-attention
Instance-level PCAN
对于MOTS中感兴趣追踪的物体,我们进一步根据初始的mask和bounding box对物体做前后背景的区分,前景(黄色区域)建模为positive instance prototypes,背景建模(蓝色区域)为negative prototypes。这些instance specific的prototypes随着时间不断更新,更新机制采用滑动平均来更新,类似于LSTM中的hidden state。在第 帧时,这些 positive 和 negative 的 prototypes 分别产生不同的attention maps,从中我们也能看出不同 prototype 的关注代表区域。最后我们将初始的物体 mask、产生的 instance attention map、以及融合时序新的 frame feature concat在一起,通过一个简单的分割FCN网络得到最终的mask预测。
Updating instance prototypes with time
Our instance-level prototypical attention with foreground and background prototypes and temporal propagation.
三、实验
PCAN作为一个online method在两个最大规模的MOTS数据集BDD100K和Youtube-VIS上都取得了领先性能。
Comparison on the BDD100K segmentation tracking validation set.
Comparison on the Youtube-VIS validation set.
PCAN在Youtube-VIS的性能随着memory tube length和prototype数量的变化,从中可看出长时序建模和在一定范围内增多prototype数量的带来的性能改善。
Effect of long-term temporal information and prototypes clustering
四、 Prototypical Cross-Attention Visualization
Instance-level
对红色虚线框中的汽车的instance attention可视化。我们选择前四个前景/背景原型作为示例,其中每个都专注于特定的汽车子区域,例如第一个prototype关注于车头的位置,并且这一attention 分布随着时间的推移具有隐式无监督一致性。
Instance cross-attention maps visualization for the car specified by the red dotted bounding.
对红色虚线框中的行人的instance attention可视化:
Prototypical instance cross-attention maps for the pedestrian in the red dotted bounding box.
Frame-level
对整张图frame-level的可视化,其中我们随机选择了8个frame prototypes并在图像上显示了它们的注意力分布。显然,每个frame prototype都学会对应图像的一些语义概念,涵盖前景和背景区域,例如人、滑板、雨伞和网球拍等等,这些都是通过无监督聚类所学习到的。
Frame-level prototypical cross-attention maps of random frame prototypes for visualization.
五、 BDD100k Instance Segmentation Tracking 竞赛
BDD100K Competition
BDD100K Dataset:
www.bdd100k.com/
BDD100K Tracking & Segmentation Learderboard:
https://eval.ai/web/challenges/challenge-page/1295/overview
参考文献
[1] BDD100K: BDD100K: A Diverse Driving Dataset for Heterogeneous Multitask Learning
[2] Non-local Neural Networks: https://arxiv.org/abs/1711.07971
[3] EMANet: Expectation-Maximization Attention Networks for Semantic Segmentation
[4] KITTI MOTS: MOTS: Multi-Object Tracking and Segmentation
[5] Space-Time Memory Networks: https://arxiv.org/abs/1904.00607
作者: leike.kl@知乎
来源: https://zhuanlan.zhihu.com/p/445457150
Illust rastion by Iconscout Store from Iconscout
Be First to Comment