自动驾驶:高精地图

什么是高精地图

区分两个概念:

  • HD Map, 即high definitin map,高分辨率地图
  • HDA Map,即Highly automated driving map,高度自动驾驶地图

导航地图

平时手机上用的高德地图,百度地图等等就属于这一类

  • 它的表述形式倾向“有向图”结构,把道路抽象成一条条的边,各边连通关系构成整体上的有向图。例如就画一下道路的拓扑,道路上有几条线,实线还是虚线,具体处在道路的多少m处都不知道。
  • 现阶段的高精度地图更多地被定义为:服务于无人驾驶驾驶的地图。相比于传统地图的“定性”描述来说,高精度地图是一种“定量”的描述。

    • 以坡度为例,传统地图能提供的仅仅是前方有上(下)坡这个信息,但无法提供上(下)坡的角度;
    • 以弯道为例,传统地图提供的仅仅是前方有个比较“急”的弯道,但无法提供弯道的曲率半径;
    • 以路口为例,传统地图提供的仅仅是前方路口有红绿灯这个信息,并不知道红绿灯的具体位置在哪。

    高精度地图

    • 它提供了极高的精度:可以提供传统地图提供不了的精确数据,这就是高精度地图的“定量”描述。
      • 这些定量描述对人类驾驶员驾驶汽车来说没有多大帮助,因为人类是高度智能化的个体,拥有极高的图像识别、信息联想和学习能力
      • 而这些能力这是目前无人驾驶“大脑”所不具备的。为了弥补无人驾驶“大脑”还不够聪明的缺陷,高精度地图挺身而出。
    • 它在描述上更加全面
      • 高精地图最主要的特征是需要描述车道、车道的边界线、道路上各种交通设施和人行横道
    • 对实时性的高清更高
      • 实时性是非常关键的指标,因为自动驾驶完全依赖于车辆对于周围环境的处理,如果实时性达不到要求,可能在车辆行驶过程中会有各种各样的问题及危险。

    高精地图的组成

    高精地图可以作为自动驾驶的「大脑」。「大脑」里面最主要是地图、感知、定位、预测、规划、安全。综合处理成自动驾驶车辆能接受的外部信息,并统一运行在实时的操作系统上。

    • 车上配备的传感器类似于人的感知系统,用来感知外部环境;自动驾驶车辆会把感知的结果通过「大脑」处理后发送给控制系统。
    • HMI人机交互接口前期主要用于内部调试,后期当自动驾驶车辆量产后,需要用户输入目的地等信息。
    • 因此,高精地图对于感知、定位、规划、决策、仿真和安全都是不可缺少的。
    • 在2019CES的Apollo 3.5发布会上,Apollo正式发布首个自动驾驶高性能开源计算框架 Cyber RT。
    • Apollo Cyber RT系统是 Apollo 开源软件平台层的一部分,作为运行时计算框架,处于实时操作系统 (RTOS) 和应用模块之间。
    • Apollo Cyber RT作为基础平台,支持流畅高效的运行所有应用模块。

    现在主流的自动驾驶的定位方案有两种:一种是基于点云,另一种是基于Camera。其本身都是一种对周围环境的感知。

    • 感知后是Feature提取,提取之后可以通过特征匹配最终得到精确结果。
    • 自动驾驶车辆在路口“看”到建筑物,然后通过激光雷达能搜到点云的信息,通过点云的特征提取,然后通过复杂的组合变换、视角变换,最终通过跟周围环境的比对能得到比较准确的定位坐标。
    • 目前主流Camera定位的视觉方案,会实时做Location Feature的提取。在HDMap里面也存储了对应的一些Location相关的特征。经过两个提取特征的比较后可以得到相对准确的定位位置信息。
    • Camera下有GNSS,雷达也有。有初值之后可以减少搜索的范围,在工程上可以搜到更好的结果。

    高精地图与安全模块的关系

    自动驾驶的主要目标是能够取代人类司机,能够取代的前提是自动驾驶车辆必须足够的安全。而自动驾驶车辆联 后,遭受攻击无可避免

    自动驾驶车辆可能遭受4个维度的攻击:传感器、操作系统、控制系统和通信系统。

    • 传感器是自动驾驶车辆辆上通用的模块,相当于IMU惯性测量单元,它对于磁场是非常敏感,如果我们在车辆周围放一些强磁场,会影响它测量的准确度。
    • 轮速器也有风险。车轮变形和损坏都会影响测量精度。
    • 激光雷达依赖于激光反射。如果我们在周围环境上加载人工的反射物或假的红绿灯,就会让我们的车直接停下。假的GPS信 和激光也会对系统造成干扰。
    • 定位模块依赖于高精地图提供的信息来做运动学的约束;激光雷达依赖高精地图做一些三维点的扫描。
    • Apollo提供的定位方案基于激光雷达反射值。反射值不准确就会对定位精度有影响,红绿灯对规划决策控制也有很大的影响。

    针对任何一种攻击,目前来说,还很难有全面有效的方法来防止问题发生。

    高精地图能在这里面起什么作用trong>高精地图能提供离线的标准信息。比如说,激光雷达在场景中扫描到物体,通过与高精地图中的信息进行对比匹配。如果结果不一致,我们可以大概率地认为此地有问题,这就是通过多传感器的融合来解决安全问题。

    高精地图与仿真系统的关系

    实际情况中,开发者很难把所有的策略迭代都放在车上去测试,所以需要非常强大的仿真系统。

    仿真的主要问题是「真实」,怎样做到「真实」p>

    • Apollo的仿真系统主要是基于高精地图/真实场景来构建。仿真场景回放后,和真实上路的实际情况相比,可以基本保证Gap不会很大。
    • 在实际测试的过程中,Apollo的测试人员也会录一些Bag,记录实测中遇到的一些问题,并放到仿真系统里去做测试。
    • 高精地图为仿真地图提供了最底层的基础结构,能让仿真系统更好的去模拟真实道路的场景。

    没有高精地图的高可靠性,L3/L4自动驾驶无法落地。

    高精地图的作用

    静态的perception

    高精地图是静态的Perception。机器理解不了,我们可以把人理解的经验赋予给驾驶系统,相当于把人的经验传授给它。

    弥补系统性缺陷

    自动驾驶需要非常复杂的计算系统,4G的传输速度并不能满足现阶段自动驾驶的海量数据传输需求。

    • 64线激光雷达、Camera和其他传感器,每时每刻都会产生巨量的数据,这些数据不能传回云端,就不能采用互联 的模式:通过云端计算把结果发送给终端。
    • 5G是否能达到数据传输的要求还需要再验证。目前从5G的宣传层面来看,能够达到数据实时传输的效果,但是5G的普及还需要时间。所以我们现在把大量的数据都放在终端。
    • Apollo的自动驾驶车辆后面有非常大的计算单元。基于英特尔工控机,Apollo把所有的计算都放在车上,这会对计算速度和实时性有很大的影响。

    我们希望Apollo的各模块都能达到实时级的响应,但是自动驾驶车辆的计算量太大,想要达到实时级的响应,仍需其他模块的辅助。

    举个例子,高精地图告诉感知/控制模块,在你的双向通行的车道中有栅栏隔离,对向车道的车不可能过来,系统就可以放弃检测对向车道上的障碍物,有效地降低系统负担。

    传感器有局限,但高精地图给自动驾驶提供了超视觉、超过传感器边界的远距离感知

    高精地图的采集与生成

    采集过程需要用到的传感器

    各式各样传感器和算法相结合,自动驾驶汽车才能生成可用的高精地图。

    因此, 高精地图的采集与生产 是一系列非常复杂的行为。

    高精地图采集所需要的传感器主要有 GPS 、 IMU 、 轮速计 三类。

    GPS

    空间点位置的计算原理 (通过GPS)

    • 空间点位置是一个「三维坐标」,TA有「三个变量」,需要「三个方程」。
    • 从理论上来说,如何才能得到空间点位置相关的三个方程li>
    • 通过观测三颗卫星与空间点位置的距离,利用三角测量法,就可以准确地得到地球上任何一点的空间位置。
    • 但三颗卫星的测量方案在实际应用中,可能会存在「误差」。
    • 因此,在空间点位置的计算过程中,我们经常要检测四颗或四颗以上卫星,才能实现「精确的定位」。

    举例来说,在高速路等非常空旷的地方时,自动驾驶汽车所能接收到的GPS的信 非常好。不需要复杂的策略,就能得到很好的定位结果。因此,空旷地带的GPS精确、好用 。这就是为什么很多公司刚进入自动驾驶领域研发时,都会选择「高速路线」的原因。

    而在城市道路环境下,GPS将会非常难用。

    • 这是由于高楼等障碍物遮挡,导致自动驾驶汽车所能接收到的GPS信 发生偏移。一般来说,GPS在城市中定位的「平均偏差」在50米左右。

    众所周知,在城市复杂道路中,自动驾驶车辆上搭载的GPS偏差0.5米,所造成的事故后果都是不可估量的,更不用说如此大的偏差了。

    IMU

    目前 IMU (惯性测量单元)是自动驾驶汽车的标配。

    • IMU是测量三轴加速度的一个装置,通过算出积分,得到任意两帧间的相对运动。
    • IMU有「高端」和「低端」之分。高端IMU能保持较长时间的计算精确度,而低端IMU在GPS信 丢失的情况下,能够维持比较精确的时间非常短。
    • 实际工作中,由于不可避免的各种干扰因素, 如果不对该运动加以校正,IMU的误差会就随着时间的推移变得越来越大 。

    轮速器

    轮速计 本身存在缺陷。

    • 目前,轮速计的使用非常普遍,很多汽车都配备了轮速计。
    • 在现代汽车技术的应用中,轮速计被用来做「运动约束」,如从A点到B点,汽车行驶的距离
    • 但是由于车型差异、地面交通路况不同。如地面结冰与水泥路面,二者路况不同,路面的摩擦系数也不一样 ,就会导致轮速计统计结果的差异。

    这是为什么轮速计本身存在缺陷的原因所在。

    采集过程中的制图方案

    高精地图采集过程中需要用到的传感器有GPS、IMU和轮速计。无论是哪种传感器都存在一定的缺陷,因此我们不能期望只使用单一一种传感器,得出准确的Pose。必须各个传感器之间取长补短,才能得出一个相对比较准的Pose。

    由此产生了两种主流的制图方案:

    • 激光雷达 :通过扫描的激光点和GPS、IMU的一些测量数据,计算预测结果与实际结果差距的最小化,得出我们在高精地图采集过程中一个最优化的计算模型。
    • Camera融合激光雷达:通过丰富的图像信息和准确的激光雷达数据,最终得出一个非常准确的高精地图。

    激光雷达

    激光雷达 通过「发射」和「接收」激光光束得到两点之间的距离,因此其精确度非常高。

    • 激光雷达内部的扫描部件与光学部件,通过收集反射点与反射点发生的时间和水平角度,从而得出任意一点的空间信息和光强度。
    • 该坐标信息扫描的是某个局部,通过一定的坐标转换,能够形成一个全局的坐标系。

    无论是GPS,还是IMU、轮速计,各个传感器都存在一定的缺陷, 我们无法仅运用单一的传感器,采集出一个精确的数据。

    所以要综合运用各种传感器。

    • 通过将GPS、IMU和轮速计测出的数据进行「融合」,再运用「Slam算法」,对Pose进行「矫正」,最终才能得出一个「相对精确的Pose」。
    • 最后把空间信息通过激光雷达「扫描出三维点」,转换成一个「连续的三维结构」,从而实现整个空间结构的「三维重建」。

    camera融合激光雷达

    虽然激光雷达采集的信息非常精确,但它采集的信息非常少,无法提供像图像那样丰富的语义信息、颜色信息。

    因此,目前 主流自动驾驶研发公司 ,如百度,采用的是 Camera融合激光雷达 的方案。

    通过融合二者的优势,综合运用丰富的图像信息和精确的激光雷达数据,最终得出一个非常精确的高精地图。

    其他方案

    高精地图生产的方案供应商还有英伟达、宽凳科技、DeepMotion和Level 5公司等。

    • 其中, 英伟达 做GPU出身,其计算硬件 非常强大。
    • 国内的 宽凳科技 称是用纯视觉制图,精度能做到20厘米,能够通过在线检测实时生成制图。
    • DeepMotion 运用的也是纯视觉制图方案,其理论精度可达厘米级。
    • 此外,还有来自国外的 Level 5 公司,该公司运用车载行车记录仪或手机上较低端的Camera就能够实现众包制图,但它的具体效果还不是很明确。

    高精地图的规范格式分类

    高精地图的格式规范,即对采集到的地图如何进行一个完整的表述。

    对此,目前最主流的通用格式规范分NDS和OpenDRIVE两种。此外还有日本OMP公司的格式规范。

    NDS格式规范

    • 数据库可以细分:每个细分后的产品都能够独立更新升级,支持局部更新,还提供语音、经纬度等描述功能。
    • Level(尺度):通过放大或缩小比例尺,来浏览全国或某个区域、某栋楼的地图信息。由于地图的范围非常大,利用Level把整个地图切成一个又一个的小格子,在每个小格子中填充数据。

    NDS是一种非常全面的地图表述方式,对地图的格式规范做得非常到位。但是该技术目前在国内尚未普及,国外使用则相对较普遍,特别是宝马等大厂商使用较多。

    Open DRIVE格式规范

    OpenDRIVE是目前国际上较通用的一种格式规范,由一家德国公司制定。

    在运用OpenDRIVE格式规范表述道路时,会涉及Section、Lane、Junction、Tracking四个概念。

    • Section:照道路车道数量变化、道路实线和虚线的变化、道路属性的变化的原则来对道路用灰线进行切分。
    • Lane:基于Reference Line,向左表示ID向左递增,向右表示ID向右递减,比如Reference Line的ID为0,向左是1、2、3,向右是?1、?2、?3。
    • Junction:是路口概念,包含虚拟路(红色虚线)用来连接可通行方向,以便无人驾驶车辆明确行进路线。
    • Tracking:坐标系是ST,S代表车道Reference Line起点的偏移量(纵向),T代表基于Reference Line的横向偏移量。

    此外,还有一些概念,如Heading、Pitch和Roll等,不再赘述。

    需要说明的一点是百度Apollo中也开发了自己的OpenDRIVE,与德国的OpenDRIVE有所不同。

    • 在德国OpenDRIVE里,所有对车道线的描述都基于Reference Line的偏移量,这种形式非常复杂,在实际操作中比较困难。

    • 百度在Open Derive格式规范中对该技术进行了改进,使之对开发者更加友好,也更利于Apollo自身的表述计

    业界的高精地图产品

    • Here有很好基础优势。作为一家传统图商,他的用户基数可以保证地图以更快的速度和形式更新。
    • MobileEye更侧重于使用Camera,在图像处理方面也做得更好,使用视觉信息来进行辅助驾驶,是一种基于众包的视觉制图。
    • 谷歌Waymo的技术实力雄厚,其自研的激光雷达据称可以检测到两个足球场(240米)外的物体数据。并且整体的生产成本比Velodyne的64线激光雷达的售价(8万美元)低90%左右,这对于开发者来说是非常诱人的价格。

    文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览2970 人正在系统学习中

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月15日
下一篇 2022年10月15日

相关推荐