基于BEV的自动驾驶会颠覆现有的自动驾驶架构吗

news2024/11/28 19:06:23

基于BEV的自动驾驶会颠覆现有的自动驾驶架构吗

image

引言

很多人都有这样的疑问–基于BEV(Birds Eye View)的自动驾驶方案是什么?这个问题,目前学术界还没有统一的定义,但从我的开发经验上,尝试做一个解释:以鸟瞰视角为基础形成的端到端的自动驾驶算法和系统

感知模块是最为重要的自动驾驶模块之一,也是最为复杂的模块。一般的感知模块包含障碍物目标检测,车道线语义分割,可行驶区域分割等等。在BEV出现之后,整个自动驾驶感知模块趋向形成统一,简洁,高效的端到端结构。不光是感知模块,基于BEV进行的规划决策也是学术界研究的方向。下面将结合几篇顶会论文来看BEV给自动驾驶技术带来的改变。

BEV统一了多模态数据融合的尺度

**典型论文:**HDMapNet: A Local Semantic Map Learning and EvaluationFramework

自动驾驶感知模块中对是否要使用激光雷达的问题分成了两派。一种是坚定的纯视觉技术路线,比如特拉斯等。还有一种是国内的多传感器数据融合路线。在没有接触到BEV之前,我是坚定的纯视觉路线的拥护者,但是在研究了一些论文后,我的观点逐步改变。传感器融合路线的机会在前融合或者中融合层面,而目前市面上的多模态数据融合方案多为后融合或者结果层面的融合(补充链接:多模态数据融合的几种方式)。就是在生硬的融合方式下,各个传感器的缺点形成了木桶效应。

image

BEV的出现给多模态数据提供了一个统一尺度的可能,比如在HDMapNet论文中,主要目的是基于多模态数据采集制作低廉高效的高精地图。作者设计了多传感器的动态可插拔结构。把所有传感器的数据或特征统一到BEV视角下,这样的统一尺度理论上来说天然成立。减少传感器会影响检测的效果,但是不会影响感知系统的可使用性,是1+1>2的正向结果。

image

BEV带来了简洁高效的感知模块

**典型论文:**FIERY: Future Instance Prediction in Bird’s-Eye View from Surround Monocular Cameras

现有的自动驾驶感知模块中,包含了2d/3d目标检测,语义分割,全景分割,多目标跟踪,轨迹预测等。整个感知模块是又臭又长,需要的算法开发/算法维护/模型迭代等人员数量众多。而BEV的出现,让更加简洁高效的感知模块成为可能。

image

fiery的论文和代码有幸研究了一段时间,结构设计的巧妙和统一任务的架构一下子打开我新世界的大门。这篇文章使用的传感器只有摄像头,也就是纯视觉方案。fiery是在lift论文的基础上进行的改进,这篇论文将多个相机数据通过神经网络进行了基于BEV的投影。在一个算法框架下实现了3d目标检测(无高度h),障碍物实例分割,车道线分割,可行驶区域分割,多目标跟踪,障碍物轨迹预测的功能。维护上述模块可能要大几十的团队,但是现在维护fiery可能十多人就够了(我离失业越来越近了,哈哈)。这篇文章的缺点是耗时太长(8fps),主要是用于未来轨迹预测的GRU网络部分,要3帧一起输入网络。

image

BEV促进端到端的自动驾驶框架发展

典型论文1:MP3: A Unified Model to Map, Perceive, Predict and Plan

**典型论文2:**SelfD: Self-Learning Large-Scale Driving Policies From the Web

从apollo等开源的自动驾驶框架上看,自动驾驶技术常被分为感知模块,预测模块,规划决策模块,控制模块等。各个模块通过消息机制或者共享内存的方式进行交互,保持相对的独立。此外这样的架构虽顺应了当下的自动驾驶技术发展,但不一定就是合理的,比如强解耦造成的鲁棒性变差等问题。无论是工业界和学术界都在期盼一个端到端的自动驾驶框架的出现。

image

BEV下的自动驾驶技术发展很可能就是端到端的自动驾驶框架的契机。

SelfD里作者利用BEV视角统一了大量行车视频的数据尺度,并进行了规划和决策模块的模型学习。

image

MP3中,将地图,感知,预测和规划设计成一个统一模块,形成了一个接近端到端的自动驾驶框架。

image

BEV的药引子–ViT(vision transform)

