路口区域路网数据生成方法及装置与流程

文档序号:17653876发布日期:2019-05-15 21:46阅读:344来源:国知局

本发明涉及地图数据生成方法,特别涉及一种适用于多种路口的路口区域路网数据生成方法及装置。



背景技术:

智能辅助驾驶将在未来五到十年内走进人们生活,因此需要高精度电子地图作为一种先验数据,结合车载传感器进行环境感知,提供自动驾驶的控制依据。尤其是在车载传感器感知距离范围外或者感知系统存在不足的场景内,厘米级的高精度电子地图数据对于自动驾驶规划控制显得更加重要。

由采集到的现实地物的传感器数据到生成电子地图的过程是电子地图产品生成过程中的重要环节。对于自动驾驶和智能辅助驾驶,地图数据的生成效率和地图数据的应用效率显得尤为重要,路径规划的更新时延也是地图性能的关键指标。在生成地图数据过程中要生成路网数据,表示道路之间、车道之间的通行关系。据相关行业协会的推荐标准,对于自动实时性的要求,路径规划时对路网数据的最低请求次数应大于2次/秒,即响应时延小于500ms。

路径规划时,需要遍历出发地对应的节点到目的地对应的节点之间所有的节点及路段(link),直到到达目的地对应的节点,以得到至少一条出发地到目的地的路径。因此,路径规划的时延与路网数据中的节点及link的数量相关。

在现实场景内,城市的路网中存在着一定量的多岔路口。而路口区域中没有标线等信息作为生成路口区域路网数据的有效依据。对于多岔路口,现有的遍历连接法、延长法会导致路口区域道路级别的路网数据中的路口节点和路口内link的数量激增,增大路径规划的时间,导致无法满足路径规划的时效性,并且增大了路网数据的大小。另外在路口区域中,路口内link的数量过多时,在进行空间定位的时候,无法经过简单计算把定位点匹配到某一路口内link上,需要扩展计算的复杂度以保证定位质量,但是会造成定位模块时延的增加。



技术实现要素:

本申请提供一种路口区域路网数据的生成方法及装置,可以满足路口区域路网数据的用于路径规划的时效性,降低路网数据的大小,提升路网数据请求的时延性能。

第一方面,本申请提供一种路口区域路网数据的生成方法,与所述路口区域连接有多条道路,所述方法包括:

获取所述多条道路中每条道路的道路link的数据,所述道路link包括进入link和退出link,所述道路link的数据包括组成所述道路link的点的坐标,具体可以包括组成道路link的端点和形状点的坐标;

例如对于五岔路口区域,获取该五岔路口连接的五条道路中每条道路的道路link的数据。每条道路至少有一条道路link,道路link中相对于某路口是进入该路口的link为进入link,相对于某路口是退出该路口的link为退出link。

路口区域路网数据包括路口节点的数据和路口内link的数据,根据所述多条道路中每条道路的道路link的数据计算所述路口区域的路口节点的数据和所述路口区域的路口内link的数据,所述路口节点的数据包括所述路口节点的坐标,所述路口内link的数据包括所述路口内link的端点的坐标,具体为:

计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标,所述交点的坐标为所述路口节点的坐标。其中,延长线指的是link在路口区域的延长线。考虑到不同国家的可能有不同的交通规则,包括左行规则和右行规则。对于左行规则,车辆在道路中行驶时靠道路的左侧行驶;对于右行规则,车辆在道路中行驶时靠道路的右侧行驶。对于右行规则,所述相邻道路为所述道路的逆时针相邻的道路;对于左行规则,所述相邻道路为所述道路的顺时针相邻的道路。顺次的两个所述路口节点为所述路口内link的端点。

对于时间复杂度为o((m+n)logn)的路径规划算法(m为路口内link的数量,n为路口节点的数量),计算生成的路口区域路网数据中的路口节点和路口内link数量较少,路口区域的路网数据所占空间较小,可以降低路口区域路网数据用于路径规划时的时间复杂度,从而提高路径规划的时效性和路网数据请求的时延性能。

基于第一方面,在一些实现方式中,所述计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标,包括:

按照所述每条道路的航向在所述路口区域的路口面内做所述每条道路的所述进入link和所述退出link的延长线,每条道路的航向为每条道路的通行中心点到路口面内同一点的方向。

换句话说,每条道路的进入link和退出link在路口面内的延长线的方向与道路的航向的方向一致。具体的,道路的进入link和退出link的延长线的方向角与所在道路的航向的方向角相同。每条道路的航向的起点为道路各自的通行中心点,终点为路口面内同一点。

路口区域的路口面是由路口区域的地物几何数据计算出的多边形,该多边形被视为一个质量均匀的多边形。通行中心点可以为每条道路的道路link合并线与路口面的交点,还可以为每条道路的道路link与路口面交点的中点。道路的航向可以为道路的通行中心点到路口面内同一点的射线。

按照航向在路口面内做道路link的延长线可以进一步解决在某些路口区域因为道路link直接延长线可能并不存在交点或者道路link的延长线之间的交点不在路口面内导致路口区域的路网生成失败的问题。提供了一种可以适用于多种路口的路口区域路网数据生成方法,对多种路口的自动化路网数据生成具有较好的适应性。

在其他实现方式中,所述计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标中,道路link的延长线可以是按照道路link原有的方向直接延长所得。

基于第一方面,在一些实现方式中,所述每条道路的航向为所述每条道路的通行中心点到所述路口面的几何重心的方向,在所述计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标之前,所述方法还包括:

获取所述路口区域的地物几何数据;路口区域的地物几何数据是位于路口区域的地物的几何数据,例如路口区域的红绿灯、道路边缘线、通行方向分隔物和停车线的边界或端点的坐标。

根据所述路口区域的地物几何数据计算所述路口区域的所述路口面并且计算所述路口面的所述几何重心的坐标;根据所述每条道路的道路link的数据计算所述每条道路的通行中心点的坐标。

路口面的几何重心为路口面对应的多边形的几何重心,将多边形三角剖分分割成多个三角形,多边形的几何重心由这些三角形的重心计算生成。当计算出的路口面的多边形是规则的图形(例如正方形和正三角形)时,该多边形的几何中心就是多边形的几何重心。

