【多模态融合】SuperFusion 激光雷达与相机多层次融合 远距离高清地图预测 ICRA 2024

news2024/12/23 12:29:00

前言

本文介绍激光雷达与相机进行多层次融合,包括数据级融合、特征级融合和BEV级融合。

融合后的BEV特征可以支持不同的任务头,包括语义分割、实例编码和方向预测,最后进行后处理生成高清地图预测,它是来自ICRA 2024的。

会讲解论文整体思路、模型框架、论文核心点、损失函数、实验与测试效果等。

论文地址:SuperFusion: Multilevel LiDAR-Camera Fusion for Long-Range HD Map Generation

代码地址:https://github.com/haomo-ai/SuperFusion

一、模型框架

SuperFusion不仅支持30米内的短距离高清地图预测,同时还支持长达90米的长距离高清地图预测,供给下游路径规划和控制任务,提高自动驾驶的平稳性和安全性。

SuperFusion的模型框架,如下图所示:

  1. 图像分支,输入图像数据、稀疏点云图。提取图像特征,点云特征。
  2. 图像分支,通过图像数据和点云特征,进行深度估计。然后通过深度特征和图像特征,生成视锥特征,经过池化处理,生成图像BEV特征。
  3. 激光雷达点云分支,输入点云数据,经过主干网络提取特征。
  4. 激光雷达点云分支,通过融合图像特征,图像引导远距离激光雷达BEV特征预测。
  5. BEV对齐与特征融合,将相机和激光雷达的BEV特征结合起来。
  6. BEV特征后面接各种任务头,比如BEV语义分割、实例检测、方向预测等。

二、多层次数据融合

原始的激光雷达和相机数据具有不同的特点

  • 激光雷达数据提供准确的3D结构信息,但存在无序和稀疏的问题。
  • 摄像头数据则紧凑,能够捕捉环境的更多上下文信息,但缺少深度信息。

将相机和激光雷达数据融合为三个层次,以补偿这两种模态的不足并利用它们的优点:

  • 数据级融合,图像深度估计中,加入LiDAR的稀疏深度信息,提高图像深度估计的准确性
  • 特征级融合,使用图像特征,通过交叉注意力机制来指导激光雷达特征,实现长距离激光雷达BEV特征的预测
  • BEV级融合,将相机和激光雷达BEV特征对齐,生成融合BEV特征

 

三、论文主要贡献

  1. 多层次激光雷达-摄像头融合网络的创新设计:该设计充分利用了激光雷达和摄像头两种模态的信息,生成高质量的融合BEV特征,为不同的任务提供支持。这种多层次融合策略的核心优势在于其能够综合各种传感器提供的数据,从而在细节和准确性方面提供了质的提升。

  2. 首次实现长距离HD地图生成:据作者所知,他们的工作是首次实现长达90米的长距离HD地图生成。这一创新对于自动驾驶的下游规划任务具有重大意义,因为它极大地扩展了自动驾驶系统的感知和预测范围,从而有助于提高自动驾驶车辆的安全性和效率。

  3. 在短距离和长距离HD地图生成方面超越现有最先进方法:SuperFusion在生成高清晰度(HD)地图的短距离和长距离范围内都显著优于现有的融合方法。这一点特别重要,因为它不仅显示了该方法在技术上的进步,还证明了它在实际应用中的可行性和效用,尤其是在需要精确长距离感知的自动驾驶场景中。

  4. 发布代码和新数据集:作者不仅提出了一种创新的技术方法,还公开了代码和一个新的用于评估长距离HD地图生成任务的数据集。

下面是SuperFusion自采集的数据集示例,但目前还没看到公开

四、数据级融合——图像深度估计(融合点云数据)

原始的图像转为BEV视图,遵循常规LSS思想,需要对每个像素进行深度估计。

相比现有深度估计方法,LSS和CaDDN存在显著差异。

  • LSS方法虽然也使用了激光雷达的深度信息,但其深度预测仅由语义分割损失隐式监督,精度不足。
  • 而CaDDN虽然利用了激光雷达深度进行监督,但没有将激光雷达作为输入,限制了深度估计的鲁棒性。

SuperFusion的深度估计方法:

  • 不仅使用了密集激光雷达深度图像进行监督,还将稀疏深度图作为附加通道并入RGB图像。
  • 这种设计使得网络能够更有效地利用激光雷达和摄像头数据的互补信息,提高了深度估计和HD高清地图生成的准确性和可靠性。

 图

