自动驾驶核心技术:感知融合、规划决策、控制执行

news2024/11/26 9:00:28

1、前言

        简单来说,实现自动驾驶需要解决三个核心问题:“我在哪?我要去哪?我该如何去?”能完整解决这三个问题就是真正的自动驾驶。

        目前,自动驾驶汽车关键技术主要包括环境感知、精准定位、决策与规划、控制与执行、高精地图与车联网V2X以及自动驾驶汽车测试与验证技术等。自动驾驶汽车可通过传感器来感知周围环境,实时动态监测周边环境变化,并依据所获取的信息进行决策判断,形成安全合理的路径规划。在规划好路径之后,汽车执行系统会控制车辆沿着规划好的路径完成驾驶。这套自动驾驶核心技术体系可简单概括为“感知、决策与执行”

        

  • 感知系统:被称为“中层控制系统”,负责感知周围的环境,并进行环境信息与车内信息的采集与处理,主要涉及道路边界监测、车辆检测、行人检测等技术。起着类似人类驾驶员“眼睛”、“耳朵”的作用,
  •         决策系统:被称为“上层控制系统”,负责路径规划和导航,通过执行相应控制策略,代替人类做出驾驶决策。相当于驾驶员的大脑。
  •         执行系统:也被称为“底层控制系统”,负责汽车的加速、刹车和转向,主要由电子制动、电子驱动以及电子转向三部分构成。相当于驾驶员的手脚。

        通过“感知、决策与执行”三个系统的分工协作,责任明确地控制汽车运行,可以令自动驾驶汽车具备理论上“自动行驶”的条件。

2、感知

        为了确保自动驾驶车辆在不同场景下均可以做出正确判断,需要实现对周围环境信息的实时动态获取和识别,这些信息包括但不限于自车的状态、交通流信息、道路状况、交通标志等,以满足车辆决策系统的需求。环境感知起着类似人类驾驶员“眼睛”、“耳朵”的作用,是实现自动驾驶的前提条件

2.1 Camera

        摄像机可以识别车辆行驶环境中的车辆、行人、车道线、路标、交通标志、交通信号灯等,具有较高的图像稳定性、抗干扰能力和传输能力。摄像机的优点是可以分辨颜色,比较适用于场景解读。

        但是camera也有其缺点:

  •         首先摄像机缺乏“深度”这一维度,没有立体视觉,无法判断物体和相机间的距离;
  •         其次,摄像机对光线较为敏感,过暗或过强的光线以及二者之间的快速切变都会对其成像造成严重影响。

        根据镜头和布置方式的不同,摄像机可大致分为四种:单目摄像机、双目摄像机、三目摄像机和环视摄像机。

  •         单目摄像机:主要用于路况判断,测距范围与距离需要互相取舍。
  •         双目摄像机:相近的两个摄像机拍摄物体时,会得到物体像素偏移量,根据相机焦距和两个摄像机的距离等信息,得到较高精度的测距结果和提供图像分割的能力。双目测距原理对两个镜头的安装位置和距离要求较多。
  •         三目摄像机:三个不同焦距单目摄像机组合。较好解决了感知范围与感知精度的问题。
  •         环视摄像机:环视摄像机的镜头是鱼眼镜头,而且安装位置是朝向地面。优点是视野广阔,缺点就是图像畸变严重。主要用于车身5-10米内障碍物检测、自主泊车的库位线识别等。

2.2 Lidar

        Lidar是发射激光束来探测目标空间位置的主动测量设备。主要有两个功能:3D的环境感知与SLAM加强定位。激光雷达以10Hz左右的速度对周围环境进行旋转扫描,其扫描一次的结果为密集的点构成的3维图,每个点具备(x,y,z)信息,这个图被称为点云图(Point Cloud Graph),如下图所示:

        为了理解点云信息,通常来说,我们对点云数据进行两步操作:分割(Segmentation)和分类(Classification)。其中,分割是为了将点云图中离散的点聚类成若干个整体,而分类则是区分出这些整体属于哪一个类别(比如说行人,车辆以及障碍物)。        

        目前,激光雷达已经发展了三代产品,包括第一代机械扫描激光雷达、第二代混合固态激光雷达以及第三代纯固态激光雷达。

