详解多视角3D检测模型 BEVDepth: Acquisition of Reliable Depth for Multi-view 3D Object Detection

在这里插入图片描述

本文介绍一个多视角的3D检测模型:BEVDepth,论文收录于 AAAI2023。在这篇文章中,作者提出了一种新的具有可信深度估计的三维物体检测器。本文提出的BEVDepth通过利用激光雷达显式深度监督来提高图像深度估计的可信度。作者引入了摄像机感知深度估计模块,以增强深度预测能力。此外,针对不精确特征投影带来的副作用,设计了一种新的深度细化模块。此外借助定制的高效体素池化和多帧机制,BEVDepth在nuScenes测试集上实现了60.9%NDS,NDS得分首次达到60%。

论文链接:https://arxiv.org/abs/2206.10092

项目链接:https://github.com/Megvii-BaseDetection/BEVDepth


文章目录

      • 1. Introduction
      • 2. Delving into Depth Prediction in Lift-splat
        • 2.1 Model Architecture for Base Detector
        • 2.2 Making Lift-splat work is easy
        • 2.3 Making Lift-splat work well is hard
      • 3. BEVDepth
      • 4. Experiment

1. Introduction

引言部分作者提出了疑问:目前3D检测器学习到的深度估计质量真的能满足精确地3D目标检测要求吗?为了回答这个问题,作者首先可视化了基于Lift-splat检测器学习到的深度(下图所示)。尽管此检测器取得了30 mAP,但是它学到的深度非常差(虚线框中是相对准确的深度预测区域,通常是和地面相邻的区域)。

表1中作者将学习到的深度用LiDAR生成的深度来代替,可以看到mAP和NDS提高了20个点左右(0.282/0.470,0.327/0.515),显示了提高深度估计对摄像头3D检测非常关键。

在这里插入图片描述


2. Delving into Depth Prediction in Lift-splat

在引言中,作者发现基于LSS的检测器即使深度差得惊人,仍然可以获得合理的3D检测结果。在本节中,作者首先回顾建立在LSS上的基线3D检测器的总体结构。然后,在基线检测器上进行了简单的实验,以揭示为什么观察到前面的现象。最后,讨论了该检测器的三个不足之处,并指出了可能的解决方案。

2.1 Model Architecture for Base Detector

基线检测器使用CenterPoint检测头来代替原始LSS分割头。简单来说它包含4个组成部分:

  • 1)图像编码器从 NNN 个图像中提取图像特征,F2d={Fi2d∈F^{2 d}=\left\{F_i^{2 d} \in\right.F2d={Fi2d RCF×H×W,i=1,2,…,N}\left.\mathbb{R}^{C_F \times H \times W}, i=1,2, \ldots, N\right\}RCF×H×W,i=1,2,,N}
  • 2) 深度网络从图像特征中估计图像深度,Dpred={Dipred∈D^{pred}=\left\{D_i^{pred} \in\right.Dpred={Dipred RCD×H×W,i=1,2,…,N}\left.\mathbb{R}^{C_D \times H \times W}, i=1,2, \ldots, N\right\}RCD×H×W,i=1,2,,N},其中 CDC_DCD 表示深度区间个数。
  • 3)视觉转换,将2D图像转换到3D空间,然后池化转为BEV特征,Fi3d=Fi2d⊗Dipred ,Fi3d∈RCF×CD×H×WF_i^{3 d}=F_i^{2 d} \otimes D_i^{\text {pred }}, \quad F_i^{3 d} \in \mathbb{R}^{C_F \times C_D \times H \times W}Fi3d=Fi2dDipred ,Fi3dRCF×CD×H×W
  • 4)3D检测头预测物体类别,3D box尺寸位置和其它属性。

2.2 Making Lift-splat work is easy

这里作者首先用一个随机初始化的张量替换 DpredD^{pred}Dpred,并在训练和测试阶段冻结它。结果如表1所示,用随机soft值替换 DpredD^{pred}Dpred 后,mAP仅下降3.7%(从28.2%降至24.5%)。即使特征深度灾难性地被破坏,深度分布的soft性质在一定程度上仍然有助于投影到正确的深度位置。

