Text Based Person Search 研究进展汇报:主要问题、数据集、未来方向
研究方向
研究方向: 基于文本的行人检索(Text-based Person Search, TBPS),目的是通过自然语言文本描述,从图像库中搜索到匹配的人物图片。
**数据集:**包含行人图片-自然语言文本描述配对的数据集。目前广泛使用的是三个标准数据集:
CUHK-PEDES: 包含40206张行人图片,每张图片对应两条文本描述,遍及13003个行人。
RSTPReid: 包含20505张行人图片,每张图片对应两条文本描述,遍及4101个行人。
ICFG-PEDES: 包含54522张行人图片,每张图片对应一条文本描述,遍及4102个行人。
目前数据集都已经获取。
datasets/
├───CUHK-PEDES/
│ ├───imgs/
│ │ ├───cam_a/
│ │ ├───cam_b/
│ │ ├───CUHK01/
│ │ ├───CUHK03/
│ │ ├───Market/
│ │ ├───test_query/
│ │ └───train_query/
│ ├───caption_all.json
│ ├───reid_raw.json
│ └───readme.txt
├───ICFG-PEDES/
│ ├───imgs/
│ │ ├───test
│ │ └───train
│ └───ICFG-PEDES.json
└───RSTPReid/├───imgs/│ ├───0000_c1_0004.jpg│ ├───0000_c5_0022.jpg│ ├───....│ └───0000_c7_0015.jpg└───data_captions.json
评价指标:
Rank-k准确率( k = 1, 5 and 10):, 表示前 k 个检索结果中包含目标的比例
mAP(mean Average Precision): 平均准确率,综合排序质量的全局指标
研究目标与关键问题
总体目标:
1. 实现文本特征和图片特征的对齐
2. 解决文本文本-图像细粒度匹配问题
关键问题
1. 多模态异构问题
基于文本的行人检索涉及文本和图像,是一种跨模态学习任务。一般的方法是,使用文本编码器(如BERT)从文本中提取得到的文本特征,使用图像编码器(如ResNet50, ViT)从图片中提取得到图像特征.由于抽取文本特征和图像特征的模型是分别单独训练的,它们得到的特征在潜在空间里是不对齐的。
一类研究提出了用于多模态特征对齐的框架,如ALBEF(ALign BEfore Fuse)通过Image-Text Contrastive Learning(ITC)实现了两种特征向量的对齐。这个框架也被后来其他研究用作图像特征和文本特征对齐的骨干网络。
另一种解决多模态特征对齐问题的路径是,使用通用的跨模态视觉-语言预训练模型Vision-Language Pre-training (VLP) models的跨模态对齐能力,如CLIP(Contrastive Language-Image Pre-training)。目前已经有基于CLIP的方法来解决基于文本的行人搜索任务。
2. 模态间不确定性
由于文本描述固有的模糊性和不精确性,同样的文本描述可以和不同的图片相关联,导致跨模态匹配歧义,如文本 “a man walking to the right with a black bag on the back grey pants” 在数据集中可以匹配到不同的行人图片。
3. 模态内不确定性
同一个行人的图片,由于光照、姿势和环境等变化导致视觉特征变化,比如一个行人的颜色衣服差异会比较大。
目前尝试的方法
针对上述的关键问题,目前在尝试以下的方法进行解决:
1. 多模态异构问题
目前在研究的一种实现来自论文MARS和对应的开源代码,方法是,对文本和图像分别提取特征,然后使用多模态特征对齐框架ALBEF进行对齐。该方法目前在三个标准数据集上表现非常好,有两个目前是State of the Art, 另一个数据集上表现排名第4,与第一差距小于1%。
现在也在同步关注使用CLIP等VLP模型,借助其跨模态的内在实现来完成当前的跨模态任务。
2. 模态间/模态内不确定性
两种可行的策略:
第一种是如上MARS论文中的,通过设计模型,引入能够弥补两种不确定性的损失函数,在当前数据集上能够表现很好。
另一种是使用数据增强策略,针对数据集中的文本部分和图像部分,分别使用数据增强策略,目前有研究表明数据增强后效果有提升。
未来计划
1. 思考如何设计模型
作为多模态的任务,从多模态的角度出发,设计模型来解决问题可能效果更好,参考已有的研究,使用视觉语言预训练模型作为模型的骨干网络,针对数据集改进,比如首先进行数据增强,丰富数据集,然后再使用编码器进行处理,在此基础上提出特定的损失函数,可能会提升模型的效果。
除了使用上述的CLIP, 还有更多的语言或视觉预训练模型可以改进来适用当前任务。
2. 增加理论性的内容
避免工作的工程感太重,缺少研究内容,应该参考之前的论文,首先设计模型,然后提出定制化的损失函数,增加研究的理论性。