【写在前面】

语言引导的人称搜索的关键是在视觉输入和文本输入之间建立跨模态关联。现有方法侧重于设计多模态注意机制和新的跨模态损失函数来隐式学习这种关联。作者提出了一种基于颜色推理(LapsCore)的语言引导人搜索表示学习方法。它可以明确地双向建立细粒度跨模态关联。具体来说,设计了一对双子任务,图像着色和文本完成。在前一个任务中,学习富文本信息以对灰度图像进行着色,后一个任务要求模型理解图像并完成标题中的彩色文字空缺。这两个子任务使模型能够学习文本短语和图像区域之间的正确对齐,从而可以学习丰富的多模态表示。在多个数据集上的大量实验证明了该方法的有效性和优越性。

1. 论文和代码地址

LapsCore: Language-guided Person Search via Color Reasoning

论文地址:https://ieeexplore.ieee.org/document/9711140/

代码地址:未开源

2. Motivation

语言引导的人搜索在智能监控中有着广阔的应用前景,因此引起了人们的广泛关注。如上图所示,它旨在从与自然语言描述查询最匹配的大型图像数据库中检索人物。与基于图像和基于属性的person ReID相比,语言查询比图像查询更容易获得,并且提供了比属性更全面和准确的描述。

在语言引导的人员搜索任务中存在两个主要挑战。首先,由于跨模态间隙,很难计算视觉文本的真实性并构建图像-文本对齐。其次,人员搜索是一项细粒度的检索任务:(1)文本为目标人提供非常详细的描述;(2)人物形象在外观上存在明显的跨类差异。

在语言引导人搜索的开创性工作之后,人们投入了大量精力来应对这项任务的挑战。一些工作设计高级模型,学习更好的图像和文本表示。另一些工作中开发了注意力机制,以建立局部图像-文本关联。还有一些工作提出了新的损失函数来缩小视觉和文本特征之间的距离。然而,所有这些方法都隐含地学习了跨模态局部关联,这对模型的学习能力留下了严格的测试。从大量的语言引导人搜索实验中,作者观察到颜色在检索中起着重要作用。面对个人图像,人类倾向于接受视觉颜色来提取外观信息,然后理解与这些颜色相关的衣服或装饰品。因此,作者受到启发,提出了一种新的表示学习方法LapsCore,通过求解颜色推理子任务,引导模型明确学习细粒度跨模态关联。

如上图所示,第一个子任务,文本引导图像着色(IC),是根据其文本描述对灰度图像进行着色。在该任务中,模型能够正确探测文本中丰富的颜色信息,并将其与相应的图像区域对齐。例如,在上图中,不仅需要提取单词“red”,还需要将“shirt”的语义与“red”配对,并且图像中表示“shirt”的空间区域应为红色。因此,可以构造文本到图像的局部关联。对于相反方向的图像到文本,设计了另一个子任务图像引导文本完成(TC)。具体来说,在每个描述句子中,删除所有颜色词,这些空缺需要利用成对的彩色图像来完成。这样,有效的图像区域可以显著地表示,然后与相关的文本短语相关联。虽然颜色推理任务对于人类来说并不复杂,但它们需要模型的全面跨模态理解来解决。通过使用这两个子任务,可以在主任务图像文本匹配中利用更好的多模态表示。此外,作者提出了另一个“颜色”推理子任务ICf\mathrm{IC}_{f}ICf​,旨在使用字幕完成缺失通道的图像特征,该任务将IC任务从图像颜色通道完成推广到特征语义通道完成。给定输入图像的特征表示,作者部分屏蔽了一些通道,并使用标题来恢复它们。在此过程中,可以探测和利用包括颜色在内的一般文本信息。因此,在颜色不是标题中的主要信息的情况下,它赋予了本文的方法鲁棒性。