进一步将soft随机深度替换为hard随机深度,观察到有6.9%的降幅。这表明只要正确位置的深度有激活,检测头就可以工作。这也解释了为什么在图1中的大多数区域学习到的深度较差,但仍然有一定的检测mAP。


2.3 Making Lift-splat work well is hard


3. BEVDepth


4. Experiment

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

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

相关文章

TFS版本管理(八)

目前TFS支持两种版本管理方式,一种是自带的TFS版本控制,一种是Git,后一种是分布式,并且分支功能相对强大,关于Git可以找更详细的资源学习。 如果没有创建项,在web门户中代码下的资源管理器是空的。 团队资…

Python开发常用工具库

本文汇总了在使用Python开发时常用到的第三方库和工具。 1.Python 官网地址:https://www.python.org/doc/ 博文地址:《Python编程:从入门到实践》速查表 2.OpenCV(图像处理) 官网地址:https://opencv.o…

TFS中的统一集成(九)

首先要在TFS服务器上配置生成配置,操作如下: 现在可以创建一个生成定义了,单击团队资源管理器的生成。 新建生成定义: 这里选择的是手动。触发这个生成有很多条件,我们选择手动主式。 在要服务器上共享一个文件夹&…

常用工具整理:数学,论文,代码等

1. Mathpix(图片转数学公式工具) 官网地址:Mathpix Snip在线LaTeX公式编辑:在线LaTeX公式编辑器-编辑器 (latexlive.com)推荐另一个开源的工具:Image to LaTex Converter,官网地址:GitHub - ki…

几位无人驾驶领域的杰出科学家

