Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报

1 简介

  这是一篇综述性文章,本文从closed-world和open-world两个方面较细致地分析了Re-ID,并展望了前景。这次的心得写得较长,也算是一个总结。
  首先,作者通过将Re-ID分为封闭世界(closed-world)的ReID和开放世界(open-world)的Re-ID来陈述,如下表,通俗地说,closed-world指的就是较为理想的环境下的实验,比如单模态的数据集、正确框出的行人box,open-world指的是更贴近现实应用场景的实验,比如跨模态、直接利用原始视频流或图片帧设计end-to-end的系统、不利用标注数据。其次,作者设计了一个强大的baseline——AGW,无论是单模态还是跨模态行人重识别,该方法都达到了SOTA,本文也提出了新的性能评价指标——mINP,来对CMC/mAP进行补充。最后,作者讨论了行人重识别任务中重要但尚在发展路上的问题。

Closed-world Open-world
Single-modality Data Heterogeneous Data
Bounding Boxes Generation Raw Images/Videos
Sufficient Annotated Data Unavailable/Limited Labels
Correct Annotation Noisy Annotation
Query Exists in Gallery Open-set

2 创新点

  • 分Re-ID为closed-world和open-world两种来详细探讨;
  • 设计了强大的baseline——AGW,在单模态和跨模态Re-ID任务均达到SOTA;
  • 提出了新的性能评价指标——mINP,来指明找到所有正确匹配项的成本。

3 详细内容

综述框架{closed-world Re-ID{特征表示学习{全局特征局部特征辅助特征video-based深度度量学习排序优化open-world Re-ID{异构(跨模态)Re-ID端到端Re-ID半监督/无监督Re-IDNoise-Robust Re-IDOpen-set Re-ID展望{mINP度量AGW尚待研究\text{综述框架} \begin{cases} \text{closed-world Re-ID} \begin{cases} \text{特征表示学习} \begin{cases} \text{全局特征}\\ \text{局部特征}\\ \text{辅助特征}\\ \text{video-based} \end{cases}\\ \text{深度度量学习}\\ \text{排序优化} \end{cases}\\ \text{open-world Re-ID} \begin{cases} \text{异构(跨模态)Re-ID}\\ \text{端到端Re-ID}\\ \text{半监督/无监督Re-ID}\\ \text{Noise-Robust Re-ID}\\ \text{Open-set Re-ID} \end{cases}\\ \text{展望} \begin{cases} \text{mINP度量}\\ \text{AGW}\\ \text{尚待研究} \end{cases} \end{cases}

3.1 closed-world行人重识别

  这一类Re-ID通常有这些特点:1)行人图像往往是单模态的;2)行人由包围框表示,不少box都属于同一人(可能会使某个人识别正确率偏高,也理想化);3)有足够的标注数据进行有监督训练(非常理想化);4)标注通常正确率很高;5)不少数据集的query都在gallery中,或者说他们来自于同一组camera,现实中可能提供摄像机从未“见过”的图片(不存在于数据集中的新的身份)。

3.1.1 Feature Representation Learning

  当前的特征表示学习有:1)基于全局特征的——从整张图片提取特征向量或利用注意力机制,注意力机制可以用于“关注”单张图片的关键部分,也可以用于“关注”多张图片中的关键图片;2)基于局部特征的——如果两张图片中行人是错位的,那么使用局部特征效果更好,原来的基于part的Re-ID大概归为两种:第一种是利用姿态信息来定位part,第二种是直接对图片分块,或是按照身体部位进行“软分割”(比如PCB+RPP),后来有学者关注结合全局特征与局部特征,也取得了不错的效果;3)利用辅助特征:比如语义描述或用GAN生成图像,或是一些图像增强技巧;4)基于视频的Re-ID则更接近于现实应用场景,往往关注视频流或多张图的时序(temporal)特征。
Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报

3.1.2 Deep Metric Learning

  度量学习就是指对比样本相似度来判断它们是否为一类/一个对象,现在已经被loss function代替。Re-ID常用的loss有下列中三种:Identity loss,其实就是多分类交叉熵损失,公式(1);Verification loss,其实就是判断样本对是/否为同一类/身份,公式(2)是它的基本形态——contrastive loss,多数学者常把Identity损失与Verification损失结合,结合后如公式(3);Triplet loss,同类样本距离拉近,不同类样本push远,公式(4)。