在其他实现方式中,所述每条道路的航向还可以为所述每条道路的通行中心点到所述路口面的几何重心附近某一点的方向。

基于第一方面,在一些实现方式中,当所述道路中存在主路和辅路时,所述道路的道路link为所述道路中所述主路的道路link,所述辅路的道路link的延长线为所述辅路的道路link延长至同一条道路中的所示主路的道路link的延长线上的路口节点。在不增加路口节点的基础上,考虑到主路辅路的道路类型,使得生成的路口区域的道路级路网数据更加精细准确。

第二方面,本申请提供一种路口区域路网数据的生成装置,与所述路口区域连接有多条道路。所述装置包括获取单元和路网计算单元:

所述获取单元用于获取所述多条道路中每条道路的道路link的数据,所述道路link包括进入link和退出link;所述道路link的数据包括组成所述道路link的点的坐标;

所述路网计算单元用于根据所述多条道路中每条道路的道路link的数据计算所述路口区域的路口节点的数据和所述路口区域的路口内link的数据,所述路口节点的数据包括所述路口节点的坐标,所述路口内link的数据包括所述路口内link的端点的坐标,具体用于:

计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标,所述交点的坐标为所述路口节点的坐标;对于右行规则,所述相邻道路为所述道路的逆时针相邻的道路;对于左行规则,所述相邻道路为所述道路的顺时针相邻的道路;

顺次的两个所述路口节点为所述路口内link的端点。

基于第二方面,在一些实现方式中,所述路网计算单元具体用于:

按照所述每条道路的航向在所述路口区域的路口面内做所述每条道路的所述进入link和所述退出link的延长线,所述每条道路的航向为所述每条道路的通行中心点到所述路口面内同一点的方向。

基于第二方面,在一些实现方式中,

所述获取单元还用于:获取所述路口区域的地物几何数据;

所述装置还包括航向计算单元,所述航向计算单元用于:根据所述路口区域的地物几何数据计算所述路口区域的所述路口面并且计算所述路口面的所述几何重心的坐标;根据所述每条道路的道路link的数据计算所述每条道路的通行中心点的坐标,所述每条道路的航向为所述每条道路的所述通行中心点到所述路口面的几何重心的方向。

基于第二方面,在一些实现方式中,当所述道路中存在主路和辅路时,所述道路的道路link为所述道路中所述主路的道路link,所述辅路的道路link的延长线为所述辅路的道路link延长至同一条道路中的所示主路的道路link的延长线上的路口节点。

第三方面,本申请提供一种计算机系统,所述计算机系统包括处理器和存储器,其中存储器用于存储计算机程序,所述处理器用于从该存储器中读取计算机程序并促使所述装置实现前述第一方面及第一方面任意一个实现方式所述的方法。

第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性的,所述计算机可读存储介质存储用于实现前述第一方面任意一项实现方式所述的方法的计算机程序。

第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现前述第一方面及任意一个实现方式所述的方法。

附图说明

图1为本发明实施例提供的现实世界行车网络示意图;

图2为本发明实施例提供的行车网络抽象出的道路路网示意图;

图3为本发明实施例提供的地理位置服务系统的框架;

图4为本发明实施例提供的地图数据生成装置的示意图;

图5为本发明实施例提供的道路3的示意图;

图6为本发明实施例提供的道路3的道路link示意图;

图7为本发明实施例提供的道路3的车道link示意图;

图8为本发明实施例提供的五岔路口的示意图;

图9为本发明实施例提供的遍历法建立的五岔路口区域的道路路网;

图10为本发明实施例提供的延长相交法建立的五岔路口区域的道路路网;

图11为本发明实施例提供的三岔路口示意图;

图12为本发明实施例提供的路口区域路网数据生成方法流程示意图;

图13为本发明实施例提供的五岔路口的路口区域的道路link示意图;

图14为本发明实施例提供的五岔路口的路口区域的路口面示意图;

图15为本发明实施例提供的五岔路口连接的各道路的通行中心点示意图;

图16为本发明实施例提供的五岔路口连接的各道路的航向及方向角示意图;

图17为本发明实施例提供的五岔路口区域的道路级的路网示意图;

图18为本发明实施例提供的五岔路口区域的道路级的路网示意图;

图19为本发明实施例提供的三岔路口区域的道路级的路网示意图;

图20为本发明实施例提供的叉积向量示意图;

图21为本发明实施例提供的五岔路口连接的各道路对应的车道link示意图;

图22为本发明实施例提供的五岔路口区域部分车道虚拟连接线的示意图;

图23为本发明实施例提供的二阶贝塞尔曲线的计算示意图;

图24为本发明实施例提供的一种计算机系统的逻辑结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。在本发明实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。

下面就本申请提到的一些关键术语进行解释:

地物:是指的是地面上各种有形物(如山川、森林、建筑物等)和无形物(如省、县界等)的总称。泛指地球表面上相对固定的物体。例如图5中的红绿灯501、停车线502、通行方向分隔物503(现实中可能为隔离带或者地面标线)、车道分隔线504及508、地面标识505、道路边缘线506和主辅路分隔物507都是地物。地物还可以为斑马线、高起标志物(例如限速、禁止信息)和防护栏等等。

道路:相邻两个路口之间机动车可以通行的通路,道路可以有单一通行方向或两个相反通行方向。如图1中所述的道路1-11。道路可以由一条或多条车道组成。道路可以分为主路和辅路,其中主路、辅路可以由至少一条车道组成。

车道:在道路中上供单一纵列车辆行驶的分隔区域,例如图5中的车道1-8。

路口:连通不同道路的区域。如图1所示,以路口1为例,路口1连通道路1-4。

行车网络:多条道路组成的网络结构,如图1所示,行车网络示意图,道路1-16组成的网络结构为行车网络,图1中的箭头表示该行车网络上每条道路的通行方向。

节点:link的端点或表示link之间连接关系的点。

路段(link):表示节点与节点之间通路的曲线型对象,用于代表道路或者车道,由位于link两端的节点和位于link上的若干形状点组成。link上可以存储数据,可以包括几何数据和拓扑数据。link上的几何数据为link上若干形状点的坐标,表示在坐标系中link的位置与形状;link上的拓扑数据为link的两端点的坐标,表示在坐标系中link的起始终止位置及两端点之间的拓扑关系。

