【论文笔记】Far3D: Expanding the Horizon for Surround-view 3D Object Detection

原文链接:https://arxiv.org/pdf/2308.09616.pdf

1. 引言

目前的环视图图像3D目标检测方法分为基于密集BEV的方法和基于稀疏查询的方法。前者需要较高的计算量,难以扩展到长距离检测。后者全局固定的查询不能适应动态场景,通常会丢失远距离目标。本文引入3D自适应查询以增强灵活性。

基于稀疏查询的长距离检测主要的挑战是召回率低。由于2D检测的召回率高,可以使用高质量的2D检测先验来改进3D提案,从而实现精确定位和全面覆盖。但直接使用来自2D提案的3D查询有两个问题:(1)深度不确定;(2)当距离增加时3D空间中的偏差增大。这会影响训练稳定性,需要去噪方法来优化。此外,训练会倾向对近距离较为密集的物体进行过拟合,而忽略稀疏分布的远距离物体。

本文使用2D提案和相应的深度,通过空间变换得到3D提案,然后用投影位置嵌入和上下文语义来组成3D自适应查询,在解码器中细化。透视图感知的聚合会用在不同尺度和视图的图像上(对远距离物体需要关注高分辨率特征,而近距离物体反之,才能获得高层特征)。此外,还提出距离调制的3D去噪技术(根据GT构建噪声查询,解码器学习从噪声提案中恢复正提案并拒绝负提案),来缓解查询误差传播和收敛慢的问题。同时,查询去噪能减轻距离分布不平衡的问题。

3. 方法

3.1 概述

图1 模型框架
给定环视图像 I = { I 1 , ⋯ . I n } I=\{I_1,\cdots.I_n\} I={I1,.In},使用主干和FPN提取多尺度图像特征 F = { F 1 , ⋯ , F n } F=\{F_1,\cdots,F_n\} F={F1,,Fn}。使用2D检测器和深度网络获取2D提案和深度,然后筛选出其中可靠性高的并转换到3D空间,得到3D物体查询。

在3D检测器中,将3D自适应查询和3D全局查询输入到Transformer解码层中,进行查询间的自注意力和透视感知的查询-特征聚合。

3.2 自适应查询生成

给定图像特征,输入到2D检测器和轻量级深度估计网络预测2D边界框和离散深度分布,并筛选出分数大于阈值 τ \tau τ的边界框。然后根据深度和相机参数,将边界框的中心投影到3D空间,得到坐标 c 3 d c_{3d} c3d

然后,按下式编码为3D自适应查询:
Q p o s = P o s E m b e d ( c 3 d ) Q_{pos}=PosEmbed(c_{3d}) Qpos=PosEmbed(c3d) Q s e m = S e m E m b e d ( z 2 d , s 2 d ) Q_{sem}=SemEmbed(z_{2d},s_{2d}) Qsem=SemEmbed(z2d,s2d) Q = Q p o s + Q s e m Q=Q_{pos}+Q_{sem} Q=Qpos+Qsem
其中 z 2 d z_{2d} z2d为边界框2D中心处的图像特征, s 2 d s_{2d} s2d为边界框的置信度分数。位置编码为正弦变换+MLP,语义编码为MLP。

最后,将3D自适应查询与初始化的全局查询一起输入到Transformer解码层。

3.3 透视感知的聚合

遥远的小物体需要高分辨率特征以精确定位,而近处的大物体需要高级特征。本文提出透视图感知的聚合,从而在不同的尺度和视图上进行高效的特征交互。

本文首先将图像特征 F F F与相机内外参 I , K I,K I,K组合,并使用squeeze-and-excitation块丰富特征。增强的特征 F ′ F' F使用3D可变形卷积。对每个查询参考点预测 M M M个偏移量,并投影到不同视图和尺度的2D特征图上。

最后根据2D参考点从 F ′ F' F中采样图像特征,并考虑相对重要性聚合到3D查询中。

3.4 距离调制的3D去噪

具体的方案类似于DN-DETR。

与2D查询不同,不同距离处的3D查询,回归难度往往不同。这一难度差异来自查询密度(近距离物体比远距离物体更容易匹配)与误差传播(2D提案的误差会传播到3D,且随距离的增加而增加)。因此,GT框附近的查询可视为噪声候选对象,而远离GT框的查询视为负样本。通过距离调制的3D去噪,模型会召回潜在的正样本,而拒绝负样本。

本文通过同时添加正负样本,基于GT物体创建噪声查询。为了促进长距离感知学习,根据物体的位置和尺寸添加随机噪声。噪声查询的位置定义如下:
P ~ = P G T + α f p ( S G T ) + ( 1 − α ) f n ( P G T ) \tilde{P}=P_{GT}+\alpha f_p(S_{GT})+(1-\alpha)f_n(P_{GT}) P~=PGT+αfp(SGT)+(1α)fn(PGT)
其中 α ∈ { 0 , 1 } \alpha\in\{0,1\} α{0,1}对应正查询和负查询的生成, P G T P_{GT} PGT S G T S_{GT} SGT为GT框的位置和尺寸, f p f_p fp f n f_n fn为正负样本编码位置感知的噪声。

