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
贡献主要如下:
- 使用ReID中的多种tricks。并且评估tricks的作用。
- 使用了一种称为BNNeck的方法。
标准base line
标准baseline所用的backbone 一般都是resnet50。训练阶段主要包含下列的步骤
- 初始imagenet 预备训练的ResNet并且将全连接层的维度变成N,N表示训练数据中身份的数量。
- 随机抽取P个身份,每个身份抽取K个图片,在一个batch size中。最后batch_size = P*K, 在研究中。设置P=16以及K=4 。
- 将每个图片变成256*128像素的,并pad改变大小后的图片10个像素,使用0值。然后随机剪切256*128的图片。
- 每一个图片水平平移0.5的概率。
- 每一个图片进行标准化
- 模型输出ReID的特征以及ID的prediction。
- REID 的特证,被用来计算triplet loss, ID的类别可以用来计算交叉熵。其中triplet loss的margin是0.3.
- 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类别中心。