三代自动驾驶系统及主流科技公司自动驾驶技术方案简介

截止目前,按技术特点,自动驾驶技术大致经历了三代发展:第一代自动驾驶技术以后融合感知技术,高精度地图,基于惯导、GPS定位系统,预测模块,基于优化、搜索的规控等组成。第一代比较成熟的自动驾驶技术的框架其实在2017年已经很清晰了,博主本人在2017年参加京东JRC X机器人挑战赛时即采用的当下第一代自动驾驶技术架构,即整体框架基于ros,增加了数据收发、任务收发和完成的确认机制,感知硬件采用Kinect V2,使用YOLO做目标识别、检测,然后对检测出目标框做大数中值滤波,得到目标物体上接近中心的位置分布,最后根据像素uv和深度d求目标位置再将位置坐标转换到机械臂坐标系下。定位模块硬件上包括IMU和单线激光雷达,采用Gmapping模块进行定位,最后的将感知信息、定位信息输入决策模块,决策模块通过状态机进行任务规划,A*、D*算法进行全局路径规划,基于贝塞尔曲线、粒子滤波等进行局部路径规划。经调研了和了解,目前技术栈主要基于后融合及感知、定位、预测、规控各模块序贯架构的公司有陕汽、千挂科技、慧拓、以及小米汽车等。
第二代自动驾驶系统在第一代自动驾驶方案基础上,算法框架统一BEV框架,感知采用了基于共享主干网的Transformer多任务感知模型,在输出目标感知的同时,几乎所有框架也都包含Occupancy预测,同时基于本地实时地图生成方法降低了系统对高精度地图的依赖,规控部分仍以搜索和优化方法为主。第二代自动驾驶技术是当前比较主流自动驾驶方案,最早以特斯拉AI Day上分享的基于共享主干网络的多任务感知模型和基于动态交互树的决策、轨迹优化模型最为经典,当前包括小鹏的Xnet架构,百度、华为、小马智行、元戎启行、赢彻、智加科技等都有相关的会议报告或公开资料展示其基于BEV的第二代自动驾驶技术方案。
第三代自动驾驶系统诞生于chatGPT大火之后,chatGPT相比于之前指令式聊天模型有了质的飞跃,具备根据前后文进行多轮推理,生成超长回答,支持多模态输入,智力水平接近人类等特点,其背后代表性技术为基于Transformer的亿级参数大模型和基于巨量网络数据的RLHF(人类反馈强化学习)技术。chatGPT主要用于自然语言领域,属于时序建模方法,与自动驾驶技术有一定相似性,自动驾驶也需要基于当前观测和历史观测给出车辆当前和未来一段时间控制信号或数据。因此,很快在自动驾驶领域得到应用。第三代自动驾驶系统和第二代框架相同,均是基于BEV框架,但感知、规控算法开始采用端到端的方式,并在训练通用自动驾驶控制器的同时,利用大规模语料数据训练模型的自动驾驶场景描述能力,代表性工作如2023年CVPR Best Paper UniAD和毫末智行的DriveGPT。当前毫末智行公布的涉及第三代自动驾驶方案资料最多,其构建的DriverGPT,据PPT演示称完成了实车城区自动驾驶,并能根据视觉数据用自然语言推理当前自动驾驶系统规划和决策的合理性。实际产品要等到2024年才会上市,具体第三代自动驾驶系统表现如何还得看实际测试效果。当前,百度也在布局基于大模型、强化学习端到端的自动驾驶系统研究,并招募相关人才。
与自动驾驶技术发展相对应的,硬件平台与平台算力也在同步发展,当前感知模块占用自动驾驶系统绝大部分算力,因此硬件平台发展与当下主要感知模型架构密切相关。2018年感知模型以ResNet为代表,参数量大概百万级。代表性的硬件芯片有TI TDA4、英伟达Xaiver、地平线J3,算力需求大概30TOPS。后面EfficientNet出现,其在ImageNet上的准确率为84.3%,高于ResNet-200的79%,但其推理速度较ResNet在TPU上快6.1倍,在GPU上快3.3倍,其参数范围达到千万级,与其对应的硬件平台为地平线J5、英伟达Orin。当前随着transformer相关模型的上车加速,模型参数已经到达亿级,相应的硬件也在积极适配transformer相关模型参数及算力需求,地平线J5也有相应的工具链可以部署transformer相关模型,但完全适配transformer大模型的则是地平线BPU Nash架构,可以部署大规模transformer&GPT大模型,并支持蒙特卡洛树搜索(Alpha Go主要技术之一,可实现复杂、超大求解空间快速搜索)。硬件虽然更新速度较快,但目前还不能满足自动驾驶系统移动端算力、架构需求,当前根据一众大佬预测完全L4级RoboTaxi的算力需求大约在2000TOPS左右,与英伟达下一代自动驾驶SOC Thor算力相同。 作者:不优秀博仕Hanker https://www.bilibili.com/read/cv27265402/?spm_id_from=333.999.0.0 出处:bilibili
相关文章:
三代自动驾驶系统及主流科技公司自动驾驶技术方案简介
截止目前,按技术特点,自动驾驶技术大致经历了三代发展:第一代自动驾驶技术以后融合感知技术,高精度地图,基于惯导、GPS定位系统,预测模块,基于优化、搜索的规控等组成。第一代比较成熟的自动驾驶…...
mac安装nodejs,跑vue程序
1. 下载node.js for mac,地址:Node.js。一路安装就可以了,无需修改。 2. mac终端,查看node和npm的版本。 3. 配置环境变量, vim .bash_profile增加PATH$PATH:/usr/local/bin/ 4. 但是毕竟npm安装一些东西还是太慢了所…...
VC++程序崩溃时,使用Visual Studio静态分析dump文件
1、通过Visual Studio直接把Dump文件打开 2、点击【仅限本机进行调试】,启动Dump 3.1、本机调试启动后,如果程序运行模块和pdb文件在同一个目录的,直接定位到异常代码行 3.2、如果显示找不到pdb文件,则需要通过【新建路径】设置…...
【哈希数组】【字符串 转化为 字符数组】Leetcode 383 赎金信
【哈希表】【字符串 转化为 字符数组】Leetcode 383 赎金信 解法1 【哈希数组】 String 转化为 字符数组char[ ] .toCharArray ⭐️String 转化为 字符数组char[ ] .toCharArray 解法1 【哈希数组】 String 转化为 字符数组char[ ] .toCharArray 时间复杂度O(N) 这个解决方案…...
【C++】c++引用和小细节
文章目录 一、引用的特性:引用的实质引用权限使用场景引用和指针的区别 c引用不是定义了新的对象,而是对一个已有的对象起了一个别名,如鲁迅和周树人的关系,鲁迅是周树人的笔名,两者是一个东西,只是名字不同…...
nginx负载均衡(动静分离)
nginx负载均衡(动静分离) 文章目录 nginx负载均衡(动静分离)工作原理:环境说明:部署nginx负载均衡步骤:在负载均衡(NGINX)主机上做配置:测试:在浏…...
vue自定义全局指令v-emoji限制input输入表情和特殊字符
问题: 后台不提供富文本存储,所以emoji表情入库会报错需求要求前端在输入的时候过滤掉表情符号全局的input 和富文本textarea输入框都需要过滤emoji表情 分析: 1.每一个input写事件写正则校验代码量实在太多了还很麻烦;所以想用…...
Excel 5s内导入20w条简单数据(ExecutorType.BATCH)Mybatis批处理的应用
文章目录 Excel 5s内导入20w条数据1. 生成20w条数据1.1 使用Excel 宏生成20w条数据1.2 生成成功 2. ExecutorType:批量操作执行器类型2.1 ExecutorType.SIMPLE2.2 ExecutorType.BATCH2.3 ExecutorType.REUSE 3. 20w条数据直接插入数据库3.1 使用ExecutorType.SIMPLE…...
【期刊】IEEE系列指定期刊模版下载(LaTeX或者Word)全网最细教程
IEEE旗下有很多期刊,例如: IEEE Transactions on Pattern Analysis and Machine Intelligence IEEE Transactions on Cybernetics IEEE Transactions on Neural Networks and Learning Systems IEEE Transactions on Industrial Informatics IEEE Tra…...
损失函数和评估函数
损失函数和目标函数定义 损失函数是用于衡量模型在训练过程中预测结果与实际结果之间的差异的函数。它通过计算模型的预测值与实际值之间的距离或差异来 quantitatively 表示模型的性能好坏。损失函数通常被用作优化算法(如梯度下降)的目标函数,通过最小化损失函数来调整模…...
第四章 文件管理 四、文件的物理结构(文件分配方式)
目录 一、文件块,磁盘块 二、连续分配 1、定义: 2、计算方式: 3、注意: 4、优点: 5、缺点: 6、总结 三、链接分配----隐式链接 1、定义: 2、如何实现逻辑块号转物理块号 3、优点&…...
解析外贸开发信的结构?营销邮件书写技巧?
做外贸的开发信结构是怎样的?写外贸邮件的注意事项? 外贸开发信是国际贸易中至关重要的一环,它不仅是与潜在客户建立联系的第一步,也是一种有效的市场推广工具。蜂邮EDM将深入解析外贸开发信的结构,帮助您更好地理解如…...
Linux的命令基本格式
因为对服务器来讲,图形界面会占用更多的系统资源,而且会安装更多的服务、开放更多的端口,这对服务器的稳定性和安全性都有负面影响。其实,服务器是一个连显示器都没有的家伙,要图形界面干十么?说到这里&…...
数据库Redis(二):基本数据类型
Redis中采用Key-Value键值对的形式将数据存储在数据库中,首先介绍Redis中针对键Key的操作命名。 Redis键Key相关命令 # 查看当前库所有key keys * # 判断某个key是否存在 exists <key> # 查看你的key是什么类型 type <key> # 删除指定的key数据 …...
mysql第四次作业
目录 数据表介绍 --1.学生表Student(SId,Sname,Sage,Ssex)--SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表Course(CId,Cname,TId)--CId 课程编号,Cname 课程名称,TId 教师编号 --3.教师表Teacher(TId,Tname)--TId 教师编号,Tname 教师姓名 --4.成绩…...
kubesphere 一键部署K8Sv1.21.5版本
1. 在centos上的安装流程 1.1 安装需要的环境 yum install -y socat conntrack ebtables ipset curl1.2 下载KubeKey #电脑必须可以访问github,很重要。不然安装过程会出问题 curl -sfL https://get-kk.kubesphere.io | VERSIONv1.2.1 sh - chmod x kk1.3 开始安…...
设计模式(12)状态模式
参考【设计模式】用Java实现状态模式_java 状态模式_卷帘的博客-CSDN博客 一、介绍: 1、状态模式:是一种行为设计模式,它允许对象在内部状态发生改变时改变其行为。该模式将对象的行为包装在不同的状态类中,使得对象的行为可以根…...
C#WPFPrism框架模块化应用实例
本文实例演示C#WPFPrism框架模块化应用实例。 首先创建WPF项目,修改App相关文件内容,以便使用prism。 一、添加模块 解决方案中添加ModuleA和ModuleB两个项目 删除不用的窗体,添加自定义窗体 修改ModuleA和ModuleB的输出类型...
ES6之Set集合(通俗易懂,含实践)
Set是什么?它的方法有哪些?它在实例开发中有什么作用? 让我为大家介绍一下吧! ES6提供了新的数据结构 Set(集合) 。它类似于数组,但成员的值是唯一的,常用于数组去重。 创建方法: let s new S…...
深度学习标注工具(包括自动标注)总结——持续更新
首次记录日期2023年10月24日 名称 导出格式支持形状地址1 anylabeling 支持yolov5和v8,自动标注的软件 沿物体轮廓分割 https://github.com/vietanhdev/anylabeling 2 RectLabel 使用Core ML模型自动标记图像 对象、属性、热键和快速标签的设置。 以PASCAL VOC …...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
MySQL 部分重点知识篇
一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键ÿ…...