对正样本, f p ( S G T ) f_p(S_{GT}) fp(SGT)为3D尺寸的线性函数(带随机变量),这个GT框内的约束用于保证与周围相邻的边界框区分开。对负样本,偏移量与位置相关,有不同的实施方案。此外,对每个GT框会生成多组样本以增强查询多样性,每一组包含一个正样本和 K K K个负样本。

4. 实验

4.3 主要结果

Argoverse 2数据集:本文的方法能超过基于稀疏查询的方法。基于BEV的方法性能较差,这可能是由于深度估计的难度太大。部分模型不能收敛,可能也是缺乏精确的深度估计。总的来说,长距离检测的收敛问题更加严重,本文的3D去噪能起关键作用。

此外,本文的方法能超过激光雷达早期方法CenterPoint等。激光雷达方法的定位误差较小,但环视图方法的朝向估计更准确。

4.4 消融研究 & 分析

自适应查询:在StreamPETR的基础上添加自适应查询,能带来性能提升。可视化表明,从自适应查询得到的预测覆盖了更大的范围。

透视感知的聚合:进一步增加透视感知的聚合,能提高性能。

距离调制的3D去噪:通过惩罚负样本,减少了错误提案的出现;通过考虑物体距离,提高了定位精度。实验表明 f n ( ⋅ ) = log ⁡ ( ⋅ ) f_n(\cdot)=\log(\cdot) fn()=log()时能达到最优效果。

全局查询的作用:全局查询与自适应查询互补,当缺少全局查询时,StreamPETR收敛困难。全局查询增多,可以提高性能。

6. 补充材料

基于BEV的方法SOLO-Fusion在即使有NMS的情况下仍然产生了大量的冗余预测,原因可能是检测头有限的感受野难以处理大的检测范围。

自适应查询的统计数据:使用与自适应查询的平均数量相同的额外全局查询替换自适应查询,会导致性能下降。

Far3D的更多细节:(1)训练的初期,使用真实深度生成3D自适应查询,训练稳定后改用预测查询。(2)本文使用多尺度特征图与查询交互。与手工根据距离选择合适尺度的特征图相比,用网络估计的方法效果相近。

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

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

相关文章

竞赛选题 深度学习YOLO抽烟行为检测 - python opencv

文章目录 1 前言1 课题背景2 实现效果3 Yolov5算法3.1 简介3.2 相关技术 4 数据集处理及实验5 部分核心代码6 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于深度学习YOLO抽烟行为检测 该项目较为新颖,适合作为竞赛课…

LeetCode13——罗马数字转整数