形状点:可以表示道路、车道的形状,若干形状点连接组成表示曲线的折线。

道路link:现实道路抽象形成的一段直线或者一段可以表示曲线的折线,一条道路至少有一条道路link。对于具有单一通行方向的道路可以抽象成一条道路link;对于具有双向通行方向的道路,道路的正反方向间有通行方向分隔物(石墩、栅栏、绿地等或地面画有双线标志),车辆在单侧只能按照规定的单一通行方向行驶,在地图数据中可以将这种双向通行方向的道路抽象成两条道路link,因此每条道路link可以反应车辆在该道路上的通行方向。如图2中线ab和线cd是道路3的两条道路link。

车道link:对现实中连接两个路口的一段车道抽象形成的一段直线或者一段表示曲线的折线,一条车道可以对应一条车道link。每条车道link可以反应车辆在该车道上的通行方向。

进入link:对于某路口是进入该路口的link;例如图2所示,道路linkab相对于路口3是进入link。

退出link:对于某路口是退出该路口的link;例如图2所示,道路linkcd相对于路口3是退出link。

路网:现实的行车网络抽象出的有link和节点组成的网络结构。路网可以分为路段区域和路口区域。

道路路网:现实的行车网络抽象出的可以由道路link、路口内link和路口节点组成的网络结构。图2为图1所示行车网络抽象出的道路路网示意图。

车道路网:现实的行车网络抽象出的由车道link和车道虚拟连接线组成的网络结构。

路口内link:在路口节点之间的link。如图2所示,点a、c、e、f是路口1的路口节点,线ac、ce、ef、fa为路口内link。

车道虚拟连接线:位于路口内的连接两条车道link的线,如图21中虚线1102、1104、1106。

坐标:点或线在地图坐标系中的坐标,坐标值由经度值纬度值组成。

地图坐标系:将非平面坐标系的地理坐标系通过投影转换成的一个平面直角坐标系。在地图坐标系中,原点(0,0)定义在赤道和本初子午线的交点处;投影坐标系的x轴表示经度值,y轴表示纬度值。例如常用的地理坐标系包括wgs-84坐标系。地理坐标系:用经纬度表示地面点位的球面坐标系,以地心为该球面坐标系的原点。地理坐标系可以确定地球上任何一点的位置。首先将地球抽象成一个规则的逼近原始自然地球表面的椭球体,称为参考椭球体,然后在参考椭球体上定义一系列的经线和纬线构成经纬网,从而达到通过经纬度来描述地表点位的目的。需要说明的是经纬地理坐标系不是平面坐标系,因为度不是标准的长度单位,不可用其直接量测面积长度。

图1为现实世界行车网络的平面示意图,该行车网络中的所有路口都是形状规则的十字或丁字路口。道路可以有单一通行方向或双向通行方向。图1中所示区域内有道路1-11,其中道路5、6、8只有一个通行方向,其余道路都具有双向通行方向。图1所示行车网络抽象出的道路级的路网示意图如图2所示。图2中线ac、ce、ef、fa为路口内link,线ab、线cd为道路3的道路link,点a、c、e、f是路口1的路口节点。

本发明实施例提供的路口区域路网数据生成装置是地理位置服务系统100中的电子地图数据生成装置302的部分。图3为地理位置服务系统的框架,地理位置服务系统可以包括数据采集装置301、地图数据生成装置302、地图数据组织装置303和应用服务装置304。

数据采集装置301中的传感器可以通过对现实地物进行环境感知,采集现实道路中的车道分隔线、道路分隔线、停车线、路面标识(例如路面的拐弯标识)、高起标志物(例如限速、禁止信息)、隔离带、防护栏和红绿灯等地物在地图坐标系中的经纬度坐标数据。传感器可以包括激光雷达、毫米波雷达、摄像头、全球导航卫星系统(globalnavigationsatellitesystem,gnss)和惯性测量单元(inertialmeasurementunit,imu)其中的一个或多个设备。传感器采集的数据可以根据传感器类型保存在不同的数据库中,例如雷达数据库和图片数据库等。传感器可以配置在机动车、手机和无人机等可移动的终端设备上。数据采集装置301将传感器采集的数据进行标定配准,使不同传感器采集的数据融合,生成标定配准后的传感器数据。数据采集装置301通过接口将生成的传感器数据或者更新后的传感器数据发送给电子地图生成装置302。

地图数据生成装置302根据从数据采集装置301接收到的标定配准后的传感器数据生成地图数据,按照地图数据交换规格发送给地图数据组织装置303。地图数据生成装置302还可以根据数据采集装置301发送的更新的传感器数据生成的更新后的地图数据。

地图数据组织装置303可以用于对地图数据生成装置302发送的地图数据进行组织处理,例如对数据格网化、层次化以及紧凑化,并转化成二进制。地图数据组织装置303根据地图数据目标格式将处理后的地图数据发送给应用服务装置304。

应用服务装置304可以用于提供应用程序编程接口,例如路径规划(道路级、车道级的路径规划)、地图呈现服务、地图定位服务和地图业务服务的应用程序编程接口(applicationprogramminginterface,api)。

下面详细介绍地图数据生成装置302,图4为地图数据生成装置302的示意图。

地图数据生成装置302可以包括识别生成模块401、路段区域路网数据生成模块402和路口区域路网数据生成模块403。

识别与生成模块401用于根据数据采集装置301发送的标定配准后的传感器数据识别传感器数据中地物的语义信息和矢量特征,并生成地物几何数据,地物几何数据包括地物在地图坐标系中的位置、形状、大小,可以由一系列点的坐标组成,坐标值可以为地物的经度值和纬度值。

地物的语义信息即地物的属性,即地物是什么。地物的矢量特征表示地物的位置、形状、大小。以图1中的道路3为例,图5为道路3的示意图。道路3具有双向通行方向,且包括主路和辅路,主路有三条车道,辅路只有一条车道。道路3上的地物包括:红绿灯501、停车线502、通行方向分隔物503、车道分隔线504、路面标识505、道路边缘线506、主辅路分隔线507和车道分隔线508。

