1. ReID算法介绍

综述相关资料:https://zhuanlan.zhihu.com/p/31921944
综述文章:https://arxiv.org/pdf/1610.02984.pdf
2005的论文提出了ReID的概念,并使用基本的图像特征和时空特征,通过贝叶斯网来推断是否同一个人;2014年ReID开始引入深度学习的方法。

1.1 定义

行人重识别(Person Re-identification)也称行人再识别,简称为ReID,给定一个监控行人图像,检索跨设备下的该行人图像。一个区域有多个摄像头拍摄视频序列,ReID的要求对一个摄像头下感兴趣的行人,检索到该行人在其他摄像头下出现的所有图片。

1.2 难点

行人重识别数据集是由一系列监控摄像头拍摄得到,并用检测算法将行人抠出,做行人的匹配。在这些数据集中,人脸是十分模糊的,无法作为匹配特征,而且由于多个摄像头拍摄视角不同,同个人可能被拍到正面,侧面,背面,具有不同的视觉特征,因此是一个比较难的图像匹配问题。

1.3 评价指标

常用评价指标包括:
rank-k:算法返回的排序列表中,前k位为存在检索目标则称为rank-k命中。eg:rank1:首位为检索目标则rank-1命中。
Cumulative Match Characteristic (CMC) curve:计算rank-k的击中率,形成rank-acc的曲线。
mAP(mean average precision):反应检索的人在数据库中所有正确的图片排在排序列表前面的程度,能更加全面的衡量ReID算法的性能。如下图,第一个人的mAP=(1/1+2/3+3/4+4/8+5/20)/5=0.633,同样可以算出第二个人的mAP = 0.756,平均值为69.45%。

深度学习系列11:ReID概述和资源

1.4 损失函数

损失函数有两种定义方法:
一种是输入两张图片,预测相同则为1,否则为0,是Verification模型
另一种是输入一张图片,预测ID号,称为identification问题,是classification模型。
融合后效果如下图:
深度学习系列11:ReID概述和资源

1.5 数据集

Market1501。用得比较多,拍摄地点在清华大学,图片数量有 32000 张左右,行人数量是 1500 个,相当于每个人差不多有 20 张照片,它是用 6 个摄像头拍的。
DukeMTMC-reID,拍摄地点是在 Duke 大学,有 36000 张照片,1800 个人,是 8 个摄像头拍的。
CUHK03,香港中文大学,13000 张照片,1467 个 ID,10 个摄像头拍的。
在 ReID 研究里,现在图片的数量集大概在几万张左右,而 ID 数量基本小于 2000,摄像头大概在 10 个以下,而且这些照片大部分都来自于学校,所以他们的身份大部分是学生。
这可以跟现在人脸数据集比较一下,人脸数据集动辄都是百万张或者千万张照片,一个人脸的 ID 多的数据集可以上百万,而且身份非常多样。这个其实就是 ReID 面对前面那么复杂的问题,但是数据又那么少的一个比较现实的情况。

1.6 基本流程

首先需要做行人检测,接下来做ReID,抽取查询图片特征,与底库所有图片的特征计算距离,然后按照距离进行排序,取出排在前面的图片。
深度学习系列11:ReID概述和资源

这里是一篇入门的文章:https://zhuanlan.zhihu.com/p/50387521

2. 模型

2.1 基于表征学习的模型

论文地址:https://arxiv.org/pdf/1611.05244.pdf
CNN可以自动从原始的图像数据中根据任务需求自动提取出表征特征(Representation)。由于每个ID对应的照片并不多,不足以训练出推断ID的神经网络,因此还要结合一对图像是否属于同一个人来训练网络,损失函数分为两部分:(1)分类问题是指利用行人的ID或者属性等作为训练标签来训练模型;(2)验证问题是指输入一对(两张)行人图片,让网络来学习这两张图片是否属于同一个行人。
深度学习系列11:ReID概述和资源

上图训练需要输入两组图片,通过相同的base network(这篇论文的base network基于GoogleLeNet),因此这个网络又叫做Siamese Network,用于提取图像特征。后面的Verification网络获取这一对特征,计算是否来自于同一个人;Classification网络则用于判断特征是否能正确分类到person ID,两者的损失函数组合起来进行训练。
在进行预测时,只需要使用Verification网络,判断底库图片中哪些和检索图片一样即可。

2.2 加上行人属性的APR网络

相关资料:https://zhuanlan.zhihu.com/p/37931822
论文地址:https://arxiv.org/pdf/1703.07220.pdf
除了行人ID外,还可以为数据集添加其他的属性进行训练,包括:性别、头发长短、袖子长短、下衣长短、下衣类型、戴帽子、背包、年龄、上衣颜色 、下衣颜色。当我们识别两个人是不是一个人的时候,其实不会直接得出答案,而是先看他们的属性,是不是同性,或者说他们是不是穿一样的衣服(短时间内),这有助于我们得出最后的判断。APR模型包含两个分类模型,第一个是属性分类模型,后面跟着ID分类模型,两者的损失按照一定的比例结合起来,如下图:
深度学习系列11:ReID概述和资源

