文章目录
前言
GIS的概念
地理信息系统(GIS)是可以对地表(包括大气层)有关地理分布数据进行采集、存储、管理、运算、分析、可视化的信息系统。
GIS的数据源
GIS中包括2种数据:栅格数据 and 矢量数据:
- 栅格数据。 典型的基于域的数据
- 矢量数据。 基于对象的空间数据模型
数据源包括图形数据、遥感数据、测量数据(GPS等)、数字资料(统计数据、实验数据)、文字数据(调查报告)
ArcGIS概述
本篇的重头是ArcGIS。其提供了ArcGIS Desktop,为用户提供数据制作、空间数据编辑、空间分析与建模等功能。主要由ArcMap
、ArcCatalog
、ArcToolbox
、ArcGlobe
、ArcScene
、Model Builder
等模块构成:
-
ArcMap
:对数据进行编辑,即绘制地图、绘制各种路网及标记点、编辑要素字段。 -
ArcCatalog
:相当于资源管理器,用于创建原始数据,诸如要素数据集、要素类(图层)、网络数据集等。可对数据进行增删改。
用ArcGIS构建地图
基本原理
基于ArcGIS创建的地图由边(edge)
和 节点(junction)
两个基本部分组成。边和节点拓扑相连创建路段,如下:
创建网络有2种基本思路:
- 用向导制定要素类参与到网络中
- 先建一个空网络,再添加要素。
在ArcGIS中,道路可以分为一般道路和特殊道路:
- 一般道路:直道或曲率小的道路,可直接用直线段绘制。由于GPS数据量庞大,采用过多的GPS数据会增加地图绘制工作量。因此在一般道路的绘制过程中,对GPS数据以距离
d
等间隔采样,通常令d=5~10m
。一般道路的数据存储在ArcCatalog中,ArcGIS可以把采样点用直线段依次首尾顺序相连。同时,对十字路口、斑马线、红绿灯等特殊静态标志在ArcGIS中进行属性设置。一般道路绘制如下图
- 特殊道路:弯曲程度比较大的路段,例如路口转弯或匝道等。ArcGIS不支持曲线绘制,所以需要用到外部创建的一个新的数据库——特殊道路数据库,用于存储特殊道路段的数据。特殊道路的绘制同样需要原始GPS数据,但是会以距离
M
等间隔采样,且有M<d
。一般道路和特殊道路在地图中以特殊标志点(驶入标志和驶出标志)区分。ArcGIS中特殊道路也用直线段链接,如下图:
ArcGIS中道路数据一般就由ArcCatalog数据库和特殊道路数据库构成。
一般的路段都不是单车道,怎么标注呢? 假设当前车道信息存储在ID=0
的车道中,则其他车道可以该车道为基准命名。如下图,其他车道ID在L轴正方向上依次递增,在L轴负方向上依次递减。同时将道路信息(限速、停止线、信号灯位置等道路属性)分别标注。
梳理一下ArcGIS构建地图的流程:将GPS数据导入ArcGIS,根据道路弯曲程度将所有道路分为一般道路和特殊道路,分别进行路网绘制。创建ArcCatelog数据库和特殊道路数据库分别存储两类道路的几何信息。之后,对其他道路信息进行标注,例如车道ID、交通灯、人行道、关键静态障碍物。
具体实现步骤:
1. 原始GPS导入Excel
GPS信息如下:
我们要从大量的GPS数据中心获取关键信息,并对数据间隔做规划。将GPS数据导入Excel:
其中$GPFPD
是差分gps公司提供的一种文本输出格式。$GTIMU
是IMU数据
所谓关键信息,主要是提取与$GPFPD
后面G栏和H栏的数据,分别是纬度和经度信息。提取完后将数据导出为.xls
后缀文件。
2. 将Excel数据导入mxd文件
将上面处理的数据导入ArcGIS,步骤如下:图层->添加数据->选中test.mdb,单击“”添加“-> 选中excel文件,单击“添加”。
3. 显示采集数据点
打开已经建好的test.mxd
数据库文件,继续选中图层,右击,选择添加数据,找到已保存好的GPS数据的xls
文件,选中后单击添加。其中X轴信息即经度,在xls
文件的第8列,所以F8为经度、F7为纬度。
选中sheet1,右击,选择显示XY数据,这样地图信息就会显示出来。
4.绘制道路
选择“路要素”,右击,选择“编辑要素”->“开始编辑”
选中操作界面右边道路后,开始从起点到终点画路径。每次只能画一条线,线段之间必须首尾相连。特殊路段尽量用线段近似拟合曲线。绘制过程中可以把GPS点隐藏。
5.字段表编辑
选中元素类,右击选择打开属性表,出现以下界面
在表中可以编辑各个属性,这些属性为决策规划层提供道路信息。图中的“111”代表主干道,“10”代表是辅道。
6.特殊路段特殊化处理
在从一般道路进入特殊道路时,需要在地图中做一个标记。例如下图,用标志点对特殊路段的起始位置进行标记。
标记完以后,需要在属性列表中对标记属性进行编辑,定义标志位以指示属于哪个特殊路段。例如,可以设定尾号11作为转弯入口,尾号12位出口,14是终点信号。
点标记完后,需要截取特殊路段的入口和出口之间的GPS点,人工筛选后导出特殊道路数据。
7.重新构建网络数据表格
打开ArcCatalog,打开前面编辑的数据要素集,选中网络数据集,右击构建,就可以完成地图创建。
整个地图创建流程如下
基于GIS的Pathfinding
坐标变换
ArcGIS支持两种网络分析:有向网络分析和无向网络分析。自动驾驶领域一般是采用有向网络。ArcGIS可以根据创建好的全局地图,以车辆当前位置为起点,目的地为终点,通过ArcGIS网络分析,在路网中获得最优的全局路径,包括边、节点经纬度坐标、车道编号等一系列道路属性,这些信息均来自先前创建的2个数据库。
ArcGIS网络分析输出的全局最优路径坐标点是在WGS84
坐标系下。
WGS84坐标系:国际通用坐标系,坐标原点为地球质心,Z轴指向地球极方向,X轴指向零子午面和赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系。
要将坐标点用于自动驾驶,需要将WGS84坐标
转换到地理坐标系
,然后转到全局坐标系
地理坐标系:本初子午线与赤道交点为原点,东方向为X轴,北方向为Y轴,天为Z轴。
WGS84坐标
—> 地理坐标系
:地理坐标系
—> 以地理坐标系中某一点为原点的“全局坐标系”
:
全局路径插值
由ArcGIS网络分析得到的最优路径是由地图的节点构成,间隔比较大,精度无法满足局部路径规划需求。所以实际还需要用三次样条曲线对全局路径点进行插值。
地图创建与全局规划仿真案例
首先,将高精电子地图(中国株洲市某道路地图)导入ArcGIS,建立路网结构。
路网结构包括了坡道、若干车道。对他们分别建立相应地理属性,如道路类型、单向道路、道路长度等:
- 在构建好的全局地图中,设置一个起点和目的地,基于ArcGIS网络分析,可快速找到一条全局最短路径(见下图a)的粗线)。
- b)c)d)是几段局部放大图,可以看到规划的细节。从规划结果可以看出,基于ArcGIS的全局路径规划考虑了创建地图的属性信息,如道路规定的行驶方向和路口。
参考文献:
[1] 余伶俐等.《智能驾驶技术:路径规划与导航控制》