当前位置: 首页 > news >正文

【3D目标检测】DSVT-2023CVPR

论文:https://arxiv.org/pdf/2301.06051.pdf

作者:北大,华为

 代码:https://github.com/Haiyang-W/DSVT ( OpenPCDet 框架已集成)

讲解:实时部署!DSVT:3D动态稀疏体素Transformer主干(北大&华为) - 知乎

  • 论文提出了动态稀疏窗口注意力,这是一种新的基于窗口的注意力策略,用于并行有效地处理稀疏三维体素;

  • 论文提出了一种可学习的3D池化操作,它可以有效地对稀疏体素进行下采样,并更好地编码几何信息;

  • 基于上述关键设计,论文介绍了一种高效但易于部署的Transformer 3D主干,无需任何定制CUDA操作。

  1. 稀疏窗口划分成subsets,每个subsets体素数量相同,以进行并行计算。这些子集的分区配置将根据x轴和y轴之间的旋转分区轴在连续的自关注层中进行更改。

  2. Hybrid window partition:窗口内部特征融合,编码多尺度信息

  3. 3D sparse pooling operation:首先将稀疏下采样区域转换为密集下采样区域,并进行关注式3D池化操作,自动聚合局部空间特征。

网络结构

  1. VFE模块:将input point clouds 划分成稀疏 voxel,每个voxel 视作token。考虑到感受野的限制,只采用单步下采样网络,该方法不会降低X/ y轴特征图的比例。

  2. 动态稀疏窗口attention:保证了每个window中的subsets内非空voxel数量相同。旋转集和混合窗口:并行计算,在保持高效计算的同时,引入窗内和窗间特征传播。

  • 参数:x,y,z坐标,voxel 坐标,voxel id(根据x或y坐标排序可得到voxel ID)

  • 非空、不重叠、相同数量的子集:首先计算每个window内的sub-sets的数量。windows设定12*12*1,windows内的非空voxel数量N。设定每个subsets内非空voxel 数量r(代码中为36个),计算每个windows内的subsets数量S,保证每个subsets中的voxels数量是一致的。

  • 根据voxel id 将所有的voxel 划分到subsets 中。windows的数量由spares_shape得出,在每个windows内的subsets中完全并行计算attention。

a. 旋转集合注意力

由于在固定的windows内计算attention缺乏子集间的连接,使用旋转集合注意力方法,在连续的注意力层之间交替使用两种分区配置。DSVT块包含两个自注意力层。第一层采用X轴分区,其中体素ID根据其在X轴主序中的坐标排序。接下来的一层采用旋转分区配置,按Y轴主序排序。

非空体素越多,就会分配更多的子集和计算资源来处理该窗口,这是动态稀疏窗口注意力设计的关键。增加window 会减少sets数量降低计算量,但是对小目标效果不好。因此采用混合窗口分割来提供良好的性能-效率权衡。

b.混合窗口

参考swin-transformer的窗口移位技术来重新分割稀疏窗口,但它们的窗口大小是不同的。

  1. 基于注意力的3D池化:应用在DSVT中downsample_stride的下采样中。

  2. 然后将我们提出的DSVT提取的体素特征投影到鸟瞰(BEV)特征图中

  3. Centerhead 预测头:

在补充材料中,首先阐述了§A中非重叠集划分的证明,然后提供了§B中网络架构、训练方案和消融基线的更多实现细节。最后,对§C中的超参数分析和§D中定量结果的可视化进行了进一步的研究。还讨论了§E中轴-注意的区别和§F中DSVT的局限性。

相关文章:

【3D目标检测】DSVT-2023CVPR

论文:https://arxiv.org/pdf/2301.06051.pdf 作者:北大,华为 代码:https://github.com/Haiyang-W/DSVT ( OpenPCDet 框架已集成) 讲解:实时部署!DSVT:3D动态稀疏体素Tr…...

我在VScode学Python(Python函数,Python模块导入)

我的个人博客主页:如果’真能转义1️⃣说1️⃣的博客主页 (1)关于Python基本语法学习---->可以参考我的这篇博客《我在VScode学Python》 (2)pip是必须的在我们学习python这门语言的过程中Python ---->&a…...

【目标跟踪】1、基础知识

文章目录 一、卡尔曼滤波二、匈牙利匹配 一、卡尔曼滤波 什么是卡尔曼滤波?——状态估计器 卡尔曼滤波用于在包含不确定信息的系统中做出预测,对系统下一步要做什么进行推测,且会结合推测值和观测值来得到修正后的最优值卡尔曼滤波就是利用…...

33. 搜索旋转排序数组

题目描述 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k1], ..., nums[n-1], nums[0], n…...

接口自动化测试要做什么?8个步骤讲的明明白白(小白也能看懂系列)

先了解下接口测试流程&#xff1a; 1、需求分析 2、Api文档分析与评审 3、测试计划编写 4、用例设计与评审 5、环境搭建&#xff08;工具&#xff09; 6、执行用例 7、缺陷管理 8、测试报告 那"接口自动化测试"怎么弄&#xff1f;只需要在上篇文章的基础上再梳理下就…...

Flutter 自定义 虚线 分割线

学习使用Flutter 进行 虚线 自定义控件 练习 // 自定义虚线 &#xff08;默认是垂直方向&#xff09; class DashedLind extends StatelessWidget {final Axis axis; // 虚线方向final double dashedWidth; // 根据虚线的方向确定自己虚线的宽度final double dashedHeight; //…...

Java毕业设计—爱宠医院管理系统设计与实现