Lid=1ni=1nlog(p(yixi))(1)\mathcal{L}_{i d}=-\frac{1}{n} \sum_{i=1}^{n} \log \left(p\left(y_{i} \mid x_{i}\right)\right)\tag{1}

Lcon=(1δij){max(0,ρdij)}2+δijdij2(2)\mathcal{L}_{\text {con}}=\left(1-\delta_{i j}\right)\left\{\max \left(0, \rho-d_{i j}\right)\right\}^{2}+\delta_{i j} d_{i j}^{2}\tag{2}

  δij\delta_{ij}表示二值判断(如xix_ixjx_j属于同一类则为1,否则为0),dijd_{ij}是欧氏距离,ρ\rho是阈值,fij=(fifj)2f_{ij}=(f_i-f_j)^2fif_ifjf_jxix_ixjx_j的嵌入特征。

Lveri(i,j)=δijlog(p(δijfij))(1δij)log(1p(δijfij))(3)\mathcal{L}_{v e r i}(i, j)=-\delta_{i j} \log \left(p\left(\delta_{i j} \mid f_{i j}\right)\right)-\left(1-\delta_{i j}\right) \log \left(1-p\left(\delta_{i j} \mid f_{i j}\right)\right)\tag{3}

Ltri(i,j,k)=max(ρ+dijdik,0)(4)\mathcal{L}_{t r i}(i, j, k)=\max \left(\rho+d_{i j}-d_{i k}, 0\right)\tag{4}

Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报

  此外,作者还讲到了一个OIM(Online Instance Matching) loss,这个损失在[1]^{[1]}中出现。

3.1.3 Ranking Optimization & Datasets and Evaluation

  排序优化对于提高测试阶段的检索性能很重要,目前最主要的排序优化就是re-ranking,re-ranking是一类算法,实现re-ranking的方法多种多样,下图是re-ranking算法的一种:将初次从gallery中检索到的排名靠前的图片作为query继续检索。其实现在被很多Re-ID学者广泛采用的是k-reciprocal encoding重排序[2]^{[2]},即对于query检索出来的候选图像,选择某张图像的k-nearest,如果包含了query图,则认为该候选图像更有可能是True match。
Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报
  此外,作者讲到了排序融合(rank fusion)——即整合多种方法得到的排序结果来作为最终结果,这个词我还是首次见。
  排序优化之后作者还介绍了Re-ID数据集,都是很常见的图片或视频数据集,数据集的整合介绍见,接着介绍了评估方法——当然是最常见的CMC(rank-n)和mAP,最后列举了一些SOTA方法,如下图,而且这些算法还都是2019年甚至更早的,准确率都被刷得很高。

Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报

3.2 open-world行人重识别

  这一类Re-ID更接近现实应用场景,通常有以下特点:1)数据不再是一种,是异构(如跨模态)的;2)以end-to-end方式实现,不用再对原始数据进行复杂的处理,给定输入即可输出;3)无需大量标签;4)即使标注不那么正确,模型也具有鲁棒性;5)open-set,即出现新的身份,系统也应正确处理。

3.2.1 Heterogeneous Re-ID

  异构指的是数据不单单是一种,可以是多种模态的图,可以是分辨率差异较大的图。作者提到了三种异构Re-ID:1)基于深度图的,即利用包含行人骨架、形状信息的图进行Re-ID,也可以与原始图片联合进行识别;2)从文本到图像的,给定语言描述即可进行识别,更多学者的做法是图像为主、语言描述为辅;3)跨模态的,这种Re-ID也是当前热点,主要是基于红外图-RGB图两种模态来研究;4)跨解析度(resolution)的,即不同分辨率或不同质量的图像。

3.2.2 end-to-end Re-ID

  端到端的Re-ID即不用再对视频流/原始图片流处理,直接拿来输入即可获得结果,是比较理想的方式,当然现在也有不少end-to-end的模型。