**典型论文:**Cross-view Transformers for real-time Map-view Semantic Segmentation

2022年ViT(vision transform)如何应用在自动驾驶任务上?

经过上面几个层次的分析之后,你是否看到了BEV自动驾驶方案的未来了呢?在我看来BEV技术是形成端到端自动驾驶框架的契机,但是还需要一个药引子——ViT(vision transform)。传统的卷积神经网络在不同尺度/类型的特征的融合上,处理困难(序列特征需要rnn系列,空间特征需要cnn)。但是端到端的自动驾驶框架恰恰就需要融合不同种类的,比如将序列特征和空间特征的融合。来自NLP领域的attention机制提供多类型特征编码融合的统一方法。

cross-view transformers的方法是针对纯视觉多视角下的地图生成和障碍物感知任务,设计一个有效的注意力机制网络。直白点就是用于BEV地图生成和障碍物感知的注意力机制网络。目前代码已经开源,从论文公布的结果看,无论在精度还是速度上都达到SOTA。

image

总结

据我的了解,目前已经有很多公司启动了基于BEV的自动驾驶框架研发。这两年的顶会论文上看,这个方案下的相关技术会越来越成熟,廉价的自动驾驶技术方案离我们越来越近了。最后,如果真的如预期这样发展,现在的自动驾驶求职热潮可能会带来以后的自动驾驶裁员热潮。

附赠自动驾驶学习资料和量产经验:链接

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

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

相关文章

BIONIOAIO

通信技术整体解决的问题 1.局域网内的通信要求 2.多系统间的底层消息传递机制 3.高并发下,大数据量的通信场景需要 4.游戏行业。无论是手游服务端、还是大型网络游戏,java的应用越来越广 IO模型基本说明 就是用什么样的通道或者说是通信模式和架构…

Netty学习——源码篇9 Handler其他处理与异步处理

1 ChannelHandlerContext 每个ChannelHandler被添加到ChannelPipeline后,都会创建一个ChannelHandlerContext,并与ChannelHandler关联绑定。ChannelHandlerContext允许ChannelHandler与其他的ChannelHandler进行交互。ChannelHandlerContext不会改变添加…

14-项目管理:如何编写高质量的Makefile?

下面给你举个例子,你就会理解低质量的Makefile文件是什么样的了。 build: clean vetmkdir -p ./Roleexport GOOSlinux && go build -v .vet:go vet ./...fmt:go fmt ./...clean:rm -rf dashboard上面这个Makefile存在不少问题。例如:功能简单&a…

基于springboot实现企业客户管理系统项目【项目源码+论文说明】

基于springboot实现企业客户管理系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个企业客户管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述企…

信息化项目数据质量管理

数据质量管理定义: 对数据从计划、获取、存储、共享、维护、应用、消亡生命周期的每个阶段里可能引发的各类数据质量问题,进行识别、监控、预警、处理等一系列管理活动,并通过改善和提高管理水平使得数据质量获 得进一步提高。 2术语和定义 2…

绝地求生:300万在线已是过去的荣耀和成功,未来之路莫让反作弊绊脚!

PUBG七周年庆典活动已过去两周时间,相比较而言,活动还是比较给力的,大量的黑货票券、G-Coin让很多白嫖党玩家白嫖到了成长型武器、2024生存通行证等高质量皮肤道具,回流和新手玩家大量涌入,游戏热度一度回到Steam前二&…

CCIE-11-IPSec_VPN

目录 实验条件网络拓朴实验目的 开始配置1. R2 Ping R3确定基础网络是通的2. 配置R23. 配置R34. 测试 实验条件 网络拓朴 实验目的 为PC1和PC2建立IPSec VPN PC1可以ping通PC2 开始配置 1. R2 Ping R3确定基础网络是通的 R2#show ip int br Interface IP…

【题解】—— LeetCode一周小结13

【题解】—— 每日一道题目栏 上接:【题解】—— LeetCode一周小结12 25.零钱兑换 II 题目链接:518. 零钱兑换 II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合…

【产品经理】全面解读“数字孪生”

理解数字孪生 随着互联网技术的深入发展,数字孪生被越来越多地提及,那么数字孪生到底是什么?数字孪生,翻译自英文“Digital Twin”,最早在2002年,被从事产品生命周期管理PLM的Michael Grieves教授&#xf…