为了解决第一个子任务IC,作者将其转化为像素回归问题。将原始图像处理为灰度图像作为输入,并使用成对字幕恢复原始图像。TC任务可以被视为视觉问答问题,其中问题是一个带有颜色词空缺的句子,答案是候选颜色之一。在图像特征通道完成子任务中,作者首先在个人ID分类任务上预训练特征提取器,然后屏蔽视觉特征图,以便使用字幕进行恢复。作者在语言指导的人员搜索数据集cuhk-pedes上进行了广泛的实验。实验证明,该方法可以显著提高性能。对通用图像文本检索数据集的验证也证实了其有效性,包括加州理工大学UCSD Birds、Oxford-102 Flowers、Flickr30k和MSCOCO。

综上所述,本文工作的主要贡献包括:

1)提出了一种新的表示学习方法LapsCore,以便于明确学习细粒度跨模式关联。它通过求解颜色来工作推理子任务、图像着色、文本完成和图像特征通道完成。

2)在具有挑战性的语言指导的人员搜索数据集CUHK-PEDES上进行了广泛的实验。事实证明,LapsCore可以有效地带来可观的性能提升并实现最先进的结果。

3)所提出的方法被证明是通用的,可以纳入不同的基线并带来改进。在其他跨模态检索任务中也证实了该方法的有效性。

3. 方法

在本节中,将介绍所提出的方法LapsCore。如上图(左部分)所示,LapsCore通过两个颜色推理子任务(文本引导图像着色(IC)和图像引导文本完成(TC))生成代表性的多模态特征。

3.1. Text-guided Image Colorization

IC任务旨在利用文本描述对灰度图像进行着色,这些灰度图像从原始图像处理为灰度图像。在此任务中,模型努力理解标题,并探索用于着色的有效信息。因此,可以构建文本到图像的关联。

整个任务可以转化为像素回归问题。多模态回归模型表示为ficf_{i c}fic​,以灰色图像IgrayI_{g r a y}Igray​和描述语句Tcolor T_{\text {color }}Tcolor ​对作为输入,并输出恢复的图像。将原始彩色图像I设置为目标,并使用像素均方误差损失Lic\mathcal{L}_{i c}Lic​:

Lic=∥fic(Igray,Tcolor)−Icolor ∥22\mathcal{L}_{i c}=\left\|f_{i c}\left(I_{g r a y}, T_{c o l o r}\right)-I_{\text {color }}\right\|_{2}^{2} Lic​=∥fic​(Igray​,Tcolor​)−Icolor ​∥22​

为了处理这项任务,作者采用了U-Net框架,该框架对灰色图像进行编码,并通过融合文本信息将其解码为彩色图像,如上图(左上角)所示。在编码阶段,我们从输入中提取多尺度视觉特征。将比例为s的特征图表示为Ys∈Rhs×ws×cs\mathbf{Y}^{s} \in \mathbb{R}^{h_{s} \times w_{s} \times c_{s}}Ys∈Rhs​×ws​×cs​,其中h、w、c分别表示高度、宽度和通道。在文本分支中,描述语句被标记并输入到嵌入层。然后,LSTM提取文本特征X∈RN\mathbf{X} \in \mathbb{R}^{N}X∈RN。

在解码阶段,视觉特征应与文本特征融合以进行着色。因此,我们设计了多模态SE块,应用通道注意机制,以便文本信息可以影响图像特征通道。多模SE块中的操作如上图所示(右上角的灰色虚线框)。首先,视觉特征图Y通过全局池化被压缩为特征向量vs∈Rcs\mathbf{v}^{s} \in \mathbb{R}^{c_{s}}vs∈Rcs​。与文本特征向量X concat,然后将Vs\mathbf{V}_{s}Vs​馈入两层多层感知器和softmax层以生成注意向量As∈Rcs\mathcal{A}^{s} \in \mathbb{R}^{c_{s}}As∈Rcs​。最后,利用As\mathcal{A}^{s}As将Ys\mathbf{Y}^{s}Ys更新为多模式表示Zs\mathbf{Z}^{s}Zs:

Zis=Yis⋅Ais\mathbf{Z}_{i}^{s}=\mathbf{Y}_{i}^{s} \cdot \mathcal{A}_{i}^{s} Zis​=Yis​⋅Ais​

