TBSI模型论文解读及代码分析

news2024/9/22 15:40:06

前往我的主页以获得更好的阅读体验

简介

论文来源: Bridging Search Region Interaction With Template for RGB-T Tracking

现有的搜索算法通常会直接连接 RGB 和 T 模态搜索区域, 该方法存在大量冗余背景噪声. 而另一些方法从搜索帧中采样候选框, 对孤立的 RGB 框和 T 框进行各种融合, 这限制了局部区域的跨模态交互. 本文将提出模板桥接搜索区域交互(TBSI)模块, 以模板为媒介, 通过收集和分发目标相关对象和环境来桥接 RGB 和 T 搜索区域之间的跨模态交互.

方法

网络结构图

网络主体结构如上图所示, 其中主干网络为 ViT, 特征经过 Transformer 块的交互与增强后, 进入 TBSI 模块, 该操作重复两次, 最终输出结果被拼接后由预测头进行预测.

输入图像被切割为 P × P P \times P P×P 的大小, 进入具有线性投影的块嵌入层. 以 X r   o r X t \bm{X}_r \ or \bm{X}_t Xr orXt 表示搜索区域, Z r   o r Z t \bm{Z}_r \ or \bm{Z}_t Zr orZt 表示模板区域. 因而注意力计算可以表示为:

A = S o f t m a x ( Q K ⊤ C ) = S o f t m a x ( [ X q ; Z q ] [ X k ; Z k ] ⊤ C ) = S o f t m a x ( [ X q X k ⊤ , X q Z k ⊤ ; Z q X k ⊤ , Z q Z k ⊤ ] C ) \begin{array}{ll} \bm{A} &= Softmax \left({\large \frac{ \bm{Q} \bm{K}^\top }{ \sqrt{C} } }\right) \\\\ &= Softmax \left({\large \frac{ [\bm{X}_q; \bm{Z}_q][\bm{X}_k; \bm{Z}_k]^\top }{ \sqrt{C} } }\right) \\\\ &= Softmax \left({\large \frac{ [\bm{X}_q \bm{X}_k^\top, \bm{X}_q \bm{Z}_k^\top; \bm{Z}_q \bm{X}_k^\top, \bm{Z}_q \bm{Z}_k^\top] }{ \sqrt{C} } }\right) \end{array} A=Softmax(C QK)=Softmax(C [Xq;Zq][Xk;Zk])=Softmax(C [XqXk,XqZk;ZqXk,ZqZk])

由此我们可以看出, 搜索区域与模板相互聚合彼此的特征, 通过连续 Transformer 块提取搜索区域与模板间的特征. Transformer 块的参数在 RGB 与 T 令牌之间共享, 以避免冗余.

TBSI 模块结构图

上图展示了 TBSI 模块的详细结构, 图中仅包含 T → M e d i u m → R G B T \rightarrow Medium \rightarrow RGB TMediumRGB 的过程, 反向过程亦是同理. 从图中可以看出, 两个模板首先融合成 Z m = [ Z r ; Z t ] W m \bm{Z}_m = [\bm{Z}_r; \bm{Z}_t] \bm{W}_m Zm=[Zr;Zt]Wm, 然后进行交叉注意力计算:

D t = S o f t m a x ( ( Z m W q 1 ) ( X t W k 1 ) ⊤ C ) ( X t W v 1 ) \bm{D}_t = Softmax\left( \frac{ (\bm{Z}_m \bm{W}_q^1)(\bm{X}_t \bm{W}_k^1)^\top }{ \sqrt{C} } \right) (\bm{X}_t \bm{W}_v^1) Dt=Softmax(C (ZmWq1)(XtWk1))(XtWv1)

于是我们就能得到细化后的融合特征:

Z m ′ = L N ( Z m + D t ) Z ~ m = L N ( Z m ′ + M L P ( Z m ′ ) ) \bm{Z}'_m = LN(\bm{Z}_m + \bm{D}_t) \\ \tilde{\bm{Z}}_m = LN(\bm{Z}'_m + MLP(\bm{Z}'_m)) Zm=LN(Zm+Dt)Z~m=LN(Zm+MLP(Zm))

然后计算可见光搜索区域与细化融合特征的交叉注意力:

D m t = S o f t m a x ( ( X r W q 2 ) ( Z ~ m W k 2 ) ⊤ C ) ( Z ~ m W v 2 ) \bm{D}_{mt} = Softmax\left( \frac{ (\bm{X}_r \bm{W}_q^2)(\bm{\tilde{Z}}_m \bm{W}_k^2)^\top }{ \sqrt{C} } \right) (\tilde{\bm{Z}}_m \bm{W}_v^2) Dmt=Softmax(C (XrWq2)(Z~mWk2))(Z~mWv2)

与细化融合特征的计算方式类似, 下面是细化搜索区域的特征:

X r ′ = L N ( X r + D m t ) X ~ m t r = L N ( X r ′ + M L P ( X r ′ ) ) \bm{X}'_r = LN(\bm{X}_r + \bm{D}_{mt}) \\ \tilde{\bm{X}}_{mtr} = LN(\bm{X}'_r + MLP(\bm{X}'_r)) Xr=LN(Xr+Dmt)X~mtr=LN(Xr+MLP(Xr))

目前为止只经过一次 T r a n s f o r m e r → T B S I Transformer \rightarrow TBSI TransformerTBSI, 接下来还会再经历一次, 而第一次, 我们用 T 模态特征细化 RGB 模态, 那么在第二次, RGB 模态特征又会被用于细化 T 模态特征.

作者与各种在线或离线模型进行对比后, 发现自己设计的网络精度更高, 并且在各种挑战属性上也取得了不错的结果.

代码

代码解读

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

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

相关文章

RISC-V特权架构 - 中断定义

RISC-V特权架构 - 中断定义 1 中断类型1.1 外部中断1.2 计时器中断1.3 软件中断1.4 调试中断 2 中断屏蔽3 中断等待4 中断优先级与仲裁5 中断嵌套6 异常相关寄存器 本文属于《 RISC-V指令集基础系列教程》之一,欢迎查看其它文章。 1 中断类型 RISC-V 架构定义的中…

Autodesk Maya 2025---智能建模与动画创新,重塑创意工作流程

Autodesk Maya 2025是一款顶尖的三维动画软件,广泛应用于影视广告、角色动画、电影特技等领域。新版本在功能上进行了全面升级,新增了对Apple芯片的支持,建模、绑定和角色动画等方面的功能也更加出色。 在功能特色方面,Maya 2025…

RabbitMQ安装及使用笔记

RabbitMQ安装及使用笔记 RabbitMQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP),用于在分布式系统中进行消息传递。 1.安装 利用docker load命令加载mq镜像 docker load -i mq.tar 基于Docker来安装RabbitMQ&#xff…

网络空间测绘系统的商业应用

随着网络空间的不断发展和扩展,网络安全已经成为当今社会面临的重要挑战之一。为了有效应对网络安全威胁,网络空间测绘系统应运而生,成为网络安全领域的重要工具。 网络空间测绘系统不仅能够帮助安全研究人员进行研究和管理,还能为…

3.28总结

1.java学习记录 1.方法的重载 重载换而言之其实就是函数名不变,但是其中的参数需要改变,可以三个方面改变(参数类型,参数顺序,参数个数这三个方面入手,这样可以运用的) 但是:注意…

边缘计算AI盒子目前支持的AI智能算法、视频智能分析算法有哪些,应用于大型厂矿安全生产风险管控

一、前端设备实现AI算法 主要是基于安卓的布控球实现,已有的算法包括: 1)人脸;2)车牌;3)是否佩戴安全帽;4)是否穿着工装; 可以支持定制开发 烟雾&#xf…

API是什么,如何保障API安全

随着移动APP、微服务架构、云、物联网的兴起,企业API数量呈爆发式增长。作为数字世界的连接者,API为企业搭建起了一条内外相连、四通八达的“数据公路”。 API是什么?API,全称Application Programming Interface,即应用…

黑马头条知识点总结

黑马头条知识点总结 文章目录 黑马头条知识点总结前言一、使用的所有技术栈二、初始化项目 2.1加密盐登录2.2网关2.3配置nginx三。文章通过freemarker生成html文件存入minio中四。内容安全阿里云接口5.使用延迟任务发布审核文章 4.9.3)redis分布式锁在工具类CacheService中添加…