3.2.3 Semi-supervised and Unsupervised Re-ID

  原来用于Re-ID的深度模型基本上都是靠着带标签的数据完成训练的,不符合实际应用场景,于是采用无标签/少量标签数据得到性能较强的Re-ID成为了一个热点,而且这可以省去手工标注的花费。
  目前也有学者做无监督域自适应(Unsupervised Domain Adaptation),即:在带标签数据集上训练出的模型迁移到无标签的数据集上应用。现在无监督Re-ID识别准确率也已经很高了,预计很快就能封顶。

3.2.4 Noise-Robust Re-ID

  对于Re-ID,由于采集数据和标注困难,noise是不可避免的,作者将noise-鲁棒
Re-ID分为三类:具有很大偶然性的部分遮挡、样本本身的noise(如行人包围框检测不对、背景环境的干扰)、标签noise(图像数量大,标注错误是大概率事件)。

3.2.5 Open-set Re-ID

  对于一个全新的身份,系统不应当将他识别为数据集中的身份,这对安保工作是至关重要的。比如一个公司的人脸识别门禁,错误地将外人识别为公司内部员工,这是很危险的,这就是Open-Set问题。因为现有的Re-ID数据集,query集中的身份一定能在gallery集中找到,这是与实际不符的。

3.3 新评估方式——mINP

Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报
  当前常用的CMC和mAP无法表示模型对难样本的检测能力,如下图,两个检测结果,rank-1都是100%,但是它们的AP却不相同,list 1的AP比list 2高,但是很明显对于10个目标,list 1找到所有正确样本要比list 2付出得更多,或者说它把最难的样本排得更靠后,这样来看AP就不合理了,这就是作者提出mINP的动机。
NP是指negative penalty,即负样本的惩罚/代价,它定义为公式(5),RihardR_i^{hard}表示最难样本的排序位置,Gi\left|G_{i}\right|表示query ii的正确匹配图片数量,所以越小的NP越代表更好的性能,为了更直观对比模型性能,定义inverse negative penalty:INP=1-NP,mINP即所有检测序列的INP的均值,类似mAP和AP的关系,见公式(6)。
NPi=RihardGiRihard(5)\mathrm{NP}_{i}=\frac{R_{i}^{h a r d}-\left|G_{i}\right|}{R_{i}^{h a r d}}\tag{5}

mINP=1ni(1NPi)=1niGiRihard(6)\mathrm{mINP}=\frac{1}{n} \sum_{i}\left(1-\mathrm{NP}_{i}\right)=\frac{1}{n} \sum_{i} \frac{\left|G_{i}\right|}{R_{i}^{h a r d}}\tag{6}
  其实我在想,INP不就是正确匹配数量比上最后一个识别正确的样本排位?还是说定义NP有什么其他高级的数学依据?不过综合多种方法在部分数据集上的rank和mAP来看,mINP还是可以作为模型性能衡量标准的,而且mINP值普遍比mAP和rank小不少。

3.4 强baseline——AGW

Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报
  AGW的Backbone是ResNet-50,网络结构也很简单,只不过加入了A、G、W三块,“A”指的是Non-local Attention (Att) Block,“G”指的是Generalized-mean (GeM)Pooling,“W”指的是Weighted Regularization Triplet (WRT) loss。用AGW实现跨模态Re-ID的代码在开源。
  Non-local Attention Block是非局部的注意力块,具体在[3]^{[3]}中,主要就是获得各个位置feature的加权和,如公式(7),WzW_{z}代表学习到的权值矩阵,ϕ(.)\phi(.)代表non-local操作,+xi+x_i代表残差学习策略。
zi=Wzϕ(xi)+xi(7)\mathbf{z}_{i}=W_{z} * \phi\left(\mathbf{x}_{i}\right)+\mathbf{x}_{i}\tag{7}
Generalized-mean Pooling即广义平均池化(机翻),具体在[4]^{[4]}中,对于细粒度的检索问题,传统的平均池化和最大池化并不能提取特定域的辨别性特征,于是才加入GeM池化,如公式(8),pkp_k是池化超参,可以在BP过程学习,当pkp_{k} \rightarrow \infty时,GeM池化接近max pooling,当pk=1p_{k}=1时接近average pooling。
f=[f1fkfK]T,fk=(1XkxiXkxipk)1pk(8)\mathbf{f}=\left[f_{1} \cdots f_{k} \cdots f_{K}\right]^{T}, f_{k}=\left(\frac{1}{\left|\mathcal{X}_{k}\right|} \sum_{x_{i} \in \mathcal{X}_{k}} x_{i}^{p_{k}}\right)^{\frac{1}{p_{k}}}\tag{8}
  除了原有的带softmax交叉熵损失的identity loss外,作者还整合了Weighted Regularization Triplet loss,即加权正则化三元组损失,如公式(9),其中(i,j,k)表示batch中的mined hard triplet,P\mathcal{P}是对应的正样本集,N\mathcal{N}是负样本集。
