Introduction
现有的Re-ID方法普遍假定同一个人穿着的都是同样的衣服,但如果所穿着的衣服发生改变,传统的Re-ID方法可能将不那么有效,原因主要有二:
在传统Re-ID方法的训练过程中,衣服被作为一种具有判别性的特征对待;
人脸和体型这样的生物特征通常只占据图像主体的一小部分,这样的特征不易学习。
衣服无关的Re-ID方法也是被需要的,在失踪儿童寻找、嫌疑人追捕这样的社会问题中,一种不依赖衣服的Re-ID方法是非常重要的。
为解决这一问题,论文作者构建了一个大规模基准数据集ClOthes ChAnging Person Set(COCAS),该数据集包含了5266个人物的62832张图像,每个人物采集了5~25张图像,包含2~3种衣服。对于每一个人物,将一种衣服的图像收入Gallery Set作为目标图像,其余的图像归入Query Set。
进一步的,在此数据集的基础上,作者定义了衣服改变的Re-ID问题(Clothes Changing Re-ID),这类问题是通过一张目标图像和一个衣服模板来寻找特定人物的Re-ID问题。
对应的,论文作者提出了一个适用于解决此类问题的神经网络BC-Net(Biometric-Clothes Network),该网络有两条分支,一条分支用于提取人脸、体型这样的生物特征,另一条分支用于提取衣服特征。
Related Work
Re-ID数据集方面:最早的Re-ID数据集以VIPeR为代表,这类数据集规模太小,不足以支撑数据驱动的深度学习,于是诞生了CUHK03、Market1501和DukeMTMC这样的大规模数据集,近年来在这些数据集上的研究逐渐饱和,又出现了以Airport为代表的更大规模的Re-ID数据集。
Re-ID方法方面:早期的Re-ID工作主要聚焦于特征提取和度量学习,最近的一些方法则多从CNN架构性能的提升中获益。Re-ID问题可以被简单地视每个人是一个特定类别来计算判别损失,在深度度量学习中Re-ID问题被使用一个带有对比损失的孪生网络来训练,也有一些方法通过三元组上的三元损失来进行。论文提出的BC-Net与这些方法不尽相同,通过两个分支提取生物特征和衣服特征,由判别损失和三元损失共同监督训练。
Re-ID问题中的衣服改变:衣服改变是Re-ID中不可避免的一个问题,但受限于没有大规模数据集,这一问题现有的研究较少。目前,仅有一些Xue等人在PIPA数据集上的研究。此外,在GAN的研究上,有一些以Jetchev和Zhang为代表的学者进行了衣服迁移的研究。
The COCAS Benchmark
COCAS是一个同一个人物由不同的衣服的大规模行人重识别基准。包含了5266个人物,平均每个人物有12张图像,这些图像被采集于30个相机视角下,拥有多样的场景分布和不同的光照条件和遮挡现象。其中,训练集包括2800个人物的图像,测试集包括2466个人物的图像。COCAS与其他典型公开数据集的对比如下图所示
COCAS数据集的数据采集是在一个贸易商场进行的,在征得志愿者的同意之后,分别在4天采集了室内外30个相机下的图像,因此,图像具有明显的多样性。
所采集的图像中人物的关联通过以下四个步骤进行:
人物聚类Person Clustering:通过Re-ID特征将相似的人物聚类,并手动移除聚类结果中的Outlier图像;
人脸检测Face Detection:从每一个簇中选取一张锚图,检测该图像中的人脸;
人脸检索Face Retrieval:使用FaceNet提取人脸特征,通过k近邻算法搜寻每一个锚图下的人脸;
手工标注Manually Annotation:根据检索结果,手动选择真正匹配的图像。此后在该人物的图像下选取2~3种衣服,每种各5~6张图像构成数据集。
考虑到隐私保护的需要,论文额外发布了desensitized COCAS,该数据集对人脸和背景进行了高斯模糊。具体地,作者使用MTCNN对人脸部位进行检测,使用LIP分离前景和背景,对于脸部和背景部分,进行高斯模糊。
由于实际采集到的人脸不一定总是清晰的,环境信息也不应该作为判别条件,desensitized COCAS上虽然不会有较高的performance,但也是有价值的。
Methodology
- BC-Net是一个两分支的网络,其中一个分支是生物特征分支Biometric Feature(BF) Branch,使用人物图像作为输入,通过一个Mask模块来提取衣服无关信息;另一个分支是衣服特征分支Clothes Feature(CF) Branch,使用衣服模板和检测到的衣服区块一起作为输入,提取衣服特征;最后将两组特征进行融合作为人物的特征表达。
Network Structure
BC-Net的网络结构图如下图所示
BF Branch
- BF分支将一组用户输入通过ResNet50骨干网络产生一组特征图,为了提取到与衣服无关的特征,在骨干网络之后,BF分支引入了一个Mask模块,通过特征图预测出一组掩码。BF分支最终的输出特征,中的每一个元素是第张特征图与掩码矩阵的哈达马积的全局平均池化,即
CF Branch
- CF分支通过一个Faster R-CNN检测器预测目标图像中衣服的位置,将检测结果resize到和衣服模板相同的尺寸作为输入,通过骨干网络ResNet50提取特征,经过全局平均池化得到CF分支的输出特征。
Fusion
- BF分支输出的特征向量和CF分支输出的特征向量进行连接后,通过一个线性变换得到最终的人物表征,即。
Loss Function
- BC-Net的损失函数包含一个交叉熵判别损失和一个基于欧氏距离的三元损失可以表示为
Experiments
论文设计了以下几组实验:
在只使用ID信息的条件下,BC-Net与目前的SOTA方法在COCAS上的对比试验
只使用ID信息和引入衣服模板信息,BC-Net的效果对比实验
BF分支、CF分支、Mask模块、损失函数、Faster R-CNN检测器、高斯模糊等设计的消融实验
BC-Net与SOTA方法的对比结果如下图所示
引入衣服模板进行训练,BC-Net的效果如下图所示
消融实验的结果如下图所示
查询结果的可视化展示如下图所示
Conclusion
- 论文提出了一种考虑到衣服改变的新Re-ID问题的基准数据集COCAS,并提出了一种能够分别提取生物特征和衣服特征的网络BC-Net,该网络相比于传统方法,更好的解决了衣服改变的Re-ID问题,在追踪嫌疑人、寻找遗失儿童等实际问题上有一定的现实意义。
Paper Information
Yu S, Li S, Chen D, et al. COCAS: A Large-Scale Clothes Changing Person Dataset for Re-identification[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 3400-3409.