文章目录
1.概述
1.1 全局特征
全局特征是指每一张行人图片的全局信息进行一个特征抽取,这个全局特征没有任何的空间信息。
噪声区域会对全局特征造成极大的干扰;姿态的不对齐也会是的全局特征无法匹配。
1.2 局部特征
局部特征是指对图像中的某一个区域进行特征提取,最后将多个局部特征融合起来作为最终特征。
姿态
通常一个行人会定义14个姿态点(pose/keypoint); 两个相邻的姿态点相连形成骨架(skeleton); 常用的姿态点估计模型包括:Hourglass、OpenPose、CPM、AlphaPose
Part&Attention
Part:是指通过一定规则(例如姿态点信息)手工设置的一些矩形框区域
Attention:是指(在一定的约束条件下)网络自动学习出的比较重要的任意形状区域
水平池化
水平池化是指将feature maps进行水平等分,然后再池化得到分块的局部特征。
网格特征
网格特征是指,将H×W×C尺寸的feature map中每个像素的C维特征作为一个网格特征,最终共有H×W个网格特征向量,每个向量的维度为通道数C。
2. 水平切块
ReID领域关于水平切块的代表算法有: Gate Siamese、 AlignedReID、 PCB、 ICNN、 SCPNet。
2.1 Gate Siamese
1)每一块图像经过CNN网络得到特征,局部特征按顺序输入到LSTM网络,自动表达为图像最终的特征
2)利用对比损失训练网络
3)水平切块比较早期的工作,目前已经很少使用
Gate Siamese处理下面这种没有对齐的图像时,误差较大。
2.2 AlignedReID
为了可以让图片自动对齐,旷视科技提出了AlignedReID算法。
AlignedReID算法首次在ReID任务上“超越”了人类准确度,主要解决了姿态不对齐的问题。
动态匹配局部信息是AlignedReID算法的一大创新点。
Dynamically Matching Local Information (DMLI)
• 加入输入图像为256×128,输出的特征图尺寸为8×4×2048
• 利用水平池化得到8个局部特征,并计算得到一个8×8的距离方阵
• 对齐局部信息不能有跳连(从上到下)
• 利用shortest path 来找到最有的动态连接 (Dynamic Time Warping)
AlignedReID结果示例:
AlignedReID的具体框架:
1)联合全局分支和局部分支一起训练,全局分支是一个正常的ReID网络,局部分支引入DMLI对齐思想
2)归一化
计算局部特征两两之间的距离,并归一化
计算局部特征两两之间的距离,并归一化
x(距离)越小,梯度越大。这会使得网络更加关注相似的区域。
3)最短路径距离
4)难样本挖掘
• 全局分支计算一个表征学习损失(ID损失)和一个度量学习损失(TriHard损失)
• 局部分支计算一个度量学习损失(TriHard损失)
• 局部分支和全局分支各自得到一个N×N的距离方阵
• 利用全局分支的距离方阵进行难样本挖掘:速度快、梯度方向一致
5)测试阶段
• 联合训练使得局部分支会将一部分知识传递给全局分支
• 测试阶段丢弃局部分支,只使用全局特征,不增加额外的计算量
• 测试阶段联合局部分支还能取得进一步的性能提升(提高一个百分点左右,但会耗费大量时间)
6)原论文结果
2.3 PCB
PCB框架:
• 输入图像384×128,分成6块;
• 利用ResNet50提取特征,最后24×8的feature map
• 每一行提取一个局部特征,连接一个ReID loss
• 使用的时候把6个局部特征concatenate起来
原论文结果:
• Variant 1 平均所有局部特征,算一个ID loss
• Variant 2 共享FC层参数,算6个ID loss
2.4 ICNN
ICNN框架
ICNN ≈ PCB + global branch with triplet loss
最后融合global和local特征,最后一个stride=1
2.5 SCPNet
框架:
利用spatial part特征连监督channel group特征,将local feature传给global feature。
值得一提的是,SCPNet在全身和半身ReID数据集上的性能均取得了提高。
2.6 总结
• 将图像进行水平方向的等分,每一个水平切块通过水平池化提取一个特征
• Gate Siamese和AlignedReID通过设计规则融合所有的局部特征计算距离
• PCB、ICNN、SCPNet对每一个局部特征计算一个ReID损失,直接将局部特征拼接起来
• 联合局部特征和全局特征往往能够得到更好的结果
3. 姿态信息
针对姿态信息的ReID算法有 PIE、 Spindle Net、 PDC、 GLAD、 PABP
3.1 PIE
框架
• CPM提取姿态点
• 分成几个part,进行仿射变换对齐
• 融合原图和仿射图的特征
• 采用ID损失训练网络
3.2 Spindle Net
框架
• 利用姿态点估计模型得到14个姿态点;
• 分成七个part:头,上身,下身;左手,右手,左腿,右腿。
• FEN网络提取特征,FFN网络层次性地融合特征
3.3 PDC
3.4 GLAD
3.5 PABP
3.6 总结
• 利用一个姿态估计模型得到行人的(14个)关键姿态点
• 根据姿态点得到具有语义信息的part区域
• 对于每个part区域提取局部特征
• 联合局部特征和全局特征往往能够得到更好的结果
4. 分割信息
基于分割信息的ReID数据集有:COCO、LIP。
具有代表性的分割信息算法有:FCN、PSPNet、DeepLabV2、Mask RCNN
总结:
• 图像语义分割是一种极精细的像素级别part信息
• 图像分割分为粗粒度的行人前景分割和细粒度的肢体语义分割
• 分割结果通常作为图像预处理的Mask或者feature map中的attention相乘
• 目前基于分割的方法没有取得特别广泛的应用
5. 网格特征
网格特征的代表算法有:IDLA、PersonNet、DSR
总结:
• 网格特征是比较细粒度的物理区域特征
• 早期工作将网格特征扩展为part特征计算两幅图像的特征图差
• 近期利用网格特征解决partial ReID工作
• 总体而言网格特征并不常用