本文是对『Intra-Camera Supervised Person Re-Identification』一文的详细解读,IJCV接收论文。

作者信息:

  • 论文链接:https://arxiv.org/abs/2002.05046

      01      

前言

行人重识别(person re-id, person re-identification)考虑的是一个跨摄像头关联目标人物的问题。对于传统的全监督行人重识别,为了训练得到一个性能较好的模型,大量标注好的行人数据是必不可少的。

标注行人重识别数据是一个耗时又耗力的工作。由于这个原因,无监督(unsupervised)和跨领域无监督(unsupervised domain adaption)行人重识别算法在近几年得到了越来越多的关注也获得了很大的进步。但是相比于全监督行人重识别模型而言,无监督模型的性能依然有一定的差距。

另外, 和全监督行人重识别模型类似,跨领域无监督模型需要一个准确地标注好的数据集来作为源域数据集。

基于这些发现,我们提出了一种在全监督和无监督之间的行人重识别问题---摄像机域内监督行人重识别问题(ICS person re-id, Intra-Camera Supervised person re-identification),并且就该问题设计了一种行人重识别模型(MATE, Multi-tAsk mulTi-labE deep learning model)。

实验结果表明,摄像机域内监督行人重识别可以减少数据标注的复杂性和工作量,我们基于该问题所提的行人重识别模型也能够取得比无监督和跨领域无监督模型更好的性能(所选的对比结果更新在论文提交的时间,即 2019 年 12 月)。

      02      

摄像机域内监督(ICS)行人重识别

为了简化问题,我们可以把全监督行人重识别的数据标注过程分为两个阶段:1)摄像机域内行人图片标注;

2)摄像机之间行人(个体)关联。

对于摄像机域内行人图片的标注,除了人工标注我们还可以利用一些性能较好的跟踪算法进行初步标注,然后人工进行图片的选取和核对,从而大大降低数据标注的工作量。

但是对于摄像机之间的行人,由于摄像机和摄像机之间可能存在比较大的差异,比如室内和室外照片的光照差异,入口和出口拍到行人的角度差异等等,这些原因导致了跟踪算法往往不能够成功地跨摄像头跟踪目标人物。这也是行人重识别问题提出来的原因之一。

因此,对于摄像机之间的行人关联往往需要人工的参与。跨摄像头行人关联是一个比较复杂的过程,对于每一个需要关联的行人,我们需要将他与其他摄像头下所有未标注的行人进行比对。此外,还需要保证不同的标注员标注相同行人时给的是同一个标签。基于这些发现,我们提出了摄像机域内监督行人重识别问题。

图 1, 传统全监督行人重识别数据和摄像机域内监督行人重识别数据的对比

图 1 表示了传统全监督行人重识别数据和摄像机域内监督行人重识别数据的差异。相比于全监督行人重识别数据,摄像机域内监督行人重识别数据只提供了每个摄像机下  行人照片的标签信息,而没有提供相同行人在不同摄像机下的关联标签。

因此在创建 摄像机域内监督行人数据集时可以减少跨摄像头标注的工作量。我们做过一个定量模拟的小实验也发现:ICS 的行人数据人工标注的工作量要远远小于传统直接进行跨摄像头行人图片关联所需要的工作量。另外在标注摄像机域内监督行人数据集时,多个标注员可以同时进行标注(如图 2 所示)。

图 2, (a)传统全监督行人重识别数据集标注过程,

(b)摄像机域内监督行人重识别数据集标注过程

根据数据集中标签的特性,摄像机域内监督行人重识别问题需要解决以下两个任务:

  1. 如何利用在每个摄像机下所提供的标签信息;

  2. 如何让模型自动关联不同摄像机下相同的行人并且利用这些自动关联上的标 签。

为了评估模型自动关联不同摄像机下相同行人的质量,我们在创建摄像机域内监督行人重识别的数据集时,除了提供每个摄像机下的行人标签,我们也提供了摄像机之间相同行人的关联标签。

      03      

MATE 模型

