高精地图车道的三维可视化

2020-08-17 13:59苗新蕊牟雪曼
计算机与现代化 2020年8期
关键词:原始数据模拟器图层

张 骋,苗新蕊,牟雪曼

(1.浙江吉利汽车研究院有限公司,浙江 宁波 315336; 2.江苏联合职业技术学院南京分院,江苏 南京 210019)

0 引 言

模拟测试是智能驾驶技术的研发流程中一个不可或缺的环节。国外有些立法机构要求自动驾驶汽车上路测试之前,先证明在模拟环境中已通过相应能力测试[1]。模拟器是以输出被测系统全部输入信号,接收并分析被测系统输出数据为目标的专用工具。国际上技术最领先的Waymo公司,模拟自动驾驶测试总里程千倍于实际道路测试。他们认为:“一个好的、强大的模拟器源自于2点,其中一个是保真度”[2]。道路可视化环境是模拟器提供给被测系统的信号组成部分。传统的三维道路重建办法是对地图数据解码后,耗费大量的人力物力进行二次描绘[3],会产生人为的数据加工误差。使用激光雷达的高精度采样点作为原始数据,为精准还原空间场景提供了可能性,但误差也变得更不可忽视,导致了模拟器的保真度大打折扣。

提供测绘数据的地图服务商提供的可视化基本都是二维地图[4],近年来,也开始提供三维地图显示功能。但显示的是道路两侧的建筑物[5],而无法可视化对于模拟真实道路训练智能驾驶汽车至关重要的三维车道[6]。

为了在模拟器中实现三维地图车道的可视化,本文提出一套数据还原技术,自动化地进行地图车道数据的处理与三维绘制工作。要求在不对ESRI[7](Environmental Systems Research Institute)数据进行转译的情况下完成,保证了不造成原始数据信息的损失,同时大大提高了效率。

1 高精地图

国家测绘地理信息局2016年下发的《关于加强自动驾驶地图生产测试与应用管理的通知》中规定:“自动驾驶地图(高精地图)属于导航电子地图的新型种类和重要组成部分,其数据采集、编辑加工和生产制作必须由具有导航电子地图制作测绘资质的单位承担”。

所谓高精度地图[8],是相对于普通导航地图而言,后者导航定位精度误差在10 m~15 m,包含的地图要素也十分单一。而高精度地图精度相当高,误差在15 cm~20 cm,可以详细地标注出高速路上的具体车道、车道线的宽度和长短以及路灯位置,可以理解为把一个现实世界的道路完全矢量化成了地图。最重要的信息是道路网的精确三维表征,例如:交叉路口布局和路标位置。

地图服务商给车厂的原始数据一般由4个部分(安全辅助数据、道路交通设施、车道网数据、道路网数据)组成[9],以图层方式分层次组织,以ESRI格式存储在地理数据库中。图层数据结构如图1所示。

图1 图层结构示意图

1.1 道路网数据

道路网数据部分定义了道路基准线、道路基准线连接点、路口等,建立了高精度车道级道路和传统二维导航电子地图的关联关系。

1.2 车道网数据

车道网数据部分记录了车道级道路中心线坐标点,连接点处的曲率、车道宽、坡度等属性。所描述的车道精度达到厘米级分辨率,用这部分数据重建起来的道路,还原了真实的道路状况,也是可视化高清三维地图主要用到的数据。

1.3 其他图层

其他图层包括道路交通设施以及安全辅助数据这2类图层数据。路面标线、道路边界、交通标志的各种箭头、文字、立面标记、突起路标等,构成了交通安全设施,即有助于智能驾驶车辆系统功能实现的安全交通数据。

2 三维可视化技术方案

还原真实环境最好的办法是,模拟的道路环境与真实的驾驶道路环境使用同样的数据,也就是,真实车辆用的地图数据、被测软件用的地图数据和场景地图用的数据完全一致。可视化重建的技术方案如图2所示。

图2 绘制方案示意图

2.1 地图数据处理单元

地图数据处理单元包含4个模块,分别从地图图层中提取道路网的基本数据和车道网的基本数据和属性数据,形成待处理的数据结构。

原始数据采用经纬海拔WGS84(World Geodetic System 1984)坐标系定位[10]。为了能够更清晰地显示出小范围经纬度内部的细节信息,需要用米为单位的地心地固ECEF(Earth-Centered, Earth-Fixed)坐标[11]来转换以度为单位的WGS84坐标。