护眼台灯哪个牌子好?性价比高的护眼台灯推荐

现在生活节奏越来越快,夜间学习、工作已经成为了很多学生党、办公族不可避免的一件事,很多人在劣质的光源下眼睛会出现各种问题。尤其是桌前的那一盏台灯,很多人认为台灯亮度只要够亮就不会伤眼了。 其实不然,要知道光线中的成分…

vant checkbox 复选框 样式改写

修改前 修改后 基于 vant&#xff1a; 4.8.3 unocss: 0.53.4 <van-checkbox-group v-model"query.zczb" shape"square" class"text-16 w-100% flex flex-wrap"><template v-for"item in registerCapitalOption"><v…

AI绘画教程:Midjourney使用方法与技巧从入门到精通

文章目录 一、《AI绘画教程&#xff1a;Midjourney使用方法与技巧从入门到精通》二、内容介绍三、作者介绍&#x1f324;️粉丝福利 一、《AI绘画教程&#xff1a;Midjourney使用方法与技巧从入门到精通》 一本书读懂Midjourney绘画&#xff0c;让创意更简单&#xff0c;让设计…

WPF上使用MaterialDesign框架---下载与配置

一、介绍&#xff1a; Material Design语言的一些重要功能包括 系统字体Roboto的升级版本 &#xff0c;同时颜色更鲜艳&#xff0c;动画效果更突出。杜拉特还简要谈到了新框架的一些变化。谷歌的想法是让谷歌平台上的开发者掌握这个新框架&#xff0c;从而让所有应用就有统一的…

二.音视频编辑-媒体组合-播放

引言 当涉及到音视频编辑时&#xff0c;媒体资源的提取和组合是至关重要的环节。在iOS平台上&#xff0c;AVFoundation框架提供了丰富而强大的功能&#xff0c;使得媒体资源的操作变得轻松而高效。从原始的媒体中提取片段&#xff0c;然后将它们巧妙地组合成一个完整的作品&am…

Adaboost集成学习 | Matlab实现基于SVM-Adaboost支持向量机结合Adaboost集成学习时间序列预测(股票价格预测)

目录 效果一览基本介绍模型设计程序设计参考资料效果一览 基本介绍 Adaboost集成学习 | 基于SVM-Adaboost支持向量机结合Adaboost集成学习时间序列预测(股票价格预测)基于SVM(支持向量机)和AdaBoost集成学习的时间序列预测(如股票价格预测)是一种结合了两种强大机器学习算…

2_2.Linux中的远程登录服务

# 一.Openssh的功能 # 1.sshd服务的用途# #作用&#xff1a;可以实现通过网络在远程主机中开启安全shell的操作 Secure SHell >ssh ##客户端 Secure SHell daemon >sshd ##服务端 2.安装包# openssh-server 3.主配置文件# /etc/ssh/sshd_conf 4.…

浏览器工作原理与实践--编译器和解释器:V8是如何执行一段JavaScript代码的

前面我们已经花了很多篇幅来介绍JavaScript是如何工作的&#xff0c;了解这些内容能帮助你从底层理解JavaScript的工作机制&#xff0c;从而能帮助你更好地理解和应用JavaScript。 今天这篇文章我们就继续“向下”分析&#xff0c;站在JavaScript引擎V8的视角&#xff0c;来分析…

ROS2从入门到精通1-2:详解ROS2服务通信机制与自定义服务

目录 0 专栏介绍1 服务通信模型2 服务模型实现(C)3 服务模型实现(Python)4 自定义服务5 话题、服务通信的异同 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有机器人建模和应用ROS2进行实际项目的开发和调试的工程能力。…

蓝桥备赛——贪心

题干 AC Code n, w = map(int, input().split()) # n种类, w核载重 a = [] # [[weight1, value1], [weight2, value2], ...] for _ in range(n):a.append(list(map(int, input().split()))) a.sort(key=lambda x: x[1] / x[0], reverse=True)maxVal = 0for i in a:if i[0…

可视化图表:K线图,快速搞清价格波动。

2023-08-21 21:20贝格前端工场 Hi&#xff0c;我是贝格前端工场的老司机&#xff0c;本文分享可视化图表设计的K线图设计&#xff0c;欢迎老铁持续关注我们。 一、K线图的含义 K线图&#xff08;K Line Chart&#xff09;是一种常用于股票、期货等金融市场的可视化图表&…