[论文阅读] 3D感知相关论文简单摘要

Adaptive Fusion of Single-View and Multi-View Depth for Autonomous Driving

提出了一个单、多视图融合深度估计系统,它自适应地集成了高置信度的单视图和多视图结果

动态选择两个分支之间的高置信度区域执行融合

提出了一个双分支网络,即一个以单目深度线索为目标,而另一个利用多视图几何结构,两个分支都预测深度图和置信度图

通过使用这样的置信度图来执行逐像素融合,可以最终实现更稳健的深度

AFNet,它由三个部分组成,即单视图深度模块、多视图深度模块和自适应融合模块

Single-view branch

多尺度解码器 并获得深度特征D_s=(H/4,  W/4, 257),通过对$D_s$的前256个通道使用softmax,得到深度概率P_s=(H/4 , W/4, 256)。最后一个通道作为单视图深度估计的置信度图M_s=(H/4, W/4),最后通过软加权来计算单视图深度

Multi-view branch

保留特征的通道维度并构建4D cost volume,然后通过两个3D卷积层将通道数量减少到1 即初始cost volume  C_{init}=(H/4 , W/4, 128)使用堆叠的2D沙漏网络进行正则化 获得最终的多视图cost volume  C_m=(H/4 , W/4, 256) 使用残差结构来组合单视图深度特征D_s(H/4,  W/4, 257)和cost volume(H/4 , W/4, 256),以获得融合深度特征F_fuse

Adaptive Fusion Module

自适应地选择两个分支之间最准确的深度作为最终输出。单视图分支和多视图分支中的M_s和M_m反应了整体匹配歧义(reflect the overall matching ambiguity),而M_w反映了亚像素精度(subpixel accuracy)将这三个置信度图作为单视图深度d_s和多视图深度d_m融合的指导,并通过两个 2D 卷积层得到最终的融合深度d_{fuse}=(H/4 , W/4)

AFNet训练过程中的损失函数主要由深度损失和置信度损失两部分组成。深度损失使用简单的 L1 损失

对于置信度损失,为了防止异常值干扰训练,我们首先计算有效掩码如下:

最终置信度损失计算如下:

Ns和Nm分别表示Ωs和Ωm中有效点的总数。总损失是上述两个损失 Ld 和 Lc 的总和。

CLIP-BEVFormer: Enhancing Multi-View Image-Based BEV Detector with Ground Truth Flow

CLIP-BEVFormer框架,该框架由Ground Truth BEV (GT-BEV)模块和Ground Truth Query Interaction (GT-QI)模块组成

GT-BEV

GT-BEV 的核心目标是将生成的 BEV 表示与 GT-BEV 对齐,确保 BEV 元素的显式排列。为了使BEV和GT-BEV嵌入更接近,我们采用对比学习过程来优化BEV特征空间中的元素关系和距离。这种显式元素排列与 GT 引导(标签、位置和清晰边界)相结合,可以提高模型的感知能力,从而提高 BEV 地图上各种对象的检测和区分。

先前模型中先前未探索的方面在于了解GT实例如何在 BEV 图上相互交互。通过自注意力和注意力机制从空查询中恢复地面实况信息,如先前模型中使用的,本质上是有限的。这个过程充当黑盒探索,仅在端点提供监督,因此缺乏对地面实况解码的全面理解。(DETR范式在BEV上用Query的方式检测的缺陷

因此来自 Ground Truth Encoder (GTEnc,也就是GT-BEV中从GT那一端出来的GT编码) 的 β 被引入解码器 Dec 的查询池中

GT-QI

在训练的解码阶段注入GT流,我们的 GT-QI 模块使模块能够从GT实例间交互和GT实例 BEV 通信中获得见解。注入 GT 查询的扩大查询池不仅增强了模型的鲁棒性,而且增强了它在源图上检测各种对象的能力

损失函数

基础检测损失(空Query和BEV的Key、Value经过Decoder和Head得到的预测和GT的损失)、对比学习损失(监督BEVFormer前端和GT编码器(LLM、MLP)生成具有区分度的高质量Key、Value和Query)、Decoder损失(通过已知的Query和BEV的Key、Value,监督Decoder模块从空Query生成预测的能力)

Learning Transferable Visual Models From Natural Language Supervision (CLIP )

神器CLIP:连接文本和图像,打造可迁移的视觉模型 - 知乎 (zhihu.com)

BEVFusion: A Simple and Robust LiDAR-Camera Fusion Framework

后融合,因为这种方案比较灵活,鲁棒性也更好 能够更好的处理单一传感器失效时对系统的影响 缺点也很多,一是信息的利用不是很充分,二是把系统链路变得更加复杂,链路越长,越容易出问题,三是当规则越堆叠越多之后维护代价会很高

前融合更好的利用神经网络端到端的特性。但是前融合的方案少有能够直接上车的,原因我们认为是目前的前融合方案鲁棒性达不到实际要求

1)雷达和相机的外参不准 2)相机噪声 3)雷达噪声

