定义

是利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术。给定一张切好块的行人图像 (probe image,), 从一大堆切好块的图像 (gallery images) 中找到同一身份的人的图像。这些图像通常是由不同摄像头拍摄的不连续帧。

主要技术方案


1. 基于表征学习的ReID方法

CNN自动从原始的图像数据中根据任务需求自动提取出表征特征(Representation),然后把行人重识别问题看做分类(Classification/Identification)问题或者验证(Verification)问题.

但是也有论文认为光靠行人的ID信息不足以学习出一个泛化能力足够强的模型。通过结合ID损失和属性损失能够提高网络的泛化能力。

2. 基于度量学习的ReID方法

2.1 对比损失(Contrastive loss)

对比损失用于训练孪生网络,可以使得正样本对之间的距离逐渐变下,负样本对之间的距离逐渐变大,从而满足行人重识别任务的需要。

2.2 三元组损失(Triplet loss)

三张图片分别命名为固定图片(Anchor) a ,正样本图片(Positive)p和负样本图片(Negative) n 。考虑正负样本对之间的相对距离.

2.3 四元组损失(Quadruplet loss)

四张图片为固定图片(Anchor) a ,正样本图片(Positive) p ,负样本图片1(Negative1) n1 和负样本图片2(Negative2) n2 。其中 n1 和 n2 是两张不同行人ID的图片,其结构如上图所示。则四元组损失表示为:

2.4 边界挖掘损失(Margin sample mining loss, MSML)

3. 基于局部特征的ReID方法

3.1 PCB-RPP

> 1. 提出了均匀分块的 Part-based Convolutional Baseline(PCB),探讨了较优的块间组合方式
> 2. 提出了基于 parts 的 Refined part pooling(RPP),用注意力机制来对齐 parts

3.2 基于骨架仿射变换对齐

3.3 Spindle Net

对于输入的一张行人图片,有一个预训练好的骨架关键点提取CNN(蓝色表示)来获得14个人体关键点,从而得到7个ROI区域,其中包括三个大区域(头、上身、下身)和四个四肢小区域。

3.4 AlignedReID链接

实现了自动对齐,首次超越人工识别.

  • 特点1:动态规划
    为了解决两幅图像之间的 Part对齐问题,分别提取局部特征和全局特征,通过N*N的距离矩阵描述最短路径即是两幅图像最佳的Local 匹配。
  • 特点2: 协同学习
  • 特点3: reRanking

3.5 EANet链接

  • 特点1:部件对齐池化(PAP: Part Aligned Pooling)
    其实就是根据骨架关键点先验知识,在feature map上进行纵向划分;
  • 特点2:部件分割约束(PS Constraint)
    发现meature map特征冗余性很强,所以添加一个正则约束,也就是和预训练的不见分割器所产生的部件伪标签对比,增加Conv5后meature map特征的空间区分性,减少相关度.

    4. 基于视频序列的ReID方法

    累计运动背景网络(AMOC)

    1) 首先训练了一个运动信息网络(Moti Nets)。这个运动网络输入为原始的图像序列,标签为传统方法提取的光流序列,输出光流序列;
    2) AMOC拥有空间信息网络运动信息网络两个子网络。图像序列的每一帧输入到Spat Nets来提取图像的全局内容特征,相邻的两帧将会送到Moti Nets来提取光流图特征。

5. 基于GAN造图的ReID方法

ReID的其中一个难点就是姿态的不同,通过每一张图片都生成标准的n个pose来实现不见对齐.

