【论文阅读】CiteTracker: Correlating Image and Text for Visual Tracking

paper:[2308.11322] CiteTracker: Correlating Image and Text for Visual Tracking (arxiv.org)

code:NorahGreen/CiteTracker: [ICCV'23] CiteTracker: Correlating Image and Text for Visual Tracking (github.com)

简介

现有的视觉跟踪方法通常以图像块作为目标来跟踪。变化剧烈的目标跟踪困难。 CiteTracker 通过连接图像和文本来增强视觉跟踪中的目标建模和推理。文本生成模块将目标图像块转换为包含其类别和属性信息的描述性文本,为目标提供全面的参考点。动态描述模块来适应目标变化,以实现更有效的目标表示。使用基于注意力的关联模块将目标描述和搜索图像关联起来,以生成相关特征以供目标状态参考。

 

图 1. CiteTracker与现有跟踪方法在目标建模和关联方面的比较。左右部分分别描述了典型的视觉跟踪框架和CiteTracker:首先生成目标对象的文本描述,然后利用文本的特征来估计测试图像中的目标状态,从而实现更全面的目标建模和关联。

  • 特点:使用目标的自适应文本描述作为参考点,并将其与测试图像特征相关联进行跟踪。
  • 开发了一个文本生成模型,该模型具有预定义的开放词汇表,包括类和属性标签,能够基于目标图像块,生成目标的文本描述。以 CLIP 模型为基线构建,将文本与丰富的图像特征连接起来。
  • 为了适应目标随时间的变化,开发了一个动态文本特征模型,会随着目标的变化生成自适应文本特征。最后将目标文本描述的特征与测试图像特征相关联,以生成相关特征,以便进一步估计目标状态。
  • 实验数据集: GOT-10K、LaSOT、TrackingNet、OTB100 和 TNL2K。

方法

目标:给定目标图像片段与跟踪序列中的搜索图像,通过将其表述为图像-文本关联,构建它们之间的稳健关联,从而对目标状态有更全面的理解,应对目标对象的外观变化。为此,CiteTracker首先通过图像-文本转换模块,根据给定的目标图像片段,生成目标的文本特征,然后根据目标的最新状态调整文本特征,最后将文本特征与搜索图像的特征关联起来,实现稳健跟踪。

输入:一个样本图像和一个搜索图像,分别通过文本分支(图2上半)和视觉分支(图2下半)处理。

文本分支:首先使用图像编码器提取给定样本图像的视觉特征,并从测试图像中裁剪出目标位置的目标图像片段(取自前一帧)。然后,通过图像-文本转换模块将目标的视觉特征转换为文本特征,并根据初始目标状态和当前目标状态的文本特征差异,利用文本特征自适应模块调整文本特征。

视觉分支:将样本图像和搜索图像作为输入,并输出测试图像的特征图。最后,图像-文本关联组件将文本分支和视觉分支的输出进行关联,生成用于目标状态预测的关联特征。

图2. CiteTracking算法的总框架,包含三个模块:1)图文转换模块,基于图像样本生成目标对象的文本特征;2)文本特征适配模块,根据当前目标状态调整属性描述的权重;3)图文关联模块,将目标描述特征与测试图像的特征进行关联,生成用于目标状态估计的相关特征。 

图像-文本转换

 

图 3. 图文转换模块结构。以目标图像和预定义的类属性文本词汇作为输入,并输出目标的文本描述(特征)。

目标图像由CLIP模型的图像编码器处理生成图像特征 x,然后将 x 输入到轻量神经网络 hθ(⋅)(Meta-Net)中,生成包含目标信息的目标tokens hθ​(x)。输入的词汇通过text embbeding模块处理,生成word embbeding ci​。

引入 K 个可学习向量 υ1,υ2,...,υK​ 作为针对特定预测任务的提示tokens。给定目标tokens hθ(x) 和提示tokens υ1,υ2,...,υK​,获得每个基于上下文优化的token:υk(x)=υk+hθ(x)。表示提示tokens 被图像特征调节,使其包含与特定图像相关的信息。