BEVFusion框架,和之前的方法不同的是雷达点云的处理和图像处理是独立进行的,利用神经网络进行编码,投射到统一的BEV空间,然后将二者在BEV空间上进行融合。这种情况下雷达和视觉没有了主次依赖,从而能够实现近似后融合的灵活性

当增加多种模态后,性能会大幅提高,但是当某一模态确实或者产生噪声,不会对整体产生破坏性结果

雷达分支我们测试了基于Voxel和基于Pillar的编码方式,Camera分支是我们对Lift-Splat-Shoot[8]进行了改造 融合模块的改进如下:

Multi-Task Multi-Sensor Fusion with Unified Bird's-Eye View

使用摄像头特征增强激光雷达点云。然而,摄像头到激光雷达的投影丢弃了摄像头特征的语义密度(semantic density),阻碍了此类方法的有效性,尤其是对于面向语义的任务(如3D场景分割)。文章特别指出:对于典型的32线激光雷达扫描,只有5%的摄像头特征与激光雷达点匹配,而其他所有特征都将被删除。对于更稀疏的激光雷达(或成像雷达),这种密度差异将变得更加剧烈

我们优化了BEV池化,解决视图转换中的关键效率瓶颈,将延迟减少了40倍。BEVFusion从根本上来说是任务无关的,无缝支持不同的3D感知任务。

BEV池化的效率和速度惊人地低,在RTX 3090 GPU上需要500毫秒以上(而模型的其余部分计算只需要100毫秒左右)。这是因为摄像头特征点云非常大,即典型的工作负载,每帧可能生成约200万个点,比激光雷达特征点云密度高两个数量级。为了消除这一效率瓶颈,建议通过预计算和间歇降低来优化BEV池化进程

TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers

具体的过程为:

(1)3D点云输入3D backbones获得BEV特征图

(2)初始化Object query按照下面左边的Transformer架构输出初始的边界框预测。初始化方法见3.2节

(3)上一步中的3D边界框预测投影到2D图像上,并将FFN之前的特征作为新的query features通过SMCA选择2D特征进行融合。

TransFusion由卷积backbone和基于Transformers解码器的检测头组成,解码器的第一层使用稀疏的object queries集预测来自LiDAR点云的初始边界框,第二层解码器自适应地将object queries与有用的图像特征融合,充分利用空间和上下文关系。Transformers的注意力机制使我们的模型能够自适应地决定从图像中获取什么信息和从什么位置获取信息

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

查看笔记本电池容量/健康状态

1. 打开命令行提示符 快捷键“win R”后输入“cmd” 2. 在命令提示符中输入命令 “powercfg /batteryreport" 并回车 3. 查看文件 最后就可以看到笔记本的电池使用报告了

Promises: JavaScript异步编程的救星

Promises: JavaScript异步编程的救星 Promises(承诺)是JavaScript中处理异步操作的一种机制,它提供了一种更优雅和可读性更高的方式来处理异步代码。Promises的实现原理基于一种称为"Promise/A"规范的约定,该规范定义了…

[蓝桥杯2024]-Reverse:rc4解析(对称密码rc4)