爱宠医院管理系统 获取数论文、代码、答辩PPT、安装包&#xff0c;可以查看文章底部 一、 如何安装及配置环境 要运行整个爱宠医院管理系统需要安装数据库&#xff1a;MySQL 5.5&#xff0c;开发工具&#xff1a;JDK 1.8&#xff0c;开发语开发平台&#xff1a;Eclipse&…...

AI时代带来的图片造假危机,该如何解决

一、前言 当今&#xff0c;图片造假问题非常泛滥&#xff0c;已经成为现代社会中一个严峻的问题。随着AI技术不断的发展&#xff0c;人们可以轻松地通过图像编辑和AI智能生成来篡改和伪造图片&#xff0c;使其看起来真实而难以辨别&#xff0c;之前就看到过一对硕士夫妻为了骗…...

【动态规划】简单多状态

文章目录 动态规划&#xff08;简单多状态&#xff09;1. 按摩师2. 打家劫舍 ||3. 删除并获得点数4. 粉刷房子5. 最佳买卖股票时机含冷冻期6. 买卖股票的最佳时机含手续费7. 买卖股票的最佳时机 |||8. 买卖股票的最佳时机 IV 动态规划&#xff08;简单多状态&#xff09; 1. 按…...

科技资讯|苹果计划本月推出Vision Pro头显开发套件,电池有重大更新

根据消息源 aaronp613 分享的信息&#xff0c;苹果计划本月底面向开发者&#xff0c;发布 Vision Pro 头显开发套件。消息源还指出苹果更新了 Vision Pro 头显电池组的代号&#xff0c;共有 A2781&#xff0c;A2988 和 A2697 三种不同的型号&#xff0c;目前尚不清楚三者之间的…...

k8s 将pod节点上的文件拷贝到本地

要将 Kubernetes&#xff08;k8s&#xff09;中 Pod 节点上的文件拷贝到本地&#xff0c;可以通过使用 kubectl cp 命令来实现。kubectl cp 命令允许你在本地系统和 Pod 之间复制文件和目录。 下面是使用 kubectl cp 命令的语法&#xff1a; kubectl cp <namespace>/&l…...

Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…...

java篇 类的进阶0x02:方法重载

文章目录 方法重载 overload方法签名返回值不属于方法签名的原因&#xff1a; 重载的参数匹配规则 方法重载 overload 多个方法功能很相似&#xff0c;但不完全一样&#xff0c;可以考虑使用方法的重载。 同一个类中&#xff0c;方法可以重名&#xff0c;但是签名不可以重复。…...

Android11 相机拍照权限,以及解决resolveActivity返回null

一、配置拍照和读写权限 <uses-permission android:name"android.permission.CAMERA"/> <uses-feature android:name"android.hardware.camera" /><uses-permission android:name"android.permission.WRITE_EXTERNAL_STORAGE"/&…...

MAXENT模型的生物多样性教程

详情点击链接&#xff1a;基于MAXENT模型的生物多样性生境模拟与保护优先区甄选、自然保护区布局优化及未来气候变化下评估中的应用及论文写作 一&#xff1a;生物多样性保护格局与自然保护区格局优化 1.我国生物多样性格局与分布&#xff1b; 2.我国自然保护区格局与分布&…...

CISA学习笔记-第一章、信息系统审计过程

传统的审计三方关系理论指明&#xff0c;审计作为独立于会计记录之外的一项重要职能&#xff0c;是公司财务信息公允可靠的有力保障&#xff0c;制约着会计行为&#xff0c;制衡了会计权力。 1. IS审计和保障标准、指南、工具 职业道德规范 信息技术保证框架&#xff08;ITAF&a…...

回调函数的使用:案例一:c语言简单信号与槽机制。

系列文章目录 文章目录 系列文章目录前言一、回调函数1.1 回调函数基本概念1.2 简单实现 二、代码案例1.代码示例 总结 前言 了解回调函数的基本概念&#xff0c;函数指针的使用、简单信号与槽的实现机制&#xff1b; 一、回调函数 1.1 回调函数基本概念 回调函数就是一个通…...

python matplotlib库 设置字体字号等

主要是记录字体、字号对应的参数。注意字符串类型的参数要加引号 1.字体&#xff1a; fontname 常见参数&#xff1a; # 常用 Times New Roman、Dejavu sans、TeX Gyre Schola中文字体 黑体&#xff1a;SimHei 微软雅黑&#xff1a;Microsoft YaHei 微软正黑体&#xff1a;M…...

【MySQL】SQL性能分析 (七)

&#x1f697;MySQL学习第七站~ &#x1f6a9;本文已收录至专栏&#xff1a;MySQL通关路 ❤️文末附全文思维导图&#xff0c;感谢各位点赞收藏支持~ 假如我们需要对SQL进行优化&#xff0c;我们就必须对他足够的了解&#xff0c;比如 对哪一类SQL进行优化&#xff08;增删改查…...

超越想象的GPT医疗 20230723

7月份读完了这本书&#xff0c;趁着周末写下读书笔记吧 这本书 作者&#xff1a;【美】彼得.李 Peter Lee 【美】凯丽.戈德伯格CareyGoldberg 著 【美】伊萨克.科恩Isaac Kohane 芦义 译 在AI风起云涌时代&#xff0c;在这刚刚过去的新冠三年&#xff0c;“超越想象的GPT医…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

微信小程序 - 手机震动

一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注&#xff1a;文档 https://developers.weixin.qq…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)

引言 工欲善其事&#xff0c;必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后&#xff0c;我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集&#xff0c;就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...