Lwrt(i,j,k)=log(1+exp(wipdijpwindikn))wip=exp(dijp)dpPexp(dp),win=exp(dikn)dnNexp(dn)(9)\begin{aligned} \mathcal{L}_{w r t}(i, j, k)=\log \left(1+\exp \left(w_{i}^{p} d_{i j}^{p}-w_{i}^{n} d_{i k}^{n}\right)\right)\\ w_{i}^{p}=\frac{\exp \left(d_{i j}^{p}\right)}{\sum_{d^{p} \in \mathcal{P}} \exp \left(d^{p}\right)}, w_{i}^{n}=\frac{\exp \left(-d_{i k}^{n}\right)}{\sum_{d^{n} \in \mathcal{N}} \exp \left(-d^{n}\right)} \end{aligned}\tag{9}
  下图是AGW在两个跨模态Re-ID数据集上的表现,准确率直逼之前的那篇cm-SSFT[5]^{[5]}。有一个不理解的问题是,作者说超过了SOTA,但是我看文中准确率并未达到上的很多SOTA方法,不知道文中的“SOTA”或者说大多数论文的“SOTA”标准是什么,或者说从哪里来。
Deep Learning for Person Re-identification: A Survey and Outlook——准研究生论文周报

3.5 展望

  作者在最后结合了目前Re-ID社区现状阐述了一些有潜力的方向。
  硬件方面:Re-ID的快速检索,提到了哈希查找;还有压缩网络模型使其轻量化,提到了模型蒸馏(Model distillation);能适应常用设备配置,甚至是手机,这才是Re-ID落地成产品的必经之路。
  数据相关的方面:现有模型大多不能适应多数据集,泛化能力较差,数据集之间的domain gap也比较大,盲目增大数据集规模和多源性并不能从本质解决问题;跨模态的数据,现代摄像设备网上往往切换为红外模式,而多数犯罪分子又独爱夜间活动,模型能适应跨模态的数据是至关重要的;数据集手工标注费时费力,如何尽可能减少模型训练对标注的依赖也是个问题;此外,无论是GAN生成的数据还是完全人造的数据,都和实际生活中的数据存在gap,这也值得讨论;现实生活中,加一个摄像头减一个摄像头是不可避免的,模型怎样来适应呢?

4 心得体会

  总得来说,这篇综述还是不错的,而且作者给出了源码,现阶段本文是可以作为Re-ID入门后快速上手来细读的,但是作者的AGW方法好像并不是SOTA,而且新的标准mINP总感觉在哪里见过只不过名字不同(机器学习?深度学习教程里的?),由于论文没中的原因,不知道这个新的标准会不会被后来的学者采纳,就让时间来检验它吧!

5 参考文献

[1] T. Xiao, S. Li, B. Wang, L. Lin, and X. Wang, “Joint detection and identification feature learning for person search,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 3415–3424, 2017.
[2] Z. Zhong, L. Zheng, D. Cao, and S. Li, “Re-ranking person re-identification with k-reciprocal encoding,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 1318–1327, 2017.
[3] X. Wang, R. Girshick, A. Gupta, and K. He, “Non-local neural networks,” in Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 7794–7803, 2018.
[4] F. Radenović, G. Tolias, and O. Chum, “Fine-tuning cnn image retrieval with no human annotation,” IEEE transactions on pattern analysis and machine intelligence, vol. 41, no. 7, pp. 1655–1668, 2018.
[5] Y. Lu, Y. Wu, B. Liu, T. Zhang, B. Li, Q. Chu, and N. Yu, “Cross-modality person re-identification with shared specific feature transfer,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,pp. 13379–13389, 2020.