此篇论文已被AAAI 2022 收录,论文链接请见“阅读原文”。

行人重识别(Person Re-ID)在视频监控、安防及刑侦等领域中都有着巨大的应用前景及价值,其目标是根据一个人物在某个摄像头下的图片(通常称为 query)找到同一个人物在其他摄像头图像底库(通常称为 gallery)下出现的图片。

真实部署环境下,由于摄像头、不同城市场景、不同季节等诸多外界因素的影响,图像成像质量(光照、清晰度等)、人物的着装、所处的背景环境都会有着巨大的差异,即存在域差异(domain gap)。域差异的存在,导致在训练集上训练好的模型难以适应真实部署环境,进而导致性能的衰退。一方面,训练集难以覆盖 Open world 的无限应用场景,另一方面,通才也难以超越专家。因此学术界和工业界不少研究工作者都致力于提升模型的域适应能力。

本文介绍了我们发表在 AAAI 2022 中的一篇关于行人重识别域适应的工作,本文提出了一种新颖的多中心表征网络,有效地提升了 ReID 模型的域适应能力,在多个常见的 ReID 域适应数据集上都取得了领先结果。

域适应行人重识别

域适应行人重识别的目标是将从源域(source domain)学习到的知识迁移到目标域(targetdomain),从而提升 Re-ID 模型在真实部署环境下的性能表现。基于伪标签聚类的方法是一种常见的域适应方法范式,其通常包括两个步骤:

(1)首先在目标域上通过聚类算法得到图像的伪标签(即 Person ID)

(2)使用同一个簇内的样本平均特征或使用可学习的参数作为该 ID 的特征表示,并在目标域上进行 fine-tune。

这种方案假定了聚类的可靠性,并使用了单中心(Uni-Centroid)特征来表征簇内所有图像。然而实际中由于聚类结果并不可能是完美的,同一个簇内可能包含来自不同 ID 的图像,即存在噪声。在这种情况下,使用单中心来表征整个簇内的图像是不合适的。

如下图 1(a)所示,在簇内存在多个 ID 时,使用簇内所有图像的平均特征来表征该簇是不合适的,得到的单中心表征对簇内地任意一种类别来说都不是一种良好的表示,距离类别真实的中心都存在较大的偏差。

图1 单中心表征与多中心表征

