行人重识别综述

Deep Learning for Person Re-identification: A Survey and Outlook

论文地址https://arxiv.org/pdf/2001.04193

1. 摘要

we categorize it into the closed-world and open-world settings.

  • closed-world:学术环境下

  • open-world :实际应用场景下

2. 引言

引言部分主要讨论了跨非重叠摄像头的行人重识别(Re-ID)问题,强调其在智能监控系统中的重要性和挑战。作者提到Re-ID面临的挑战,如视角变化、低分辨率、光照变化等,并指出早期研究主要集中在手工特征构建和距离度量学习上。随着深度学习的发展,虽然在一些标准数据集上取得了显著进展,但实际应用与研究场景之间仍存在较大差距。此外,作者提出了一个新的基线方法AGW和一个新的评估指标mINP,旨在推动未来的Re-ID研究,并讨论了一些未来的研究方向,以期缩小封闭世界和开放世界应用之间的差距。

2.1 构建一个ReID系统需要的五个步骤

  1. 原始数据采集

  2. 生成边界框:框出其中的行人,借助算法:person detection or tracking algorithms

  3. 对训练数据进行标注:标注这些个体在不同摄像头下的相同身份。这意味着,对于给定的个体,需要在不同摄像头捕获的图像中识别出该个体,并为其分配相同的标识符。

  4. 训练模型(核心):

    • feature representation learning

    • distance metric learning

    • their combinations

  5. 检索:给定一个疑犯(查询对象)和一个图库集,我们使用上一阶段学习的Re-ID模型提取特征表示。通过对计算的查询到库的相似性进行排序,获得检索到的排名列表。(Some methods have also investigated the ranking optimization to improve the retrieval performance)

2.2 学术环境与实际应用场景对比

学术环境实际应用场景
数据all the persons are represented by images/videos captured by single-modality visible cameras in the closed-world settingprocess heterogeneous data, which are infrared images [21], [60], sketches [61], depth images [62], or even text descriptions
人物框选generated bounding boxes ——已经框选好的require end-to-end person search from the raw images or videos ——端到端也就是要自己处理
标注大量且已经标注好少量或没有标注
标注正确性assume that all the annotations are correct, with clean labelsannotation noise
query是否在galleryassume that the query must occur in the gallery set by calculating the CMC [68] and mAPquery person may not appear in the gallery set [69], [70], or we need to perform the verification rather than retrieval [26]. This brings us to the open-set person Re-ID

3. CLOSED-WORLD PERSON RE-IDENTIFICATION

假设条件

  • 单一模态捕捉的图像或视频

  • 人物已经被框选,大多数是同一人

  • 有足够的标注

  • 标注正确

  • query person肯定在

  • gallery set.

standard closed-world Re-ID system 三个主要组件:

  • Feature Representation Learning ——focuses on developing the feature construction strategies

  • Deep Metric Learning——which aims at designing the training objectives with different loss functions or sampling strategies

  • Ranking Optimization ——concentrates on optimizing the retrieved ranking list.

2.1 Feature Representation Learning