2.3 Radar

        毫米波雷达是指工作在毫米波波段,频率在30—300GHz之间的雷达。毫米波雷优点:

  •         可以解决摄像机测距、测速不够精确的问题;
  •         可以处理激光雷达处理不了的沙尘天气。

        毫米波雷达缺点是:

  •         数据稳定性较差,对后续的软件算法提出了更高的要求。
  •         对金属极为敏感,路面的金属广告牌在很多场景下会被认为是障碍物,导致刹车不断。
  •         只能提供距离和角度信息,不能像激光雷达那样提供高度信息。

        根据测量原理的不同,可分为脉冲方式毫米波雷达和调频连续波方式毫米波雷达两种。

  •         脉冲方式毫米波雷达:原理与激光雷达相似,硬件结构上比较复杂、成本较高,很少用于自动驾驶汽车。
  •         调频连续波方式毫米波雷达:结构简单、体积小、成本低廉,容易实现近距离探测。

2.4 USS

        超声波雷达工作在机械波波段,工作频率在 20kHz以上。常用的工作频率有40kHz, 48kHz和58kHz三种。一般来说,频率越高,灵敏度越高,但水平与垂直方向的探测角度就越小,所以一般采用40kHz的探头。

        超声波雷达具有频率高、波长短、绕射现象小、方向性好、能够成为射线而定向传播等优点,且兼具防水、防尘的特性,因此非常适合应用于泊车。

2.5 高精地图

        高精地图是用于自动驾驶的专题地图,由含有语义信息的车道模型、道路部件(Object)、道路属性三类矢量信息,以及用于多传感器定位的特征(feature)图层构成。

        高精地图拥有精确的车辆位置信息和丰富的道路元素数据信息,起到构建类似于人脑对于空间的整体记忆与认知的功能,可以帮助汽车预知路面复杂信息,如坡度、曲率、航向等,更好地规避潜在的风险,是自动驾驶汽车的核心技术之一。

        相较于GPS导航系统的传统地图而言,高精地图最显著的特征是其表征路面特征的精准性。

2.6 精准定位

        自动驾驶汽车的环境感知还包括汽车的精准定位,不仅需要获取车辆与外界环境的相对位置关系,还需要通过车身状态感知确定车辆的绝对位置与方位。

        目前自动驾驶领域常见的几种精准定位方式包括惯性导航系统、轮速编码器与航迹推算、卫星导航系统以及SLAM自主导航系统等。

  • 惯性导航系统

         惯性导航系统是以陀螺和加速度计为敏感器件的导航参数解算系统,通过测量运动载体的线加速度和角速率数据,并将这些数据对时间进行积分运算,从而得到速度、位置和姿态。

        具体来说惯性导航系统属于一种推算导航方式。即从一已知点的位置根据连续测得的运载体航向角和速度推算出其下一点的位置,因而可连续测出运动体的当前位置。

  • 轮速编码器与航迹推算

        轮速编码器与航迹推算的原理是通过轮速编码器推算出自动驾驶汽车的位置。轮速编码器主要安装在汽车前轮,用于记录车轮行驶的总转数。通过分析每个时间段里左右轮的转数,可以推算出车辆向前行驶的距离和左右的偏转度。不过,由于在不同地面材质上转数对距离转换存在偏差,所以时间越久,测量偏差也会越大,这种定位方式更多以辅助的形式存在。

  • 卫星导航系统

        卫星导航系统主要包括中国的北斗卫星导航系统、美国的GPS卫星导航系统以及俄罗斯的GLONASS卫星导航系统。这些导航系统可以提供高精度的定位服务。

  • SLAM

        SLAM(即时定位与地图构建),也称为CML(并发建图与定位)。SLAM通过利用已经观测到的环境特征确定当前车辆的位置以及当前观测特征的位置。

        第一种是基于激光雷达的SLAM,以谷歌汽车为例。车辆携带有GPS,通过GPS 对位置进行判断,并以激光雷达SLAM点云图像与高精度地图进行坐标配准,匹配后确认自身位姿。

        第二种是基于视觉的SLAM,以Mobileye为例。Mobileye提出一种无需SLAM的定位方法——REM。车辆通过采集包括信号灯、指示牌等标识,得到了一个简单的三维坐标数据,再通过视觉识别车道线等信息,获取一个一维数据。摄像机中的图像与 REM 地图中进行配准,即可完成定位。

        目前,SLAM常用于自主导航,特别是在GPS无信号或不熟悉的地区的导航。