以停车线502为例,识别与生成模块401可以识别出停车线502的语义是停车线,它的矢量特征是长5米的线,并且计算出停车线502的地物几何数据,包括停车线502在地图坐标系上的坐标。

当识别与生成模块401识别出地物的语义信息是路口区域的地物时,向路口区域路网数据生成模块404发送路口区域路网数据生成请求。路口区域的地物可以为停车线、红绿灯和斑马线等可以表示路口区域的地物。

路段区域路网数据生成模块402根据识别与生成模块401提供的地物几何数据计算道路link的数据和车道link的数据。

道路link的数据可以包括:道路link上若干个形状点的坐标,即道路link的几何数据,表示道路link的位置与形状;道路link两端点的坐标,即道路link的拓扑数据,表示道路link的起始终止位置和道路link两端点的拓扑关系;道路link的id。

道路link可以由道路边缘线、通行方向分隔物和主辅路分隔线等地物的地物几何数据计算生成。如图6所示,l1-l4是道路3的道路link。l1、l4是辅路的道路link,l2、l3是主路的道路link。辅路的道路linkl1可以根据道路边缘线506和主辅路分隔线507的地物几何数据计算生成;主路的道路linkl2可以根据通行方向分隔物503和主辅路分隔线507的几何数据计算生成。若对于没有区分主路和辅路的道路,其道路link可以根据道路边缘线和通行方向分隔物的地物几何数据计算生成。

车道link数据可以包括:车道link上若干个形状点的坐标,即车道link的几何数据,表示车道link的位置与形状;车道link两端点的坐标,即车道link的拓扑数据,表示车道link的起始终止位置和车道link两端点的拓扑关系;车道link的id。

车道link可以由构成车道区域的地物的几何数据计算生成。如图7所示,l5是道路3中车道3的车道link。车道linkl5可以根据车道分隔线508和车道分隔线504的几何数据计算生成。

车道link数据还可以包括记录车道属性的字段,转向属性包括:左转车道、直行车道或右转车道以及组合车道。

车道link和道路link的计算方法有很多种,例如下述的线合并法是其中一种计算方法。

以图7中车道linkl5的计算为例,车道linkl5根据车道分隔线504、508的地物几何数据计算生成。假设车道分隔线504、508是一条直线,车道分隔线504、508的地物几何数据就是车道分隔线504、508的端点的坐标。假设车道分隔线504的起点坐标s1(xs1,ys2),终点坐标e1(xe1,ye2);车道分隔线508的起点坐标s2(xs2,ys2),终点坐标e2(xe2,ye2)。假设合并后的线段se为车道linkl6,则计算出的点s与点e的坐标就是车道linkl6两端点的坐标,即车道linkl6数据:

起点s

终点e

道路link数据和车道link数据还可以分别记录道路link和车道link的通行方向。

link可以由若干形状点组成,如p1,p2,p3,p4,…,pn。这p1→pn所定义的顺序就是记录形状点坐标数据的顺序,即画线方向,记录点坐标的顺序的所依据的规则称为画线规则,画线规则可以定义为由左至右、由下至上。

link数据中记录的link的通行方向是由画线方向来定义的。如果link数据中通行方向记录为正向,意味着link反应的车辆的通行方向与画线方向一致,即通行方向是从画线方向的第一个点到最后一个点。如果link数据中通行方向记录为反向,意味着link反应的车辆的通行方向与画线方向相反,即通行方向是从画线方向的最后一个点到第一个点。

以图6所示的道路linkl2为例。按照由左至右、由下至上的画线规则,道路linkl2的画线方向是由点a到点b,在图6中可以看做由左至右。而道路linkl2的通行方向在图6中可以看做是由右至左,与道路linkl2的画线方向相反。因此,道路linkl2的数据中通行方向记录为反向。道路linkl2数据可以为:点a坐标,点b坐标,通行方向:反向。

路段区域路网数据生成模块402还用于建立车道与道路的关系。具体来说,建立道路中车道link与道路link的关系,例如记录车道linkl5与道路linkl1-l4同属于道路3这种关联。路段区域路网数据生成模块402还用于建立道路link与路口区域的地物之间的关联。

至此,每条道路link的数据可以包括:按照画线方向顺序记录的道路link上的端点和形状点的坐标,道路link的通行方向(正向和/或反向),道路link的id。

同理可知,每条车道link的数据可以包括:按照画线方向顺序记录的车道link上的两端点和形状点的坐标,车道link的通行方向(正向和/或反向),车道link的id。

对于路口来说,道路link和车道link分别可以分为进入link和退出link。例如图7所示,车道linkl5对于路口1是进入link,对于路口3是退出link。当link的画线方向是进入路口时,若link的通行方向是正向,则该link对于路口是进入link;若link的通行方向是反向,则该link对于路口是退出link。

例如图6所示,道路linkl2相对于路口1是进入link,相对于路口3是退出link。在现实中,还存在这样的情况:一条道路只有道路边缘线,路面没有路面标识、车道分隔线等其他地物,计算机无法根据传感器采集的数据区分该道路的通行方向是单一还是双向。因此,该道路的通行方向可以被记录为双方向可以通行,该道路的对应的道路link对于同一路口可以既是进入link也是退出link。

对于路段区域的路网数据生成可以基于车道分隔线、道路边缘线等地物计算出道路link和车道link。然而对于路口区域,因为路口区域内部没有类似路段区域上车道分隔线、道路边缘线等地物,因此道路link之间在路口区域的连通关系需要通过构建路口内link和路口节点来实现,路口内link和路口节点可以用来表示道路与道路之间在路口区域内的连通;再在此基础上计算车道虚拟连接线来连接车道link,构建路口区域的车道级的路网拓扑关系,表示车道与车道之间在路口区域内的连通。

通过路口内link、路口节点连接的道路的进入link与退出link构成了道路级的路网拓扑,对应的数据即为道路路网的数据。道路路网数据可以包括路段区域的路网数据和路口区域的路网数据,路口区域的路网数据可以包括路口内link和路口节点的数据。