其中下标i∈{1,2,…,cs}i \in\left\{1,2, \ldots, c_{s}\right\}i∈{1,2,…,cs​}表示通道的索引,Zis,Yis∈Rhs×ws,Ais\mathbf{Z}_{i}^{s}, \mathbf{Y}_{i}^{s} \in \mathbb{R}^{h_{s} \times w_{s}}, \mathcal{A}_{i}^{s}Zis​,Yis​∈Rhs​×ws​,Ais​是标量。

U-Net的解码器由几个反卷积层组成。首先,编码器中的最后一个Ys\mathbf{Y}^{s}Ys穿过第一个反卷积层,以生成特征映射Ws∈Rhs×ws\mathbf{W}^{s} \in \mathbb{R}^{h_{s} \times w_{s}}Ws∈Rhs​×ws​。每个Ws\mathbf{W}^{s}Ws与SE块输出Zs\mathbf{Z}^{s}Zs串联,并通过反卷积层生成更大的Ws\mathbf{W}^{s}Ws。作为最后一步,给定最后一个反卷积层中的Ws\mathbf{W}^{s}Ws,使用简单的上采样和卷积来预测目标。

3.2. Image-guided Text Completion

双重任务TC需要利用彩色图像来完成带有彩色单词空缺的文本描述。对于每个句子,删除所有颜色单词以创建 “无色” 描述。这些空位应该通过分析不同图像区域的前景色来填充。这样,可以桥接图像到文本的关系。

此任务可以视为VQA问题。VQA模型,表示为ftcf_{t c}ftc​,以彩色图像,Icolor I_{\text {color }}Icolor ​和带有空缺的文本句子TqT_{q}Tq​作为输入,并输出缺少的颜色单词。目标答案是从原始描述中删除的颜色单词TaT_{a}Ta​。采用典型的交叉损失Ltc\mathcal{L}_{t c}Ltc​,公式为:

Ltc=CrossEntropy(ftc(Icolor,Tq),Ta)\mathcal{L}_{t c}= CrossEntropy \left(f_{t c}\left(I_{c o l o r}, T_{q}\right), T_{a}\right) Ltc​=CrossEntropy(ftc​(Icolor​,Tq​),Ta​)

作者参考了流行的VQA模型 (双线性注意网络 (BAN)) 的结构来解决TC任务。见上图(右下角),视觉和文本特征由MobileNet和LSTM从输入数据中提取。将文本特征表示为X∈RN×ρ\mathbf{X} \in \mathbb{R}^{N \times \rho}X∈RN×ρ和视觉特征为Y∈RM×ϕ\mathbf{Y} \in \mathbb{R}^{M \times \phi}Y∈RM×ϕ,其中N是序列长度,ρ是LSTM输出维度,φ表示MobileNet输出的通道号,M=h×w是空间维度的乘积。给定两个模态特征X和Y,通过计算特征patch之间的模糊度分数生成若干双线性注意力图Ag\mathcal{A}_{g}Ag​,公式如下:

Ag=softmax⁡(((1⋅pg⊤)∘X⊤U)V⊤Y)\mathcal{A}_{g}=\operatorname{softmax}\left(\left(\left(\mathbf{1} \cdot \mathbf{p}_{g}^{\top}\right) \circ \mathbf{X}^{\top} \mathbf{U}\right) \mathbf{V}^{\top} \mathbf{Y}\right) Ag​=softmax(((1⋅pg⊤​)∘X⊤U)V⊤Y)

其中U∈RN×K\mathbf{U} \in \mathbb{R}^{N \times K}U∈RN×K和V∈RM×K\mathbf{V} \in \mathbb{R}^{M \times K}V∈RM×K是投影矩阵,1∈Rρ\mathbf{1} \in \mathbb{R}^{\rho}1∈Rρ是一个全一向量,pg∈RK\mathbf{p}_{g} \in \mathbb{R}^{K}pg​∈RK,其中g表示注意力图索引,Ag∈Rρ×ϕ\mathcal{A}_{g} \in \mathbb{R}^{\rho \times \phi}Ag​∈Rρ×ϕ,000表示Hadamard积。