下面是SuperFusion进行图像深度估计的要点:

  1. 原始数据融合:首先,在原始数据层面,通过将激光雷达数据的深度信息融合到摄像头特征中来协助特征的BEV空间映射。这一步骤通过投影3D激光雷达点云到图像平面上,生成与RGB图像对应的稀疏深度图像,解决了摄像头数据缺乏深度信息的问题。

  2. 图像双分支网络:摄像头端采用双分支网络设计。第一分支提取2D图像特征,第二分支则连接一个深度预测网络,估算出每个元素的深度分布。通过这种结构,能够更好地估计深度信息,为生成密集深度图提供基础。

  3. 生成密集深度图作为标签:在稀疏深度图上插值生成密集深度图,此方法通过将每个像素的深度值离散化到深度分箱中,然后使用one-hot编码向量对深度预测网络进行监督,从而改善深度估计的准确性。

  4. 特征网格生成:最终,通过密集深度图和2D特征的外积生成最终的视锥(frustum)特征网格。这个特征网格能够支持不同的任务头,如语义分割、实例嵌入和方向预测,为生成HD高清地图预测提供数据支持。

公式版理解图像特征与深度特征融合:

  • 其中,M是指最终的视锥特征网格、(u,v)是指像素位置、D是指深度分布特征、F是指图像特征。
  • ⊗表示外积操作,它用于结合两个向量D和F,生成最终的视锥特征网格M。
  • 外积操作允许这两个向量的信息在每个像素位置相互补充,从而产生一个包含深度和视觉特征的综合表示。

各个特征的维度:

  • 图像特征
  • 深度分布特征
  • 视锥特征
  • BEV特征

五、特征级融合——远距离激光雷达BEV特征预测(融合图像特征)

如下图所示,激光雷达通常在地面平面上具有较短的有效范围,而摄像头可以看到更远的距离。

这种差异是因为激光雷达通过发射激光束,并测量反射回来的时间来确定对象的距离和形状,而摄像头通过捕捉光线形成图像,能够覆盖更大范围的视野。

通过融合图像特征,使得图像引导激光雷达远距离BEV特征预测,使用交叉注意力机制实现的。

  • 激光雷达分支:用PointPillars和动态体素化作为点云编码器,生成每个点云的激光雷达BEV特征。由于激光雷达数据只包含一定范围内(通常约30米)的地面平面信息,这导致许多激光雷达BEV特征编码了大量的空白空间。
  • 图像辅助预测:与激光雷达相比,摄像头能够覆盖更远的地面区域。因此,提出了一个预测模块,利用图像特征来预测激光雷达分支中未见区域的地面。这一预测模块是一个编解码器网络,通过卷积层将原始BEV特征L压缩到瓶颈特征B,然后使用交叉注意力机制来动态捕获B和前视图像特征F之间的关联。

融合的思路框架,如下图所示:

  • 交叉注意力机制:用三个全连接层分别:将压缩后的LiDAR BEV特征B转换为查询Q,图像特征F转换为键K和值V。
  • 然后计算Q和K的内积,表示激光雷达BEV中每个体素与其对应摄像头特征之间的相关性。
  • 通过softmax操作归一化这个矩阵,然后与V相乘,得到聚合特征A。
  • 特征融合:最后,将通过交叉注意力得到的聚合特征A通过卷积层处理以减少通道数,与压缩后的LiDAR BEV特征B进行拼接,再应用另一个卷积层,最终生成激光雷达BEV特征L′。

交叉注意力用公式表示为:

公式解析如下:

六、BEV级融合——多模态BEV对齐与特征融合

BEV对齐与特征融合的思路流程,如下图所示,将摄像头和激光雷达的BEV特征有效地结合起来,以改善长距离LiDAR BEV特征的预测。

  • 输入特征:模块接收两种类型的BEV特征:摄像头BEV特征C和预测的LiDAR BEV特征L′。摄像头BEV特征来自图像特征和深度估计特征,而预测的LiDAR BEV特征则是通过之前描述的图像引导的LiDAR BEV预测方法得到的。

  • 对齐的需求:由于深度估计误差和外部参数的不准确,从摄像头和激光雷达分支得到的BEV特征通常存在错位。直接连接这两种BEV特征会导致性能下降。为了解决这一问题,设计了一个BEV对齐和融合模块来改善特征的对齐,并提高整体预测性能。

  • 特征对齐:使用流场Flow Field Δ来对摄像头BEV特征C进行空间变换,以对齐到LiDAR BEV特征的参考框架,生成对齐后的摄像头BEV特征C′。这一步骤是关键,因为它确保了两种类型的特征在空间上的一致性,从而使得融合更加有效。

  • 特征融合:对齐后的摄像头BEV特征C′和预测的LiDAR BEV特征L′通过拼接Concat操作结合在一起,然后通过卷积层(Conv)、批标准化(BN)和ReLU激活函数处理,以融合这些特征并提取有用的信息,生成融合后的BEV特征。

  • 输出:最终的融合BEV特征,可以被用作下游任务,例如语义分割、方向预测和物体检测的输入,进一步处理以生成更准确的BEV地图。

通过流场Δ对齐摄像头的BEV特征C到激光雷达的BEV特征L′,用公式表示:

通过对每个像素位置进行变形操作来完成的,采用双线性插值的方式。

以下是公式各部分的解释:

七、损失函数

待补充..........

八、模型细节信息

模型架构设计:

  • 摄像头分支主干网络:采用ResNet-101作为摄像头分支的主干网络。ResNet-101是一个深度残差网络,广泛用于图像识别和处理任务中,提供了强大的特征提取能力。

  • 激光雷达(LiDAR)分支骨干网络:选择PointPillars作为LiDAR分支的骨干网络。PointPillars是专门为点云数据设计的网络,能有效处理三维空间信息。

  • 深度估计:对DeepLabV3进行了修改,使其能够生成像素级别的深度箱概率分布,用于深度估计。DeepLabV3是一个语义分割网络,这里的修改让它能够适应深度预测任务。

训练细节:

  • 预训练与初始化:摄像头分支的DeepLabV3骨干网络使用在MS-COCO数据集上预训练的模型进行初始化,其余部分随机初始化。这有助于加速训练过程并提高模型性能。

  • 图像尺寸和点云体素化:图像尺寸设置为256×704,点云数据以0.15m的分辨率体素化。这样的设置平衡了处理速度和精度。

  • BEV HD地图范围:设置BEV HD地图的范围为0,900,90m × −15,15−15,15m,对应的深度箱间隔设为2.0–90.0m,间隔为1.0m。这个范围和深度分辨率适应了车辆周围环境的观测需求。

九、实验测试与效果

在nuScenes数据集测试,下面是不同方法的高精地图预测结果。

  • 红色汽车代表汽车的当前位置。
  • 每张地图相对于汽车的垂直长度为 90 m。
  • 不同的颜色表示不同的高精地图元素实例。
  • 对于地面真实高清地图,绿色是车道边界,红色是车道分隔线,蓝色是人行横道。

nuScenes 数据集上高精地图语义分割的 IoU 分数(%)

  • IoU:交并比越高越好
  • C:相机
  • L:激光雷达

nuScenes 数据集上转动场景的高清地图生成的 IoU 分数 (%)

  • 将 HDMapNet 和我们的结果进行比较,并显示SuperFusion的性能改进
  •  粗体数字是最好的性能,红色数字表示更大的改进。

 

nuScenes 数据集上的实例检测结果。

  • 倒角距离的预定义阈值是 1.0 m,IoU 阈值是 0.1
  • 例如,当且仅当 CD 低于且 IoU 高于定义的阈值时,预测才被视为真阳性
  • AP:越高越好

生成的高清地图上的路径规划结果:

在自采集数据集,远距离高清地图生成效果:

本文先介绍到这里,后面会分享“多模态融合”的其它数据集、算法、代码、具体应用示例。

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

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

相关文章

【C++ leetcode】双指针(专题完结)

15. 三数之和 题目 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的…

3.26学习总结

java 实例变量和局部变量 实例变量是记录这个类中对象的特点的每一个对象的实例变量都可以不同(例如名字,性别等),其中一个对象的实例变量改变不会影响其他的变量. 类变量是一种特殊的实例变量,他的特殊在于所有的对象的类变量都是相同的,当一个对象改变了类变量那么所有对象…

0101支付安全-支付模块-项目实战

文章目录 一、信息安全的基础-机密性1 相关概念2 对称加密和非对称加密 二、身份认证三 摘要算法四、数字签名五、数字证书结语 在支付过程中,设计多方的敏感信息,那么安全尤为重要。下面先简单介绍下,相关概念。 一、信息安全的基础-机密性 …

Java项目:76 Springboot学生读书笔记共享

作者主页:源码空间codegym 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 本文从管理员、用户的功能要求出发, 读书笔记共享平台系统中的功能模块主要是实现管理员;首页、个人中心、用户管理、…

Intellij IDEA构建Android开发环境

Intellij IDEA创建项目时没有Android的选项 进设置(Intellij IDEA - Settings - Plugins ) 再次创建项目可以看到Android的选项 解决Android导入项目时Gradle下载速度慢/超时/失败

Ansys Speos | Light Expert Group探测器组使用技巧

附件下载 联系工作人员获取附件 概述 相机挡板的设计需要在光路的不同位置同步多个照度图,以尽量减少杂散光。2023R2 Speos提供了一种新的探测器,用于高阶杂散光分析,可以同时对多个探测器进行光线追迹。Light Expert工具可以即时过滤3D视…

docker安装elasticseachkibana

1.docker安装es 创建本机挂载目录,与容器上目录映射 /Users/wangpei/2024/mydata/elasticsearch conf下创建yml文件 echo "http.host : 0.0.0.0" >> /Users/wangpei/2024/mydata/elasticsearch/config/elasticsearch.yml 安装容器: d…

