论文阅读《BEVFormer v2》
BEVFormer v2: Adapting Modern Image Backbones to Bird’s-Eye-View Recognition via Perspective Supervision
目录
- 摘要
- 1 介绍
- 2 相关工作
- 2.1 BEV三维目标检测器
摘要
我们提出了一种具有透视监督的新型鸟瞰图(BEV)检测器,其收敛速度更快并且更适合现代图像主干。现有的最先进的BEV检测器通常与某些深度预训练主干网络(如VoVNet)相关联,从而阻碍了蓬勃发展的图像主干网络和BEV检测器之间的协同作用。为了解决这一限制,我们优先通过引入透视图监督来简化BEV检测器的优化。为此,我们提出了一个两阶段BEV检测器,其中来自透视头的提议被输入到鸟瞰头中进行最终预测。为了评估我们模型的有效性,我们进行了广泛的消融研究,重点关注监督形式和所提出的检测器的通用性。所提出的方法通过广泛的传统和现代图像主干得到了验证,并在大规模nuScenes数据集上取得了新的SoTA结果。代码即将发布。
1 介绍
鸟瞰图(BEV)识别模型引起了自动驾驶领域的兴趣,因为它们可以自然地将来自多个传感器的部分原始观测结果整合到统一的整体3D输出空间中。典型的BEV模型建立在图像主干之上,然后是视图转换模块,该模块将透视图像特征提升为 BEV 特征,然后由BEV特征编码器和一些特定任务的头进一步处理。人们投入了大量精力来设计视图转换模块,并将不断增长的下游任务列表纳入新的识别框架,但BEV模型中图像主干的研究却被忽视了。作为一个前沿且要求极高的领域,将现代图像主干引入自动驾驶是理所当然的。令人惊讶的是,研究界选择坚持使用VoVNet来享受其大规模深度预训练。在这项工作中,我们专注于释放现代图像特征提取器的全部威力,用于BEV识别,为未来的研究人员探索该领域更好的图像主干设计打开大门。
然而,仅仅采用那些现代图像主干而没有进行适当的预训练并不能产生令人满意的结果。例如,在3D物体检测方面,ImageNet预训练的ConvNeXt-XL主干网络的性能与DDAD-15M预训练的VoVNet-99相当,尽管后者的参数是前者的3.5倍。我们将适应现代图像主干的努力归因于以下问题。其一,自然图像和自动驾驶场景之间的领域差距。在一般二维识别任务上进行预训练的主干网络无法感知三维场景,尤其是无法估计深度。其二,当前BEV检测器的结构复杂。以BEVFormer为例。3D边界框和物体类别标签的监督信号通过视图编码器和物体解码器与图像主干分离,每个编码器和物体解码器由多层transformer组成。用于适应自动驾驶任务的通用二维图像主干的梯度流被堆叠的transformer层扭曲了。为了解决在将现代图像主干网络应用于BEV识别时遇到的上述困难,我们在BEVFormer中引入了透视监督,即将来自透视视图任务的额外监督信号直接应用于主干网络。它引导主干网络学习二维识别任务中缺失的三维知识,并克服BEV检测器的复杂性,极大地促进了模型的优化。具体来说,我们在主干网络上构建一个透视3D检测头,它将图像特征作为输入并直接预测目标对象的3D边界框和类别标签。这个透视头的损失,表示为透视损失,被添加到由BEV头衍生的原始损失(BEV损失)中,作为辅助检测损失。两个检测头使用其相应的损失项进行联合训练。此外,我们发现将两个检测头自然而然地组合成两级BEV检测器BEV-Former v2。由于透视头已经很成熟了,它可以在透视图中生成高质量的目标提案,我们将其作为第一阶段提案。我们将它们编码为目标查询,并将它们与原始BEVFormer中可学习的查询收集起来,形成混合对象查询,然后将其输入到第二阶段检测头以生成最终预测。
我们进行了大量的实验来证实我们提出的透视监督的有效性和必要性。透视损失有助于图像主干的适应,从而提高检测性能并加快模型收敛。而如果没有这种监督,即使经过更长的时间训练,模型也无法取得类似的结果。因此,我们成功地将现代图像主干适应BEV模型,在nuScenes测试集上实现了63.4%的NDS。
本文的贡献总结如下:
- 我们指出,透视监督是将一般的二维图像主干适应BEV模型的关键。我们通过透视图中的检测损失明确地添加了这种监督。
- 我们提出了一种新颖的两阶段BEV检测器,BEV-Former v2。它由一个透视3D和一个BEV检测头组成,前者的提议与后者的目标查询相结合。
- 我们通过将我们的方法与最新开发的图像主干相结合来强调其有效性,并在nuScenes数据集上取得了比以前最先进的结果更显著的改进。
2 相关工作
2.1 BEV三维目标检测器
最近,鸟瞰图(BEV)目标检测因其在自动驾驶系统中的巨大成功而受到了更多的关注。
早期的研究包括OF、Pseudo LiDAR和VPN,它们阐明了如何将透视特征转换为BEV特征,但无论是针对单个摄像头还是不太知名的任务。OFT率先采用从2D图像特征到3D BEV特征的转换,实现单目3D目标检测。Pseudo LiDAR,顾名思义,通过单目深度估计和相机内参创建伪点云,然后在BEV空间中对其进行处理。VPN是第一个将多视角相机输入融合到自上而下的视角特征图中以进行语义分割的技术。
相关文章:
论文阅读《BEVFormer v2》
BEVFormer v2: Adapting Modern Image Backbones to Bird’s-Eye-View Recognition via Perspective Supervision 目录 摘要1 介绍2 相关工作2.1 BEV三维目标检测器 摘要 我们提出了一种具有透视监督的新型鸟瞰图(BEV)检测器,其收敛速度更快…...
自动化运维(k8s):一键获取指定命名空间镜像包脚本
前言:脚本写成并非一蹴而就,需要不断的调式和修改,这里也是改到了7版本才在 生产环境 中验证成功。 该命令 和 脚本适用于以下场景:在某些项目中,由于特定的安全或政策要求,不允许连接到你的镜像仓库。然而…...
HarmonyOS ArkUI(基于ArkTS) 开发布局 (上)
一 ArkUI(基于ArkTS)概述 基于ArkTS的声明式开发范式的方舟开发框架是一套开发极简、高性能、支持跨设备的UI开发框架,提供了构建应用UI所必需的能力 点击详情 特点 开发效率高,开发体验好 代码简洁:通过接近自然语义的方式描述UI&#x…...
第九部分 :1.STM32之通信接口《精讲》(USART,I2C,SPI,CAN,USB)
本芯片使用的是STM32F103C8T6型号 STM32F103C8T6是STM32F1系列中的一种较常用的低成本ARM Cortex-M3内核MCU,具有丰富的通信接口,包括USART、SPI、I2C等。下面是该芯片上通信接口的管脚分布、每个接口的工作模式、常用应用场景和注意事项。 1. USART (通…...
5. langgraph中的react agent使用 (从零构建一个react agent)
1. 定义 Agent 状态 首先,我们需要定义 Agent 的状态,这包括 Agent 所持有的消息。 from typing import (Annotated,Sequence,TypedDict, ) from langchain_core.messages import BaseMessage from langgraph.graph.message import add_messagesclass …...
uniapp vue3的下拉刷新和上拉加载
开启页面的下拉刷新,注意这个不是可滚动视图的下拉刷新. 一般页面建议使用页面外的,不要使用scroll-view里面的下拉刷新. pages: "pages": [ {"path": "pages/index/index","style": {"navigationBarTitleText": "首…...
STM32设计井下瓦斯检测联网WIFI加Zigbee多路节点协调器传输
目录 目录 前言 一、本设计主要实现哪些很“开门”功能? 二、电路设计原理图 1.电路图采用Altium Designer进行设计: 2.实物展示图片 三、程序源代码设计 四、获取资料内容 前言 本系统基于STM32微控制器和Zigbee无线通信技术,设计了…...
Vue 3 中的原生事件监听与组件事件处理详解
Vue 3 中的原生事件监听与组件事件处理完全指南 在 Vue 3 中,事件监听和事件处理是组件交互中的关键部分。Vue 提供了一套简单而强大的事件处理机制,可以方便地监听 DOM 原生事件和组件自定义事件。本篇文章将详细介绍 Vue 3 中事件的使用,包…...
Flink Source 详解
Flink Source 详解 原文 flip-27 FLIP-27 介绍了新版本Source 接口定义及架构 相比于SourceFunction,新版本的Source更具灵活性,原因是将“splits数据获取”与真“正数据获取”逻辑进行了分离 重要部件 Source 作为工厂类,会创建以下两…...
2024年了,TCP分析工具有哪些?
TCP分析工具广泛应用于网络调试、性能分析和协议学习。以下是一些常用的TCP分析工具,它们各有特点,适用于不同的场景: Wireshark - 这是一个非常强大的网络协议分析器,支持图形界面,可以捕获和分析TCP流量,…...
SRP 实现 Cook-Torrance BRDF
写的很乱! BRDF(Bidirectional Reflectance Distribution Function)全称双向反射分布函数。辐射量单位非常多,这里为方便直观理解,会用非常不严谨的光照强度来解释说明。 BRDF光照模型,上反射率公式&#…...
MySQL慢日志
慢查询日志顾名思义就是查询慢的sql语句可以记录到一个日志文件里,至于有多慢才会被记录,默认是10秒,但也可以通过系统配置来更改,慢日志在做系统优化时是一个非常好用的工具 #是否开启慢日志 show variables like slow_query_log…...
Flutter网络通信-封装Dio
前言 dio 是一个强大的 Dart HTTP 请求库,支持全局配置、Restful API、FormData、拦截器、 请求取消、Cookie 管理、文件上传/下载、超时以及自定义适配器等。 Dio的pub地址为:dio | Dart package 封装要求 能够使用get、post、put、patch、delete、…...
matlab 读取csv
需要跳过第一行表头等信息 1、读取整个文件 csvread(FILENAME)%文件路径 文件名2、指定起始位置 csvread(FILENAME, R, C)%从文件的第R行和第C列开始读取数据 逗号分开3、指定数据范围 csvread(FILENAME, R, C, [R1 C1 R2 C2])%读取从(R1, C1)到(R2, C2)范围内的数据注意&am…...
网络层9——虚拟专用网VPN和网络地址转换NAT
目录 一、为什么有虚拟专用网? 二、如何理解“虚拟专用网”? 三、IP隧道技术实现虚拟专用网 四、网络地址变换 一、为什么有虚拟专用网? 第一,IPv4只有32位,最多有40亿个全球唯一的IP地址数量不够,无法…...
开源科学工程技术软件介绍 – EDA工具KLayout
link 今天向各位知友介绍的 KLayout是一款由德国团队开发的开源EDA工具。 KLayout是使用C开发的,用户界面基于Qt。它支持Windows、MacOS和Linux操作系统。安装程序可以从下面的网址下载: https://www.klayout.de/build.html KLayout图形用户界面&…...
【网络安全】Cookie SameSite属性
未经许可,不得转载。 文章目录 背景CSRF 攻击SameSite 属性StrictLaxNone背景 为了有效防止 CSRF 攻击并保护用户隐私,Chrome 从 51 版本开始引入了 SameSite 属性,专门用于限制第三方 Cookie 的使用,进而减少安全风险。 CSRF 攻击 跨站请求伪造(CSRF)攻击是指恶意网站…...
Linux 命令 | 每日一学,文本处理三剑客之awk命令实践
[ 知识是人生的灯塔,只有不断学习,才能照亮前行的道路 ] 0x00 前言简述 描述:前面作者已经介绍了文本处理三剑客中的 grep 与 sed 文本处理工具,今天将介绍其最后一个且非常强大的 awk 文本处理输出工具,它可以非常方便…...
RabbitMQ的工作队列在Spring Boot中实现(详解常⽤的⼯作模式)
上文着重介绍RabbitMQ 七种工作模式介绍RabbitMQ 七种工作模式介绍_rabbitmq 工作模式-CSDN博客 本篇讲解如何在Spring环境下进⾏RabbitMQ的开发.(只演⽰部分常⽤的⼯作模式) 目录 引⼊依赖 一.工作队列模式 二.Publish/Subscribe(发布订阅模式) …...
【web前端笔记】vue3 + vite的前端项目中,使用import.meta.glob()方法实现全局注册组件的通用代码
目录 1.1、如何读取所有文件 1.2、通用代码 1.3、在main.js引入 这篇文章介绍一下,在vue3和vite搭建的项目中,如何将【src/components】目录下所有的【*.vue】文件,当做一个组件全局注册到Vue对象里面。 1.1、如何读取所有文件 在vue3和vite搭建的项目里面,它给我们提…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用
文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