在注意力图的帮助下,X和Y融合成联合表示。残差学习方法用于提高表征能力。在第g个残差块中,输出Fg+1∈RK×ρ\mathbf{F}_{g+1} \in \mathbb{R}^{K \times \rho}Fg+1​∈RK×ρ的计算公式为:

Fg+1=P⊤BAN⁡g(Fg,Y;Ag)⋅1⊤+Fg\mathbf{F}_{g+1}=\mathbf{P}^{\top} \operatorname{BAN}_{g}\left(\mathbf{F}_{g}, \mathbf{Y} ; \mathcal{A}_{g}\right) \cdot \mathbf{1}^{\top}+\mathbf{F}_{g} Fg+1​=P⊤BANg​(Fg​,Y;Ag​)⋅1⊤+Fg​

其中1∈Rρ\mathbf{1} \in \mathbb{R}^{\rho}1∈Rρ是一个全一向量,投影矩阵为P∈RK×C\mathbf{P} \in \mathbb{R}^{K \times C}P∈RK×C。通过将N设置为K,将X用作初始输入F0\mathbf{F}_{0}F0​。生成中间表示的函数,定义为fg=BANg(Fg,Y;Ag)\mathbf{f}_{g}=\mathbf{B A N}_{g}\left(\mathbf{F}_{g}, \mathbf{Y} ; \mathcal{A}_{g}\right)fg​=BANg​(Fg​,Y;Ag​),其中fg∈RC\mathbf{f}_{g} \in \mathbb{R}^{C}fg​∈RC,其第k个元素计算为:

fg,k=(Fg⊤U′)k⊤Ag(Y⊤V′)k\mathbf{f}_{g, k}=\left(\mathbf{F}_{g}^{\top} \mathbf{U}^{\prime}\right)_{k}^{\top} \mathcal{A}_{g}\left(\mathbf{Y}^{\top} \mathbf{V}^{\prime}\right)_{k} fg,k​=(Fg⊤​U′)k⊤​Ag​(Y⊤V′)k​

其中U′∈RN×K,V′∈RM×K,(X⊤U′)k∈Rρ,(Y⊤V′)k∈Rϕ\mathbf{U}^{\prime} \in \mathbb{R}^{N \times K}, \mathbf{V}^{\prime} \in \mathbb{R}^{M \times K},\left(\mathbf{X}^{\top} \mathbf{U}^{\prime}\right)_{k} \in \mathbb{R}^{\rho},\left(\mathbf{Y}^{\top} \mathbf{V}^{\prime}\right)_{k} \in \mathbb{R}^{\phi}U′∈RN×K,V′∈RM×K,(X⊤U′)k​∈Rρ,(Y⊤V′)k​∈Rϕ,矩阵的下标k表示列的索引。

给定最后一个残差块输出的联合特征表示,采用多层感知器(MLP)分类器预测每个单词空缺的颜色类别。

3.3. Generalized IC: Feature Channel Completion

彩色图像由3个通道“YCbCr”组成,灰度图像是删除两个颜色通道“Cb”和“Cr”的结果。重新思考IC任务,其目的是利用文本颜色信息来恢复两个缺失的通道。虽然这种方法可以通过颜色桥接跨模态关联,但当颜色在描述中很小时(例如,在MSCOCO数据集中),可能无法有效地学习文本信息。因此,我们提出了一种广义的IC,表示为ICf\mathrm{IC}_{f}ICf​,它使用文本来完成图像特征的缺失通道。

如上图所示,ResNet18在识别任务中预训练,以从图像中提取丰富的表示,然后“冻结”为特征生成器。作者屏蔽了图像特征的一些通道,并将屏蔽后的特征输入到完成模型中,以完整的特征为目标。ICf\mathrm{IC}_{f}ICf​中的完井模型和损失函数与IC中的相同,只是输入和输出比例相应地调整。