3、规划决策

        规划是为了某一目标而作出一些有目的性的决策的过程,通常是指从出发地到达目的地,同时避免障碍物,并且不断优化驾驶轨迹和行为以保证乘客的安全舒适。通常又被细分为任务规划(Mission Planning),行为规划(Behavioral Planning)和动作规划(Motion Planning)三层。

        在自动驾驶中,路径规划是决策的关键环节。车辆需要根据环境感知的结果,规划出安全、有效的行驶路径。路径规划的目标不仅是避免碰撞,还要考虑行驶的舒适性、效率和法规遵守。

        自动驾驶汽车在进行决策规划时,会从环境感知模块中获取道路拓扑结构信息、实时交通信息、障碍物(交通参与者)信息和主车自身的状态信息等内容。决策规划系统会对当前环境作出分析,然后对底层控制执行模块下达指令,这一过程就是决策规划模块的主要任务。

        换言之,自动驾驶汽车的行为决策与路径规划是指依据环境感知和导航子系统输出信息,通过一些特定的约束条件规划出给定多条可选安全路径,并从中选取一条最优路径作为车辆行驶轨迹的过程。

        3.1 技术结构体系

        自动驾驶决策规划领域常见的技术结构体系可分为分层递阶式、反应式以及二者混合式。

3.1.1 分层递阶式

        分层递阶式可以理解为一个串联结构,自动驾驶系统的各个模块有序排列在一条直线上,上一模块处理的内容将直接进入到下一阶段,如下图所示:

        优点:

  •         各模块次序分明
  •         每个模块所处理的工作范围逐渐缩小,处理问题的准确度逐渐上升,更容易实现高层次的智能控制。

        缺点:

  •         需要实时调用传感器信息,对传感器的要求较高。
  •         从环境感知到执行控制,中间存在一定延迟,缺乏实时性和灵活性。
  •         分层递阶式的串联结构存在可靠性不高的问题。整体系统的任何部分都不能出现问题,否则信息流和控制流的传递通道就会受到影响,整个系统会随时处于崩溃的状态中。

3.1.2 反应式

        反应式体系结构使用的是并联结构,如下图所示:

        决策规划模块内容以并联模式布置,环境感知的内容会同步传输至多个决策规划模块内,可突出“感知-动作”的特点,易于适应完全陌生的环境。

        与分层递阶式体系结构相比,反应式结构体系占用存储空间较小,响应快,实时性高。同时,并联结构提高了整体结构的稳定性,决策规划模块内的某一层内容出现故障,也不会影响到其他层级内容的正常运行。不过,这也提高了整体系统运行的复杂度,需要更高等级智能技术的支持。

3.1.3 混合式

        混合式体系结构将两者优点结合,全局规划与局部规划分别适用不同的体系结构,使得自动驾驶汽车能够更加适应复杂多变的真实路况。

3.2 技术方法

        根据对环境信息掌握程度的不同,路径规划可分为全局路径规划和局部路径规划两种。