图 3,Multi-tAsk mulTi-labE (MATE) deep learning model

图 3 展示了 MATE 模型的示例图。在该模型中,我们针对 ICS re-id 需要解决的两个任务对应设计了两个模块:摄像机域内监督多任务学习模块(Per-Camera Multi- Task Learning)和多摄像机多标签学习模块(Multi-Camera Multi-Label Learning)。

(1)摄像机域内监督多任务学习模块

图 3. 摄像机内域内监督多任务学习模块

摄像机域内监督多任务学习是对应解决上面提到的第一个任务,即如何利用在每个摄像机下所提供的标签信息。

如图 3 所示,在这个模块中我们采用一个多任务学习深度模型。设计的基本思想是每个摄像机对应一个行人分类任务,所有的这些任务共用一个特征提取模块,再把输出特征作为输入输入到全连接层上。每个摄像机对应后面一个全连接层。对于损失函 数,我们仅仅是采用最简单的 Softmax Cross-Entropy:

(2)多摄像机多标签学习模块

多摄像机多标签学习模块是对应解决上面提到的第二个任务,即让模型自动关联不同摄像机下相同的行人并且利用这些自动关联上的标签。我们在这个模块里又设计了两个子模块,一个是摄像机间的相同行人关联模块,另一个是多标签学习模块。

摄像机间相同行人关联模块主要是基于一个相同行人图片在不同图片类中互为最相似的思想。这个也是受启发于 CycleGan,但是 CycleGan 是 Pixel Level 的,而我们这里是 Feature Level 的。具体思路可用下面两个示意图表示:

摄像机间相同行人关联示意图 1

摄像机间相同行人关联示意图 2

摄像机间相同行人关联示意图 3

摄像机间相同行人关联示意图 4

多标签学习模块。如何两个行人关联上后,我们就采用多标签的方法在标签层面上让这两个行人关联上,具体做法是把关联上的图片的标签分别复制给对方。这样经过多标签处理后,不同摄像机下的相同行人就会拥有完全一样的多标签,如下图所示:

多标签学习策略示意图

经过上面两个模块的处理后,就可以关联上不同摄像机下的相同行人并且关联上的行人都会拥有新的标签。我们把这些新的标签更新到训练数据集中,并且再次采用softmax cross-entropy 来对模型进行再次更新:

最终的模型损失函数是这两个模块损失函数的线性叠加:

      04      

实验结果

实验结果

我们将现有的行人重识别工作进行了分类,分为无监督,基于跟踪算法,跨域无监督,摄像机域内监督,半监督和全监督行人重识别。从表格可以看出我们的 MATE 模型在 Market1501 的性能还是很有竞争性的。更多的实验结果请阅读我们的论文。

后记:ICS 行人重识别问题是一个为了降低数据创建的复杂性而提出的一个折中方案。论文在评审中一个 reviewer 说这个方案是:a sweet compromise between unsupervised and fully supervised person re-id。论文[2]目前刚被 IJCV接收。ICS 这一新问题可以很容易地从现有的全监督数据集上过渡过来:只需要在全监督数据集上去掉摄像机间的行人关联标签就可以。为了完善这一个新问题,我们在论文中提供了三个简单的benchmark 模型作为参考。另外 MATE 模型在算法上也比较好实现,没有涉及复杂的损失函数。目前已经有学者开始 follow 这一个问题。已经 release 的关于 ICS re-id 的论文已经做出了比我们论文更好的结果,但是在摄像机数量比较多的数据集上,比如MSMT17,性能和全监督模型依然存在着比较大的差距。

参考文献

[1]Xiangping Zhu, Xiatian Zhu, Minxian Li, Vittorio Murino, and Shaogang Gong. "Intra-camera supervised person re-identification: A new benchmark."  InProceedings of the IEEE International Conference on Computer Vision Workshops, pp. 0-0. 2019.

[2]Xiangping Zhu, Xiatian Zhu, Minxian Li, Pietro Morerio, Vittorio Murino, and Shaogang Gong. "Intra-Camera Supervised Person Re-Identification."arXiv preprint arXiv:2002.05046(2020),accepted to IJCV 2021.

