超标量神经元:采用矢量神经元胶囊实现”长周期“的行人重识别(换装行人重识别)
Published in: IEEE Transactions on Circuits and Systems for Video Technology ( Volume: 30, Issue: 10, October 2020)
论文地址:https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8873614&tag=1
代码地址:https://github.com/Huang-3/Celeb-reID
摘要
目前的行人重识别(re-ID)工作主要针对于一个人不太可能更换衣服的短期场景。
然而,在长期行人重识别的情况下,一个人有很大的机会去更换衣服。一个复杂的行人重识别系统应该考虑到这些变化。
为了便于长期行人重识别(re-ID)的研究,本文介绍了一个名为“celeb - reid”的大规模re-ID数据集。
与以前的数据集不同,同一个人可以在拟议的“celeb - reid”数据集中换衣服。“celeb - reid”的图片是通过名人的街头快照从网上获得的。共有1052个id和34186张图像,使Celeb-reID成为迄今为止最大的长期行人重识别数据集。
为了解决行人重识别的换衣挑战,我们提议使用矢量神经元(VN vector-neuron)胶囊来代替传统的标量神经元(SN scalar-neurons)来设计我们的网络。与SN相比,VN中的一个额外维度信息可以感知同一个人的服装变化。
我们引入了一个精心设计的ReIDCaps网络,并集成了胶囊来处理行人重识别任务。该网络采用了软嵌入注意(SEA Soft Embedding Attention)和特征稀疏表示(FSR Feature Sparse Representation)机制来提高性能。在提出的长期行人重实别数据集和两个常见的短期行人重识别数据集上进行了实验。
文章给出全面的分析,以证明我们的数据集中暴露的挑战。实验结果表明,在长期情况下,我们的ReIDCaps可以大大优于现有的最先进的方法。新的数据集和代码将被发布,以促进未来的研究
关键词:行人重识别、长期场景、换衣、矢量神经元胶囊
1 介绍
图1、标量神经元(SN) 与 矢量神经元胶囊(VN capsule)在行人重识别上。(a)-(d)和(A)-(D)属于Celeb-reID数据集中两个不同id的图像【即(a)-(d)四张图都是张三,(A)-(D)是李四】。(d)和(A)图有两名穿着相似深色衣服的人。VN胶囊使用向量的长度来表示不同的id,而它的方向用于感知不同类型的衣服。具有二维感知能力,通过胶囊的长度更容易区分不同的id。相反,典型的SN无法在混乱的外观之间做出决定(例如,(d)中的一些图像被重新分类为绿色bounding box的ID)。
表1、Celeb-REID和其他人re-ID数据集的比较
图2、我们数据采集的途径。包括四个主要步骤。
图3、这三行数据代表我们Celeb-reID数据集中3个不同的ID(三个不同的人)。对于每个ID,都穿着不同的衣服
表2、我们的Celeb-Reid数据集的数据分割。在测试集中,420个ID中大约30%的图像属于查询集,其他70%的图像属于Gallery集(被查询库)
图4、我们的Celeb-Reid数据集的统计信息。(a)、(b)和©分别表示年龄、性别和国籍的分布情况。
图5、拟议的ReIDCaps网络的体系结构。给定一个输入图像,使用imagenet训练的CNN骨干网(即DenseNet-121[30])提取低级视觉特征。骨干网络的输出被送到三个分支,包括胶囊模块(ID和衣服感知)、FSR和SEA(两个辅助模块)。
图6、mAP对方程1中参数γ的敏感性。x轴和y轴分别代表γ和mAP。实验在Celeb-reID上进行。
下图为方程1,这里的γ的大小决定FSR与SEA损失函数之和的比重
图7、mAP对方程1中参数γ的敏感性。x轴和y轴分别表示γ和rank-1精度。实验在Celeb-reID上进行。
表3、我们ReidCaps网络的消融研究。Map和rank-n (n = 1,5和10)被列出。最好的表现用粗体表示
表4、在两种不同的行人重识别场景下,我们的ReidCaps模型的不同训练策略的消融实验
图8、基于”SN“和”VN胶囊“的网络。上面的网络使用VN胶囊,下面的网络使用了传统的CNN图层。两个网络使用相同的输入图像大小和骨干网络(baekbone)(即DenseNet-121)。FC、BN、ReLU、L CE分别表示全连接层、批量归一化、ReLU激活函数、交叉熵损失。
表5、基于SN的IDE+模型(图8中下面的网络)和我们的CAPSiter=4模型(图8中上面的网络)的性能比较
图9、使用C-Caps进行类内变化可视化。我们在Celeb-reID的训练集中选择了属于同一个人(共76张图片)的四种服装(9张图片)。“a”到“d”代表不同的衣服,“1,2,…”代表样本图像的索引。在ID已经给出的情况下,使用C-Caps中的VN胶囊,利用余弦相似度计算两幅图像之间的相似度。其中。我们使用激活映射来表示任意两张图像之间的相似性。红色和绿色分别代表最多和最少的相似对。对角线上的元素是自相似的
表6、通过对身体不同部位设置不同权重得到的性能表现。部位分割可参照图10。我们主要评估celebrity - reid的结果。分配给celebrity - reid - light的权重与celebrity - reid相似,因为两者都属于长期行人重识别的场景。通过考虑不同身体部位的贡献,我们简单地使用market1501上的另一组权重
图10、身体部位分区。整个图像记为G。P11、P12、P13(也包括P21、P22)是与G等分的部分。
表7、比较我们的结果与已发表的最先进的方法。最佳结果以粗体显示。Rank-n和mAP在下表列出
图11、姿态估计结果(底部一行)。头部图像(最上面一行)根据颈部关键点的位置提取
表8、对长期行人重识别(CELEB-REID © 或者 CELEB-REID-LIGHT (C-L))和短期行人重识别(CELEB-REID © OR CELEB-REID-LIGHT (C-L))使用RS(见EQ8)的鲁棒性评估。
map和rank-1精度作为评价指标
表9、仅使用头部图像时行人重识别的性能比较
所提出的数据集中仅使用头部信息进行识别 甚至比Market1501还要差。这是因为我们数据集中的名人有很大的概率会戴太阳镜或帽子,这使得他们很难被认出来。
2 结论
本文介绍了一种新的长期行人重识别数据集“Celeb-reID”。该数据集使用名人的街头快照作为资源。与以前的数据集相比,我们的数据集是最大的换装行人重识别re-ID数据集。本文设计了一个ReIDCaps模型来解决行人换装挑战。与常见的基于SN的CNN相比,我们使用VN胶囊来感知同一个人的衣着变化。
我们将胶囊层与经过ImageNet训练的CNN结合,集成在复杂的行人重识别数据上。通过一个综合实验,证明了该方法在长期重识别场景下的优越性
3 自己的一些想法(超像素随机擦除)
本文主要提出两个创新点,一个是矢量神经元,一个是ReIDCaps
ReIDCaps这个板块主要是优化了网络结构
而所谓矢量神经元,听着名字觉得很难,但是其实就是给每个人(身份证相同的人)都给出一个类别,使得网络能够去对身份相同的人去进行分类。
之前有读过一篇对行人进行超像素随机擦除的论文,所以想着把这个创新点加进来。
思路也很简单,就是把行人容易更换的衣服裤子部分用超像素随机擦除的技术进行处理,使得算法训练的时候能够专注于行人的体态比如身材等,而不是去学习衣服颜色等特征。个人觉得这个想法还是很好的,但是不知道为什么用起来效果很差。
超像素随机擦除的效果如下(之后有时间也总结一下这个知识点)
刚开始拿出一千张图像进行训练,提升了两个点(运气好),但是对整个数据集进行完整训练后竟然出现了map下降的情况,笔者觉得可能是因为没有修改主干网络部分。。。。虽然失败了,这里也记录一下长点经验