通过车道虚拟连接线连接车道的进入link和退出link构成了车道级的路网拓扑,路口区域的车道级别的路网数据包括车道虚拟连接线的数据。

对于规整、对称的十字路口,可以直接延长道路link构建路口区域的道路级路网拓扑,生成路口区域的道路级别的路网数据。然而对于具有多岔路口的复杂路口,路口内link和路口节点常用遍历法或延长相交法计算生成。以图8所示的五岔路口p为例,遍历法建立的路口区域的道路级别的路网示意图如图9所示,道路的进入link与其余道路的退出link连接,路口区域的路口节点设置在道路link的端点位置,路口节点和路口节点之间为路口内link;延长相交法建立的路口区域的道路级别的路网示意图如图10所示,直接延长道路link,任意一条道路的道路link与其余道路的所有道路link的交点为路口节点,路口节点和路口节点之间为路口内link。

对于时间复杂度为o((m+n)logn)的路径规划算法(m为路口内link的个数n为路口节点的个数),采用遍历法和延长相交法生成的路口节点数量n与路口内link的数量m过多,不仅会增大路径规划的时间,无法满足路径规划的时效性,还会导致路口区域的道路路网数据过大。另外,在路口区域中,路口内link数量过多会导致在使用电子地图数据在路口区域内进行空间定位的时候,无法经过简单计算将定位点匹配到某一路口内link上,需要扩展计算的复杂度以保证定位质量,因此造成定位模块时延的增加。

并且,对于不规则路口(如图11所示的三岔路口),采用延长相交法构建路口区域的道路级路网拓扑时,道路link的直接延长线可能并不存在交点,或者道路link的延长线之间的交点不在路口面内,因此导致路口区域的路网拓扑构建失败。对于这种现象,通常采用离线手工标注路口区域内道路link之间的连接关系。手工标注降低路网数据生成的效率,无法满足对于使用的高时效性要求。

本发明实施例提供的一种路口区域路网数据生成方法,可以构建简单的道路路网,生成的路口节点和路口内link的数量较少,满足路径规划的时效性,可以适用于多岔路口及不规则路口。本发明实施例提供的路口区域路网数据生成装置可以为地图数据生成装置302中的路口区域路网数据生成模块403。以图8所示的五岔路口p为例,描述五岔路口p的路口区域路网数据生成方法。方法流程图如图12所示,方法具体包括如下步骤:

五岔路口p连通道路a、b、c、d、e。每条道路都有双向的通行方向,每条道路都由6条车道组成。

步骤101:获取所述多条道路中每条道路的道路link的数据;

当识别生成模块401识别出路口地物的语义特征时,例如识别出图8中地物806的语义是红绿灯、识别地物804的语义是停车线时,向获取单元501发送路口区域路网数据生成请求。

获取单元501收到识别与生成模块401发送的路口区域路网数据生成请求后,从路段区域路网数据生成模块402获取路口区域的道路link数据。若五岔路口p连接的道路a、b、c、d、e都没有区分主路和辅路,则五岔路口p的路口区域的道路link示意图如图13所示。因为每条道路都具有双向通行方向,因此每条道路对应两条道路link。

考虑到不同国家的交通规则不同,在左行规则的国家,车辆在道路中行驶时靠道路左侧行驶;在右行规则的国家,车辆靠道路右侧行驶。

对于右行规则,图13中道路a的道路link808为对于五岔路口p的进入link,道路a的道路link809为对于五岔路口p的退出link;同理可知,道路link812、814、816、818为对于五岔路口p的进入link,道路link811、813、815、817为对于五岔路口p的退出link。以道路link808为例,道路link808的道路link数据包括:

按照画线方向记录的道路link808上端点和形状点的坐标;

道路link808的id;

道路link808的通行方向:反向;对于右行规则,道路link808是五岔路口p的进入link,通行方向在图13中为由上至下,而道路link808的画线方向依据画线规则是由下至上的,道路link808的通行方向与画线方向相反,因此,道路link808的通行方向记录为反向。

对于左行规则,图13中道路a的道路link808为对于五岔路口p的退出link,道路a的道路link809为对于五岔路口p的进入link;同理可知,道路link812、814、816、818为对于五岔路口p的退出link,道路link811、813、815、817为对于五岔路口p的进入link。以道路link808为例,道路link808的道路link数据包括:

按照画线方向记录的道路link808上端点和形状点的坐标;

道路link808的id;

道路link808的通行方向:正向;对于左行规则,道路link808是五岔路口p的退出link,通行方向在图13中为由下至上,而道路link808的画线方向依据画线规则是由下至上的,道路link808的通行方向与画线方向一致,因此,道路link808的通行方向记录为正向。

步骤102:获取所述路口区域的地物几何数据;

获取单元501收到识别与生成模块401发送的路口区域路网数据生成请求后,从识别与生成模块401获取路口区域地物的地物几何数据。对于如图8所示的五岔路口p,五岔路口p的路口区域地物的几何数据,例如图13路口区域的红绿灯806、道路边缘线801、通行方向分隔物803和停车线804的边界或端点的坐标。

步骤103:根据所述路口区域的地物几何数据计算所述路口区域的所述路口面并且计算所述路口面的所述几何重心的坐标;

航向计算单元502根据获取单元501获取的路口区域的地物几何数据计算出一个多边形,该多边形为路口面。图8所示的五岔路口p的路口区域的路口面示意图如图14所示,几何重心为点o。图14中所示的地物801-804、806是步骤1获取的五岔路口p路口区域的地物。根据路口区域的红绿灯806、道路边缘线801、通行方向分隔物803和停车线804的地物几何数据中上述地物的边界或端点的坐标计算出路口区域的路口面805。计算路口面805的几何重心点807。

计算路口面的几何重心,即计算代表路口面的多边形的几何重心,假设该多边形质量分布均匀,计算多边形的几何重心的方法具体为:

将多边形通过三角剖分分割成三角形1,2,3,4……,n。三角形1,2,3,4……,n各自的面积为σ1,σ2,σ3,σ4……,σn,各自对应的重心的坐标为g1(x1,y1),g2(x2,y2),g3(x3,y3),……,gn(xn,yn),重心是几何学上三角形的三条中线的相交点。