区别于以往的单中心表征方法,我们提出了一种新颖的多中心(Multi-Centroid表征方案。如图 1(b)所示,多中心表征方法为单个簇生成了多个有代表性的中心,使得为每个 query 挑选最合适的中心成为可能。在本文中,我们详细介绍了多中心的生成策略,并相应提出了一种新颖的正负样本挑选策略,最大化发挥了多中心表征的长处,抑制了簇内噪声对模型优化的负面影响。

多中心表征网络

在图2中,首先展示了我们提出的多中心表征网络(Multi-Centroid Representation Network, 简称 MCRN)的整体训练流程。训练过程中,MCRN 交替执行以下两个阶段:准备阶段(见图2 (a))和优化阶段(见图2 (b))。准备阶段,我们使用编码器(Encoder)提取目标域图片的特征,并通过聚类算法生成伪标签。根据聚类结果,我们创建并初始化了一个多中心表征缓存(Multi-Centroid Memory,简称 MCM)下文中会对 MCM 进行详细的介绍。优化阶段,我们基于一套完备的正负样本挑选策略来从 MCM 中挑选合适的样本来优化 Encoder。为了进一步提升模型的性能,我们提出了一种新颖的二阶近邻插值(Second-OrderNearest Interpolation,简称 SONI)策略来生成具有判别性的负样本。此外,我们发现在优化过程中,来自同一个域的负样本的价值要远远大于来自其它域的负样本,因此我们提出了一种新颖的域内对比学习(Domain Specific Contrastive Learning,简称 DSCL)优化方式。

图2 多中心表征网络训练流程

多中心表征缓存(MCM)

在该部分中,我们将详细介绍多中心表征缓存 MCM 的初始化及更新方式。在上文中,我们提到了多中心表征网络训练流程包含准备和优化两个阶段。具体来说,训练的每个周期(epoch)开始时都会进行准备阶段,我们首先使用编码器提取源域和目标域所有图片的特征,并通过 DBSCAN 聚类算法将目标域的图片划分为多个簇。MCM 初始化为一个  的向量,其中 M 表示 MCM 的容量,即能够存储的中心特征的最大数目。C 表示每个中心的特征维度。M 的大小为  ,其中 K 表示每种类别的中心数目,  和  表示源域数据真实的总类别数和目标域数据聚类得到的总类别数。初始阶段,同一个类别的 K 个中心特征都被初始化为了相同的值,即该类别下所有样本的平均特征。

在优化阶段,MCM 会持续地吸收最新的来自同一个类别的 query 特征并进行迭代更新,以检测并表征同一个簇内可能存在的多个子类。具体来说,在每次网络迭代过程中,每个 batch 数据由 PK 采样生成而来,即包含来自 P 种不同类别的样本,且每个类别采样 K 个样本。这里有一个技巧,我们将 PK 采样中的 K 简单的设置成了与 MCM 种每种类别的中心数目相等的数值,这使得 MCM 中来自同一类别的 K 个中心可以在每次迭代中同时被更新。对 batch 内来自同一类别的 K 个样本,我们试图寻找其与 MCM 中 K 个中心的一种最优匹配方式,使得整体的相似度之和最高。

其中表示一种匹配方式,  表示 batch 内第 i 个 query,表示 MCM 中匹配上第 i 个 query 的中心。我们使用匈牙利算法来高效地计算这种匹配关系。匹配完毕后,我们通过滑动平均的方式来更新 MCM 中存储的中心:

正负样本挑选策略

对 batch 内的每个 query 样本,MCM 中提供了 K 个正样本以及  个负样本,如何挑选合适的正负样本对模型的优化至关重要。

正样本方面,由于聚类可能有不纯的问题,对一个 query 而言,MCM 中存储的相应的 K 个中心可能存在一部分实际上来自于不同 ID。为了生成可靠的正样本,我们首先根据与 query 的相似度,对 MCM 中的 K 个中心进行了排序。一种自然的想法是挑选最相似的中心作为正样本,然而最相似的中心可能在之前的更新过程中吸纳了该 query 的特征,挑选该样本作为正样本不利于网络学习类别内样本的多样性。此外,最不相似的样本有较大可能是一个离群点,即来源于不同的 ID。因此,我们选择排序居中的样本作为候选的正样本(称为 moderate positive sample)。

负样本方面,一种最简单的想法是将 MCM 中所有来自不同类别的  样本都作为负样本。然而,在聚类过程中可能产生分裂,即实际属于同一个类别的样本被划分到不同的簇中,在这种情况下,上述负样本策略会产生 false negative 样本,推远这些样本与 query 会干扰模型的优化过程。为了缓解这个问题,我们使用每个簇 K 个中心的平均特征来表示该簇,从而产生  个候选负样本。

域内对比学习(DSCL)

以往的工作 SPCL 采用了一种统一的对比学习策略(Unified Contrastive Learning, 简称 UCL),其旨在拉近来自同一类别的样本,并推远所有来自不同类别的样本,而不考虑样本是否来自同一个域。UCL 可以表示成以下形式:

其中 q 表示 query,  表示上述正负样本挑选策略挑选出的排序居中的正样本,  和  分别表示从源域和目标域中挑选出的中心样本。τ 表示温度系数。

然而,由于显著的域差异,模型非常容易区分来自不同域的负样本,这些样本不能够提供有效的优化信息。因此,我们提出了一种新颖的域内对比学习策略,其只优化来自同一个域内的样本,其可以表示为如下形式:

域内对比学习策略重点关注各自域内的样本特征学习,能苟充分挖掘域内的语义信息,从而提升模型的泛化能力。

二阶近邻插值(SONI)

我们还提出了一种新颖的插值策略 SONI 来产生更多具有判别力的负样本来进一步提升模型的性能。SONI 的基本思想是:对每个 query,从 MCM 中挑选两个彼此靠近但来自不同类别的困难负样本(hard negative)进行插值。

具体来说,MCM 包含两次近邻搜索过程,首先搜索 query 的近邻负样本集合(集合的大小由超参控制),对该集合内的每个样本,再次执行近邻搜索找到集合内与该样本最相近的样本,并进行插值。实验表明这种插值方式能够有效扩充负样本集合,提升模型的域适应能力。

实验分析

下面我们详细展示了在多个 ReID 域适应数据集下的模型性能对比分析。

(1)不同组件的性能分析

(2)不同正负样本挑选策略对比

Most、Least、Moderate 分别表示挑选最相似、最不相似,以及排序居中的正样本。Mean 和 All 分别表示取簇内均值以及取簇内所有实例作为负样本。

对比表 1 可以观察到,在正样本挑选环节,如果选最相似的样本反而会掉点,验证了保持正样本多样性的重要性;选最不相似的样本结果也略逊于选排序居中的样本,提示了聚类不纯问题的存在。在负样本挑选环节,使用均值作为负样本相比取所有负样本不仅可以减少比对次数,点数还略有提高。

(3)不同插值方法对比

我们对比了 SONI 与以往常见的两种插值方式,即 QNNI 和 RNNI。其中 QNNI 表示将 query 与最近邻的负样本进行插值,RNNI 表示从 query 的近邻负样本集合中随机挑选负样本进行插值(相比 SONI,缺失了二次近邻搜索过程)。

(4)与 SOTA 方法的性能对比

在 4 个 ReID 域适应数据集设置下,我们的方法都取得了大幅领先 SOTA 方法的性能。

总结

在本文中,我们提出了一种新颖的多中心表征缓存(MCM)来表示簇内潜在的多个子类,并配备了一套完备的正负中心挑选策略。此外,我们还提出了一种新颖的负样本插值策略,有效地扩充了负样本空间。同时,我们也注意到了域内难样本挖掘的重要性,并提出了域内对比学习策略。我们的方法有效提升了 ReID 模型的域适应能力,并在多个域适应数据集上都取得了大幅领先 SOTA 的性能。

域适应行人重识别中的多中心表征网络相关推荐

  1. 中科院地平线开源state-of-the-art行人重识别算法EANet:增强跨域行人重识别中的部件对齐...

    点击我爱计算机视觉标星,更快获取CVML新技术 编者按:前几天就看到这篇论文EANet,非常非常棒,有幸征得原作者同意授权"我爱计算机视觉"转载,感谢各位大佬的优秀工作~ 最重要的 ...

  2. 【论文阅读笔记】无监督行人重识别中的采样策略

    参考论文<Rethinking Sampling Strategies for Unsupervised Person Re-identification> 一.问题背景 无监督行人重识别 ...

  3. Occluded-REID 行人重识别中的遮挡数据集

    Occluded-REID dataset 在这篇论文中<OCCLUDED PERSON RE-IDENTIFICATION>首次制作的行人遮挡数据集.由移动相机拍摄的200个遮挡行人的2 ...

  4. 行人重识别论文阅读2-视频中基于时空相关性和拓扑学习的行人重识别(CTL)

    视频中基于时空相关性和拓扑学习的行人重识别 Spatial-Temporal Correlation and Topology Learning for Person Re-Identificatio ...

  5. 最强无监督行人重识别方法 Cluster Contrast ReID

    https://github.com/xiaomingzhid/sskd GitHub - JDAI-CV/fast-reid: SOTA Re-identification Methods and ...

  6. 最强无监督行人重识别方法 Cluster Contrast ReID,rank-1 94.6%

    代码连接: https://github.com/alibaba/cluster-contrast-reid 看了一下,主要是resnet50,resnet101训练的. 在行人重识别领域,如何获取海 ...

  7. 本周新出开源计算机视觉代码汇总(含图像超分辨、视频目标分割、行人重识别、点云识别等)...

    点击我爱计算机视觉标星,更快获取CVML新技术 今天汇总了本周新出的计算机视觉开源代码.(有部分已经有git地址但还没上传代码) 共有12份来自前沿计算机视觉研究的代码,CV君数了数,竟然发现其中10 ...

  8. 跨模态行人重识别研究综述

    跨模态行人重识别研究综述 刘天瑜,刘正熙 摘要:传统的行人重识别主要工作集中在同一模态下的行人重识别上,大部分应用于光源充足的场景.随着视频安防监控要求的不断提升,为了克服可见光摄像头无法全天候进行使 ...

  9. 行人重识别综述学习笔记

    文章目录 <行人重识别研究综述> 摘要: 1 行人重识别概述 1.1 背景与研究意义 1.2 研究现状 1.3 评价标准 2 基于图像的行人重识别研究(传统+深度) 2.1 特征表达方法 ...

最新文章

  1. 简单的文本片段替换器
  2. 13个AJAX验证框架
  3. 2020CCPC(长春) - Combination Lock(二分图博弈)
  4. Hadoop之Hadoop企业优化(HDFS小文件优化)
  5. 【开源项目】特斯拉+树莓派实现车牌识别检测系统
  6. 《C专家编程》一1.6 它很棒,但它符合标准吗
  7. win7系统还原失败怎么解决
  8. remix卡在android root,小米平板刷入remixeOS后怎么root?
  9. mongodb 的命令操作(转)
  10. 5.修改本地库/远程仓库的地址
  11. 快准狠才叫爽!六款智能电视语音识别大比拼
  12. html5 css练习 定位布局
  13. 使用Xftp连接Linux
  14. 【最新】电脑常用装机软件组合 装机必备
  15. get 请求中文乱码问题
  16. bootstrap-table导出excel科学计数法bug,数字过长变成科学计数法
  17. list去重及求两个list中元素的重复率
  18. 远程启动IDEA时报错Startup Error: Unable to detect graphics environment
  19. 2.Bulldog渗透实战
  20. 【ActiveMQ】JMS中间件ActiveMQ详解

热门文章

  1. 跑python用ThinkPad好还是MacBook好?
  2. 思维能力--提升认知、效率、耐心
  3. 新零售社交电商系统开发社交新零售电商系统模式
  4. 计算机pc怎么填充颜色,怎么在电脑Word中插入无填充颜色的正方形
  5. RocketMQ——MQ基础知识
  6. 手机太卡是关机再开机好,还是重启更好?
  7. mybatis 没有引号_mybatis的单引号
  8. springboot使用freemaker模板生成图片
  9. 【尖端干货】H.264编码下直播视频添加水印的优化
  10. 神奇的幻方(C语言)