无壳 查看ida 这里应该运行就可以得flag,但是这个程序不能直接点击运行 按照伪代码写exp 完整exp: keylist(gamelab) content[0xB6,0x42,0xB7,0xFC,0xF0,0xA2,0x5E,0xA9,0x3D,0x29,0x36,0x1F,0x54,0x29,0x72,0xA8, 0x63,0x32,0xF2,0x44,0x8B,0x85,0x…

visual studio2022,开发CMake项目添加rabbitmq库,连接到远程计算机并进行开发于调试

1.打开visual studio installer 。安装“用于 Windows 的 C CMake 工具” 2.新建CMake项目 3.点击VS的“工具”—>"选项“—>“跨平台”—>”连接管理器“,添加远程计算机。用来将VS编辑的代码传到服务器进行编译–连接—运行(调试)。 …

BIO、NIO与AIO

一 BIO 同步并阻塞(传统阻塞型),服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理. BIO(Blocking I/O,阻塞I/O)模式是一种网络编程中的I/O处理模式。在BIO模式中&#xf…

鸿蒙内核源码分析(任务调度篇) | 任务是内核调度的单元

任务即线程 在鸿蒙内核中,广义上可理解为一个任务就是一个线程 官方是怎么描述线程的 基本概念 从系统的角度看,线程是竞争系统资源的最小运行单元。线程可以使用或等待CPU、使用内存空间等系统资源,并独立于其它线程运行。 鸿蒙内核每个…

[蓝桥杯2024]-PWN:fd解析(命令符转义,标准输出重定向)

查看保护 查看ida 这里有一次栈溢出,并且题目给了我们system函数。 这里的知识点没有那么复杂 完整exp: from pwn import* pprocess(./pwn) pop_rdi0x400933 info0x601090 system0x400778payloadb"ca\\t flag 1>&2" print(len(paylo…

SAP PP学习笔记07 - 作业手顺(工艺路线Routing)

上一章讲了BOM的相关知识。 SAP PP学习笔记07 - 简单BOM,派生BOM,多重BOM,批量修改工具 CEWB_sap半成品有多个bom-CSDN博客 本章来讲作业手顺(工艺路线Routing)的相关知识。 1,作业手顺(工艺路线 Routing…

四、线段、矩形、圆、椭圆、自定义多边形、边缘轮廓和文本绘制(OpenCvSharp)

功能实现: 对指定图片上进行绘制线段、矩形、圆、椭圆、自定义多边形、边缘轮廓以及自定义文本 一、布局 用到了一个pictureBox和八个button 二、引入命名空间 using System; using System.Collections.Generic; using System.Drawing; using System.Windows.F…

Dockerfile镜像构建实战

一、构建Apache镜像 cd /opt/ #建立工作目录 mkdir /opt/apache cd apache/vim Dockerfile #基于的基础镜像 FROM centos:7 #维护镜像的用户信息 MAINTAINER this is apache image <cyj> #镜像操作指令安装Apache软件 RUN yum install -y httpd #开启80端口 EXPOSE 80 #…

远程桌面连接不上个别服务器的问题分析与解决方案

在日常的IT运维工作中&#xff0c;远程桌面连接&#xff08;RDP&#xff0c;Remote Desktop Protocol&#xff09;是我们经常使用的工具之一&#xff0c;用于管理和维护远程服务器。然而&#xff0c;有时我们可能会遇到无法连接到个别服务器的情况。针对这一问题&#xff0c;我…

《Kafka 3.x.x 入门到精通》

Kafka 3.x.x 入门到精通 Kafka是一个由Scala和Java语言开发的&#xff0c;经典高吞吐量的分布式消息发布和订阅系统&#xff0c;也是大数据技术领域中用作数据交换的核心组件之一。以高吞吐&#xff0c;低延迟&#xff0c;高伸缩&#xff0c;高可靠性&#xff0c;高并发&#x…

【论文浅尝】Porting Large Language Models to Mobile Devices for Question Answering

Introduction 移动设备上的大型语言模型(LLM)增强了自然语言处理&#xff0c;并支持更直观的交互。这些模型支持高级虚拟助理、语言翻译、文本摘要或文本中关键术语的提取(命名实体提取)等应用。 LLMs的一个重要用例也是问答&#xff0c;它可以为大量的用户查询提供准确的和上…

LeetCode 热题 100 题解:二叉树部分(1 ~ 5)

题目一&#xff1a;二叉树的中序遍历&#xff08;No. 948&#xff09; 94. 二叉树的中序遍历 - 力扣&#xff08;LeetCode&#xff09; 题目难度&#xff1a;简单 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;roo…

【Django】初识Django快速上手

Django简介 Django是一个高级的、开源的Python Web框架&#xff0c;旨在快速、高效地开发高质量的Web应用程序 https://developer.mozilla.org/zh-CN/docs/Learn/Server-side/Django/Introduction 安装Django pip install Django如果要知道安装的Django的版本&#xff0c;可…

关于两步到位Chrome永久停止更新

全程就两个步骤&#xff01;&#xff01;敲重点&#xff01;&#xff01;&#xff01; 好使记得点赞关注我&#xff01; 1.找到Chrome包下的hosts文件 默认路径大概是 C:\Windows\System32\drivers\etc\hosts &#xff0c;不记得了可以通过Everything查找 在hosts 文件中 …

移动端日志采集与分析最佳实践

前言 做为一名移动端开发者&#xff0c;深刻体会日志采集对工程师来说具有重要意义&#xff0c;遇到问题除了 debug 调试就是看日志了&#xff0c;通过看日志可以帮助我们了解应用程序运行状况、优化用户体验、保障数据安全依据&#xff0c;本文将介绍日志采集的重要性、移动端…

开源博客项目Blog .NET Core源码学习(19:App.Hosting项目结构分析-7)

本文学习并分析App.Hosting项目中后台管理页面的主页面。如下图所示&#xff0c;开源博客项目的后台主页面采用layui预设类layui-icon-shrink-right设置样式&#xff0c;点击主页面中的菜单&#xff0c;其它页面采用弹框或者子页面形式显示在主页面的内容区域。   后台主页面…

JavaScript算法描述【排序与搜索】六大经典排序|合并两个有序数组|第一个错误的版本

&#x1f427;主页详情&#xff1a;Choice~的个人主页 &#x1f4e2;作者简介&#xff1a;&#x1f3c5;物联网领域创作者&#x1f3c5; and &#x1f3c5;阿里专家博主&#x1f3c5; and &#x1f3c5;华为云享专家&#x1f3c5; ✍️人生格言&#xff1a;最慢的步伐不是跬步&…

C++ 笔试练习笔记【1】:字符串中找出连续最长的数字串 OR59

文章目录 OR59 字符串中找出连续最长的数字串题目思路分析实现代码 注&#xff1a;本次练习题目出自牛客网 OR59 字符串中找出连续最长的数字串 题目思路分析 首先想到的是用双指针模拟&#xff0c;进行检索比较输出 以示例1为例&#xff1a; 1.首先i遍历str直到遍历到数字&a…