3.2.1 全局路径规划

        全局路径规划,又可以称之为驾驶任务规划,主要内容为行驶路径范围的规划。

        全局路径规划会在已知环境中,给自动驾驶汽车规划出一条理想路径,路径规划的精度取决于环境感知模块获取信息的准确度。这是一种事前规划,类似于我们日常生活中常用的“导航”功能:输入出发地与目的地,APP就会自动规划出一条最优路径。

        需要注意的是,全局路径规划需要预先知道环境的准确信息,当环境发生变化时,规划结果很可能就会失效。

3.2.2 局部路径规划

        局部路径规划,又可称之为实时路径规划。自动驾驶汽车在有障碍物的环境中,会利用自身传感器实时感知周边环境,寻找出一条最优的局部行驶路径,避免碰撞和保持安全距离。

        局部路径规划的优势是可以实时对规划结果进行反馈与校正,确保了自动驾驶车辆始终处于最优的驾驶路径中。缺点是缺乏全局环境信息,可能发生找不到正确路径或完整路径的情况。

        总体而言,全局路径规划和局部路径规划并没有本质上的区别。两者协同工作,自动驾驶车辆可以更好地规划出最优路径。

4、执行

        自动驾驶控制执行系统是指系统做出决策规划以后,替代驾驶员对车辆进行控制,反馈到底层模块执行任务。车辆的各个操控系统需要通过总线与决策系统相连接,并能够按照决策系统发出的总线指令精确地控制加速程度、制动程度、转向幅度、灯光控制等驾驶动作,以实现车辆的自主驾驶。

4.1 核心技术

        自动驾驶控制执行的核心技术主要包括车辆的纵向控制和横向控制技术。

4.1.1 纵向控制

        纵向控制是指在行车速度方向上的控制,即车速以及与前后车或障碍物距离的自动控制。

        自动驾驶采用油门和制动综合控制的方法来实现对预定车速的跟踪,各种电机-发动机-传动模型、汽车运行模型和刹车过程模型与不同的控制算法相结合,构成了各种各样的纵向控制模式,典型的纵向控制系统结构如下图所示:

4.1.2 横向控制

        横向控制指转向控制。横向控制系统目标是控制汽车自动保持期望的行车路线,并在不同的车速、载荷、风阻、路况下均有很好的乘坐舒适性和稳定性。典型系统结构如下图所示:

4.2 技术方案

        根据从行驶环境到驾驶动作的映射过程,自动驾驶控制技术可以分为间接控制和直接控制两种不同方案。

4.2.1 基于规划- 跟踪的间接控制方法

        自动驾驶间接控制方案可以简单概括为,根据当前车辆行为需求,在满足车辆自身运动学和动力学约束条件下规划出一条空间上可行且时间上可控的无碰撞安全运动轨迹,然后设计适当的控制律跟踪生成的目标轨迹,从而实现自主驾驶。原理如下图所示:

4.2.2 基于人工智能的直接控制方法

        由于自动驾驶汽车行驶环境具有不确定性、不可重复性和不可预测性等特征,很难建立精确的数学模型进行控制律的设计,因此传统控制策略已无法满足自动驾驶驾驶控制的要求。这样的背景下,基于人工智能的直接控制方法就成为目前自动驾驶控制系统的主流形式。

        基于人工智能决策控制模型本质上是模拟人脑对外界环境信息和车体本身信息的感知,同时由驾驶经验并同在线学习机制来获得持续稳定输出的过程。

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

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

相关文章

ZYNQ:GPIO 之 MIO 按键中断实验

