论文地址:https://arxiv.org/pdf/1911.09318v1.pdf
代码:https://github.com/cvlab-yonsei/RRID
Abstract
we propose a new relation network for person reID that considers relations between individual body parts and the rest of them.Our model makes a single part-level feature incorporate partial information of other body parts as well, supporting it to be more discriminative.
提出考虑身体的一个局部特征与其它所有局部特征的关系,这个方法使得身体的一个单一部位包含与他部位的位置关系,使其更具有分辨力。
We also introduce a global contrastive pooling (GCP) method to obtain a global feature of
a person image
在获取全局特征的过程中,我们引入了一种GCP的方法。
Related Work
提出了一些以前Re-Id的方法,不再赘述。
Our Approach

如图所示,整个过程分为三部分:
一,就是首先图片特征经过Resnet50获取feature maps对拿到的特征图进行 Global max pooling(GMP) ,可以仔细看一下变化,其实就是相当于每h/6个特征图接一个最大池化,得到6个特征。
二,三步是一个并列的过程
二,将得到的特征图放入one vs rest 模块,得到local relational features即 局部关系特征图
三,将得到的特征图放入GCP模块,得到Global contrastive feature即 全局对比特征图
最后,我们沿着通道维度将这些特征连接在一起,得到1x1x1x7c的行人特征
One-vs.-rest relational module
One vs Rest


具体来说,我用Pi(i = 1,…6) 来表示每个1x1xC的局部特征。以p1作为第一个feature为例,对除了p1以外的pi(i=2,3,4,5,6) 进行平均池化得到rest features(意为除了第一个以外的其余特征)我们称之为r1,我们分别对p1和r1接上一个1x1xc的卷积核这样我们就会保持h,w不变,C->c,我们对卷积后的p1称为P1,r1称为R1,我们对得到的P1,R1进行连接(连接过程其实还需要加上BN以及RELU(具体看上图第二段))得到的维度为2C,再次经过一个卷积核后变回c ,此时的R1种其实已经包含了P1的信息,再用R1+P1我们就会得到最终1x1xc的特征。后对p2,p3,p4,p5进行上述重复性操作。
GCP
在讲GCP之前,首先拿图对比了GAP,GMP,GAP+GMP还有GCP

总而言之就是,GCP的优越性大于前三者
GCP的具体实现过程



首先,我们会对所有特征进行一次平均池化以及最大池化。我们分别用Pavg以即Pmax分别代表两个池化结果。之后我们利用Pmax与Pavg的差得到前文一直在说的contrasive feature即Pcont,来表示两者之间的差异,pcont汇集了除了Pmax以外身体各个部位最具显著性的特征。我们之后
对Pmax与Pcont分别接一个1x1xc的卷积核,分别到P1max,p1cont,之后再对两者进行连接操作得到维度为2c的特征,对2c紧接着再接一个Conv进行降维后于P1max进行连接得到最终的global feature。

我们发现无论是global 还是local 最后的一步计算都是一样的,其核心思想都是一致的。
Loss
我们在下图中画L处都分别进行了三元组损失和分类损失。

该博文介绍了在行人重识别(Person ReID)任务中提出的一种新的关系网络方法,该网络考虑了人体不同部位之间的关系,使每个部位特征能包含其他部位的局部信息,增强识别能力。同时,文中还引入了全局对比池化(GCP)技术,通过对比不同部位的特征来获取更全面的全局特征。实验表明,GCP在性能上优于传统的全局平均池化(GAP)、全局最大池化(GMP)以及GAP+GMP的组合。此外,文章详细阐述了one-vs.-rest关系模块和GCP的实现过程,并在损失函数中结合了三元组损失和分类损失,以优化模型性能。
2529

被折叠的 条评论
为什么被折叠?