多边形的几何重心g的坐标为:

当计算出的路口面的多边形是规则的图形(例如正方形和正三角形)时,该多边形的几何中心就是多边形的几何重心。

步骤104:根据所述每条道路的道路link的数据计算所述每条道路的通行中心点的坐标;

根据道路的道路link数据计算该道路的通行中心点,提供了两种计算方法做示例,但不对通行中心点的计算方法做限制。图8所示的五岔路口p连接的各道路的通行中心点示意图如图15所示。图15中所示的道路link808、809、811-818是步骤101获取的五岔路口p路口区域的道路link。计算所得的道路a、b、c、d、e的通行中心点分别是点a、b、c、d、e。

方法一:以道路的道路link与路口面的交点求道路的通行中心点

道路link数据中包含道路link上若干形状点的坐标,可以求得一条道路的道路link1,2,3,4……n与路口面的交点坐标分别为a1(x1,y1),a2(x2,y2),a3(x3,y3),a4(x4,y4),……,an(xn,yn)。计算交点a1,a2,a3,a4,……,an(xn,yn)的中点a。则该道路的通行中心点a的坐标为:

以图15中的道路a的通行中心点a的计算为例,道路a的道路link808和道路link809与路口面805的交点坐标分别为a1(x1,y1),a2(x2,y2),则道路a的通行中心点a的坐标为:

同理可以分别计算出道路b、c、d、e的通行中心点b、c、d、e的坐标。

在其他实施例中,道路可能包括主路和辅路,对应分别有主路的道路link和辅路的道路link。计算该类型道路的通行中心点的方法是:按照上述方法计算道路中所有道路link与路口面的交点,再计算这些交点的中点为该道路的通行中心点。

方法二:计算道路的道路link的合并线,合并线与路口面的交点为道路的通行中心点。

道路link数据中包含道路link上若干形状点的坐标,可以求得一条道路的道路link1,2,3,4……n与路口面相交的最后一个折线线段的起点与终点的坐标,按照前述计算道路link时所用的线合并的方法计算n条折线线段的合并线的起点与终点的坐标,合并线与路口面的交点即为该道路的通行中心点。

以图15中的道路a的通行中心点a的计算为例,首先计算道路a的道路link808和道路link809的合并线810,计算出的合并线810与路口面805相交的点a即为道路a的通行中心点。同理可以分别计算出道路b、c、d、e的通行中心点b、c、d、e的坐标。

在其他实施例中,道路可能分为主路和辅路,对应分别有主路的道路link和辅路的道路link,则计算该类型道路的通行中心点的方法是:先按照线合并的方法计算道路中主路的道路link与辅路的道路link的合并线,在计算两条合并线的合并线,计算最终的合并线与路口面的交点为该道路的通行中心点。

将道路的通行中心点到路口面内同一点的射线定义为该道路的航向,具体的,每条道路的航向可以为每条道路的通行中心点到路口面几何重心点的射线。每条道路的航向还可以为每条道路的通行中心点到路口面几何重心点附近的射线。

航向的方向角定义为航向的射线与坐标系的x轴形成的锐角夹角。

图8所示的五岔路口p连接的各道路的航向及方向角如图16所示。图16中所示的道路link808、809、811-818是步骤1获取的五岔路口p路口区域的道路link。道路a的航向为ao,道路b、c、d、e的航向分别为bo、co、do、eo。航向ao的方向角为α,航向bo的方向角为β,航向co的方向角为γ,航向do的方向角为δ。

以道路a的航向的方向角α的计算过程为例,若道路a的通行中心点a的坐标为(x1,y1),路口面几何重心807坐标o(x2,y2),则可知道路a的航向的方向角α=arctan((y2-y1)/(x2-x1))。同理可分别计算道路b、c、d、e的航向的方向角。

步骤105:根据所述多条道路中每条道路的道路link的数据计算所述路口区域的路口节点的数据和所述路口区域的路口内link的数据;所述路口节点的数据包括所述路口节点的坐标,所述路口内link的数据包括所述路口内link的端点的坐标。

具体的,路网计算单元503计算所述每条道路的进入link的延长线与相邻道路的退出link的延长线的交点的坐标,所述交点的坐标为所述路口节点的坐标;对于右行规则,所述相邻道路为所述道路的逆时针相邻的道路;对于左行规则,所述相邻道路为所述道路的顺时针相邻的道路;

顺次的两个所述路口节点为所述路口内link的端点。两个路口节点之间构成路口内link,形成路口区域的道路级路网拓扑,建立了路口区域道路link之间的连接关系,可以反应路口区域道路与道路之间直行及左右转向。

具体的,路网计算单元503按照所述每条道路的航向在所述路口区域的路口面内做所述每条道路的所述进入link和所述退出link的延长线,所述每条道路的航向为所述每条道路的通行中心点到所述路口面的几何重心的方向。

将各个道路的道路link按各自道路的航向做路口面内的延长线。按照每条道路的航向延长每条道路的道路link,即每条道路的进入link和退出link的延长线的方向角等于该道路的航向的方向角。

如图17所示,图17为图8所示的五岔路口p区域的道路路网示意图。图17中所示的道路link808、809、811-818是步骤101获取的五岔路口p路口区域的道路link。点h、i、j、k、m为路口节点。路口内link为819-824。

对于右行规则,图17中道路a的道路link808为对于五岔路口p的进入link,道路a的道路link809为对于五岔路口p的退出link;同理可知,道路link812、814、816、818为对于五岔路口p的进入link,道路link811、813、815、817为对于五岔路口p的退出link。

对于左行规则,图17中道路a的道路link808为对于五岔路口p的退出link,道路a的道路link809为对于五岔路口p的进入link;同理可知,道路link812、814、816、818为对于五岔路口p的退出link,道路link811、813、815、817为对于五岔路口p的进入link。

以路口节点h的构建为例,介绍按照道路的航向延长道路link所得的路口节点的坐标的计算方法:

以右行规则为例,如图17中所示,道路a的进入link808在路口面805内的延长线与逆时针相邻的道路b的退出link813在路口面805的延长线交于点h,点h为路口节点。其中,道路a的进入link808在路口面805内的延长线是进入link808根据道路a的航向ao做的延长线,道路b的退出link813在路口面805的延长线是退出link813根据道路b的航向bo做的延长线。