备注:reid

行人-ReID-步态交流群

行人检测、行人重识别、步态识别等技术,

若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

摄像机域内监督行人重识别问题相关推荐

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

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

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

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

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

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

  4. CVPR2018——以属性为指导的无监督行人重识别

    Transferable Joint Attribute-Identity Deep Learning for Unsupervised Person Re-Identification(CVPR20 ...

  5. 【学习笔记】无监督行人重识别

    BUC <A Bottom-up Clustering Approach to Unsupervised Person Re-identification>2019 AAAI BUC是一种 ...

  6. CVPR 2022 部分行人重识别

    转载自CVPR 2022[行人/车辆重识别]相关论文和代码(更新中...) - 知乎 Person Re-identification 1. Learning with Twin Noisy Labe ...

  7. 【Journal of Computer-Aided Design Computer Graphics】基于生成对抗网络的行人重识别方法研究综述

    文章目录 引言 数据集介绍 基于GAN的行人重识别方法分类 2.1基于风格转换的方法 2.2基于数据增强的方法 2.3基于不变性特征学习的方法 3 基于GAN的方法性能对比分析 总结 引言 对于行人检 ...

  8. 中山大学提出新型行人重识别方法和史上最大最新评测基准

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 导读:行人重识别,是利用 CV 技术判断图像或视频序列中是否存在特定行人的技术.常规的行人重识 ...

  9. 中山大学提出新型行人重识别方法和史上最大评测基准

    本文转载自机器之心. 导读:行人重识别,是利用 CV 技术判断图像或视频序列中是否存在特定行人的技术.常规的行人重识别方法往往需要高昂的人工标注成本,计算复杂度也很大.在本文中,中山大学研究者提出的弱 ...

最新文章

  1. 修改openssh源代码,添加操作记录审记功能
  2. 【入门经典】在母版页中使用CSS
  3. Android 跨进程通信: AIDL
  4. 海龟交易法则07_如何衡量风险
  5. pid控制从入门到精通pdf_《PID整定指导》白皮书——PID领域的葵花宝典来袭!
  6. 为什么Web前端薪资如此高呢?总结了这4个原因
  7. 三星+android+u盘模式,三星安卓机,如何开启开发者模式,进行USB调试?
  8. 在ArcMap中制作Python加载项点击小班依次编号
  9. 为什么未来是全栈工程师的世界?
  10. cadence修改板框倒角_Allegro实操技巧:如何对矩形板框进行倒角设置?
  11. 抖音 文本转换html,html抖音效果CSS
  12. Greenplum Python专用库gppylib学习——base.py
  13. linux提升普通用户权限
  14. smarty新闻管理系统
  15. 英雄帖-Alibaba-企业智能事业部-技术专家/高级Java工程师
  16. 大数据从业者必读书籍《数据仓库工具箱》-第一章笔记
  17. 华为WEB开发前端全栈成长计划--HTML笔记
  18. missForest的R实现
  19. 平面螺旋天线自动化设计与分析
  20. java银行排队系统_用GUI模拟银行排队系统

热门文章

  1. html 右边是iframe 左右结构_站点的内链优化和一些常用的结构优化方法
  2. MyBatis框架 接口绑定、线程绑定
  3. P2820 局域网(最小生成树)
  4. TEN网格数据导入oracle,开源-Solidity 分散的oracle网络的示例链链接。-糯米PHP
  5. echart雷达图文字挤在一起_【数据可视化·图表篇】雷达图
  6. ajax高效分页查询,基于 Jquery+Ajax+Json高效分页实现代码
  7. oracle 添加服务命名空间,c# – 找不到类型或命名空间名称“OracleConnection”
  8. 【debug】moduleNotFoundError:No module named 'exceptions'
  9. 2019计算机网络考试,2019年计算机网络技术操作系统试题及答案.doc
  10. android 半圆滚动菜单,自定义控件:实现半圆滚动菜单效果