本文介绍了几位无人驾驶领域杰出的科学家们,大家可以关注他们的主页,及时了解一些无人驾驶行业最新动态。 (当然还有很多杰出的科学家,这里不一一列举了,暂时只列举出4位:3位外国科学家1位中国科学家&#…

Razor语法和Razor引擎大全

一、Razor语法 1、Razor的标识符 解释&#xff1a;字符被定义为Razor服务器代码块的标识符&#xff0c;后面的表示是服务器代码了。web form中使用<%%>中写服务器代码一个道理。在vs工具里面提供了代码着色和智能感应的功能。 { string userName "启超"; &…

让Team Foundation Server/TFS自动记住用户名密码解决方案

在使用Team Foundation Server&#xff08;以下简称TFS&#xff09; 的时候&#xff0c;在每次打开Visual Studio TFS时候&#xff0c;需要输入用户名和秘密&#xff0c;比较麻烦。 现提供一种方法可以解决这个问题&#xff1a; 依次执行下面操作&#xff1a; 打开控制面板--&…

TFS(Team Foundation Server)敏捷使用教程

一、引言 1 中国式软件过程的坏味道 RUP&#xff0c;CMM/CMMI到了中国就变了味。。。。。。 2 Team Foundation Server TFS是软件开发的协作平台&#xff0c;它要解决的首要问题是团队成员的协作问题。比如说&#xff1a; 研发团队内部怎么协作&#xff0c;产品经理&#x…

【PAT - 甲级1020】Tree Traversals (25分)(树的遍历,给定中序后序,求层次遍历)

题干&#xff1a; Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the corresponding binary tree. Input Specifi…

银行卡密码的加密、MAC计算

简介 在银行、银联、第三方支付等金融系统中&#xff0c;对银行卡密码等信息的加解密&#xff0c;对交易数据的加解密无处不在&#xff0c;在商场刷卡消费的POS机&#xff0c;在ATM机器取款等都需要对数据加密以保护数据安全&#xff0c;不被窃取。 本文主要对POS机的安全处理…

【Python学习】 - - 链表推导式[ 2*x for x in X ]、匿名函数、并行迭代

列表推导式[x for x in range(n)] 问题&#xff1a;请计算出1~9间的整数的平方 常规方法 for i in range(1,10):print(i*i) 链表推导式&#xff1a; print([x*x for x in range(1,10)]) 匿名函数方法&#xff1a; 匿名函数语法形式&#xff1a; lambda [arg1, arg2, arg3,…

C#多线程和线程池

.Net的公用语言运行时&#xff08;Common Language Runtime&#xff0c;CLR&#xff09;能区分两种不同类型的线程&#xff1a;前台线程和后台线程。这两者的区别就是&#xff1a;应用程序必须运行完所有的前台线程才可以退出&#xff1b;而对于后台线程&#xff0c;应用程序则…

GitHub.com上的那些东西你都知道什么意思吗?

GitHub初学入门者的图谱&#xff0c;介绍Github网站每个功能的意思 一、键盘快捷键 在GitHub中&#xff0c;很多页面都可以使用键盘快捷键。在各个页面按下“shift /”都可以打开键盘快捷键一览表&#xff0c;如下图&#xff1a; 快捷键 二、工具栏 工具栏 LOGO 点击GitHub…

【Python学习】 - sklearn学习 - 数据集分割方法 - 随机划分与K折交叉划分与StratifiedKFold与StratifiedShuffleSplit

一、随机划分 import numpy as np from sklearn import datasetsiris datasets.load_iris() X iris.data y iris.target# 1&#xff09;归一化前&#xff0c;将原始数据分割 from sklearn.model_selection import train_test_split X_train,X_test,y_train,y_test train_t…

【Python学习】 - sklearn - 用于生成数据的make_blobs模块

函数原型&#xff1a; sklearn.datasets.make_blobs(n_samples100, n_features2, centers3, cluster_std1.0, center_box(-10.0, 10.0), shuffleTrue, random_stateNone) 参数含义&#xff1a; n_samples: int, optional (default100) The total number of points equally di…

微服务架构及幂等性

微服务架构 微服务架构是一种架构概念&#xff0c;旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。它的主要作用是将功能分解到离散的各个服务当中&#xff0c;从而降低系统的耦合性&#xff0c;并提供更加灵活的服务支持。 和 微服务 相对应的&#xff0c;这…

【Python学习】 - Matplotlib二维绘图 - plt.matshow()和plt.imshow()区别对比

给定一个8*8的数据&#xff0c;用两种方式分别进行输出。 xx np.zeros((8,8),dtype np.uint8) xx[0,0] 13im Image.fromarray(xx) plt.imshow(im)plt.matshow(xx) plt.show() 输出&#xff1a; 得出结论&#xff1a; 首先我不知道为啥两个窗口是不一样大的。 其次发现图…

【机器学习】 - 数据预处理之数据归一化(标准化)与实战分析,正则化

一、为什么要进行数据归一化 定义&#xff1a;把所有数据的特征都归到 [0,1] 之间 或 均值0方差1 的过程。原则&#xff1a;样本的所有特征&#xff0c;在特征空间中&#xff0c;对样本的距离产生的影响是同级的&#xff1b;问题&#xff1a;特征数字化后&#xff0c;由于取值…

【基于Python】 - 人工智能机器学习深度学习数据分析 - 常见问题,常用的套路与操作(持续更新)

20200221&#xff1b; 1.做分类问题的时候&#xff0c;给定你标签&#xff0c;你想知道每一类标签的出现频数&#xff0c;可以使用这个函数&#xff1a;np.bincount()。 如果想分析一下数据样本是否均衡的时候&#xff0c;可以考虑这种操作&#xff0c;代码十分简明。 2. 当…

Entity Framework 简介

转贴&#xff1a;链接https://www.cnblogs.com/davidzhou/p/5348637.html 侵删&#xff0c;谢谢 第一篇&#xff1a;Entity Framework 简介 先从ORM说起吧&#xff0c;很多年前&#xff0c;由于.NET的开源组件不像现在这样发达&#xff0c;更别说一个开源的ORM框架&#xff0…