3.4. Incorporation

该方法可以作为一种多模态表示学习方法纳入流行的图像文本匹配算法。交叉模态投影匹配和分类(CMPM/C)模型采用了通用框架,该框架分别采用LSTM和MobileNet作为文本和视觉特征提取器。在这里选择CMPM/C作为跨模式匹配模块来实现LapsCore,并且它可以很容易地推广到该框架的其他方法。为了合并,作者删除了CMPM/C中的特征提取层,替换为IC和TC模块的表示层,如图2的左部分所示。将CMPM/C中的匹配损失定义为Lcmp\mathcal{L}_{c m p}Lcmp​,然后将/总体多任务损失L计算为:

L=Lcmp+λ1Lic+λ2Ltc\mathcal{L}=\mathcal{L}_{c m p}+\lambda_{1} \mathcal{L}_{i c}+\lambda_{2} \mathcal{L}_{t c} L=Lcmp​+λ1​Lic​+λ2​Ltc​

其中λ1,λ2∈R+\lambda_{1}, \lambda_{2} \in \mathbb{R}^{+}λ1​,λ2​∈R+是平衡每个子任务重要性的标量因子。将ICf\mathrm{IC}_{f}ICf​合并到CMPM/C的方式类似,多任务损失写为:

L=Lcmp+λ3Licf\mathcal{L}=\mathcal{L}_{c m p}+\lambda_{3} \mathcal{L}_{i c_{f}} L=Lcmp​+λ3​Licf​​

其中λ3∈R+\lambda_{3} \in \mathbb{R}^{+}λ3​∈R+是一个平衡因子。

4.实验

上表展示了本文方法和SOTA结果的对比结果。

上表展示了本文提出的不同模块对实验结果的影响。

给定相同的语言查询,基线(CMPM/C)和本文的方法(CMP+IC&TC)的检索结果如上图所示。相比之下,本文的方法更有效地检索匹配的人(第一行)。它还揭示了LapsCore使模型对颜色更敏感,从而使检索结果更合理。

上图展示了本文方法对不同的图片进行着色的结果。

上图展示了对着色模块改为其他方法的可视化。

上表展示了这些变体的性能。

上表展示了在其他图文检索数据集上进行检索的实验结果。

5. 总结

在本文中,作者提出了LapsCore,它使用两个颜色推理子任务来改进语言引导的人搜索的表示学习。第一种方法旨在利用文本信息对灰度图像进行着色。在双向上,利用彩色图像来完成标题中的彩色文字空缺。此外,作者提出了完整的视觉特征通道,适用于一般的图像文本匹配任务,其中颜色在标题中不占主导地位。定量和定性实验结果以及广泛的消融研究表明了该方法的优越性。


已建立深度学习公众号——FightingCV,关注于最新论文解读、基础知识巩固、科技新闻速递,欢迎大家关注!!!

FightingCV交流群里每日会发送论文解析,进行学术交流,加群请添加小助手wx:FightngCV666,备注:地区-学校(公司)-名称

面向小白的顶会论文核心代码学习:https://github.com/xmu-xiaoma666/External-Attention-pytorch