原始数据是离散且不均匀的,生成的模型可视化会出现折线而影响视觉效果,因此针对要求高视觉效果的场合,要在绘制之前提出为渲染模块对地图数据点做插值优化的处理方法。

2.2 地图绘制单元

地图绘制单元包含2个模块,道路数据起定位作用,可视化的是路缘以及点、线、面状的交通设施。车道面是地图中与车辆直接发生关系的部分,绘制车道面就是要按照详细数据全部还原成三维模型并且可视化。

三维建模的方法有很多,但是不用人工地从高精地图重建可视化的三维道路的方法尚不完善。利用专业的三维建模软件的API(Application Programming Interface)程序脚本做成一个工具,在不对ESRI数据进行编译的情况下,用程序对地图数据进行处理与三维绘制工作,将数据自动化地生成能够整合进模拟器的多边形网格模型。

2.3 地图模型导出单元

地图模型导出单元的功能主要是在用程序处理地图数据并绘制出车道面之后,为提高数据使用效率,进一步进行局部坐标分割,使模型使用便利性最大化。由于绘制地图时统一使用的是各个形状顶点对坐标原点的偏移量,实际上每个车道面模型的原点都重合在ECEF坐标系下的原点。为了导出的车道面模型能够拥有不同的本地坐标原点,需要对每个车道面模型进行坐标变换,以适应使用的需要。生成的三维网格模型分别为模拟器的物理模块和渲染模块所用。物理模块中,因车道面的几何形状对车身姿态有影响,为了取得准确的车身重心与车道表面的相对关系数据,模型保真不作处理。

3 方案的实现算法

3.1 生成车道

绘制三维车道,是把车道分解成三角平面的组合,沿着车道中心点向着一个方向逐点计算,由一个个图元连接而成。绘制算法如图3所示。

图3 算法示意图

图3中图元各顶点,C为车道中心点,L为左边界点,R为右边界点。地图原始数据库一般给出中心点坐标和车道截面几何形状的属性,如车道宽参数、边坡与水平面的夹角参数等。根据这些参数,可以计算出边界点的坐标。如图4所示。

在中心点C1作垂直于C1C2向量的车道截平面S,根据边坡夹角参数分别在S平面上作C1L1向量和C1R1向量,根据车道宽参数确定L1和R1的位置坐标点,逆时针方向画出三角平面。将车道级图层中定义的所有车道按照上述方法进行绘制,即可获得按照车道定义的所有路面。

图4 边界点坐标计算

3.2 程序的实现

建模工具选用开源软件Blender的API接口[12],使用Python脚本语言编写程序。首先绘制可视化地图的区域基本图层,然后逐个绘制车道面,最后导出可以整合进模拟器的格式的文件。程序流程图如图5所示。

图5 程序流程图

道路设施也可以按照车道绘制技术,从原始数据自动生成。有高度的点、线、面状设施,如灯杆、路缘、天桥等,也可以以三维来表现。

3.3 可视化渲染模块优化处理

由于ECEF坐标的数值太大,为了便于计算做坐标变换,先把ECEF坐标变换到本地坐标系。

应用Hermite曲线插值法[13]对地图原始数据的车道中心线进行等步长插值采样,使得采样点变得匀称,线条变得光滑。Hermite曲线插值方法很灵活,其基函数的形式有多种,这里选用一种比较简单的三次曲线。

插值基函数多项式为:

(1)

其中,s取值范围(0,1),在给定的2点中间插值。

车道中心线点集的属性中,除了坐标(x,y,z)还有道宽(w)和边坡(a),于是把中心线的采样点作为五维向量进行计算P(x,y,z,w,a)。准备优化的车道中心线点从起点段P0P1起,P0,P1,…,Pi-1,Pi,Pi+1,…,Pk至终点段Pk-1Pk逐段进行插值计算。

设分段Pi,Pi+1,则给定值端点及切线为:

终点段的Tk沿用Tk-1的值。

计算得到样条函数为:

P=h1×Pi-1+h2×Pi+h3×Ti-1+h4×Ti

(2)

用矩阵表示为:

(3)

