当前位置: 代码迷 >> 综合 >> Strong Baseline and Batch Normalization Neck for Deep Person Re-identification
  详细解决方案

Strong Baseline and Batch Normalization Neck for Deep Person Re-identification

热度:87   发布时间:2023-12-15 00:40:02.0

Strong Baseline and Batch Normalization Neck for Deep Person Re-identification

 

 

    文中主要提出了一种BNNeck的网络。

    与以前ICCV以及CVPR的一些文章存在或多或少的问题,其在公开数据集合中跑出的结果并不好,market-1501上能达到rank-1 90%的只有两个,DukeMTMC –reID 的准确率rank-1都没有80%。

market1501

 

Duke MT-MC reID

 

贡献主要如下:

  1. 使用ReID中的多种tricks。并且评估tricks的作用。
  2. 使用了一种称为BNNeck的方法。

 

标准base line

 

标准baseline所用的backbone 一般都是resnet50。训练阶段主要包含下列的步骤

  1. 初始imagenet 预备训练的ResNet并且将全连接层的维度变成N,N表示训练数据中身份的数量。
  2. 随机抽取P个身份,每个身份抽取K个图片,在一个batch size中。最后batch_size = P*K, 在研究中。设置P=16以及K=4 。
  3. 将每个图片变成256*128像素的,并pad改变大小后的图片10个像素,使用0值。然后随机剪切256*128的图片。
  4. 每一个图片水平平移0.5的概率。
  5. 每一个图片进行标准化
  6. 模型输出ReID的特征以及ID的prediction。
  7. REID 的特证,被用来计算triplet loss, ID的类别可以用来计算交叉熵。其中triplet loss的margin是0.3.
  8. Adam 方法优化模型,初始化学习率0.00035,并且在第40以及第70个epoch之后,学习率降低0.1。训练总epoch120

 

pip line of standard model

 

 

文中强baseline 和训练tricks

 

使用的tricks包括:  1. warmup(线性增长,从3.5*10^-5上升到3.5*10^-4), 2. 随机消除数据增强。给出一个随机消除的比例pe,选择一个随机区域Ie, 其中大小是(we, Ie)在image I,并且替换像素使用随机的像素值。区域比例主要是介于[r1, r2],

3. label smooth

其中这里的参数为0.1。

4. last stride

  移除了最后一层下采样,这样使得feature map变的更大。将backbone最后一层的下采样卷积的步长,从2变成了1。

5. BNNeck

6. center-loss

  reid 是检索和排序的任务,评价标准是CMC以及MAP

 

其中yj 是第j个图像的标签在一个mini-batch中。Cyj 表示第yj类别中心。

 

 

  相关解决方案