Person Re-ID行人重试别梳理的更多相关文章

  1. Person Re-ID行人重试别数据集

    1. 杜克大学数据(DukeMTMC-reID) DukeMTMC 数据集是一个大规模标记的多目标多摄像机行人跟踪数据集.它提供了一个由 8 个同步摄像机记录的新型大型高清视频数据集,具有 7,000 ...

  2. Akka源码分析-Persistence-AtLeastOnceDelivery

    使用过akka的应该都知道,默认情况下,消息是按照最多一次发送的,也就是tell函数会尽量把消息发送出去,如果发送失败,不会重发.但有些业务场景,消息的发送需要满足最少一次,也就是至少要成功发送一次. ...

  3. 浅谈PHP数据结构之单链表

    什么是链表?(依据百度词条查询而得) 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每个元素称为结点)组成,结点能够在执 ...

  4. [转帖]微软宣布加入 OpenJDK 项目

    微软宣布加入 OpenJDK 项目 https://news.cnblogs.com/n/646003/ 近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含 ...

  5. 微软宣布加入 OpenJDK,打不过就改变 Java 未来!

    近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含接下来发生的事情以及微软如何开始将其团队整合到 OpenJDK 社区. 在邮件中,Bruno Borges ...

  6. (四) appium-desktop 脚本录制常用AW使用介绍

    通过使用appium-desktop录制脚本,编写app自动化脚本的过程中,会使用到一些AW,下面就这些AW的使用方法做详细的介绍.通过实践可以看到这几个AW可以完成测试工作. AWOpenGiveP ...

  7. 微软宣布加入 OpenJDK 项目

    近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含接下来发生的事情以及微软如何开始将其团队整合到 OpenJDK 社区.在邮件中,Bruno Borges ...

  8. Infrared-Visible Cross-Modal Person Re-Identification with an X Modality (AAAI 2020)

    Infrared-Visible Cross-Modal Person Re-Identification with an X Modality (AAAI 2020) 1. Motivation 可见 ...

  9. atomic 原子自增工程用法案例

    案例 1 : 简单用法 atomic_int id; atomic_fetch_add(&id, 1) atomic_uint id; atomic_fetch_add(&id, 1) ...

随机推荐

  1. STM32应用实例十一:基于SPI和AD7192的数据采集

    在开发臭氧发生器的时,我们需要一个高分辨率的AD采集,于是选择了AD7192,选择这款ADC的原因比较简单.首先它是24位的符合我们的精度要求:其次它自带时钟,便于节省空间:第三他又4路单端或2路差分 ...

  2. FlashBack 闪回

    [学习目标] Flashback Database 功能非常类似与RMAN的不完全恢复,它可以把整个数据库回退到 过去的某个时点的状态,这个功能依赖于Flashback log日志.比RMAN 更快速 ...

  3. Confluence 6 修改日志文件的大小数量和级别

    修改日志文件的大小和数量 在默认的情况下,Confluence 将会保持 5 个日志文件,每一个日志文件的大小超过 20 MB 的时候将会被重写. 你可以修改默认日志文件的大小和数量,通过编辑 < ...

  4. Confluence 6 用户目录图例 - 只读连接 LDAP 整合本地用户组

    上面的图:Confluence  连接到一 LDAP 目录,权限对本地用户组设置为只读. https://www.cwiki.us/display/CONFLUENCEWIKI/Diagrams+of ...

  5. 修改Mysql5.7的root密码

    Mysql5.7修改root密码 禁用root密码 1.修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1 这一行配置让 mysqld 启动时不 ...

  6. (六)STL仿函数functor

    1.仿函数为算法服务,特点是重载操作符() 2.一共分为3大类,包括算术类,逻辑运算类,相对关系(比较大小):都继承了binary_function 3.仿函数的一些调用示例,其中右边的仿函数没有继承 ...

  7. Git- 命令及使用

    关于Git相关介绍这里就不介绍了,可转<Git- 简介>或者查看官网信息.这篇整理一下git相关的命令.   1) 远程仓库相关命令 克隆下载仓库:$ git clone git://gi ...

  8. 第二十单元 计划任务crond服务

    什么是计划任务:后台运行,到了预定的时间就会自动执行的任务,前提是:事先手动将计划任务设定好.这就用到了crond服务 crond服务相关的软件包[root@MiWiFi-R3-srv ~]# rpm ...

  9. ActiveMQ消息的消费原理

    消费端消费消息: 在 初识ActiveMQ 中我提到过,两种方法可以接收消息,一种是使用同步阻塞的ActiveMQMessageConsumer#receive方法.另一种是使用消息监听器Messag ...

  10. 高并发编程基础Synchronized与Volatile

    关键字Synchronized: 当使用Synchrnized (o) ,锁定 o 的时候,锁定的是 o 指向的堆内存中 new 出来的对象,而非 o 引用,当锁定 o 以后,一旦 o 指向了其他对象 ...