为了达到匀称的目的,选取合适的s值使得整条路插值点步长相等,新采样的点集取代原始不均匀的中心线点集,开始进行车道面绘制。这样,绘制出的可视化地图将由光滑的曲线代替折线,使得视觉更美观。

3.4 坐标转换

WGS84坐标转为ECEF坐标可用公式(4):

(4)

式中,ECEF坐标为:X、Y、Z;纬度B、经度L、海拔H[14]。

导出模型时的坐标变换:

4 实用效果

4.1 通常的地图可视化方法

通常的仿真模拟器如Carsim、PreScan等,道路场景可视化的方式是,以编辑器为输入接口,导入OSM(Open Street Map)格式地图,再根据需求人工编辑,生成所需要的场景地图,如图6所示。

图6 PreScan导入OSM地图

由于OSM格式的数据结构特点,因此会存在一些问题:

1)OSM网格地图是一个区域地图,道路位置有的需要人工修正,而且难以准确表现道路细节。自动驾驶的测试与验证用的地图,不能局限于一个区域,主要是数百上千公里车道的完全仿真呈现。

2)高精地图的原始数据是ESRI格式,要转换为OSM格式,由于数据结构的限制,是有损转换。高精地图的厘米级车道是OSM数据在地球坐标下无法达到的精度。

4.2 效果比较

从图7中的测试曲线可以看出,本文制作的可视化地图与通常的地图绘制相较于模拟测试的效果。

(a) 通常的地图道路

(b) 道路的曲率

(c) 叠加对比图7 车道可视化效果

图7(a)是一段通常方式由人工参与制作的ENU(local Cartesian coordinates coordinate system)X-Y局部坐标系中的道路中心线,从右向左设为道路延伸方向。图7(b)是由高精地图数据生成的道路中心线曲率图,道路前进里程由左至右,为图1(a)的同一段道路。坐标U为道路前进里程,C为曲率。图7(c)为曲率差可观化,由(a)的曲率与(b)求差得到。将曲率差映射至道路切线空间后,将曲率差折算为m,并缩放104倍,得到图(c)。

使用高精度地图可视化的道路曲线,从宏观上看与人工制作重合。但将道路的前进方向法线平面的曲率绘制为曲线,可以看出高精度的三维道路几何信息对重建所带来的影响:道路的细节起伏、倾斜都被得到还原而引起道路表面曲率波动。这些细节在传统的人工制作流程中无法有效地进行还原。

车道面的三维可视化,能把地图服务商采集的车道级原始数据全部体现出来,明显提高了智能驾驶决策软件的模拟测试质量。而精细的点坐标,也更有助于车辆的定位。

有了三维地图可视化的模拟器,运行时车道面能够产生真实的信息,视觉效果也有提高,完全达到了预期结果。

5 结束语

1)绘制工作始终是在一个三维空间中进行的,不会出现二维与三维之间的格式转换,避免了数据的丢失。自动化流程因无人工参与,控制了人为数据处理的错误产生,测试场景的精确度得到了提高。

2)通常方法制作的道路场景,其表面大幅度降低了对自动驾驶开发中车辆运动控制模块和目标跟踪系统中对扰动的要求,容易导致工程师错误地高估系统的抗扰动能力,在仿真中无法发现未来路测可能遇到的潜在稳定性风险。

3)由于自动驾驶技术的要求是低于10 cm定位误差,实际高精地图车道已经做到了100 m范围内定位误差小于5 cm的精度。这样的精度,靠人工绘制需一天的工作量,而本技术数秒就可以完成。若是长距离道路的绘制,实际上是人工无法完成的任务。

4)国内的智能驾驶模拟测试技术还处在初步阶段,在可查的范围内,地图重建技术方面的研究成果较少。本技术方案在还原的效率和可视化的效果上,具有一定的前瞻性和技术领先性。

猜你喜欢
原始数据模拟器图层
GOLDEN OPPORTUNITY FOR CHINA-INDONESIA COOPERATION
了不起的安检模拟器
盲盒模拟器
划船模拟器
受特定变化趋势限制的传感器数据处理方法研究
解密照片合成利器图层混合模式
全新Mentor DRS360 平台借助集中式原始数据融合及直接实时传感技术实现5 级自动驾驶
跟我学添加真实的光照效果
动态飞行模拟器及其发展概述
国外建筑CAD图层标准发展现状与研究