道路a的进入link808与路口面805的交点a1为a1(p1,q1),道路a的航向ao的方向角为α;与道路a逆时针相邻的道路b的退出link811与路口面805的交点为b1(p2,q2),道路b的航向bo的方向角为β。道路a的进入link808按照道路a的航向ao在路口面805内做延长线,即以进入link808与路口面805的交点a1(p1,q1)为起始点做延长线,延长线的方向角为α。道路a的退出link811按照道路b的航向bo在路口面805内做延长线,即以退出link811与路口面805的交点b1(p2,q2)为起始点做延长线,延长线的方向角为β。

在本发明其他实施例中,还可以以进入link808和退出link811在路口区域的端点为各自延长线的起始点。

设道路a进入link808的延长线上的点h1(x1,y1),其中,y1=q1+(x1-p1)×tanα

设道路b退出link811的延长线上的点h2(x2,y2),其中,y2=q2+(x2-p2)×tanβ

设两延长线交点h的坐标为h(x,y),下列方程的解即为交点h的坐标:

按照上述方法可以依次计算出其他道路的进入link与逆时针相邻道路的退出link分别按照其对应的道路的航向在路口面805内的延长线的交点:道路b的进入link812的延长线与道路c的退出link813的延长线相交交点i的坐标;道路c的进入link814的延长线与道路d的退出link815的延长线相交交点j的坐标;道路d的进入link816的延长线与道路e的退出link817的延长线相交交点k的坐标;道路e的进入link819的延长线与道路a的退出link809的延长线相交交点m的坐标;最终得到路口节点h、i、j、k、m各自的坐标。

路口节点h成为道路link808、811的新的端点,路口节点h的坐标记录在道路link808、811的道路link数据中。同理,路口节点i、j、k、m分别成为各自连接的道路link的新的端点,路口节点i、j、k、m的坐标分别记录在各自连接的道路link的数据中。

顺次连接路口节点h、i、j、k、m,形成路口内link819-823,形成五岔路口p的道路路网。路口节点的坐标就是路口内link的端点的坐标,代表了路口内link的几何数据,表示了路口内link的位置;也代表了该路口内link的拓扑数据,表达路口内link两端点的连接关系。任意一个进入link可以通过路口节点或者通过路口节点及路口内link与任意一个退出link连接。该道路路网反应了道路与道路之间在路口区域直行、左右转向的通行。

基于由左至右、由下至上的画线规则,可知每条路口内link的画线方向。

以路口内link823为例,路口内link823的画线方向为对于右行规则,路口内link823通行方向是与画线方向相反,因此路口内link823的通行方向记录为反向;对于路口内link823,它的数据可以记录为:路口内link823的id,按照画线方向记录的点坐标(h点坐标,m点坐标),通行方向:反向。

对于左行规则,路口内link823通行方向是与画线方向一致,因此路口内link的通行方向记录为正向。对于路口内link823,它的数据可以记录为:路口内link823的id,按照画线方向记录的点坐标(m点坐标,h点坐标),通行方向:正向。

路口区域的路网数据可以包括与路口区域的路口节点的数据、路口内link的数据。

通过本发明实施例提供的路口区域路网数据生成方法,可以解决多岔路口自动化建立的路网数据过大、路口节点及路口内link过多的问题。对于多岔路口构建出的道路路网具有简单、高效的特点。基于本方案所生成的的路网数据,具有较少的路口节点及路口内link个数,使得路网数据用于路径规划时的计算时间减少、整个路网数据大小变小,路网数据请求时延等性能指标均有显著提升。

在本发明的其他实施例中,当所述道路中存在主路和辅路时,所述道路的道路link为所述道路中所述主路的道路link,所述辅路的道路link的延长线为所述辅路的道路link延长至同一条道路中的所示主路的道路link的延长线上的路口节点。道路包括为主路和辅路,对应分别有主路的道路link和辅路的道路link。路口节点是主路的道路link按照道路的航向所做的延长线相交生成的交点。生成路口节点后,连接辅路的道路link与路口节点。最后顺次连接路口节点形成路口内link。假设图8所示的五岔路口p连接的道路a、b、c、d、e若都具有主路和辅路,则对应的路口区域的道路级路网拓扑示意图如图18所示。道路link808、809、811-818是主路的道路link,道路link901-910是辅路的道路link。路口节点h、i、j、k、m分别成为各自连接的辅路的道路link的新的端点,路口节点h、i、j、k、m的坐标分别记录在各自连接的辅路的道路link的数据中。在不增加路口节点的基础上,考虑到主路辅路的道路类型,使得生成的道路级路网拓扑更加精细准确。

本发明实施例提供的路口区域路网数据生成方法,还适用如图11所示的不规则路口(三岔路口),该三岔路口按照本发明实施例提供的路口区域路网数据生成方法构建的道路路网如图19所示。三岔路口的路口面为1001,路口面的几何重心点1002,道路link1003-1008,道路a、b、c的通行中心点分别为点a、b、c,道路a、b、c的航向分别为ao、bo、co,相邻道路的道路link按照各自道路的航向所做的延长线的交点为路口节点h、i、j。形成的路口内link为1009-1011。按照本发明实施例提供的路口区域路网数据生成方法可以普世化的解决多岔路口、不规则路口这些异形路口的路网建立问题,有效解决路口区域路网的自动建立问题。

本发明实施例提供的路口区域路网数据生成方法还可以包括:

步骤106:计算路口区域车道虚拟连接线的数据。根据路口区域道路级别的路网数据生成车道级别的路网数据,具体可以包括:

s601:计算道路经过路口到另一道路的转向。

如图17所示,以计算右行规则下的道路d经过五岔路口p到道路b的转向为例:

右行规则下,按照道路link和路口内link的通行方向,车辆由道路d经过五岔路口p到道路b需要由道路link816进入路口区域,依次经过路口节点k、路口内link823、路口节点m、路口内link824、路口节点h,由道路link811退出路口区域。

