DeepReID (2014 CVPR)

DeepReID: Deep Filter Pairing Neural Network for Person Re-Identification

(香港中文大学Wei Li Rui Zhao Tong Xiao XiaogangWang∗)

三个贡献

1.提出了一个filter paring neural network(FPNN)
2.采用了dropout,data augmentation,data balancing,bootstrapping策略训练网络
3.建立了一个大型行人数据库CUHK03,1360个行人,13164张图片 ,同时提供手工裁剪和自动检测的图片

1.网络结构

这里图片描述

该结构用6层去处理Pre中的misalignment,cross-view photometric and geometric transform,occlusion and background clutter.

特征抽取

用一个卷积层和maxpooling完成特征提取。卷积核对个数K1:64,大小5*5,stride:1,
Him=64
Wim=32
K1=64
m1=5
经过卷积后:H0:60 W0:28
再经过3x3的max pooling H1:20 W1:9
经过卷积层,局部块的响应被抽取成局部特征,每个局部块被表示成K1 channel特征。一对过滤器表示相同的特征。
论文中没有说明,我猜想这一对卷积层应当是共享参数的。
最大池化层作用:使得特征对局部misalignment有鲁棒性。

块匹配层

这部分是论文创新最大的地方。他们团队原来在salience论文中用块匹配进行person reid.这次又把这个思想用到DL中实现,真是膜拜啊。
把一张行人图片水平分割成M(=20)个水平条纹,每个水平条纹有W1(=9)个块。(就是卷积池化后的feature map大小20*9)
块匹配在相同的条纹里面进行 。块匹配层的输出:K1MW1xW1块错位矩阵。
Sk(i,j)(i’,j’)=fkijgki’j’
也就是得到矩阵的值是匹配的两个patch值的乘积。
这里写图片描述
不知道patch match layer是怎样实现的

photometric transform

这里写图片描述
用maxout grouping把K1 个group分成T层。输出是TMW1xW大小的错位矩阵。

Modeling part displacement

卷积和最大池化层:以TMW1xW块错位矩阵为输入,把它看成是T个通道的MW1xW1图像。K2个m2xm2xT过滤器,产生了MW2xW2xK2个feature map.
T:16 m2:3 W2:3 K2:16

Modeling pose and viewpoint transform

卷积和最大池化层的输出被看成是用一个特殊事件特征检测到的部分错位表示。这一层用N个通道的全连接层实现,可以看成是各种局部错位表示的组合。其中,N=128。

Identity Recognition

Softmax layer

总结

根据论文描述,总结网络结构如下表:

layerinput sizeoutput sizekernel sizeoutput_numstridepad
conv164x32x360x28x645x5x36410
pool1(max)60x28x6420x9x643x3(pool size)3
match layer20x9x64180x9x64
maxout1180x9x64180x9x16
conv2180x9x16180x9x163x3x161611
pool2(max)180x9x1660x3x163x3(pool size)3
FC160x3x161x1x128
FC21x1x1281x1x2
softmaxloss

2.训练策略

Dropout

在第一个卷积池化层后,用dropout,使得训练模型更稳定。

数据增广

在[-0.05Him,0.05Him]x[-0.05Wim,0.05Wim]采样5张相同大小的图片。

数据平衡

开始训练的时候选取所有的正样本和相同数目的负样本,在初始训练后将会得到一个好的配置。随着训练过程不断继续,逐渐增大每个mini-batch中的负样本,直到达到5:1.

Booststrapping

所谓的Bootstrapping法就是利用有限的样本资料经由多次重复抽样,重新建立起足以代表母体样本分布之新样本。
网络稳定后,我们继续选择困难的负样本进行训练。困难负样本指被当前网络以高概率预测成匹配对的负样本。在每一个epoch后对所有的负样本都进行一次再预测是很费时的,我们只再预测在前一个epoch后的hard samples。因为这些样本能被用于更新网络,所有这些样本的预测值在网络更新后期待更大的改变。
每个负样本x有一个分数sk(第k个epoch后的分数),拥有最小分数的样本被选中用于网络的再训练。
初始: s0=1P(x is a matched pair|ϕ0)
如果这个样本被选中,分数更新:
sk=1p(x is a matched pair|ϕk)+sk12
如没有选中,分数更新:
sk=λsk1

CUHK3数据库

1.除了提供手工裁剪的行人图像,也提供了检测算法自动检测到的图像。这提供了更现实的场景,能发现现存数据库中很难发现的问题。错位排列、遮挡和身体的部分缺失在数据库中很常见。不精确的检测使得几何转换更复杂。另外,还提供了图像的原始帧。
2.取自多个交叉视角对。并且摄像机是在一个开放环境,行人可以在任意方向走动。
3.图像取自几个月的视频序列。因此,即使一个摄像机,由季节、太阳方向、影子分布也会引起光照变化。而且摄像机设置都不相同,也会引起光学转换。

实验

在CUHK03上进行实验,取得了较好的效果。在较小的数据库CUHK01上实验,该数据库一共971人,每人两张图片。100个人被用于测试,其他871人被用于训练和验证,实验效果并不优于KISSME 。

这个方法适合大数据库,对小数据集并不十分有效

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值