Start MGN
1. 序言
现代基于感知的信息中,视觉信息占了80~85%。基于视觉信息的处理和分析被应用到诸如安防、电力、汽车等领域。
以安防市场为例,早在2017年,行业咨询公司IHS Market,我国在公共和私人领域安装有摄像头约1.76亿部,至2020年这一数值将激增至6.26亿部。虽然这一数字值得考量,但网络摄像头、家用安防摄像头以及各行业特定用途摄像头安装数量的逐年增长是无需置疑的,且现存摄像头安装数量应该是一个不小的量级。围绕各种摄像头,各公司、个人开发了各种各样的智能分析算法,这其中就包括人脸识别、车牌识别以及我们本序列要讲的ReID算法。
2. ReID概念
行人重识别(Person Re-identification也称行人再识别,简称为ReID,是利用计算机视觉技术,通过提取在匹配特征,依次判断图像或者视频序列中是否存在特定行人的技术。简单点讲,就是跨摄像头、跨区域实现行人的匹配。
ReID被广泛的认为是一个图像检索的子问题。给定一个图像输入点的视频所检索到的行人,在其他视频采集点所采集的视频中检索出现过的人。从另一个角度讲,ReID常被用来作为人脸检测识别的补充。在一些无法获得高质量人脸图像的场合,整体的人体外观信息就被用来作为检索的依据。
3. ReID应用
(1) 行人检测与搜索
以往的行人检测与搜索侧重于传统的方法,即首先提取行人视觉特征,然后再进行特征的匹配。近几年来,行人重识别领域引入了深度学习的方法,即通过深度学习的方法提取视觉特征,然后进行匹配。
近几年来,ReID技术在行人检测与搜索领域应用非常广泛。尤其在安防监控、其他智能视频监控(如无人超市)、刑侦(追捕嫌疑人)、交管(追踪车辆等)方面应用尤其突出。
(2) MOT(多目标跟踪)
MOT全程多目标跟踪,顾名思义,是对多个目标同时执行跟踪的一种技术。当前MOT领域一种研究方向比较多,但主要的研究方向无非是JDE(协同检测与Embedding特征提取)、SDE(分离式检测与Embedding特征提取)和JDT(协同检测与跟踪)。其中JDE与SDE合称TBD(Tracking by detection, 基于检测的跟踪技术)。无论是JDE还是SDE ,均需要析出所有目标特征,然后在不同帧之间进行匹配(关联)。析出特征并进行前后帧关联的技术,实际上就利用了ReID的理论。
(3) 其他目标检测与搜索
前面讲到,ReID一般译作行人重识别,同理,在其他类型目标上也同样适用ReID技术(特征析出+匹配/关联)。如车辆跟踪、无人机跟踪等。
4. ReID算法分类
前述内容大致带大家谅解了一些关于ReID的知识,接下来我们一同归纳一下ReID的几种方法。
(1) 表征方法
表征学习又称表示学习,是利用机器学习获取每个实体或关系的向量化表达,以便在构建分类器或其他预测变量时更易提取有用信息的方法。如图一为表征学习方法的一般图例。
图一 表征学习
概念有些绕,我们简单理解,表征学习包含以下几个部分。
a. 首先是通过一个分类网络,对目标进行分类(Softmax Loss)。由于ReID一般是对同一类目标进行重识别,因此这里的分类,更具体的,是一种类内再分类的行为。不同于传统的目标检测等网络,我们再此处实际上是学习一种学习类内特征、增大类内特征的网络。
b. 一般情况下,除了分类以外,还需要添加属性判别分支(Attribute Loss)。这里的属性包括性别、头发、衣着等,增强对目标的特征描述能力。
c. 孪生网络。表征学习一般情况下,会同时训练两个一模一样的网络,每个网络除了执行分类和属性判别任务以外,网络间还要执行对比,获得对比损失(Contrastive Loss)。
(2) 度量方法
度量学习不同于前述的表征学习,度量学习旨在学习两幅图像的相似度。度量学习的依据是同一行人的不同图片的相似度大于不通行人的不同图片,同理,前者的Loss需要小于后者的Loss。
图二 度量学习
在训练过程中,网络输入为两张图片(Anchor和Positive、Anchor和Negative)或三张图片(Anchor、Positive、Negative),前者计算析出特征向量的欧氏距离(或其他特征向量损失),后者一般使用Triplet损失。
(3) 局部方法
局部特征是相对于整体特征而言的。在一些训练网络中,会提取某一行人的全局特征,用来计算Loss。基于局部特征的学习方法大致分为三种思路,分别是基于局部调整的方法、基于特征点检测的方法和基于局部导入判别的方法(PCB)。如图三为基础的局部特征方法。
图三 局部特征ReID网络
a. 基于局部调整的方法
该方法是将行人划分为几个等分不分,同时输入到网络中进行训练。
b. 基于特征点检测的方法
基于特征点检测的方法又叫基于姿态估计的局部调整方法。即首先通过特征点估计方法检测出特征点,然后根据已知知识进行学习,如头部与头部比较,手部与手部比较。
c. 基于局部导入的方法(PCB)
该方法类似于基于局部调整的方法,不同的是,前者是同时输入网络,后者是以此导入网络进行学习。
(4) 多粒度
多粒度学习方法类似于局部方法,不同的是,多粒度是将全局特征以及不同粒度的局部信息同时学习,最后整合到一起,以此来学习一个能够提取丰富信息和细节的网络。
5. MGN
MGN网络(多粒度网络)在云从科技的论文“Learning Discriminative Features with Multiple Granularities”中被提出。其核心思想是,不仅提取整张图像的特征,同时还将图像划分为不同粒度进行特征的提取,最后将完整图像的特征与不同粒度图像特征进行融合。
MGN网络的Backbone采用了ResNet50,但从res_conv4_1之后产生不同粒度的的学习分支。
MGN网络的Loss采用了交叉熵损失(CE)和Triplet损失。
接下来我们将从Backbone、数据预处理、Loss计算等角度做详细解读。
参考:
(1) 行人重识别(Person re-identification)概述 - 知乎
(2) https://www.lmlphp.com/user/70900/article/item/2612478/&wd=&eqid=c976327300010b9000000005645894a3
(3) https://blog.csdn.net/qq_39388410/article/details/108173767
(4) https://blog.csdn.net/wq3095435422/article/details/123697940 各种损失
(5) https://blog.51cto.com/u_15316394/3217922