实验目的 使用底板上的 PS 端的用户按键 PS_KEY1 通过中断控制核心板上 LED2 的亮灭 简介 Zynq 芯片的 PS 部分是基于使用双核 Cortex-A9 处理器和 GIC pl390 中断控制器的 ARM 架构。中断结 构与 CPU 紧密链接,并接受来自 I/O 外设(IOP&#xff09…

P4240 毒瘤之神的考验

毒瘤之神的考验 - 洛谷 定义 猜想与有关 发现上式1-1 上下两边乘gcd(i,j)有 带入1-1有 化简 n<m 经典代换Tke eT/k 然后化简不了了 这个时候我们可以把一部分看出一个整体 分析这两个函数&#xff0c;发现f(x) 可以在下预处理出来 g(x,y)有以下递推式 因此也可以在下处理…

三、流程控制

流程控制 选择结构&#xff08;if-else&#xff09;选择结构&#xff08;when&#xff09;循环结构&#xff08;for&#xff09;循环结构&#xff08;while&#xff09; 经过前面的学习&#xff0c;我们知道&#xff0c;程序都是从上往下依次运行的&#xff0c;但是&#xff0c…

事件抽取(Event Extraction, EE)

一、引言 事件抽取&#xff08;Event Extraction, EE&#xff09;是信息抽取领域中的一个重要任务&#xff0c;旨在从非结构化文本中识别和抽取事件相关的信息。事件抽取通常包括识别事件触发词、事件类型以及事件中的参与者、时间、地点等元素&#xff0c;最终将这些信息结构…

【进阶OpenCV】 (4)--图像拼接

文章目录 图像拼接1. 读取图片2. 计算图片特征点及描述符3. 建立暴力匹配器4. 特征匹配5. 透视变换6. 图像拼接 总结 图像拼接 图像拼接是一项将多张有重叠部分的图像&#xff08;这些图像可能是不同时间、不同视角或者不同传感器获得的&#xff09;拼成一幅无缝的全景图或高分…

论文翻译 | Model-tuning Via Prompts Makes NLP Models Adversarially Robust

摘要 近年来&#xff0c;NLP从业者集中于以下实践:(i)导入现成的预训练(掩码)语言模型;(ii)在CLS令牌的隐藏表示(随机初始化权重)上附加多层感知器;(iii)在下游任务(MLP-FT)上微调整个模型。这一过程在标准的NLP基准上产生了巨大的收益&#xff0c;但这些模型仍然很脆弱&#x…

mysql单表查询·3

准备好表 create table product(id int primary key,name varchar(32),price double,category varchar(32) ); # 插入数据 INSERT INTO product(id,name,price,category) VALUES(1,联想,5000,c001); INSERT INTO product(id,name,price,category) VALUES(2,海尔,3000,c001); I…

加密与安全_HOTP一次性密码生成算法

文章目录 HOTP 的基础原理HOTP 的工作流程HOTP 的应用场景HOTP 的安全性安全性增强措施Code生成HOTP可配置项校验HOTP可拓展功能计数器&#xff08;counter&#xff09;计数器在客户端和服务端的作用计数器的同步机制客户端和服务端中的计数器表现服务端如何处理计数器不同步计…

好用的苹果笔推荐!五大高品质王者款!附避坑宝典助你选购无忧!

现在平板和电容笔在一定程度上可以替代传统的笔和纸&#xff0c;很多用户在购置iPad后&#xff0c;急需找到一款好用的电容笔。但由于苹果原装笔的价格太过高昂&#xff0c;让许多人不得不选择平替电容笔&#xff01;下面我就为大家推荐五款高品质的电容笔&#xff0c;并分享几…

单细胞hdWGCNA分析学习和整理

hdWGCNA的分析逻辑是跟bulkRNA数据中的WGCNA基本一样&#xff0c;只是hdWGCNA中多了一步metacell过程&#xff0c;有助于减少无用的信息(单细胞数据有很多零值&#xff0c;会影响分析结果)。 WGCNA的基础信息可见既往推文: https://mp.weixin.qq.com/s/2Q37RcJ1pBy_WO1Es8upIg…

二分查找算法专题(2)

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a; 优选算法专题 对于二分查找算法不是很了解或者只了解一部分的小伙伴一定要去看下面这篇博客&#xff1a;二分查找算法的介绍与另外一种查找方…

【EcoNAS: Finding Proxies for Economical Neural Architecture Search】读后感

鄙人近日阅读了来自 CVPR2020 的一篇论文, 在这里与大家分享一下读后感, 有些东西可能不一定正确, 还望大家指正. Exploration Study 进化算法是 NAS 中一种常用的搜索算法, 使用进化算法时, 如果将每一个候选网络训练到完全收敛来评估性能的话, 需要耗费大量的资源 (时间, G…

现代身份和访问管理 IAM 如何降低风险

您的公司是否仍在使用 1998 年时的身份管理系统&#xff1f;仅凭用户名和密码就能登录本地网络并访问几乎所有资源吗&#xff1f; 虽然大多数企业已经转向现代身份和访问管理(IAM) 平台&#xff0c;但成千上万的企业和其他组织仍然依赖过时的用户名/密码系统。 如果你看一下传…

Ubuntu18.04配置OpenPCDet并运行demo过程记录

一、概述 因为最近需要配置OpenPCDet&#xff0c;发现在配置过程中存在诸多的问题需要解决&#xff0c;将过程中所遇到的问题进行记录保存。 二、具体配置过程 &#xff08;一&#xff09;参考链接 因为中间遇到了很多问题&#xff0c;参考了很多不少相应的博客进行问题解决。…

【Unity】unity安卓打包参数(个人复习向/有不足之处欢迎指出/侵删)

1.Texture Compression 纹理压缩 设置发布后的纹理压缩格式 Use Player Settings:使用在播放器设置中设置的纹理压缩格式 ETC&#xff1a;使用ETC格式&#xff08;兼容&#xff09; ETC2&#xff1a;使用ETC2格式&#xff08;很多设备不支持&#xff09; ASTC&#xff1a;使用…

使用JavaScript写一个网页端的四则运算器

目录 style(内联样式表部分) body部分 html script 总的代码 网页演示 style(内联样式表部分) <style>body {font-family: Arial, sans-serif;display: flex;justify-content: center;align-items: center;height: 100vh;background-color: #f0f0f0;}.calculator {…

c++ 指针传参

// // Created by 徐昌真 on 2024/10/4. // #include <iostream>//函数的值传递 void swap(int a, int b){ //只是单纯的改变了函数内部a b的值 在main函数内值并不会改变 因为值存在地址里面 而地址里面的值要通过指针来改变int temp;temp a;a b;b temp; }//函数的址…

Oracle架构之表空间详解

文章目录 1 表空间介绍1.1 简介1.2 表空间分类1.2.1 SYSTEM 表空间1.2.2 SYSAUX 表空间1.2.3 UNDO 表空间1.2.4 USERS 表空间 1.3 表空间字典与本地管理1.3.1 字典管理表空间&#xff08;Dictionary Management Tablespace&#xff0c;DMT&#xff09;1.3.2 本地管理方式的表空…

8647 实现图的存储结构

### 思路 1. 读取输入的顶点个数n和边的条数m。 2. 初始化一个n*n的邻接矩阵&#xff0c;所有元素初始为0。 3. 读取每条边的信息&#xff0c;更新邻接矩阵对应位置为1。 4. 输出邻接矩阵。 ### 伪代码 1. 读取n和m。 2. 初始化n*n的邻接矩阵matrix&#xff0c;所有元素为0。 …

CSS列表和超链接的使用(8个案例+代码+效果图+素材)

目录 1.无序列表ul 案例:定义不同type的li 1.代码 2.效果 2.有序列表ol type 取值 start属性 value 案例:定义不同类型的有序列表 1.代码 2.效果 3.定义列表dl 1.代码 2.效果 4.list-style-type属性 list-style-type的取值 案例:list-type的使用 1.代码 2.效果 5.list-style-im…