论文地址
论文代码地址
我们提出了用于端到端人员搜索的级联遮挡注意transformer(Cascade Occluded Attention Transformer) 。三阶段级联设计侧重于在第一阶段检测人员,而在随后的阶段同时逐步完善人员检测和重新识别的表示。在每个阶段,被遮挡的注意力变换器在联合阈值上应用更紧密的交集,迫使网络学习从粗到细的姿势/比例不变特征。同时,计算每个检测的遮挡注意力,以区分一个人的标标志或背景。
目录
引言
方法
由粗到细的embedding模块介绍
基于遮挡的attention transformer
Training and Inference(训练)
行人检索目的是从一组场景图像中定位出特定的人。目前存在两步和一步的方法。
两步的方法通常是先检测,然后再进行重识别任务;
一步的方法是一种多任务的端到端框架,同时检测和重识别;
存在的挑战:
1:行人检测主要是学习特征,以便于从背景中区分行人。行人重识别是区分人与人之间的差异性。目前存在的方法如 行人检测任务优先 和 重识别任务优先 (该论文的阅读笔记)通常分配不同的优先等级,这些方法不好平衡两个子任务。
2:尺度和姿态变化使得重识别具有一定难度;特征金字塔和可变形卷积可以解决此类问题,但是特征融合策略易引入噪声;
3:遮挡或模糊造成的难点问题;
解决:
we propose a new Cascade Occluded Attention Transformer (COAT) for end-to-end person search.
受到级联CNN论文地址Cascade R-CNN的启发,该论文分三个阶段由粗到细进行检测和重识别。
1:第一阶段倾向于检测,主要是从背景中识别人,没有区分人和人之间的差异性
2:在级联的每个阶段都采用了多尺度卷积transformer,将特征图划分对应不同尺度的切片
3:用一种综合模拟遮挡的注意机制来增强transformer的学习特征嵌入。
Contributions:
提出了基于级联transformer端到端的行人检索框架,transformer能够处理尺度,姿态和视角的变化。
采用occluded注意力机制生成细粒度行人特征表示处理遮挡的场景
级联+attention:
As shown in Figure 2, our network is based on the Faster R-CNN object detector backbone with Region Proposal Network (RPN).
作者扩展上述框架,提出了本文的框架:
从ResNet-50[15]骨干网中提取1024-dim stem特征图后,我们使用RPN生成局部的proposal。对于每个proposal,应用RoI-Align操作pool一个h × w的区域作为基本特征图F,其中h和w分别表示特征图的高度和宽度,c表示通道数。然后用多级串联结构学习检测和重识别的embedding。
RPN的输出proposal在第一阶段用于对正、负样本进行重新采样。然后采用第一阶段的框输出作为第二阶段的输入,依此类推。在每个阶段t,每个proposal的集合特征映射被发送到该阶段的卷积transformer。(这部分描述的没太看懂。。)
级联结构逐步施加更严格的阶段性约束。在实际应用中,我们逐步提高交叉并集阈值。每个阶段的transformer后面都有三个头,如NAE[6],包括一个人/背景分类器,一个箱形回归器和一个re-id鉴别器。注意,我们在第一阶段删除了ReID判别器,以便在细化之前将网络集中于先检测场景中的所有人员。
1. Tokenization
,我们将它tokenize为不同尺度的transformer输入。
对于多尺度,沿channel方向划分n个slices,本文基于切片生成token。学习CNN的局部空间上下文信息。不同的尺度通过不同大小的卷积核来实现。
切片特征通过一个卷积层转为一个新的token特征:
卷积层的核大小是k,步长是s,padding是p。d为每个token的patch大小。
2. 遮挡注意力模块
为了处理occlusions,我们在transformer中引入了一种新的token级别的遮挡注意机制,以模拟真实应用中的遮挡现象。 在一个mini-batch中收集所有的检测peoposals称为
由于来自RPN的proposal包含正负两种样本,token bank由前景的人部分和背景对象组成。我们在token bank之间交换token,基于所有实例的相同交换索引集M。
交换的token对应于token映射中语义一致但随机选择的子区域。每个交换的token都表示为:
常规的transformer模块:
然后将独立的注意输出连接起来,并将其线性转换为预期的维度。MSA模块之后是
FFN模块对每个token进行非线性变换,增强其表示能力。
注意,每个transformer外面都有一个残差连接。在全局平均池化(GAP)层之后,提取的特征被输入后续的头部进行box回归、人员/背景分类和人员再识别
3. Relations to concurrent works
有两个同时存在的基于ViT的研究在不同的领域有[3,16]。Chen等人[3]开发了一个多尺度transformer,包括两个独立分支,分别使用小补丁和大补丁token。两尺度表示是基于交叉注意token融合模块学习的,其中每个分支的单个token被视为与其他分支交换信息的查询。相反,我们利用一系列具有不同内核的卷积层来生成多尺度token。最后,我们将每个尺度对应的增强特征映射连接到transformer的特定切片中。
为了处理遮挡和不对齐,He[16]等人对局部patch嵌入进行洗牌并重新分组,每一组都包含单个样本的多个随机patch嵌入。相比之下,我们的方法首先交换小批样本的部分token,然后基于混合token计算遮挡注意。因此,最终的嵌入部分覆盖目标人提取的特征从不同的人或背景物体,产生更鲁棒的表示。
在训练阶段,对所提出的网络进行端到端训练,以进行人员检测和人员重识别。人员检测损失由回归和分类损失项组成。前者是ground-truth and foreground boxes之间回归向量的Smooth-L1损失,后者计算估计box的预测分类概率的交叉熵损失。
为了监视人员ReID,我们使用经典的非参数在线实例匹配(OIM)损失LOIM,它维护一个查找表(LUT)和一个循环队列(CQ)分别存储最近小批量中所有标记和未标记标识的特征。我们可以高效地计算小批量样本与LUT/CQ之间的余弦相似度,用于嵌入学习。此外,受[24]的启发,我们添加了另一个交叉熵损失函数LID来预测人们的身份,以进行额外的id相关监督。我们通过使用以下多阶段损失来训练所提出的COAT:
在推理阶段,我们通过删除图3中的标记混淆步骤,将遮挡注意机制替换为transformer中的经典自我注意模块。最后一阶段输出对应嵌入的检测边界框,使用NMS操作去除冗余框。