右行规则下,逆时针方向为路口内link所代表的车辆通行方向,因此向量代表道路link819通行方向,向量对应道路link820通行方向,向量对应道路link821通行方向,向量对应道路link822通行方向,向量对应道路link823通行方向。

根据路口内link822和路口内link823各自对应的向量之间的叉积,可以判断道路d进入道路b的转向。

如图20所示,向量a到向量b的叉积写作a×b,θ表示向量a和b之间的角度,且0°≤θ≤180°。叉积向量a×b的方向根据右手定则确定,假设向量所处的坐标系满足右手定则,当右手的四指从向量a以不超过180°的转角转向向量b时,竖起的大拇指指向的是叉积向量a×b的方向。叉积向量a×b与向量a和b所处平面垂直的一个向量。若生成的叉积向量a×b的位于三维坐标系z轴的正半轴,则认为向量a到b之间是逆时针转向;的叉积向量a×b位于三维坐标系z轴的负半轴,则认为向量a到b之间是顺时针转向。

向量对应道路link822,向量对应道路link823。计算两路口内link对应的两向量的向量叉积得出向量到向量的转向为逆时针,即道路d经过路口左转进入道路b。

s602:根据车道与道路的关系获取路口区域每条道路的道路的车道link的数据。

根据车道与道路的关系,获取五岔路口p连接的各道路对应的车道link数据,以右行规则下的五岔路口p连接的各道路对应的车道link示意图如图21所示,车道link上的箭头表示车道link通行方向,其中车道link1101为道路d中对于五岔路口p的进入link。

s603:计算路口区域车道虚拟连接线;

上述步骤求得道路d进入道路b转向是左转,根据车道link数据中的车道转向属性可以判断出从道路d中的车道link1101是左转车道,可以根据二阶贝塞尔函数计算出连接道路b的车道link1101分别与道路b的车道link1103、1105、1107的车道虚拟连接线1102、1104、1106,图22所示为五岔路口p中部分车道虚拟连接线的示意图。

具体的,已知车道link1101端点a的坐标以及车道1103、1105、1107对应的端点b、c、d的坐标。以二阶贝塞尔曲线连接各自一条车道link的端点,计算出的曲线就是车道虚拟连接线。

以计算车道虚拟连接线1102为例,图23为二阶贝塞尔曲线的计算示意图,车道link1101端点a,车道link1103端点b,设置虚拟的辅助点p0。

由a至p0的连续点p1,描述一条线段;

由b至p0的连续点p2,描述一条线段;

由a至b的连续点p(t),描述一条二阶贝塞尔曲线。

p(t)=(1-t)2a+2t(1-t)p0+t2b,t∈[0,1]

p(t)代表的曲线就是车道虚拟连接线1102。

所述生成的路口区域车道级别的路网数据的步骤可以由路网计算单元503完成,也可以是由路口区域路网数据生成模块403中另一单元完成。

地图数据生成装置302生成的路网数据可以包括路口区域路网数据生成模块403生成的路口区域路网数据和路段区域路网数据生成模块402生成的车道link和道路link的数据。地图数据生成装置302还可以生成呈现地图数据和搜索地图数据或其他类型的地图数据。

请参考图24,为本发明实施例提供的一种计算机系统的逻辑结构示意图。该计算机系统1200包括:

处理单元1220,系统存储器1230,和系统总线1210。系统总线1210将包括系统存储器1230的各种系统元件与处理单元1220相耦合。系统总线1210可以是几种类型总线结构中的任意一种总线,这些总线可以包括存储器总线或存储器控制器,外围总线,和使用一种总线结构的局部总线。总线结构可以包括工业标准结构(industrystandardarchitecture,isa)总线,微通道结构(microchannelarchitecture,mca)总线,扩展isa(extended-isa)总线,视频电子标准协会(videoelectronicsstandardsassociation,vesa)局域总线,以及外围器件互联(peripheralcomponentinterconnect,pci)总线。

系统存储器1230包括易失性和非易失性存储器,:例如,只读存储器(rom)1231和随即存取存储器(ram)1232。基本输入/输出系统1233(bios)一般存储于rom1231中,包含着基本的例行程序,它有助于在管理节点中各元件之间的信息传输。ram1232一般包含着数据和/或程序模块,它可以被处理单元1220即时访问和/或立即操作,例如操作系统1234,应用程序1235,其他程序模块1236和程序数据1237。

计算机系统1200也可以包括其他可拆卸/非拆卸,易失性/非易失性的存储媒介。例如硬盘存储器1241,它可以是非拆卸和非易失性的可读写磁媒介。再例如外部存储器1251,它可以是可拆卸和非易失性的各类外部存储器,例如光盘、磁盘、闪存或者移动硬盘等;硬盘存储器1241一般是通过非拆卸存储接口(例如,接口1240:不可移动非易失性存储器接口)与系统总线1210相连接,外部存储器1251一般通过可拆卸存储接口(例如,接口1250可移动非易失性存储器接口)与系统总线1210相连接。硬盘存储器1241可以用于存储操作系统1242,应用程序1243,其它程序模块1244以及程序数据1245。需要说明的是,这些元件可以与操作系统1234,应用程序1235,其他程序模块1236,以及程序数据1237是相同的,也可以是不同的。

用户可以通过各类输入设备1261输入命令或信息以管理计算机系统1200。各种输入设备通常是通过用户输入接口1260与处理单元1220相连接,用户输入接口1260与系统总线1210相耦合,但也可以通过其他接口和系统总线1210相连接,例如,并行接口,或通用串行接口(usb)。显示设备1291也可以通过接口(例如,视频接口1290)与系统总线1210相连接。此外,该计算机系统1200也可以包括各类外围输出设备1282,外围输出设备1282可以通过输出接口1280等来连接。

前述任一实施例中的方法或者上一实施例中逻辑模块的功能可以通过存储在该算计系统1200的一种或多种存储媒介中的代码或者可读指令,并由处理单元1220读取所述代码或者可读指令从而得以实现。

处理单元1220可以为单核处理器或多核处理器。当处理单元1220为多核处理器时,前述实施例实现的方法可以运行在一个核上,也可以不同功能单元分布在不同的核上。处理单元1220还可以包括微处理器/协处理器等。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1