文献综述(或调研报告):
在监控视频中,由于相机分辨率和拍摄角度的缘故,通常无法得到质量非常高的人脸图片。当人脸识别失效的情况下,行人重识别(ReID)就成为了一个非常重要的替代品技术。ReID有一个非常重要的特性就是跨摄像头,所以学术论文里评价性能的时候,是要检索出不同摄像头下的相同行人图片。ReID已经在学术界研究多年,但直到最近几年随着深度学习的发展,才取得了非常巨大的突破。根据所读文献,把这些方法分为以下几类:
- 基于表征学习的ReID方法
- 基于度量学习的ReID方法
- 基于局部特征的ReID方法
- 基于视频序列的ReID方法
- 基于GAN造图的ReID方法
- 基于表征学习的ReID方法
基于表征学习(Representation learning)的方法是一类非常常用的行人重识别方法[1-4]。这主要得益于深度学习,尤其是卷积神经网络(CNN)的快速发展。由于CNN可以自动从原始的图像数据中根据任务需求自动提取出表征特征,所以有些研究者把行人重识别问题看做分类问题或者验证问题:(1)分类问题是指利用行人的ID或者属性等作为训练标签来训练模型;(2)验证问题是指输入一对(两张)行人图片,让网络来学习这两张图片是否属于同一个行人。
论文[1]利用分类损失和验证损失来训练网络,其网络示意图如下图所示。网络输入为若干对行人图片,包括分类子网络和验证子网络。分类子网络对图片进行ID预测,根据预测的ID来计算分类误差损失。验证子网络融合两张图片的特征,判断这两张图片是否属于同一个行人,该子网络实质上等于一个二分类网络。经过足够数据的训练,再次输入一张测试图片,网络将自动提取出一个特征,这个特征用于行人重识别任务。
但是也有论文认为光靠行人的ID信息不足以学习出一个泛化能力足够强的模型。在这些工作中,它们额外标注了行人图片的属性特征,例如性别、头发、衣着等属性。通过引入行人属性标签,模型不但要准确地预测出行人ID,还要预测出各项正确的行人属性,这大大增加了模型的泛化能力,多数论文也显示这种方法是有效的。下图是其中一个示例[2],从图中可以看出,网络输出的特征不仅用于预测行人的ID信息,还用于预测各项行人属性。通过结合ID损失和属性损失能够提高网络的泛化能力。
- 基于度量学习的ReID方法
度量学习是广泛用于图像检索领域的一种方法。不同于表征学习,度量学习旨在通过网络学习出两张图片的相似度。在行人重识别问题上,具体为同一行人的不同图片相似度大于不同行人的不同图片。最后网络的损失函数使得相同行人图片的距离尽可能小,不同行人图片的距离尽可能大。常用的度量学习损失方法有对比损失[5]、三元组损失[6-8]、 四元组损失[9]、难样本采样三元组损失[10]、边界挖掘损失[11]。首先,假如有两张输入图片 I1和 I2 ,通过网络的前馈我们可以得到它们归一化后的特征向量 f{I1} 和 f{I2} 。我们定义这两张图片特征向量的欧式距离为:
- 对比损失
对比损失用于训练孪生网络,其结构图如上图所示。孪生网络的输入为一对图片和,这两张图片可以为同一行人,也可以为不同行人。每一对训练图片都有一个标签,其中表示两张图片属于同一个行人,反之表示它们属于不同行人。
为了最小化损失函数,当网络输入一对正样本对,根据实际需求设计的阈值参数会逐渐变小,即相同ID的行人图片会逐渐在特征空间形成聚类。反之,当网络输入一对负样本对时,会逐渐变大直到超过设定的。通过最小化,最后可以使得正样本对之间的距离逐渐变小,负样本对之间的距离逐渐变大,从而满足行人重识别任务的需要。