four main categories
  1. Global Feature ——global feature representation vector for each person image without additional annotation cues

  2. Local Feature (§ 2.1.2), it aggregates part-level local features to formulate a combined representation for each person image

  3. Auxiliary Feature (§ 2.1.3), it improves the feature representation learning using auxiliary information, e.g., attributes [71], [72], [78], GAN generated images [42], etc

  4. Video Feature (§ 2.1.4), it learns video representation for video-based Re-ID [7] using multiple image frames and temporal information [73], [74

2.1.1 Global Feature Representation Learning
  • joint learning framework consisting of a singleimage representation (SIR) and cross-image representation (CIR) training process as a multi-class classification problem by treating each identity as a distinct class.

  • Attention Information.

  • Attention information in person re-identification refers to techniques used to enhance feature learning by focusing on specific parts of the data. It includes pixel-level attention which emphasizes individual pixels, part-level attention which focuses on different regions of a person's image, and spatial or background suppression to reduce noise from irrelevant areas. It also includes context-aware attention for handling multiple person images, which improves the feature learning by considering the relationships between different images or sequences. These attention mechanisms contribute to more accurate identification by highlighting relevant features and suppressing irrelevant ones.

Global Feature Representation Learning in person re-identification primarily focuses on extracting a comprehensive feature vector for the entire person image. It utilizes networks originally designed for image classification and applies them to re-ID, leveraging fine-grained cues for learning distinctive features.

2.1.2 Local Feature Representation Learning

Local Feature Representation Learning aims to be robust against issues such as misalignment of person images. It divides the body into parts or regions and extracts features from these specific areas. This method helps in accurately matching body parts across different images and is especially useful in dealing with variations in pose or when parts of the body are occluded.

2.1.3 Auxiliary Feature Representation Learning

usually requires additional annotated information (e.g., semantic attributes [71]) or generated/augmented training samples to reinforce the feature representation

  1. Semantic Attributes: These are descriptive characteristics such as "male," "short hair," "wearing a red hat," etc., which can be used to provide additional context and improve the accuracy of feature representation. The learning models may use these semantic attributes to distinguish between individuals more effectively, especially in semi-supervised learning settings where not all data may be labeled.语义属性:这些是描述性特征,例如“男性”、“短发”、“戴红帽子”等,可用于提供额外的上下文并提高特征表示的准确性。学习模型可以使用这些语义属性来更有效地区分个体,尤其是在并非所有数据都可以标记的半监督学习环境中。

  2. Viewpoint Information: This takes into account the angle from which the person is captured across different cameras. By considering the viewpoint, models can learn to recognize the same individual from various angles, which is crucial for robust Re-ID across multiple cameras.视点信息:这考虑了在不同摄像机上捕捉人物的角度。通过考虑视点,模型可以学会从不同角度识别同一个人,这对于跨多个摄像头进行强大的 Re-ID 至关重要。

  3. Domain Information: Treating images from different cameras as distinct domains, this approach aims to extract a globally optimal feature set that accounts for cross-camera variations. This could involve aligning features across these domains to ensure consistent identification.域信息:将来自不同相机的图像视为不同的域,此方法旨在提取考虑跨相机变化的全局最优特征集。这可能涉及对这些域的要素进行对齐,以确保一致的标识。

  4. GAN Generation: The use of Generative Adversarial Networks (GANs) to create synthetic images helps in addressing cross-camera variations and enhances the robustness of the model. These generated images can provide additional data points for training, particularly useful when actual images are scarce or when trying to model different environmental conditions.GAN生成:使用生成对抗网络(GAN)创建合成图像有助于解决跨相机变化问题,并增强模型的鲁棒性。这些生成的图像可以为训练提供额外的数据点,当实际图像稀缺或尝试对不同的环境条件进行建模时,特别有用。

  5. Data Augmentation: Custom data augmentation methods such as random resizing, cropping, and flipping are used to artificially expand the dataset, making the trained model more generalizable and less prone to overfitting. More sophisticated techniques might include generating occluded samples or applying random erasing strategies to simulate a wider variety of real-world conditions that the Re-ID system may encounter.数据增强:使用随机调整大小、裁剪和翻转等自定义数据增强方法,人为地扩展数据集,使训练后的模型更具泛化性,不易出现过度拟合。更复杂的技术可能包括生成遮挡样本或应用随机擦除策略来模拟 Re-ID 系统可能遇到的更多实际情况。

2.1.4 Video Feature Representation Learning

additional challenges

  1. accurately capture the temporal information.

  2. unavoidable outlier tracking frames within the videos

  3. handle the varying lengths of video sequences

2.1.5 Architecture Design

设计不同架构来解决

2.2 Deep Metric Learning

2.2.1 Loss Function Design

identity loss, verification loss and triplet loss

Re-ID领域中常用的四种损失函数及其作用:

  1. Identity Loss(身份损失):

    • 将人员Re-ID的训练过程视为一个图像分类问题,其中每个身份被视为一个独立的类别。

    • 在测试阶段,使用池化层或嵌入层的输出作为特征提取器。

    • 使用softmax函数计算输入图像被正确识别为其类别的概率,并通过交叉熵计算身份损失。

    • 身份损失在训练过程中自动挖掘难样本,简单易训练,且通常与标签平滑等策略结合使用以提高模型的泛化能力。

  2. Verification Loss(验证损失):

    • 优化成对关系,使用对比损失或二元验证损失来改善相对成对距离的比较。

    • 对比损失关注于增强样本对之间的欧氏距离比较,通过最大化同一身份内样本的相似性和不同身份样本的差异性。

    • 二元验证损失区分图像对的正负,关注于识别输入图像对是否属于同一身份。

  3. Triplet Loss(三元组损失):

    • 将Re-ID模型训练过程视为一个检索排序问题,确保同一身份的样本对距离小于不同身份样本对的距离。

    • 三元组包含一个锚点样本、一个正样本(与锚点同一身份)和一个负样本(不同身份),通过预定义的边际参数优化这三者之间的距离。

    • 为了提高训练的效果,采用了各种信息三元组挖掘方法,以选择更具信息量的三元组进行训练。

  4. OIM Loss(在线实例匹配损失):

    • 设计了一个包含存储实例特征的内存库,通过内存库优化在线实例匹配。

    • OIM损失通过比较输入特征与内存库中存储的特征之间的相似度,处理大量非目标身份的实例。

    • 这种方法在无监督领域自适应Re-ID中也得到了应用,通过控制相似度空间的温度参数优化实例匹配分数。

2.2.2 Training strategy

训练策略(Training strategy)是机器学习和深度学习中一组用于指导模型训练过程的方法和技术。它包括各种技巧和方法,旨在提高模型的学习效率、性能和泛化能力。

  1. 批量采样策略的挑战

    • 由于每个身份标注的训练图像数量差异很大,以及正负样本对之间严重不平衡,设计有效的训练策略变得具有挑战性。

  2. 身份采样

    • 处理样本不平衡问题的最常见策略是身份采样。在这种策略下,每个训练批次会随机选取一定数量的身份,然后从每个选定的身份中采样几张图像。这种批量采样策略保证了有效的正负样本挖掘。

  3. 适应性采样

    • 为了处理正负样本之间的不平衡问题,流行的方法是适应性采样,通过调整正负样本的贡献来应对不平衡,例如采样率学习(SRL)和课程采样等。

  4. 样本重权

    • 另一种方法是样本重权,通过使用样本分布或相似性差异来调整样本权重。这有助于平衡训练过程中样本的影响,提高模型对不同样本的区分能力。

  5. 高效的参考约束

    • 设计了高效的参考约束来将成对/三元组相似性转化为样本到参考的相似性,这不仅解决了不平衡问题,而且增强了区分性,并且对异常值具有鲁棒性。

  6. 多损失动态训练策略

    • 通过适应性地重新加权身份损失和三元组损失,动态组合多个损失函数,可以提取它们之间的共享组件。这种多损失训练策略导致了一致的性能提升。

2.3 Ranking Optimization

2.3.1 Re-ranking

通过不同的技术和方法(如重排、查询适应性和人机交互)来实现更准确的排名顺序。这些方法能够根据不同的情境和需求,灵活地优化排名结果,从而提高检索的准确性和效率。

2.3.2 Rank Fusion

在实际应用中,不同的检索或识别算法可能对同一数据集有不同的理解和表现,某些算法在特定情境下表现良好,而在其他情境下表现可能较差。排名融合通过合理地结合这些算法产生的结果,旨在充分利用每种方法的优势,从而提供一个综合考虑了多种视角和信息的更准确、更可靠的排名结果。

2.4 Datasets and Evaluation

数据集

GitHub - NEU-Gou/awesome-reid-dataset: Collection of public available person re-identification datasets

评估指标

  1. 累积匹配特性(CMC):

    • CMC曲线或CMC-k指标(又称Rank-k匹配准确率)反映了在前k个检索结果中找到正确匹配的概率。当每个查询仅对应一个正确结果时,CMC提供了一个准确的评估。然而,在包含多个正确匹配项的大型摄像头网络中,CMC可能无法完全反映模型跨多个摄像头的区分能力。

  2. 平均平均精确度(mAP):

    • mAP衡量的是在有多个正确匹配项时的平均检索性能,它在图像检索领域被广泛使用。对于Re-ID评估,mAP可以解决两个系统在查找第一个正确匹配(可能是容易的匹配)时表现相同,但在检索其他难度较大的匹配项时能力不同的问题。

  3. FLOPs(浮点操作次数每秒):

    • FLOPs是衡量模型复杂度和运算效率的指标,特别是在计算资源受限的训练/测试设备上,FLOPs成为了一个重要的考量因素。它反映了执行某个操作或运行模型一次所需的浮点运算次数。

  4. 网络参数大小:

    • 网络参数大小指的是构成模型的参数总量,这直接影响模型的存储需求和计算复杂度。在资源受限的环境中,参数越少的模型越受欢迎,因为它们占用的内存少,运行速度可能更快。

一些代表性方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/260515.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 驱动开发基础知识——APP 怎么读取按键值(十二)

个人名片: 🦁作者简介:学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:Vir2021GKBS 🐼本文由…

【Linux】Linux权限

Linux权限 Linux下用户的分类切换用户su 和 su - 的区别 对命令提权 权限的概念Linux权限管理文件访问者的分类(人)1️⃣拥有者u→user2️⃣其他人o→others3️⃣所属组group 文件类型和访问权限(事物属性)文件文件类型文件的基本…

基于RBAC的权限管理的理论实现和权限管理的实现

权限管理的理论 首先需要两个页面支持,分别是角色管理和员工管理,其中角色管理对应的是角色和权限的配合,员工管理则是将登录的员工账号和员工所处的角色进行对应,即通过新增角色这个概念,让权限和员工并不直接关联&a…

Unity求物体关于平面镜像对称后坐标以及旋转

前言:如题,我在已知一个平面L和物体A,我希望得到镜像后的物体B的位置和旋转。 效果: 推导: 首先我们需要知道物体的对称坐标A,我们现在能已知A坐标以及平面L的法线,如果我们能得到B的坐标&…

【后端高频面试题--Linux篇】

🚀 作者 :“码上有前” 🚀 文章简介 :后端高频面试题 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 后端高频面试题--Linux篇 往期精彩内容Windows和Linux的区别?Unix和Linux有什么区别…

利用nbsp设置空格

想要实现上面效果&#xff0c;一开始直接<el-col :span"8" >{{ item.name }} </el-col> 或者<el-col :span"8" >{{ item.name }}</el-col>或者<el-col :span"8" >{{ item.name }}</el-col> 都无…

生产力工具——JNPF开发平台

风流数年&#xff0c;只看今朝&#xff0c;Linux 让我们看到了开源驱动下的生产力&#xff0c;其实低代码和它一样&#xff0c;都是提高效率、降低成本的工具。 近 10 年间&#xff0c;JNPF 低代码平台如火如荼的发展起来&#xff0c;堪称黑马也不为过。这款广受好评的低代码平…

数据结构---字典树(Tire)

字典树是一种能够快速插入和查询字符串的多叉树结构&#xff0c;节点的编号各不相同&#xff0c;根节点编号为0 Trie树&#xff0c;即字典树&#xff0c;又称单词查找树或键树&#xff0c;是一种树形结构&#xff0c;是一种哈希树的变种。 核心思想也是通过空间来换取时间上的…

【Kotlin】Kotlin流程控制

1 选择结构 Kotlin 中选择结构主要包含 if -else、when 语句&#xff0c;并且可以返回结果。 1.1 if-else 1.1. 条件选择 fun main() {var score 85if (score > 90) {println("优秀")} else if (score > 80) {println("良好")} else if (score &…

Linux---守护进程

运行的这个进程&#xff0c;它的pid和gpid(进程组ID)一样&#xff0c;它是自成一组的。 这就是一个进程组。 进程组和任务有什么关系&#xff1f; 将任务指派给进程组。任务都是由进程组去完成的。 可以发现&#xff0c;这三个进程的会话id1351都是一样的&#xff0c;多个任…

动态内存管理(中)

动态内存管理&#xff08;上&#xff09;-CSDN博客&#xff08;malloc&#xff0c; realloc&#xff0c; calloc&#xff0c; free函数的用法以及注意事项等知识点&#xff09; 目录 1.对空指针的解引用操作 2.对动态开辟空间的越界访问 3.对非动态内存开辟空间使用free空间…

服务器遭受 DDoS 攻击的常见迹象有哪些?

服务器遭受 DDoS 攻击的现象很常见&#xff0c;并且有时不容易预防&#xff0c;有部分原因是它们的形式多种多样&#xff0c;而且黑客手段越来越隐蔽。如果您怀疑自己可能遭受 DDoS 攻击&#xff0c;可以寻找多种迹象。以下是 DDoS 攻击的5个常见迹象&#xff1a; 1.网络流量无…

力扣OJ题——相交链表

题目&#xff1a;160. 相交链表 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 思路一&#xff08;暴力求解&#xff09;&#xff1a; A链表的每个节点依次跟B链表中节点进行…

python-pyqt5-工具按钮(QToolButton)添加菜单(QMenu)

QToolButton提供了比普通按钮更丰富的功能。它可以显示一个图标、一个文本或二者结合&#xff0c;还支持各种样式和行为&#xff0c;例如弹出菜单或多种动作模式 样式 setToolButtonStyle(Qt.ToolButtonStyle) # 设置按钮样式风格# 参数Qt.ToolButtonIconOnly …

芋道-------如何实现工作流退回后重新提交到之前退回的节点

一、概述 上一节&#xff0c;我们讲过了工作流如何退回到申请人&#xff0c;接下来我们来讲一讲&#xff0c;如何重新提交。这里重新提交可以是再走一遍正常流程&#xff0c;同时也可以是直接跳过中间的步骤&#xff0c;直接继续给上一步退回的人审批。文章中会提及这两种情况。…

全面解读视频生成模型Sora

2024年2月15日&#xff0c;OpenAI在其官网发布了《Video generation models as world simulators》的报告&#xff0c;该报告提出了作为世界模拟器的视频生成模型Sora。 OpenAI对Sora介绍如下&#xff1a; We explore large-scale training of generative models on video dat…

echarts制作两个柱状图

let colorList[#02ce8b,#ffbe62,#f17373]; let data1 [90,80,70,50] option { title:[{ // 第一个标题text: 环保检测, // 主标题textStyle: { // 主标题样式color: #333,fontWeight: bold,fontSize: 16},left: 20%, // 定位到适合的位置top: 10%, // 定位到适合的位置},{ //…

【Redis】理论进阶篇------Redis的持久化

一、前言 前面学习了Redis的相关的十大数据类型以及用SpringBoot集成我们的Redis的工具代码的书写。从这篇文章开始&#xff0c;就会从Redis相关的一些理论&#xff08;也是面试和工作的热点知识&#xff09;如&#xff1a;Redis的持久化、Redis的订阅发布模型、Redis集群环境搭…

wayland(xdg_wm_base) + egl + opengles 纹理贴图进阶实例(四)

文章目录 前言一、使用gstreamer 获取 pattern 图片二、代码实例1. pattern 图片作为纹理数据源的代码实例1.1 基于opengles2.0 接口的 egl_wayland_texture2_1.c1.2 基于opengles3.0 接口的 egl_wayland_texture3_1.c2. xdg-shell-client-protocol.h 和 xdg-shell-protocol.c3…

【C/C++】实现Reactor高并发服务器 完整版

代码结构 文件介绍 InetAddress.h InetAddress类 ip和端口设置 Socket.h Socket类 设置fd Epoll.h epollfd 管理类 Channel.h Channel类 管理epoll以及对应回调函数实现 EventLoop.h EventLoop事件循环类 TcpServer.h 服务器类 tcpepoll.cpp 主函数 InetAddress.h #if…