精华内容
下载资源
问答
  • 高精地图数据

    千次阅读 2019-07-18 10:39:29
    高精地图 供无人驾驶车辆是用的电子地图,精度达到厘米级,它是需要做到车道线级别的 地标位置的高精度。高精地图由很多类地标构成,比如地面各种道路标线,地上各种交通标志等,地标的定义现在还没有明确的标准,...

    高精地图
    供无人驾驶车辆是用的电子地图,精度达到厘米级,它是需要做到车道线级别的

    地标位置的高精度。高精地图由很多类地标构成,比如地面各种道路标线,地上各种交通标志等,地标的定义现在还没有明确的标准,不同厂商从自己产品和技术需求出发,有不同的定义方式。
    **高精度地图与无人驾驶**
    

    高精地图对于无人车来说,具有非同寻常的价值:
    第一,高精地图能够给无人车很多预判的空间。当无人车通过高精地图知道前方的路况和交通标识信息后,能够提前做行驶规划,保证了行车的平稳性和经济性。
    第二,高精地图能够帮助无人车减少计算量。当无人车需要通过路口时,它需要提前感知前方信号灯的状态,这时高精地图就可以帮助它定位到信号灯所在的特定区域,从而有效降低了全范围扫描识别的计算量。
    除此以外,高精地图将道路及周围的所有静态障碍物进行收集,减少无人车对静态障碍物的算法处理。

    本车定位的高精度。高精定位有三种方式:第一种是卫星定位。多基站+差分GPS在开阔区域可以做到厘米级精度,但是城市中因为多路径效应,精度只有米;第二种是匹配定位,这种方式和人很像,观察周围环境或者地标,在记忆地图中搜索,匹配定位。结合GPS限定搜索范围,可以做到快速准确匹配。第三种是积分定位。IMU或者视觉里程计。短时间内精确,长时间有累积误差。这三种方式各有优缺点,结合起来可以做到低成本、高精度、高可靠性。
    
    展开全文
  • 1. 什么是高精数据分发引擎1.1高精地图概述高精地图(High Definitation Map,HD MAP),和普通导航电子地图的主要区别是精度更高、信息更丰富。精度更高主要体现在...


    1. 什么是高精数据分发引擎


    1.1 高精地图概述

    高精地图(High Definitation Map,HD MAP),和普通导航电子地图的主要区别是精度更高、信息更丰富。精度更高主要体现在高精地图的绝对坐标精度更高(指的是地图上某个目标和外部的真实世界事物所在位置之间的精度),可以精确到厘米级别;信息更丰富主要体现在高精地图不仅包含了道路信息,还涵盖了几乎所有与交通相关的周围静态信


    相比于普通导航电子地图,高精度地图所包含的道路交通信息更丰富和准确。除此以外,在应用场景方面,普通导航地图主要供驾驶员使用,而高精度地图是面向机器的、供自动驾驶汽车使用的地图。

    精度是高精度地图与普通导航电子地图的最大区别。普通车载电子导航地图的精度一般在10米左右,高精度地图应用在自动驾驶领域,需要精确定位到具体某条车道上还需要知道周围所有可能参与自动驾驶决策的道路和交通信息,精度需要达到10~20厘米,这样的精度基本上和一个车道边线的宽度差不多,才能保证智能驾驶的汽车不会跨越到其他车道,避免与其他车辆发生侧面碰撞的风险。

    普通导航电子地图要描绘出道路(link),而高精度地图不仅要描绘道路,还会描绘出一条道路上有多少条车道(lane),真实地反映出道路的实际样式。

    高精度地图信息更丰富主要体现在以下几个方面:


    准确的道路形状:每条车道的坡度、曲率、航向、高程,侧倾的数据。


    详细的车道线信息:车道之间的车道线是虚线、实线还是双黄线,线的颜色,道路隔离带,隔离带的材质都会有描述。

    此外,人行横道,道路沿线看板,限速标志,红绿灯,路边电话亭等等,这类通常统称为LandMark Object的绝对地理坐标,物理尺寸以及他们的特质特性等也都会出现在高精度数据中。

    1.2 高精数据分发引擎

    ADAS(Advanced Driver Assistant System,高级驾驶辅助系统)应用需要用车辆前方路网及属性数据信息用于决策控制及判断,普通数字地图数据通常仅供导航系统使用,但高精地图数据可供车辆内的其他ADAS应用使用,因此需要依赖高精数据及用于高精数据播发的高精数据分发引擎。

    ADASIS(ADAS接口规范)定义了“ADAS电子地平线”的概念,“ADAS电子地平线”表达了车辆前方的路网及路网属性信息。为了实现这种表达方式,我们需要构建车辆的位置模型以及车辆前方路网的各个可能行驶的道路模型,可以通过一个树状的层次结构来表达可通行的道路。此外,道路的几何形状及相关属性也会建立相关的属性模型来表达。“ADAS电子地平线”数据通过车载以太网络来序列化及传输。

    1.3 名词解释

    ADAS(Advanced DriverAssistance System)

    即高级驾驶辅助系统,利用车载传感器感知车辆环境,并融合计算,预先让驾驶者察觉可能发生的危险,有效提升车辆驾驶的安全性、经济性和舒适性。

    ADASIS(Advanced DriverAssistance System Interface Specification)

    ADAS论坛制定的行业国际标准,用于规范地图数据和车辆ADAS应用之间交换地图数据的标准接口协议。

    AHP(ADAS Horizon Provider)

    即高精数据分发引擎,为ADAS应用提供超视距的前方道路和数据信息。

    AHR(ADAS Horizon Reconstructor)

    用于解析AHP发出的消息并重建地图数据,供终端ADAS应用模块使用。

    2. 为什么需要高精数据的分发引擎

    高精数据分发引擎作为高精数据及ADAS应用的桥梁,其价值总结下来有以下几个方面:

    • 自动驾驶远程视距的需要,高精地图作为自动驾驶的地图传感器,可以提供更可靠的超视距范围,支持更可靠的决策判断。

    • 精度提高的需要,由导人到导车的转变使得对精度要求提高了。

    • 高精地图数据分发的接口标准化。

    3. 高精数据分发引擎的建设


    3.1 高精数据分发引擎与ADAS应用的关系

    数据分发引擎涉及到以下几个部分组成及交互:

    • AHP

    • AHR

    • ADASIS V3 Protocol

    • ADAS应用,详见上图的终端应用部

    3.2 高精数据分发引擎架构

    高精数据分发引擎由多个层级组成,包括引擎层、协议组织层、系统适配层,相关的平台及工具支撑如下图所示:

    • 引擎层:高精数据的加载,解析及车道路网数据的组织。

    • 协议层:主要将引擎层提供的数据组装协议消息,并向适配层传递分发。

    • 适配层:主要负责和系统对接及交互,并将组织的协议数据分发给ADAS应用。

    3.4 高精数据分发引擎的模型表达


    3.4.1 路网模型的抽象及表达

    数据分发引擎的路网模型包含三层的模型抽象,首先经由现实世界模型抽象成高精路网模型,再由高精路网模型进一步组织及划分抽象为Path及Offset表达的树状模型。

    • 现实世界的抽象模型的表达

    • 数字化地图模型及用户设置的导航路径,地图要素的表达

    • 在数据化地图模型的车辆位置及路网表达

    • 在车辆位置附近的路网模型通过links来表达路网之间的连接关系。在数字地图数据库中,道路网表示为一组连接和定义链接之间的节点组成。

    • 从ADAS应用角度来看,对车辆后方的路网并不关心,因此数据分发引擎由车辆前方的路网组成。

    • 将车辆前方路网按Path来组织,每个Path是一组link的集合。车前方的路网数据可以通过两种算法来表达。

    简单Path方式,从车所在link开始,每个可以通行的路径都独立表达为Path.

    优化路径组织方式,这种方式减少了数据冗余,也可以完整表达车辆前方的路网数据。

    因此,数据分发引擎根据车辆前方及其周围环境的路网形状描述为不同路径和地图数据属性的集合,组成预测树。这个预测树由多条路径连接而成,每一条路径代表一部分道路,及道路与道路之间的交叉点。

    一旦车辆移动更改其位置时,预测视图也会更改,一些车后方的的路径可能会被删除,或车前方的路径可能会添加新的。路径的特征表达为一组属性,如高速及城快路网本身包括的车道数、几何形状、曲率等。属性在路径上的位置用一组偏移值表示,偏移值是一种距离标记,通过定义沿路径本身的绝对距离,以厘米表示。一条路径的原点是零偏移值点,属性的偏移值表示属性本身和路径原点之间的距离。如果路径是新开始的并且没有父路径,则偏移值0点为车辆所在的起始位置。

    3.4.2 高精数据分发引擎的属性模型

    数据分发引擎的属性模型数据来源于高精路网上的属性信息,定义为沿着Path表达,并定义在Path上的位置,通过Offset来表达。例如,速度限制属性为路径上的点提供速度限制值。

    属性模型根据插值类型可以分为以下三种不同的类型,即Spot, Step, Linear类型

    Spot类型的属性只有在Path内某一给定的Offset位置有效,属性的不同由不同的Offset位置来表达。例如交通灯可以定义为Spot类型的属性,因为可以被表达为Path内某一位置存在这个点属性

    Step类型的属性定义为到下一属性的Offset位置处一直有效。属性表达为Path上的Offset到EndOffset区间范围内的值。

    如上图所示例子中,Path长度为200。速度限制80是整体有效,从Offset 0点到200。从偏移量50和100开始有两个限速值。因此整个图上属性分布如下:

    • 偏移量0:开始限速值80。

    • 偏移量50:引入雨天限速值60,限速80的属性继续。

    • 偏移量100:重复速度限制80,新增雾天限制50,雨天的限速60结束。

    • 偏移量150:重复速度限制80,雾天的速度限制50结束。

    Linear类型的属性定义为在给定的位置间进行线性差值表达。

    线性插值型属性不是连续表达的,在同一个Offset处,左边的值和右边的值是不同的,属性模型用以下方式来表达这种不连续的属性值。

    • 在Offset处,存储一个属性,值存储左边的属性值,EndOffset为0。

    • 在同一个Offset存储一个属性,值存储右边的属性值,但EndOffset > Offset

    3.4.3 车的位置信息模型

    在数据分发引擎中,车的位置信息可以通过Path, Offset来表达。在不确定情况下,车的位置可能存在于多个Path上,因此需要用一个集合来描述车的位置信息。通过车位置信息可以表达以下信息:

    • 车信息是否脱离了数据区域。

    • 车信息是否匹配到了Path的数据范围。

    • 车信息是否匹配到了个多个Path上。

    • 车信息是否进入及离开了数据区域范围。

    车位置信息的TimeStamp值表达了接收到传感器信息的时间时刻值。

    车的位置信息还可以表达前方更可能选择的Path路径。

    如上图中左边可能选择的路径是P1, 右图为P3。

    3.4.4 高精数据分发引擎与接收端的同步机制

    数据分发引擎通过pathControl消息来同步AHP及AHR之间的路网Path数据。

    • 当pathControl消息不包含某一Path时,AHR收到消息后删除路网中的Path。

    • 当pathControl消息和上次维持不变时,AHR收到消息后维持当前路网不变。

    • 当pathControl消息增加了某一Path时,AHR收到消息后增加Path信息

    通过profileControl同步属性数据。

    3.4.5 高精数据分发引擎与接收端的交互机制

    数据分发引擎(AHP)与接收端(AHR)有以下几种交互机制:

    • 广播方式

    • 请求/提供方式

    • 订阅/发布模式

    目前高精数据分发引擎建设时采用的是“请求/提供”方式,AHP向AHR发送 ADAS message, AHR可以请求及反馈信息。

    3.4.6 辅助AHP及ADAS应用融合

    3.4.6.1 主AHP及辅助AHP

    ADASIS协议中并不是所有的数据都由数据分发引擎提供,也可以增加辅助的AHP引擎。辅助的AHP引擎可以发送传感器信息或传感器的融合信息。

    形成的主数据分发引擎及辅助的AHP引擎。

    3.4.6.2 ADAS应用的两种融合方式

    根据主AHP及辅助AHP引擎,可以实现2种ADAS应用的融合方式,即下游融合及上游融合。

    下游融合

    在AHP端不做融合处理,通过通信方式把各个传感器数据及高精地图数据传给AHR端,进行融合的处理,然后再传给ADAS功能应用。

    上游融合

    在AHP端做融合处理,将融合结果通过协议传给AHR处理,直接作用于ADAS功能。


    4. 质量建设

    为了保证软件质量,高精数据分发引擎建设中采用了如下技术手段:

    • 单元测试

    • 功能测试

    • 质检工具

    可视化工具

    • 可视化工具截图

    5. 典型架构应用形态

    根据高精数据分发引擎构架可以分为以下的几种集成形态:


    5.1 数据分发引擎(即EHP引擎)集成在地图盒子内

    地图盒子概念

    用于承载“地图数据+高精定位”能力的车规级软硬一体化产品,有别于纯软件的产品形态。(以下名称都指高精地图盒子:定位盒子/MAP ECU/MAP BOX/HDLM...其中L:Localization M:Module)

    包含内容

    • 地图及相关应用:HD数据、AHP、定位、OTA...

    • 基础软件:系统、底层驱动、诊断...

    • 基础硬件:系统级芯片(SoC)、内存、存储、IMU(可选),保护壳体...

    • 网络及通讯接口:CAN/以太输入、以太输出、USB接口...

    方案特点

    任务分工清晰:车企能将以这种架构将功能拆解为小模块,分别提出产品要求进行管控,避免全黑盒方案无从下手。遇到交付风险时可以替换供应商。

    功能安全方面的考虑:芯片选型、硬件设计、网络安全、系统诊断等细节工作可以交给专业的供应商;地图质量、在线更新以及回传等功能安全层级存在不确定性、需要与AD ECU隔离开,以使AD ECU满足功能安全要求。

    便于高配低配等产品管理:可选用供应商的不同配置的产品。

    减轻域控制器的算力负担:便于寻找满足算力要求的功能安全硬件。

    5.2 集成在IHU内

    方案特点

    降低成本:不需要额外采购硬件模块。

    集成V2方案、降低不确定性:AHP V2大多在车机端,方案已跑通,所以将地图和V3采用相似的方式可以规避新架构的不确定性。

    车企内部原因容易推进:部分车企,高精地图业务规划导航地图部门,若自下而上推进盒子方案,对整体架构改动较大,很难推进。

    5.3 集成在域控制器内

    方案特点

    减少跨域通信对车载网络带宽的占用:用于感知的传感器大多与域控制器相连,如果将地图及定位放在域控制器,后端应用不需要跨域通信就可以直接或间接使用地图,减少对于车载网络带宽的占用。

    更适用于走自研路线及选用整体方案的车企:对于走自研路线的车企,以及选用单一方案商提供完整方案,没有必要将功能模块分开部署。

    6. 场景应用举例


    6.1 高精定位应用

    结合高精数据辅助进行横向定位及纵向定位。

    纵向定位多结合路牌obj、车道几何等相关信息,横向定位多结合车道线、护栏等相关信息。

    主动安全应用多结合传感器(毫米波雷达、摄像头)信息和地图数据进行匹配纠偏,从而提升定位精度。

    6.2 高速自动驾驶(HWP)

    功能激活

    驾驶环境主要依赖地图判断:(1)高速城快;(2)车道线清晰;(3)曲率坡度;(4)无引发报警或制动的物体或事件:包含动态道路环境;(5)非夜晚,天气状况良好(能见度200米以上)。

    实现功能

    以本车道巡航横向控制及异常场景本车道自主停车为例:

    • 车道类型:自动驾驶依靠车道类型来划分可行驶区域,如果类型错误会导致车辆行驶在非行驶区域,会给自车带来安全隐患;同时在自主安全停车的场景中,如果车道类型错误会直接导致自主安全停 车的的自主性和安全性。

    • 车道线类型:辅助摄像头进行车道线线型识别;和摄像头进行对比检查,进而进行车道保持。

    6.3 基于导航路线自动巡航

    功能激活

    工况环境依赖地图判断:

    • 道路等级:高速/城块。

    • PartOfcalculateRoute(导航路径标识)是否连续无断开。

    • 天气类型:晴天/小雨/阴天等天气状况下,允许功能激活。

    实现功能

    • 上/下JCT,会根据导航路径标识和车辆前方路网判断是否上/下JCT,并提前对变道匝道侧进行提醒。

    • 自动变道进入JCT/合入高速,会根据车道线线型辅助摄像头进行车道线线型识别,并和摄像头进行检测对比,线型的虚实判断车辆变道的时机。

    7. 未来演进


    一方面,考虑进一步融合AHP V2,V3的架构设计,更好的辅助自动驾驶。此外,作为数据闭环的一部分,丰富数据提供及回收能力等。

    展开全文
  • 地图数据播发与重构算法分析 自动驾驶域控制器在针对高精地图数据的集中式处理方式上主要是采用了紧耦合方式,其原理是将图商提供的地图原始数据EHP与AI芯片算法需要使用的数据(主要包含传感器感知数据、IMU数据、...

    作者 | Aimme

    出品 | 焉知

    下一代自动驾驶架构设计中已经倾向于以软件定义汽车的方式集合,主要涉及中央集中处理单元的方式会存在较大的改变。这一改变主要体现在外围传感单元将不再有单独的分布式处理单元进行数据前端处理,而更多的是仅仅作为感知单元将相应的感知数据集中到中央处理单元中进行综合处理。

    概述

    面向自动驾驶场景,高精度地图让自动驾驶车辆人性化地理解不断变化的现实环境,通过云端实时更新的多图层高精度地图数据,在自动驾驶车感知、定位、 规划、决策等模块起到重要作用。当前高精度地图的数据处理方式主要是放在自己单独的地图盒子里面进行前端处理,包含将原始高精地图的建图数据进行有效的分析分解形成自动驾驶域控制器可用的数据。

    9598ba6437b6bf6e0bed63d2f6bc6b14.png

    这一过程我们通常称之为EHP(Electronic Horizon Provider)数据到EHR(Electronic Horizon Reconstructor)数据的转化。EHP是ADASIS协会的一个标准,这个标准它主要是为了解决在CAN总线上各模块异构的问题,能够以CAN总线消息的方式,向以太网或者向CAN总线发送这个地图数据,告诉所ECU前方的情况是什么样。所以它也叫EHP,eHorizon也就是电子地平线。车辆通过EHP它就能够知道前方的路况怎么样,前方是不是有比较大的弯道,前方限速是不是有变化或者是不是车辆马上该出主路了等等。然后用EHP播发地图时相当于把一个地图的语言转成一个汽车的语言。而实际上,在自动驾驶中央域控制器单元中,还是无法直接利用高精地图地平线直接的播发EHP数据,而是需要在终端进行重构,重构后的Can数据才能真正的为自动驾驶系统所用。其中,该重构的过程包含了电子地平线数据的提取、存储、同步和格式转化等几个过程,这个详细的数据处理模块也正是放在高精度地图盒子里的。

    下一代自动驾驶系统高精定位架构

    为了适应下一代自动驾驶系统的开发需求,我们实际是把如上数据处理过程放入了中央控制单元进行。所有的开发算法需要由自动驾驶AI/SOC芯片或者MCU芯片来承担。由于将高精度地图原始数据直接输入至自动驾驶中央域控制器中,这就要求域控制器具备足够高的处理能力,这里我们通常考虑的指标包含了算力、带宽、利用率等几个因素。众所周知,MCU作为决策规划的高级别处理单元,对自动驾驶传感输入端的结果数据处理是够用的,但是对于以指数级别递增的原始传感数据,则显得无能为力。因此,我们在高精地图数据处理及转化中也通常会放到前端SOC芯片中,因为其算力、带宽及融合算法都是相对成熟的。如下图表示了一种高精地图集中式数据处理的结构图。

    a544849539c8769b115760904e7e3e2d.png

    本文将针对性讲解自动驾驶域控制器如何将前端EHP数据转化为后端可处理执行的EHR数据。

    地图数据播发与重构算法分析

    自动驾驶域控制器在针对高精地图数据的集中式处理方式上主要是采用了紧耦合方式,其原理是将图商提供的地图原始数据EHP与AI芯片算法需要使用的数据(主要包含传感器感知数据、IMU数据、轮速数据、RTK数据)进行有效融合,最终生成可以直接供自动驾驶域控制器逻辑处理单元MCU利用的高精度定位信息EHR。届时,数据定位与播发EHP,数据管理与重构EHR的任务都交给了中央域控制器内部处理单元进行,图商只是提供众包和生成的底图。就内部数据传输而言,以上EHP与EHR两者之间仍旧基于ADASIS V3协议进行通信,自动驾驶控制算法模块能够直接利用的仍旧是EHR信息,因此EHR仍旧需要解析以及向上层应用输出统一接口(一般为直接的CAN数据)。

    在我们针对EHP转EHR的软件设计中主要需要考虑如下一些设计原则,才能确保转换后的数据是准确无误的。

    1、传输可靠性

    地图数据传输过程中需要严格按照ADASIS V3标准进行封装,EHR在解析地图数据包EHP时,需要严格按照ADASIS V3接口标准进行,保障地图数据传输过程中的正确性。此外,EHR系统内部算法需采用统一的数据模型,确保内部运算的稳定性。一般的EHP与EHR在控制器内部通信协议中仍旧采用原始以太网的方式进行。

    2、算法适应性

    当前不同的图商在地图数据包的传输和内容封装上都有各自不同的标准和格式。如何设计有效的算法模型能够作为基准让所有的图商适配这套EHR软件系统是必须要考虑的问题。

    3、软件更新度

    自动驾驶对于高精定位的需求不会是一层不变的,往往会随着功能的迭代出现大幅的增加。软件的可更新度就是可以尽量确保当有新的需求需要更改融合定位软件时,无需更改软件逻辑架构,而只是在已有软件架构基础上做一定的参数标定即可。实现方法是可以弱化软件定位软件模块间的耦合度,对外封装单独的标定参数接口。

    有前文分析,EHR软件模块可看成是一种简单的TCP协议架构,主要包含物理层、数据链路层、数据过渡层以及接口封装层四个层级,且每个层级都是为上一个层级服务的。如下图所示是各个层级之间的关系图。

    7fd4dc90946f8374accf77f924283106.png

    如上图所示的地图数据转换模型中,从下至上的数据模型构建分别可以起到的作用如下:

    1、物理层:

    负责地图终端数据抽取,使用的网络协议主要为ethernet/SomeIp,抽取完成的数据应用ADASIS基本地图协议进行初级解析,解析完成的数据放入数据缓冲池,作为数据中间件的数据源。

    物理层模块主要包含的处理要素分为如下:

    bf9f27b24b93711c3dc8f1d8a1b39ee3.png

    2、数据链路层:

    由于原始地图数据提供的数据格式存在一定的差异,可能导致系统对于EHP到EHR的重构算法失败,因此数据链路层的主要任务是负责将原始地图所表示的EHP数据转换成上层系统所要求的数据格式,由此对数据过渡层提供统一的道路数据结构。

    这里需要注意物理层与数据链路层在进行模块数据处理(读取和写入)时,都采用了多线程的方式,因此各个处理模块之间是彼此独立不影响的。

    物理层模块主要包含的处理要素分为如下:

    df2ccd5d63d768a22f8d95b9a85c93ed.png

    3、数据过渡层:

    这是数据转换中最重要的单元,数据过渡层主要负责高精地图原始众包数据EHP到EHR数据的实际转化过程,同时,该过程融合了自车提供的导航数据信息,生成了基于实车导航数据的高精度地图信息。其中,导航地图(SD)完成道路级路径规划,输出路径地图特征信息,在 高精地图(HD)中完成道路路径匹配,并规划出相应的车道级路径。

    d06c62a3452fc80754d219607d241591.png

    此外,由于ADSIS V3协议采用了增量更新策略。即,在地图还原过程中需要引入多帧数据叠加才能确保还原效果,因此在数据过度层中设置高速数据Cache可以完美地保持住当前的输入数据帧,并确保连续性。包含优化数据接口封装层对数据访问效率,提升数据链路层对数据应用接口层对数据的读取效率。

    数据过渡层模块主要包含的处理要素分为如下:

    09059b35458c124395c75ef0a9d03666.png

    4、接口封装层:

    由于重构的EHR数据信息可能在真实地整车级数据协议上存在不适配的情况,这就要求在数据封装时进行接口适配和数据重整合。接口适配是需要使接口输出模块对应于输出协议,其重构的内容符合整车要求的信号协议(如Can协议)。

    接口封装层模块主要包含的处理要素分为如下:

    200f47dc59f1bd3e62d1e6815dc51846.png

    总结

    下一代自动驾驶系统架构已经倾向于完全集中式设计方案,即将所有原始传感器处理的数据纳入中央集中式处理,这一过程也涉及到将以前的高精地图盒子所承载的数据转化功能纳入自动驾驶域控制器中进行。这里我们需要明确地知道相关地图数据的提取、转化、缓冲以及封装等各个重要单元的工作步骤、原理及关键点。ADASISV3协议作为高级驾驶员辅助系统接口规范,其定义了“ADAS Horizon”的概念,作为一种手段,可以精确地传达部分道路网络及其特征。因此,在我们做数据转化过程中通常也都是基于ADASISV3协议进行的,并且,后续从上层角度出发实现数据转换包的开发。这其中所有的算法过程都需要后续嵌入到域控制器中。由此,我们在前期设计域控制器时,就需要从算力(包含AI算力以及逻辑算力)、带宽、DDR、eMMC、接口资源需求以及功能安全需求等几个方面充分考虑其是否能够完全满足高精定位系统的需求。

    展开全文
  • 1. 前言高精地图(High Definition Map)作为自动驾驶安全性不可或缺的一部分,能有效强化自动驾驶的感知能力和决策能力,提升自动驾驶的等级。对于自动驾驶来说,高精地图主要是...

    1. 前言

    高精地图(High Definition Map)作为自动驾驶安全性不可或缺的一部分,能有效强化自动驾驶的感知能力和决策能力,提升自动驾驶的等级。对于自动驾驶来说,高精地图主要是给机器用的,但是在制作和分析过程中依然需要人能够理解。本文将为大家简单介绍下,在过去的一段时间里高德高精地图业务团队,在WEB三维引擎技术方面的一些探索和实践,如何让复杂抽象的地理数据呈现在人们面前,满足其业务编辑和分析的诉求。

    高精地图主要是对道路交通层对象(如:车道地面标线、交通灯、交通牌、防护栏、杆等)的精细化表达,包含其几何位置和属性。由于对精度要求极高,它的制作主要还是依赖激光点云,通常都是海量的数据,一个路口的点云量就可能上亿,这就对渲染引擎的性能有较高要求,要满足对海量点云实时渲染拾取编辑

    起初,我们调研了市面上主流的Web三维地图引擎:Mapbox、Cesium、JS API、L7等,它们普遍对点云的加载处理能力支持不够,偏向于对抽象的点、线、面表达,精细化渲染能力不足,同时也满足不了作为编辑工具对复杂Topo关联关系的编辑能力。对于高德高精数据编辑分析的业务场景,需要更多的底层抽象能力建设。于是,我们在高精业务中开启了三维引擎eagle.gl的探索实践之路。

    先通过一个视频简单了解下目前高德三维引擎eagle.gl的能力,它实现了一套2/3D统一的地图数据编辑和可视化解决方案,具备很好的可扩展能力,目前已应用在高德高精地图数据生产、数据分析、以及新基建项目等业务。

    Figure 1.1 高精地图渲染引擎能力展示

    2. 引擎方案设计实现

    基于上面的分析,我们需要实现一套满足高德业务场景需求的数据制作引擎能力。为了不重复造轮子,最大程度利用已有的开源能力,我们最终选用Threejs当作渲染层框架依赖。基于该框架,在上层构建GIS可视化和复杂编辑能力,最终实现构建一套2/3D一体化渲染引擎。同时面向未来智慧城市、5G IOT方向,构建数据团队面向业界看齐的GIS 3D可视化能力。

    Figure 2.1 面向高精地图的2/3D一体化数字引擎

    整个引擎工作可以拆分为三个部分(点云地图、矢量地图、模型地图),前端团队整体工作需要围绕这三个点去展开。

    • 点云地图:对接多种点云资料格式的可视化(las/laz/bc/xbc/rds/bin),支持海量点云的实时渲染和编辑,满足主产线对点云资料的作业吸附能力。

    • 矢量地图:主要对接在线生产产线矢量化成图能力,通过数据快照、命令行编辑模式、空间数据索引等能力实现矢量化3D数据的增删改查能力。

    • 模型地图:主要面向数据成果应用层,进行数据预处理建模、实时建模编辑等,实现数据能力与高德客户端车道级渲染能力拉齐。

    3. 技术解题

    下面简单介绍一下各个核心模块能力。

    3.1 全幅面精细化渲染

    高精数据有着更精确更丰富的信息,支持更精细的数据渲染,更好地还原真实世界。

    Figure3.1.1 全幅面精细化渲染

    高精原始的产出数据是矢量化骨架数据,这一层数据是真实世界的数字化的点线面抽象,怎么根据原始的矢量数据进行模型化渲染展示呢?原始矢量数据是面向自动驾驶等机器使用,为了能够更好的核实数据质量,进行数据问题调查分析,我们需要把点线面矢量数据进行建模渲染,达到最终模型化精细化渲染效果,方便人工进行快速的问题核实。

    Figure3.1.2 原始的矢量化数据成果

    Figure3.1.3 端上实时数据建模精细化渲染成果


    为了支持精细化的渲染效果,eagle.gl引擎目前支持常用的点、线、面、体、文本、模型等多种可视化图层,并且通过配置化的方式实现了数据渲染实现。

    整个建模渲染分为以下核心模块流程, 主体流程是原始点线面矢量数据拉取,根据规则进行数据解析,数据建模处理,数据合并和Instance处理,数据渲染。其中工作量最大的部分在于数据预建模处理,因为原始数据的表达更加抽象,为了更加真实的还原世界,需要做很多的逻辑计算,例如斑马线/导流带数据表述中只有外边的边框轮廓,为了渲染的更真实,需要根据数据的长短边规格和交通路网规范,进行过程中实时建模生成。

    Figure3.1.4 端上渲染建模核心流程

    Figure.3.1.5 斑马线原始几何

    Figure.3.1.6 斑马线建模后几何

    通过同样的处理方式,我们就能够实现数百种高精数据定制化建模能力。但是好几百种数据规格如果通过硬编码的形式进行建模会导致整个代码结构的腐化和不可维护。因此我们在引擎层实现数据配置驱动地图图面样式展现的能力。

    Figure.3.1.7 多种高精数据建模成果表达

    对于style的定义我们区分为两种类型,一种是基本的feature要素对应的展现行为,这层style目前定义为静态的style配置;另外一种style是tile数据源驱动的styleSchema,这种style会定义动态的属性以及空间场景、灯光等共有属性定义。

    基础要素层对应的style我们主要分为以下几个类型:

    IBaseStyle | ILineStyle | ITextStyle | IPointStyl | IPolygonStyle | IModelStyle | ICustomStyle

    举个例子,我们用模型样式类ModelStyle,新增模型的样式定义,继承自IBaseStyle。

    mapView.addDataLayer({
      id: 'model', // 图层id,id为唯一标识,不能重复
      style: {
        type: 'model',
        resources: {
          type: 'gltf',
          base:
            '//cn-zhangjiakou-d.oss.aliyun-inc.com/fe-zone-daily/eagle.gl/examples/assets/theme/default/model/',
          files: ['ludeng_0.glb'],
        },
        translate: [0, 0, 0],
      },
      features: [
        {
          geometry: {
            type: 'Point',
            coordinates: [[116.46809296274459, 39.991664844795196, 0]],
          },
        },
      ],
    });
    

    属性

    置为灰色部分表示继承自BaseStyle属性

    ModelResource资源定义

    通过上面的API调用就可以实现模型数据的加载渲染。整个地图图面的全量要素表达都可以通过这种形式进行可视化描述。

    Figure.3.1.8 gltf模型如何通知配置样式进行定义加载

    3.2 多源异构数据一体化渲染

    对于HD的数据生产,点云和DEM高程分为对应采集和应用侧最核心的资料数据表达。作为引擎的特色能力,目前引擎实现了DEM高程渲染和多维度的点云着色能力,后续还会进行BIM/倾斜摄影等多源模型能力的接入,实现基于一张图进行宏观/微观一体化展示能力。

    3.2.1 DEM高程渲染

    Figure.3.2.1.1 DEM渲染效果DEMO

    高精的数据是XYZ的三维数据表达,但是我们很多传统的路网数据都是二维的,如何实现多源矢量数据的混合叠加,我们采用接入DEM高程方案,把无高程的传统背景数据/路网数据拔投影到海拔高度。原始输入的为tiff图像文件,通过利用数据预处理进行QMesh渲染矢量生成,主体数据处理流程如下:

    Figure.3.2.1.2 DEM数据渲染处理流程

    QMesh渲染方案是Cesium推荐的现在及未来使用的地形切片格式,与Heightmap格式相比较,具有更高的性能优势和更小的数据存储。基于性能更优的QMesh几何处理方案,实现全国山体地形实时加载,同时支持在worker中进行地形实时细分,可以基于低级别三角面动态计算渲染至21级地形。

    Figure.3.2.1.3 多源异构数据融合一体化渲染 - DEM高程方案

    3.2.2 点云地图

    点云作为高精特色的采集资料,与传统的照片资料相比,能够最大精度的还原真实世界的三维位置信息。为了实现真实世界的高度精细化描述,Web海量点云加载和渲染在我们日常工作中是非常重要的内容。

    点云渲染的最大问题是海量数据实时加载和动态拾取,eagle.gl实现了基于全球ECEF统一坐标索引下点云实时从网络加载,能够实现支持内存中同时800w以上海量点云LOD实时加载以及根据反射率/高度/MIX混合着色能力,渲染帧率可以保持在60fps,通过GpuPicker和Raycast混合拾取方案实现数据拾取交互的实时性。

    Figure.3.2.2.1 基于LOD点云的实时吸附编辑能力

    3.3 交互和扩展能力

    对于地图数据生产,数据可视化展示是第一步,如何在数据可视化展示的基础上进行上层复杂的GIS编辑能力建设是业务增值的重要一环。

    3.3.1 交互能力

    为了满足高精产线复杂的数据编辑诉求,拾取是编辑最底层的能力, 融合射线拾取与GPU拾取,能精准满足对海量数据20ms以内的快速拾取能力。

    Figure.3.3.1.1 海量数据拾取能力

    数据裁剪能力立交场景下,数据间的互相遮挡会对数据分析产生一定的影响,我们默认提供了数据裁剪能力以满足复杂场景的数据编辑&分析需求。

    Figure.3.3.1.2 数据实时裁剪

    3.3.2 插件体系

    引擎支持插件开发,用户可以根据自己的需求定制插件,目前我们提供了测距、编辑和框选三个插件供大家参考。同时,引擎还支持图层和控制器的定制化开发,满足多样的业务场景。

    Figure.3.3.2.1 测距插件体系

    3.4 其他能力 - 视觉&动效

    3.4.1 飞行

    平滑的飞行效果和基于滤镜的背景换肤能力。

    Figure.3.4.1.1 平滑的飞行效果/背景换肤

    3.4.2 光影

    模拟一天中的时间,实现光照阴影能力。

    Figure.3.4.2.1 光照阴影

    3.4.3 后处理

    深度定制扩展threejs,实现扩展的后处理渲染管线,并且抽象出通用三方后处理基础库,该库增加了引擎的后处理能力,用于提升可视化效果,为未来大屏项目做准备。

    Figure.3.4.3.1 后处理

    3.4.4 3D地球

    23D一体化,支持墨卡托投影和球投影的自由切换,增强可视化效果。

    Figure.3.4.4.1 2/3D一体化球展示

    4. 总结规划

    目前,eagle.gl引擎广泛应用到了高德高精团队的数据生产、数据分析和新基建项目能力建设当中。后续随着引擎的能力完备,一方面立足于高精业务实现面向自动驾驶的仿真平台搭建;另一方面通过真实世界数字化的刻画,实现多源异构数据(DEM/BIM/倾斜摄影等行业相关)融合渲染,最终达到数字孪生能力。

    以上的事情要最终实现任重道远,欢迎联系加入我们共同构建一个数字世界。欢迎对通用平台前端、在线编辑IDE、3D可视化方向感兴趣的小伙伴加入我们,一起做一些有意义的事情。投递简历到 gdtech@alibaba-inc,com, 邮件主题为: 姓名-技术方向-来自高德技术, 欢迎自荐或推荐。

    展开全文
  • 尤其是在车前方有大货车等遮挡物导致人眼和传感器无法看清前方车道线等信息的时候,高精地图数据可以告知车辆前方道路信息。 高精定位:自动驾驶的汽车要精确知道车在地图中的位置,前提就要依靠高精地图所提供的底...
  • 高精地图:激光雷达点云与高精地图融合 定位精度和更新频率是高精定位的显著特征。 精度与频率:根据推算,高精定位需要实现≤25cm 的定位精度,更新频率≥100Hz,因此需要在一般导航定位方案的基础上,与激光雷达...
  • 高精地图技术简介

    2021-11-23 14:20:45
    本文总结小鹏汽车HD Map算法专家刘德浩于11月3号在深蓝学院关于高精地图技术的公开课。在本次公开课程中,刘德浩博士围绕自动驾驶中高精地图的必要性,高精地图的定义,生产过程以及主要产商这几个话题展开扩展介绍...
  • 自动驾驶级别的不断提升,自动驾驶系统需要面对与处理的路况信息将越来越复杂,这不仅需要“感知、决策与执行”这套核心技术体系愈发坚实与强大,同时也需要其他技术体系的有力支撑,比如高精地图。 作为自动驾驶...
  • 2. 高精地图的采集与生产 高精地图的采集——传感器 高精地图的生产——计算模型,视觉制图 高精地图的格式规范 传感器 原理 备注 GPS 确定四颗或者更多卫星的位置并计算出GPS接收设备与每颗卫星之间的距离...
  • 导读高精地图区别于普通电子地图,一般来说高精地图的精度要求在亚米级甚至厘米级,其所含有的道路交通元素也更丰富和细致。这就造成高精地图数据生产过程中会遇到很多普通地图没有的问题和困难,更需...
  • 高精地图规范格式分类 NDS格式规范 Open DRIVE格式规范 原创: 阿波君 Apollo开发者社区1月31日 上周阿波君为大家详细介绍了「Apollo进阶课程⑦高精地图的采集与生产」。 高精地图采集过程中需要用到的...
  • 高精地图是近几年兴起的产物,国内外有关高精地图数据采集、生产、可视化表达等诸多研究取得了一系列的成果,该文主要就高精地图目前的研究进展进行了较为系统地总结与阐述。在此基础上提出了一种二维高精地图实现...
  • 高精地图要求的是厘米级精度,因此仅仅采用卫星是不够的,通常会选择使用采集车在道路上进行移动采集,然后通过线下处理把各种数据融合产生高精地图,其制作过程主要包括数据采集、数据处理、对象检测、手动验证及...
  • 【Baidu Apollo】2 高精地图

    千次阅读 热门讨论 2019-02-20 02:22:14
    Apollo的软件架构图 在进入这一节之前,先看一下百度Apollo的软件架构图 Apollo 2.0 软件架构 ...高精地图包含了大量的驾驶辅助信息,最重要的就是道路网络的三维描述。比如交叉路口的布局,交通标志牌的...
  • 高精地图总体介绍

    千次阅读 2021-12-03 11:00:31
    随着无人驾驶技术的兴起,高精地图也随之发展起来,可以说高精地图是为无人驾驶而生的,无人驾驶车辆的调度、感知、定位、决策、规划、控制等都会使用到高精地图
  • HD map: High Difinition Map ...地图数据格式和标准 主流的通用格式规范分NDS和OpenDRIVE NDS(Navigation Data Standard Association) 地图主要用的坐标系有两个:WGS-84和GCJ-02 WGS-84..
  • 高精地图制图

    千次阅读 2020-01-23 11:52:54
    目前高德已完成覆盖中国超过32万公里的高速及城快公路的高精地图数据采集,普通道路条件下横向误差和纵向误差在7厘米以内,高速/城市环路条件下横向误差6厘米,纵向误差5厘米以内。   2018年6月,凯迪拉克...
  • 点击上方“3D视觉工坊”,选择“星标”干货第一时间送达作者 |Aimee高精度地图对自动驾驶系统功能研发的影响已经越来越明显,整体上来讲主要包含但不仅限于提升车端感知性能、拓展自动驾驶新...
  • 本系列博客包括6个专栏,分别为:《自动驾驶技术概览》、《自动驾驶汽车平台技术基础》、《自动驾驶汽车定位技术》、《自动驾驶汽车...4.高精地图技术概述 4.1 高精地图综述 人们日常使用的用于车载导航、查询地理位置
  • 高精地图详解,高精地图与自动驾驶,高精地图是如何打造的,高精地图开发的挑战,持续赋能自动驾驶,构建自动驾驶,的高精度地图数据生态
  • 面向自动驾驶的高精地图生产技术及数据模型标准化探讨.pdf
  • 电子地图是智能交通系统的重要基础,相较于传统地图,基于激光点云技术的高精度导航地图通过对现实环境的扫描、分析处理及三维重建,可提供精度达 40 厘米内的道路路网信息,准确展示车道级、复杂路口、高架桥等交通...
  • 高精算法推动高精地图落地

    千次阅读 2020-09-28 07:00:00
    点击“蓝字”关注我们,选择“星标”获取最新文章本篇文章主要介绍云栖大会高德地图首席科学家任小枫:高精算法推动高精地图落地。演讲视频由以下网址得来,大家也可以观看:https://yunq...
  • 点云与高精地图

    2021-06-16 05:43:43
    点云与高精地图
  • 高精地图与自动驾驶的关系——主讲人:刘阳 百度自动驾驶事业部 研发工程师 1.高精地图是为自动驾驶而生的,L3/L4级别的自动驾驶必备。 2.什么是高精地图? 3.高精地图与其他模块的关系 4.高精地图的作用
  • 高精度地图对自动驾驶系统功能研发的影响已经越来越明显,整体上来讲主要包含但不仅限于提升车端感知性能、拓展自动驾驶新功能、动态建图等相关应用。具体体现在如下几个重要方面:如上所述提升车端感知...
  • 2020云栖大会于9月17日-18日在线上举行,阿里巴巴高德地图携手合作伙伴精心组织了“智慧出行”专场,为大家分享高德地图在打造基于DT+AI和全面上云架构下的新一代出行生活服务平台过程...
  • 高精地图文件数据存储格式定义_V1.0_20180412.docx
  • 高精地图文件数据存储格式定义-V1.0-20180412.docx

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,488
精华内容 995
关键字:

高精地图数据