第 i 类标签的提示基于图像特征,即 mi(x)={υ1(x),υ2(x),...,υK(x),ci}。这里每个类别标签的提示结合了图像特征和词汇嵌入,捕捉图像和类别之间的关联。

令 t(⋅) 表示原始CLIP文本编码器,第 i 类标签的预测概率计算为:

Sim(⋅,⋅) 计算余弦相似度得分,τ 是一个可学习的温度参数,N 为类标签的数量。目标描述被预测为通过公式(1)计算出最大概率对应的标签。 本文使用一个两层Linear-ReLU-Linear结构实现了Meta-Net,隐藏层将输入维度减少了16倍。

 跟踪相关词汇构建。为了准确描述跟踪目标,我们选择了 MS COCO [25] 数据集中的 80 个类别标签作为类别词汇,其中包含日常生活中最常出现的物体。从 OVAD [4] 数据集中选择了颜色、纹理和材质三种物体属性来描述详细的目标状态。在 GOT-10k 数据集上评估了类别和属性标签预测描述的一致性。

图 4(a) 显示了预测结果一致的情况比例,图 4(b) 显示了视频帧中目标物体的预测值。表明在视频序列中,跟踪物体在类别和属性值方面的预测文本描述是一致的,可以用作目标定位的特征。

动态文本特征生成

在视频中,跟踪目标的状态可能会发生变化。因此将文本特征生成分为类别特征生成和属性特征生成

类别特征 (Tc​):设 Ti​ 是由 CLIP 文本编码器生成的第 i 类标签的文本特征,Tc​ 可以计算为:

pi 是公式 (1) 计算出的每个类别标签的预测概率。将每个类别标签的文本特征 Ti​ 按其预测概率 pi​ 加权并求和,得到类别特征 Tc​。这样可以综合考虑各个类别标签的可能性,使得类别特征能够更好地代表跟踪目标的类别信息。

属性特征 (Ta​):

  • argmax(p_i) 确定了预测概率最高的属性类别索引,表明该属性在当前目标的状态下最具代表性。Ta​ 取该索引对应的文本特征,作为当前跟踪目标的属性特征。

根据目标的变化,调整不同属性特征的权重。颜色、材料和纹理的变化分别表示为 Dcolor、Dmaterial​ 和 Dtexture:

其中 Rattribute 和 Sattribute​ 代表参考目标和当前测试目标具有某一特定属性值的概率(用公式 (1) 计算)。属性变化的绝对值差表示属性在两个目标之间的差异程度。绝对值差越低,目标和搜索图像在该属性上的相似性越高。因此,注意力权重 Watt 可表示为:

  • 用负变化值 −Dattribute 作为 Softmax 函数的输入,是为了使得变化小(差异小)的属性获得更高的权重。Softmax 函数将这些负变化值转换为一个概率分布,即注意力权重 WattWatt​。

最后,根据不同属性的注意力权重,调整属性特征生成动态文本特征:

 Ta​ 是通过公式 (3) 生成的文本特征。

  • 使用权重 Watt 对属性特征 Ta​ 进行加权,得到动态调整后的文本特征 Tatt。
  • 这种方法确保了在目标跟踪过程中,能够根据目标属性的变化对特征进行自适应调整,以提升跟踪的鲁棒性和准确性。

图像-文本关联

用ViT-base提取目标和搜索图像的联合视觉特征 V∈RH×W×C。文本特征 T∈R1×1×CT通过线性层进行调整,使其与视觉特征在通道维度上对齐。然后,通过卷积,用文本特征 T′∈R1×1×C 作为卷积核权重,实现两种特征的关联。

最终的关联特征:

⊙ 表示卷积操作,Latt 是用于通道自适应的线性投影层,Tc​ 表示类别特征,Tco、Tm​ 和 Tt​ 分别代表动态的颜色、材料和纹理特征。

状态估计和训练目标

状态估计:基于图像-文本关联生成的特征,CiteTracker 通过预测头 [Joint feature learning and relation modeling for tracking: A one-stream framework.] 来估计目标状态。该预测头由4个堆叠的 Conv-BN-ReLU 层组成。 输出一个分类得分图 C、用于补偿分辨率下降的偏移图 O 和尺寸图 B。然后,目标状态计算如下:

其中 (xc,yc) 是通过 (xc,yc)=arg⁡max⁡(x,y)Cxy​ 计算的目标中心,(Ox,Oy) 表示从 O 到 (xc,yc) 的偏移,(Bw,Bh) 是从 B 预测出的框尺寸。

训练目标:采用与 OSTrack 类似的训练流程,对三个任务进行联合训练。用加权焦点损失 [24]、L1​ 损失和 GIoU 损失 [32] 分别训练分类、偏移和框尺寸分支。总的损失函数:

其中 λiou=2,λL1=5 是实验中使用的参数。

实验

实验在4个NVIDIA Tesla V100 GPUs上进行。

视觉特征提取:用通过MAE方法[17]预训练的Vision Transformer (ViT-base) [34]模型作为主干网络。用微调后的CLIP模型[30]作为主干来构建所提出的图像-文本转换模型。从测试帧中裁剪目标框面积4倍的搜索图像,并调整为384 × 384像素的分辨率;从参考帧中裁剪目标框面积2倍的图像,并调整为192 × 192像素。

开放词汇类别标签和属性标签来源于MS COCO[25]和OVAD[4]数据集。

CiteTracker在TrackingNet[29]、COCO2017[25]、LaSOT[13]和GOT-10K[18]的训练集上进行训练。

在四个不同的数据集(TNL2K、LaSOT、TrackingNet和GOT-10K)上评估。

  • TNL2K :一个用于评估基于自然语言的跟踪算法的基准。该基准引入了两个新挑战,即对抗样本和模态切换,使其成为评估跟踪算法的稳健基准。
  • LaSOT :一个高质量的长期单目标跟踪基准,平均视频长度超过2500帧。尽管我们的方法没有采用在长期跟踪中起关键作用的更新机制,但它仍然达到了接近最佳方法SwinTrack的结果。CiteTracker重点通过制定稳健的图像-文本关联来处理目标的大幅变化。

  • TrackingNet:用于野外物体短期跟踪的大规模基准,包含511个测试视频,且真实标注被隔离。表1展示了在TrackingNet数据集上的表现。我们的跟踪器在曲线下面积(AUC)上达到84.4%,超越了所有此前发布的跟踪器。这表明我们的跟踪器在应对野外各种变化的短期场景跟踪中具有很强的竞争力。

  • GOT-10k:GOT-10k是一个大规模跟踪数据集,包含超过560类运动物体和87种运动模式,强调在测试集中类不相关性。测试集的真实标注被保留,我们使用作者提供的测试平台来评估我们的结果。我们遵循一次性训练规则,即跟踪器只在GOT-10k的训练集上进行训练。

图5。提出的算法和OSTrack方法在4个变化剧烈的挑战性序列上的可视化结果。CiteTracker在生成的文本描述的帮助下表现良好(在每一行图片的上方显示),而仅使用视觉线索的OStrack方法在处理这些序列时表现不太好。

总结:CiteTracker通过关联图像和文本以更稳健和准确的方式执行目标建模和目标状态推断。所提出的算法首先构建一个图像-文本转换模型,从给定的目标图像生成目标的文本描述特征,从而实现更抽象和准确的目标表示。此外,我们开发了一个文本特征自适应模型来生成动态文本特征和图像-文本相关性,以关联目标文本和搜索图像,以进一步预测目标状态。

评估表明将语言信号纳入视觉跟踪对提高跟踪性能有显著的影响。

复现

处理数据

下载lasot数据集:LaSOT Dataset | Papers With Code

共200多G 

GOT-10K数据集:GOT-10k: Generic Object Tracking Benchmark (aitestunion.com)

共66G 

训练

准备数据

Set project paths

Run the following command to set paths for this project

python tracking/create_default_local_file.py --workspace_dir . --data_dir ./data --save_dir ./output

报错1:ModuleNotFoundError: No module named 'lib'

Traceback (most recent call last):File "tracking/create_default_local_file.py", line 9, in <module>from lib.train.admin import create_default_local_file_ITP_train
ModuleNotFoundError: No module named 'lib'

解决:

在终端输入:export PYTHONPATH=$PYTHONPATH:/data/CiteTracker-main/lib/train/admin