ICCV2021|你以为这是一个填色模型?其实我是检索模型!相关推荐

  1. Java黑皮书课后题第8章:*8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1。让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了

    *8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1.让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了 题目 题目描述与运行示例 破题 代码 题目 题 ...

  2. airpods pro是按压还是触摸_使用AirPods Pro一个月后,我是这么看待它的

    使用AirPods Pro一个月后,我是这么看待它的 2019-11-28 11:15:16 69点赞 80收藏 99评论 小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限 ...

  3. T5,一个探索迁移学习边界的模型

    作者 | Ajit Rajasekharan 译者 | 夕颜 出品 | AI科技大本营(ID:rgznai100) [导读]10月,Google 在<Exploring the Limits o ...

  4. 用Vue撸一个『A-Z字母滑动检索菜单』

    最近用vue仿写途牛旅行APP 遇到了这样的城市列表选择页面,花了些时间,用Vue实现了一下并让它体验的接近 安卓/IOS 原生组件 很多地方都会有这样的侧边栏字母列表菜单,可以滑动实现内容列表联动. ...

  5. 【深度学习】如何更好的Fit一个深度神经网络框架下的模型

    [深度学习]如何更好的Fit一个深度神经网络框架下的模型 文章目录 1 随机梯度下降1.1 什么是梯度下降1.2 随机梯度算法 2 Momentum 3 自适应学习率算法3.1 AdaGrad3.2 ...

  6. 初次转化max模型为3D Tiles失败、cesium加载一个obj格式的3D 机房模型

    先下一个3D max模型,后缀为.max:用3D max打开:网上下的其他模型查看器不能打开: 打开时会出错误提示:对max模型文件和3d max还不了解: 打开后如下:是一个机房的3D模型: 下载一 ...

  7. 15 分钟搭建一个基于XLNET的文本分类模型——keras实战

    今天笔者将简要介绍一下后bert 时代中一个又一比较重要的预训练的语言模型--XLNET ,下图是XLNET在中文问答数据集CMRC 2018数据集(哈工大讯飞联合实验室发布的中文机器阅读理解数据,形 ...

  8. CTR预估系列:DeepCTR 一个基于深度学习的CTR模型包

    在计算广告和推荐系统中,CTR预估一直是一个核心问题.无论在工业界还是学术界都是一个热点研究问题,近年来也有若干相关的算法竞赛.本文介绍一个基于深度学习的CTR模型包DeepCTR,具有简洁易用.模块 ...

  9. 闲聊机器人实例四:python实现小姜机器人,BERT检索模型,新增一个余弦相似度Cosine层, 解决BERT句向量编码传输耗时问题。部署tf-serving

    BERT检索模型,新增一个余弦相似度Cosine层, 解决BERT句向量编码传输耗时问题.部署tf-serving 业务需求 BERT向量召回问答对, FAQ标准问答对数据量不大 不能把BERT编码部 ...

最新文章

  1. ansible批量修改linux服务器密码的playbook
  2. Hive-1.2.0学习笔记(一)安装配置
  3. 户频繁点击发送ajax请求
  4. 别把“运气”当“实力”
  5. Seaborn——绘制统计图形
  6. 抗住百万人直播、被联合国推荐,起底飞书技术演进之路!
  7. python控制小爱同学_小爱同学控制电脑开机 - IT客栈
  8. 【工业机器人】机器人产业的前途取决于人工智能关键技术的发展
  9. [导入]PSP 经典游戏合集
  10. 深入浅出进入PE世界[网络转载]
  11. UniswapV2Library.sol
  12. Linux中ftp安装与基本操作
  13. 意大利牙膏重大突破发明!1分钟让牙齿“再生”,告别敏感疼痛,牙龈萎缩,70岁也能满口好牙...
  14. 华为路由器:WLAN直连式三层组网实验
  15. linux命令-系统管理
  16. 鲁大师发布2021年度手机报告,去年最强的手机一文看完
  17. QR decomposition and Givens Rotation (QR分解与Givens旋转)
  18. Mybatis 查询 返回值中只有id有值,其他都是null;
  19. 安防视频监控无处不在 密织安全防控网必不可少
  20. 未来计算机及外设畅想

热门文章

  1. 基于PHP的潮流服装商城系统
  2. BZOJ4864: [BeiJing 2017 Wc]神秘物质(Splay)
  3. Opencv中flip函数讲解
  4. 互联网如何颠覆这些我们熟知的17个行业!
  5. map在python中是什么意思_map在python中什么意思
  6. npm install xxx 出现Unexpected token < in
  7. 使用计算机辐射最大,台式电脑哪里辐射最大
  8. matlab计算器设计流程图_基于MATLAB计算器设计与开发
  9. Oulipo[字符串哈希]
  10. java虚拟机和内存的关系_深入理解java虚拟机(linux与jvm内存关系)