CI/CD实战-jenkins结合ansible

配置主机环境 在jenkins上断开并删除docker1节点 重新给master添加构建任务 将server3,server4作为测试主机,停掉其上后面的docker 在server2(jenkins)主机上安装ansible 设置jenkins用户到目标主机的免密 给测试主机创建用户并…

数据结构:基于数组实现栈

1 前言 栈是一种先进后出的线性表。向一个栈插入新元素可以叫做进栈、入栈、压栈,新元素必须放到栈顶元素上面,使之成为新的栈顶;从一个栈删除元素可以叫做出栈、退栈,它将栈顶元素删除,使和原来栈顶元素相邻的元素称…

MySQL创建表:练习题

练习题: 创建一个名为"students"的数据库,并切换到该数据库。 在"students"数据库中创建一个名为"grades"的表,包含以下字段: id: 整数类型 name: 字符串类型,学生姓名 subject: 字符串…

代码随想录阅读笔记-二叉树【层序遍历相关题目】

1、二叉树的层次遍历II 题目 给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 思路 相比上个博客中的层序遍历,这里需要做的仅仅是把最后的result数组反…

QT中的 容器(container)简介

Qt库提供了一套通用的基于模板的容器类&#xff0c;可以用这些类存储指定类型的项。比如&#xff0c;你需要一个大小可变的QString的数组&#xff0c;则使用QVector<QString>。 这些容器类比STL&#xff08;C标准模板库&#xff09;容器设计得更轻量、更安全并且更易于使…

【C语言基础】:数据在内存中的存储

文章目录 一、整数在内存中的存储二、大小端字节序和字节序判断1. 为什么有大小端&#xff1f;2. 练习 三、浮点数在内存中的存储1. 浮点数的存储1.1 浮点数的存储过程1.2 浮点数取的过程 四、题目解析 书山有路勤为径&#xff0c;学海无涯苦作舟。 创作不易&#xff0c;宝子们…

springboot+vue在idea上面的使用小结

1.在mac上面删除java的jdk方法&#xff1a; sudo rm -rfjdk的路径 sudo rm -rf /Users/like/Library/Java/JavaVirtualMachines/corretto-17.0.10/Contents/Home 2.查询 Mac的jdk版本和路径&#xff1a; /usr/libexec/java_home -V 3.mac上面查询和关闭idea的网页端口&…

Jackson 2.x 系列【6】注解大全篇二

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-jaskson-demo 文章目录 注解大全2.11 JsonValue2.12 JsonKey2.13 JsonAnySetter2.14 JsonAnyGetter2.15 …

增强现实(AR)和虚拟现实(VR)营销的未来:沉浸式体验和品牌参与

--- 如何将AR和VR技术应用于营销&#xff0c;以提高品牌知名度、客户参与度 增强现实&#xff08;AR&#xff09;和虚拟现实&#xff08;VR&#xff09;不再只是游戏。这些技术为品牌与受众互动提供了创新的方式。营销人员可以创造更好的客户体验&#xff0c;并为身临其境的故…

Docker进阶:使用Docker部署Harbor私有镜像仓库

Docker进阶&#xff1a;使用Docker部署Harbor私有镜像仓库 1、安装Docker和Docker Compose1、安装Docker、Docker Compose2、验证Docker和Docker Compose是否成功安装3、先启动运行docker服务 2、下载并配置Harbor1、下载最新版本的Harbor离线安装包2、配置Harbor的主机名和管理…

Java毕业设计-基于springboot开发的休闲娱乐代理售票系统-毕业论文+答辩PPT(附源代码+演示视频)

文章目录 前言一、毕设成果演示&#xff08;源代码在文末&#xff09;二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构 三、系统实现展示1、系统功能模块2、后台登录2.1管理员功能2.2用户功能 四、毕设内容和源代码获取总结 Java毕业设计-基于springboot开发的休闲娱乐…

linux中查看内存占用空间

文章目录 linux中查看内存占用空间 linux中查看内存占用空间 使用 df -h 查看磁盘空间 使用 du -sh * 查看每个目录的大小 注意这里是当前目录下的文件大小&#xff0c;查看系统的可以回到根目录 经过查看没有发现任何大的文件夹。 继续下面的步骤 如果您的Linux磁盘已满&a…