手动添加环境变量,解决。运行后得到如下两个文件:

报错2:ImportError: libGL.so.1: cannot open shared object file: No such file or directory

解决:pip install opencv-python-headless

测试

输入:

python tracking/test.py citetrack vitb_384_mae_ce_32x4_ep300 --dataset lasot --threads 16 --num_gpus 4

报错:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/53546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端:HTML、CSS、JS、Vue

1 前端 内容概要 了解前端三件套(HTML、CSS、JS)在前端所起的作用掌握HTML标签的功能&#xff0c;掌握重要标签(a标签&#xff0c;form标签)了解CSS了解JS的基础语法掌握Vue的基础语法重点掌握Vue项目怎么启动项目掌握前后端分离是什么。前端做什么事情&#xff0c;后端做什么…

视频监控系统布局策略:EasyCVR视频汇聚平台构建高效、全面的安全防线

随着科技的飞速发展&#xff0c;视频监控系统已成为现代社会安全防范的重要组成部分&#xff0c;广泛应用于公共场所、企业园区、住宅小区等各个领域。一个科学合理的视频监控系统布局与选型策略&#xff0c;不仅能够显著提升安全监控的效率和效果&#xff0c;还能在关键时刻提…

Pytest-@pytest.fixture夹具篇(一)

一、定义 在Python的pytest测试框架中&#xff0c;pytest.fixture是一个&#xff08;不是唯一&#xff09;装饰器&#xff0c;用于定义一个测试夹具。 二、简单实例 使用参数autouserTrue pytest.fixture(autouseTrue) def my_fixture():print("Setup: 准备测试环境&q…

计算机毕业设计 | SpringBoot+vue 游戏商城 steam网站管理系统(附源码)

1&#xff0c;项目背景 国家大力推进信息化建设的大背景下&#xff0c;城市网络基础设施和信息化应用水平得到了极大的提高和提高。特别是在经济发达的沿海地区&#xff0c;商业和服务业也比较发达&#xff0c;公众接受新事物的能力和消费水平也比较高。开展商贸流通产业的信息…

应用层协议HTTP

应用层协议中的 HTTP&#xff08;超文本传输协议&#xff09;。在互联网中&#xff0c;HTTP 协议是一个至关重要的一个协议&#xff0c;它定义了客户端与服务器之间如何进行通信&#xff0c;以交换或传输超文本。 本篇介绍了有关 URL 的相关知识&#xff0c;http 的报文格式&am…

Apache Pig

目录 一、配置说明1.本地模式2.集群模式 二、pig的数据模型三、pig的数据类型四、惰性执行五、pig的基本语法5.1语法说明5.2案例操作 六、pig的自定义函数 一、配置说明 1.本地模式 操作的是Linux系统文件 pig -x local关键日志 当前处于root目录下 2.集群模式 连接的是…

CentOS7单机环境安装k8s集群

目录 1、环境准备 2、安装依赖工具 3、配置 Kubernetes 的国内 Yum 源 4. 安装 Kubernetes 组件 5、初始化 Kubernetes 集群 1. 容器运行时没有正常运行 1.1. 可能的原因 1.2. 解决办法 2. 初始化拉取镜像卡住 2.1. 使用国内的镜像源&#xff08;无法解决问题&#x…

AI绘画工具排行榜:探索最受欢迎的AI绘图软件特点与选择指南

AI绘画工具各有优势&#xff0c;从开放性到对特定语言和文化的支持&#xff0c;以及对图像细节和艺术性的不同关注点&#xff0c;根据具体需求选择合适的工具 MidJourney 图片品质卓越&#xff0c;充满独特创意&#xff0c;初期能够免费获取数十账高质量图片&#xff0c;整个生…

ImportError: cannot import name ‘print_log‘ from ‘logging‘

mmcv升级到2.后删除了很多 解决 查FAQ文档&#xff0c;找到 添加到mmcv.utils下即可

海事行政执法证照片要求及尺寸格式修改方法

在海事行政执法领域&#xff0c;证件照片不仅是个人形象的展示&#xff0c;更是专业严谨态度的体现。一张符合规范的照片&#xff0c;不仅能够提升执法人员的权威性&#xff0c;还能在执行任务时获得更多的尊重和信任。本文将为您详细介绍海事行政执法证照片的要求&#xff0c;…