书籍推荐|meta分析R语言实践教程-Doing Meta-Analysis with R: A Hands-On Guide

“The problems are solved, not by giving new information, but by arranging what we have known since long.” – Ludwig Wittgenstein 推荐理由 《Doing Meta-Analysis with R: A Hands-On Guide》是由 Mathias Harrer, Pim Cuijpers, Toshi Furukawa, 和 David Ebert所…

排序(冒泡/快速/归并)

冒泡排序 时间复杂度为 O(n^2) 原理 比较相邻的元素. 如果第一个比第二个大,就交换他们两个.依次比较每一对相邻的元素—>结果 : 最后的元素是这组数中最大的重复上述步骤 , 除了最后一个[]因为最后一个已经是排好序的了(这组数中最大的那个)]持续对越来越少的元素进行如上…

如何备考2025年AMC8竞赛?吃透2000-2024年600道真题(免费送题)

最近有家长朋友问我,现在有哪些类似于奥数的比赛可以参加?我的建议可以关注下AMC8的竞赛,类似于国内的奥数,但是其难度要比国内的奥数低一些,而且比赛门槛更低,考试也更方便。比赛的题目尤其是应用题比较有…

NIO与AIO

NIO与AIO NIO模型 在 LInux 环境中,java.nio.channels.Selector 的子类叫做 sun.nio.ch.EPollSelectorImpl ,其底 层是基于 Epoll 模型去实现的 IO 多路复用器。 对于 Epoll 模型 我们需要了解到它底层的三个函数 在 JDK 实现的底层中,EPol…

git clone没有权限的解决方法

一般情况 git clone时没有权限,一般是因为在代码库平台上没有配置本地电脑的id_rsa.pub 只要配置上,一般就可以正常下载了。 非一般情况 但是也有即使配置了id_rsa.pub后,仍然无法clone代码的情况。如下 原因 这种情况是因为ssh客户端…

Codigger用户篇:安全、稳定、高效的运行环境(一)

在当今数字化时代,个人数据的安全与隐私保护显得尤为重要。为了满足用户对数据信息的安全需求,我们推出Codigger分布式操作系统,它提供了一个运行私有应用程序的平台,旨在为用户提供一个安全、稳定、高效的私人应用运行环境。Codi…

对谈Concured首席技术官:利用AI和MongoDB打造个性化内容推荐系统

Built with MongoDB 栏目采访了AI初创企业Concured在成立约一年后加入的首席技术官 Tom Wilson,围绕 Concured 的人工智能使用情况、Wilson 加入团队的过程、坚持选择MongoDB的原因以及公司未来发展展开讨论。 关于Concured 内容无处不在。无论消费者寻找什么或所处…

【Effective Web】html/css优化和技巧

html/css优化和技巧 html/css可以做到一些js的功能&#xff0c;减少js操作dom的高昂成本。 巧用伪类 显示勾选时文案 checkbo勾选时触发&#xff0c;实现checkbox的简单选中事件处理 <template><input type"checkbox" /><span class"checkb…

最优算法100例之07-数组中只出现一次的数

专栏主页:计算机专业基础知识总结(适用于期末复习考研刷题求职面试)系列文章https://blog.csdn.net/seeker1994/category_12585732.html 题目描述 一个整型数组里除了一个数字之外,其他的数字都出现了两次。请写程序找出这个只出现一次的数字。 题解报告 最优解法…

Java框架安全篇--Shiro-550漏洞

Java框架安全篇--Shiro-550漏洞 Shiro反序列化源码可以提取&#xff1a; https://codeload.github.com/apache/shiro/zip/shiro-root-1.2.4 JAVA反序列化就不说了&#xff0c;可以参考前面文章 https://blog.csdn.net/m0_63138919/article/details/136751184 初始Apache Sh…

VOC(客户之声)赋能智能家居:打造个性化、交互式的未来生活体验

随着科技的飞速发展&#xff0c;智能家居已成为现代家庭不可或缺的一部分。然而&#xff0c;如何让智能家居更好地满足用户需求&#xff0c;提供更贴心、更智能的服务&#xff0c;一直是行业关注的焦点。在这个背景下&#xff0c;VOC&#xff08;客户之声&#xff09;作为一种用…

Spring框架介绍及详细使用

前言 本篇文章将会对spring框架做出一个比较详细的讲解&#xff0c;并且每个知识点基本都会有例子演示&#xff0c;详细记录下了我在学习Spring时所了解到全部知识点。 在了解是什么spring之前&#xff0c;我们要先知道spring框架在开发时&#xff0c;服务器端采用三层架构的方…

Amuse:.NET application for stable diffusion

目录 Welcome to Amuse! Features Why Choose Amuse? Key Highlights Paint To Image Text To Image Image To Image Image Inpaint Model Manager Hardware Requirements Compute Requirements Memory Requirements System Requirements Realtime Requirements…