2.3 基于度量学习的S-CNN

论文地址:https://arxiv.org/pdf/1607.08378.pdf
表征学习里面其实已经有度量学习的成分在了。度量学习旨在通过网络学习出两张图片的相似度。在行人重识别问题上,具体为同一行人的不同图片相似度大于不同行人的不同图片。最后网络的损失函数使得相同行人图片(正样本对)的距离尽可能小,不同行人图片(负样本对)的距离尽可能大。常用的度量学习损失方法有对比损失(Contrastive loss)、三元组损失(Triplet loss)、 四元组损失(Quadruplet loss)、难样本采样三元组损失(Triplet hard loss with batch hard mining, TriHard loss)、边界挖掘损失(Margin sample mining loss, MSML)。
深度学习系列11:ReID概述和资源

不同的度量学习结果如下:
深度学习系列11:ReID概述和资源

2.4 基于局部特征的ReID方法

  1. 直接切块方法
    论文地址:https://arxiv.org/pdf/1607.08381.pdf
    深度学习系列11:ReID概述和资源

如下图所示,图片被垂直等分为若干份,之后被分割好的若干块图像块按照顺序送到一个长短时记忆网络(Long short term memory network, LSTM),最后的特征融合了所有图像块的局部特征。但是这种缺点在于对图像对齐的要求比较高,如果两幅图像没有上下对齐,那么很可能出现头和上身对比的现象,反而使得模型判断错误。

  1. 仿射变换对齐
    论文地址:https://arxiv.org/pdf/1701.07732
    使用关键点,然后通过仿射变换进行对齐:
    深度学习系列11:ReID概述和资源

  2. ROI共享学习Spindle Net/GLAD
    论文地址:http://openaccess.thecvf.com/content_cvpr_2017/papers/Zhao_Spindle_Net_Person_CVPR_2017_paper.pdf
    Spindle Net获得关键点后,抠出7个ROI区域图来,和原始图并行进行训练,如下图。橙色的部分表示参数是共享的:
    深度学习系列11:ReID概述和资源

论文地址:https://arxiv.org/pdf/1709.04329.pdf
GLAD利用提取的人体关键点把图片分为头部、上身和下身三个部分。之后将整图和三个局部图片一起输入到一个参数共享CNN网络中,最后提取的特征融合了全局和局部的特征。为了适应不同分辨率大小的图片输入,网络利用全局平均池化(Global average pooling, GAP)来提取各自的特征。和Spindle Net略微不同的是四个输入图片各自计算对应的损失,而不是融合为一个特征计算一个总的损失。
深度学习系列11:ReID概述和资源

  1. 自动对齐方法
    论文地址:https://arxiv.org/pdf/1711.08184.pdf
    AlignedReID提出基于SP距离的自动对齐模型,在不需要额外信息的情况下来自动对齐局部特征。而采用的方法就是动态对齐算法,或者也叫最短路径距离。这个最短距离就是自动计算出的local distance。
    深度学习系列11:ReID概述和资源

这个距离加上全局距离作为优化目标函数:
深度学习系列11:ReID概述和资源

2.5 基于视频序列的ReID方法

论文地址:https://arxiv.org/pdf/1711.08766.pdf
主要思路是通过landmark detector,诱导网络去对图片进行一个质量判断,用多帧的其他信息来弥补质量差的帧。
深度学习系列11:ReID概述和资源

2.6 基于GAN的ReID方法

总之就是缺啥就让GAN来补齐。
第一种:背景迁移
深度学习系列11:ReID概述和资源

第二种:姿势迁移
深度学习系列11:ReID概述和资源

第三种:摄像头迁移
深度学习系列11:ReID概述和资源

2.7 基于贝叶斯推断的时空图像模型融合

相关资料:https://zhuanlan.zhihu.com/p/34778414
论文地址:https://arxiv.org/pdf/1803.07293.pdf
首先,统计同一个人不同摄像头之间时间差的分布
深度学习系列11:ReID概述和资源

在其他数据集上(于是我们就可以说这是一个跨数据集的任务了)预训练一个卷积神经网络,然后用这个卷积神经网络去目标数据集上提特征,用余弦距离算特征相似度
将相似度排在前十的当做同一个人,用这种“同一个人”的信息+极大似然估计构造时空模型,计算公式为:
视觉相似度*同一人产生这种移动的概率/任意两个时空点组成这种移动的概率。
对于弱图像分类器来说,融合时空特征后效果明显变好。

相关文章:

  • 2021-09-30
  • 2022-12-23
  • 2021-10-18
  • 2021-07-10
  • 2021-06-24
  • 2021-09-09
猜你喜欢
  • 2021-12-04
相关资源
相似解决方案