Windows系统安装node.js环境并创建本地服务使用内网穿透发布至公网

目录 前言 1.安装Node.js环境 2.创建node.js服务 3. 访问node.js 服务 4.内网穿透 4.1 安装配置cpolar内网穿透 4.2 创建隧道映射本地端口 5.固定公网地址 前言 作者简介&#xff1a; 懒大王敲代码&#xff0c;计算机专业应届生 今天给大家聊聊Windows系统安装node.js环…

网络安全知识科普:什么是网络准入控制系统?有哪些?

在当今数字化时代&#xff0c;网络安全已成为企业和组织不可忽视的重要议题。随着远程工作模式的普及和物联网设备的增加&#xff0c;网络边界越来越模糊&#xff0c;传统防火墙已经不足以应对日益复杂的威胁环境。在这种背景下&#xff0c;网络准入控制系统(Network Access Co…

Redis持久化机制—RDB与AOF

Redis持久化机制 RDB&#xff08;默认&#xff09; **思想&#xff1a;**保存整个数据库的快照&#xff0c;也就是RDB文件&#xff0c;有两种保存方式&#xff0c;前台保存save和后台保存bgsave&#xff0c;前者会阻塞主进程程&#xff0c;后者则是fork一个子进程去完成备份操…

C++入门9——list的使用

目录 1.什么是list&#xff1f; 2.list的构造 3.list迭代器的使用&#xff08;list iterator&#xff09; 4.list capacity 5.list modifiers 6.list的其他操作 1.什么是list&#xff1f; 在官网中&#xff0c;对list有这样的介绍&#xff1a; Lists are sequence co…

SLM561A​​系列 60V 10mA到50mA线性恒流LED驱动芯片 为智能家居照明注入新活力

SLM561A系列选型参考&#xff1a; SLM561A10ae-7G SOD123 SLM561A15ae-7G SOD123 SLM561A20ae-7G SOD123 SLM561A25ae-7G SOD123 SLM561A30ae-7G SOD123 SLM561A35ae-7G SOD123 SLM561A40ae-7G SOD123 SLM561A45ae-7G SOD123 SLM561A50ae-7G SOD123 …

【软件文档】软件系统需求管理规程(项目管理word原件)

软件资料清单列表部分文档清单&#xff1a;工作安排任务书&#xff0c;可行性分析报告&#xff0c;立项申请审批表&#xff0c;产品需求规格说明书&#xff0c;需求调研计划&#xff0c;用户需求调查单&#xff0c;用户需求说明书&#xff0c;概要设计说明书&#xff0c;技术解…

中秋之美——html5+css+js制作中秋网页

中秋之美——html5cssjs制作中秋网页 一、前言二、功能展示三、系统实现四、其它五、源码下载 一、前言 八月十五&#xff0c;秋已过半&#xff0c;是为中秋。 “但愿人长久&#xff0c;千里共婵娟”&#xff0c;中秋时节&#xff0c;气温已凉未寒&#xff0c;天高气爽&#x…

VS Code 调试go程序的相关配置说明

用 VS code 调试Go程序需要在.vscode/launch.json文件中增加如下配置&#xff1a; // launch.json {// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information, visit: https://go.microsoft.…

改写二进制文件

以下是一些常见的方法和工具&#xff1a; 1. 使用十六进制编辑器 十六进制编辑器 是最直接的工具之一&#xff0c;用于查看和编辑二进制文件中的数据。它允许你以十六进制格式查看和修改文件内容。 常见十六进制编辑器&#xff1a; HxD&#xff08;Windows&#xff09;Hex F…

【LabVIEW学习篇 - 16】:文件操作

文章目录 CSV文件CSV写入CSV读取 TXT文件txt写入txt读取 INI文件INI文件写入INI文件读取 CSV文件 .csv (Comma-Separated Values&#xff09;是逗号分隔值文件格式&#xff0c;有时也称之为字符分隔值&#xff0c;因为分隔符也可以不是逗号(最常见的是逗号和制表符)&#xff0…