解题思想: 前后指针 左边比右边小 做减法 左边比右边大 做加法 最后一个数字直接加。 package keepcoding.leetcode.leetcode13;public class Result02 {public static void main(String[] args) {int result romanToInt("XIV");System.out.println(re…

最近又火了!吴恩达《生成式 AI》重磅发布!

吴恩达教授可能是许多人接触 AI 的启蒙课导师吧,在过去的十多年中,他的《Machine Learning》课程已经对数百万的学习者产生了积极影响。 而随着 ChatGPT 的推出,大模型和各类生成式人工智能(GenAI)技术在行业内外备受…

数据结构:排序

文章目录 1. 预备知识2. 插入排序2.1 直接插入排序2.2 折半插入排序 3. 希尔排序4. 交换排序4.1 冒泡排序4.2 快速排序4.2.1 选取基准值4.2.2 分割策略4.2.3 小数组4.2.4 基于Hoare版本 最后优化 递归版本 快速排序4.2.5 快速排序的非递归版本4.2.6 快速排序的分析 5. 选择排序…

[云原生1.]Docker数据管理与Cgroups资源控制管理

文章目录 1. Docker的数据管理1.1 数据卷1.1.1 示例 1.2 数据卷容器 2. 容器互联3. Cgroups资源控制管理3.1 简介3.2 cgroups的主要功能3.3 cpu时间片的简单介绍3.4 对CPU使用的限制3.4.1 对CPU使用的限制(基于单个容器)3.4.2 对CPU使用的限制&#xff0…

Linux CentOS 8(网卡的配置与管理)

Linux CentOS 8(网卡的配置与管理) 目录 一、项目介绍二、命令行三、配置文件四、图形画界面的网卡IP配置4.1 方法一4.2 方法二 一、项目介绍 Linux服务器的网络配置是Linux系统管理的底层建筑,没有网络配置,服务器之间就不能相互…

个微多账号聚合聊天管理如何实现?

在日常工作中,我经常遇到以下问题: 1. 微信号众多,需要频繁切换设备和账号,导致工作效率低下。 2. 无法及时回复客户消息,客户体验不尽如人意。 3. 难以随时掌握员工与客户的沟通情况,导致员工沟通质量难…

利用Python计算彭于晏的BMI

1 问题 彭于晏是众多男生女生心中的男神,那么他的BMI为多少,身体状况如何呢? 2 方法 运用python中数据类型转换,while 循环语句,if/elif/else 条件语句等方法计算彭于晏的BMI,判断他的身体状况。 计算公式…

烘焙蛋糕外卖小程序商城的作用是什么

随着经营成本上升及电商业态的冲击,传统烘焙蛋糕门店商家经营止步不前,加之口罩原因更是雪上加霜,引流拓客、经营转化复购大幅度降低,而线上又因外卖平台间的激烈竞争,导致中小烘焙蛋糕商家进退两难。 烘焙蛋糕店经营…

学习git博客

git新建分支并且提交代码过程 1. git pull <codeBaseAddress> [分支名(默认是master)] 2. cd <projectName> 3. git branch <newBranchName> // 创建分支 4. git checkout <newBranchName> // 切换到新分支 // 开始写你的新代码 5. git add . //…

动手学深度学习—使用块的网络VGG(代码详解)

目录 1. VGG块2. VGG网络3. 训练模型 1. VGG块 经典卷积神经网络的基本组成部分是下面的这个序列&#xff1a; 1.带填充以保持分辨率的卷积层&#xff1b; 2.非线性激活函数&#xff0c;如ReLU&#xff1b; 3.汇聚层&#xff0c;如最大汇聚层。 定义网络块&#xff0c;便于我…

底层驱动day2作业

控制三盏灯亮灭 代码&#xff1a; //head.h#ifndef __HEAD_H__ #define __HEAD_H__ #define PHY_RCC 0x50000A28 #define PHY_GPIOE_MODER 0x50006000 #define PHY_GPIOF_MODER 0x50007000 #define PHY_GPIOE_ODR 0x50006014 #define PHY_GPIOF_ODR 0x50007014#endif //demo…

vue-pdf多页预览异常,Rendering cancelled, page 1 Error at BaseExceptionClosure xxx

项目开发使用vue-pdf,单页情况预览正常&#xff0c;多页vue-pdf预览异常&#xff0c;第一次预览时&#xff0c;会先弹出异常模态窗口&#xff0c;关闭模态窗口&#xff0c;pdf又是正常显示&#xff0c;报错信息及异常截图如下&#xff1a; 报错信息 Rendering cancelled, page…

【PADS封装】2.4G PCB天线封装(量产用)

包含了我们平时常用的2.4GPCB天线封装&#xff0c;总共11种封装。完全能满足日常设计使用。 下载链接&#xff01;&#xff01;https://mp.weixin.qq.com/s?__bizMzU2OTc4ODA4OA&mid2247548815&idx1&sne625e51a06755a34ab4404497770df48&chksmfcfb2c58cb8ca5…

探索图像分割技术:使用 OpenCV 的分水岭算法

贾斯卡兰巴蒂亚 一、说明 图像分割是计算机视觉的一个基本方面&#xff0c;多年来经历了巨大的转变。这将是一系列三篇博客文章&#xff0c;深入研究三种不同的图像分割技术 - 1使用OpenCV的经典分水岭算法&#xff0c;2使用PyTorch实现的基于深度学习的UNet模型&#xff0c;3 …

Ubuntu小知识总结

Ubuntu相关的小知识总结 一、Ubuntu系统下修改用户开机密码二、Vmware虚拟机和主机之间复制、粘贴内容、拖拽文件的详细方法问题描述Vmware tools灰色不能安装解决方法小知识点&#xff1a;MarkDown的空格 三、Ubuntu虚拟机网络无法连接的几种解决方法1.重启网络编辑器2. 重启虚…

Linux下使用openssl为harbor制作证书

openssl是一个功能丰富且自包含的开源安全工具箱。它提供的主要功能有&#xff1a;SSL协议实现(包括SSLv2、SSLv3和TLSv1)、大量软算法(对称/非对称/摘要)、大数运算、非对称算法密钥生成、ASN.1编解码库、证书请求(PKCS10)编解码、数字证书编解码、CRL编解码、OCSP协议、数字证…

免费高清壁纸下载(静态和动态壁纸)

一、网址下载&#xff08;静态壁纸&#xff09; 高清图片直接另存为就可以了。然后在电脑空白处右键——个性化设置即可替换壁纸。 ①网址&#xff1a;https://www.hippopx.com ②极简壁纸&#xff1a;https://bz.zzzmh.cn/index ③彼岸图网&#xff1a;http://pic.netbian…

OpenCV17-图像形态学操作

OpenCV17-图像形态学操作 1.形态学操作1.1腐蚀1.2膨胀 2.形态学应用2.1开运算2.2闭运算2.3形态学梯度2.4顶帽运算2.5黑帽运算2.6击中击不中变换2.7形态学应用示例 1.形态学操作 1.1腐蚀 图像腐蚀&#xff08;Image erosion&#xff09;可用于减小图像中物体的大小、填充孔洞或…

华为eNSP配置专题-VRRP的配置

文章目录 华为eNSP配置专题-VRRP的配置0、参考文档1、前置环境1.1、宿主机1.2、eNSP模拟器 2、基本环境搭建2.1、基本终端构成和连接 2.VRRP的配置2.1、PC1的配置2.2、接入交换机acsw的配置2.3、核心交换机coresw1的配置2.4、核心交换机coresw2的配置2.5、配置VRRP2.6、配置出口…