一种车辆导航方法

文档序号:5947983阅读:357来源:国知局
专利名称:一种车辆导航方法
技术领域
本发明公开了一种导航方法,尤其涉及一种车辆导航方法,属于通信技术领域。
背景技术
智能交通导航系统是借助电子地图为驾驶员提供车辆的位置、速度、方向和周围地理环境等信息,以指导驾驶员安全、准确、快速的到达目的地。目前中国的导航系统在车辆行驶过程中能提供转向服务,但是一般只能根据导航路线,和GPS信息获取当前车所在的位置、道路名称,下一条道路的名称和转向类型,计算出离下一个路口的距离,在到达交叉路口前的1000m、500m、200m,提供比较简单的转向语音提示,除了在急转弯处有可能有路标提示外,在车辆的弯道行驶和转弯处,没法提供更多转弯的相应的安全驾驶信息,从而严重影响驾驶员的安全驾驶。针对此问题,而本发明能提取任意一条道路上的所有弯道数据,和交叉路口转向角度比较大的转向数据,所有的这些弯道可以进入到信息提醒当中,为安全驾驶提供更好的信息,解决了当前道路,尤其是山区道路,由于不熟悉路型导致的驾驶安全问题。

发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种车辆导航方法,可以提供全国路网的弯道信息,对车辆进行准确的导航,提高驾驶安全性。本发明的技术方案为一种车辆导航方法,其步骤为I)分区读取每一道路的基本数据和属性数据,将同一区域的道路基本数据存入一列表Cl中,道路端点信息、标识符和道路属性数据存入一列表C2中;2)对于每一区域,进行a)处理a)将列表Cl中每一道路的点串数据进行前后点连线并计算连线与正北方向夹角的矢量角度,得到一矢量角度数组;b)根据所述矢量角度数组计算每一道路的弯道曲线段及曲率,并保存满足设定条件的弯道曲线段的具体道路数据;c)根据列表C2中的数据,计算任意两道路的端点之间的距离,取距离最小值,根据道路类型判断两道路是否为相交道路;如果是,则计算该相交道路交叉路口的曲率,并保存满足设定条件的交叉路口的具体道路数据;3)将所有区域中步骤b)、c)保存的数据分别写入一文件中并建立索引;4)根据当前输入范围框位置,得出所在区域,根据步骤3)所建索引读取该所在区域道路的曲率数据,并将其叠加到当前输入范围框地图上,进行弯道信息提示导航。所述步骤c)中,计算该相交道路交叉路口的曲率的方法为I)取出列表C2中两条道路Rl、R2的数据;2)计算两道路Rl、R2的首首端点、首尾端点、尾首端点、尾尾端点之间的距离,取最小距离Cmin,如果Cmin〈dmin,则判断两道路Rl、R2为相交,进行步骤3),否则进行步骤
4);其中,dmin为道路Rl、R2道路等级相交容许的最大距离差,对应的两端点为相交端点;3)分别取出每一相交端点邻近的η个道路点,连成一条新的包括2n个点的交叉道路连线,计算出该交叉道路连线的弯道曲线段及曲率,并保存满足设定条件的交叉道路路段弯道曲线段的具体道路数据;4)判断循环是否结束,如果未结束,则计算另外两条道路,重复步骤2)和3),直到该区域任两条道路均计算完成 。所述具体道路数据包括相交道路的名称、交叉道路弧线段的点串个数和具体位置、属性数据。所述设定条件为曲率在设定的范围内或者相邻角度变化大于90°。所述弯道曲线段及曲率的计算方法为11)根据所述矢量角度数组,确定前两个线段的角度变化趋势,并将其作为基准变化趋势,判断当前线段角度是否为终点,如果为终点则弧线段已结束,进行步骤12),如果当前线段角度与前一个线段的角度的变化趋势和基准变化趋势一致,则继续下一个线段的计算,直到变化趋势和基准变化趋势相反时,该弧线段结束;12)针对于当前计算出的弧线段,计算该弧线的总的变化角度和长度比值,计算出该弧线段的曲率,并保存满足设定条件的弯道曲线段的具体道路数据;13)以当前结束点为起点计算,重复步骤11)、12),直到该条道路的弯道曲线结束为止。所述将所有区域中步骤b)、c)保存的数据分别写入一文件中并建立索引的方法为I)将所有区域中步骤b)单条道路弯道曲率计算结果根据行政区排序,同时建立行政区索引数据写入一索引文件中,每条道路曲率数据的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置;2)将所有区域中步骤c)交叉路口曲率计算结果根据行政区排序,同时建立行政区索引数据,写入一索引文件中,每条道路的交叉路口的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置。所述根据步骤3)所建索引读取该所在区域道路的曲率数据,并将其叠加到当前输入范围框地图上,进行弯道信息提示导航的方法为根据坐标转换,把读取的曲率数据叠加到当前输入范围框地图上,并标注曲率半径数值;同时根据GPS的位置得出道路的基本信息,根据当前导航路线,计算出前方的弯道或转向,进行距离和语音提示。与现有技术相比,本发明的积极效果为I、能提取任意道路上的所有弯道数据,这是当前的导航道路数据中缺乏的;2、能提取交叉路口所有转向的弯道信息;3、能在地图上显示出所在区域的所有具有一定危险性的道路弯道,和交叉路口转向;同时能提供转向具体角度和曲率大小等作为专业领域的应用。4、在行驶过程中在进入弯道区域前进行语音提示,其中包含弯道所在的道路名称,距离,弯道转向的角度,和曲率半径大小等,增强警示作用。


图I、本发明方法主流程图2、数据读取方法流程图;图3、单条道路的弯道曲率计算流程图;图4、交叉路口的曲率计算方法流程图;图5、导航应用流程图。
具体实施例方式本发明的整个系统流程图如图I所示,具体分为四部分读取数 据、单条道路的弯道曲率计算、交叉路口的曲率计算、写文件。第一部分读取数据读取数据方法流程如图2所示,初始化数据服务,确定excel原始道路数据在特定的路径下是否存在,即数据源是否存在;从excel原始道路数据中根据区域来读取数据,每个区域中的道路都有自己独一无二的编号,根据编号读出道路的基本数据(如道路的点串、点个数、道路名称)和属性(道路类型,道路等级等)。同时把一个区域的道路基本数据输入存入一个列表Cl中,把基本数据中的道路端点信息、标识符和道路属性数据存入另一个列表C2中,这样有便于下一步的计算和排序,能提高计算的效率,待下一步计算。第二部分单条道路的弯道曲率计算单条道路的弯道曲率计算方法流程如图3所示,针对列表Cl中的一条道路,计算该道路的点串数据进行前后点连线与正北方向夹角的矢量角度,得到一矢量角度数组,根据该矢量角度数组计算该道路角度变化的趋势和方向,得出该道路的弯道曲线段,并对这些弯道进行相应的曲率计算,保存满足设定条件的弯道曲线段的具体道路数据和其属性数据。具体步骤如下I、判断当前道路点串的数量为多少,如果点数大于2则进行第2步计算,否则结束本条道路计算。2、进行前后点连线,成为矢量线段,分别对这些线段进行与正北方向夹角的矢量计算,得出当前的角度,放入一个角度列表中,直到所有前后连线矢量线段计算结束,在该计算的过程中抛除掉重复点。3、根据矢量角度数组,对当前角度列表(即矢量角度数组)中的前两个线段的角度进行变化趋势判断,确定当前点的弧度变化趋势,以前两个线段角度的变化为基准变化趋势,判断当前线段角度是否为终点,如果为终点则弧线段已结束进行步骤4的计算,不为终点若当前线段角度与前一个线段的角度的变化趋势和基准的变化是一致的,则认为当前线段是在同一个弧线段里,同时计算相邻角度的变化值是否大于90度,如果是,标记存在相邻角度变化差大于90度,继续下一个计算,直到变化趋势和基准变化相反时,该弧线段结束。4、针对于当前计算出的弧线段,计算该弧线的总的变化角度和长度比值,计算出该弧线的近似曲率,判断该曲率是否在设定的所需范围内或者相邻角度变化差是否存在大于90度,保存弯道弧线段的具体道路数据(道路名称、该弧线段的点串个数和具体位置)和其属性数据(该弧线段的曲率半径的大小和范围框)写入文件中同时保存在结果数组I中。5、以当前结束点为起点计算,重复上一个步骤3的计算,直到该条道路的弯道曲线结束为止。
第三部分交叉路口的曲率计算交叉路口的曲率计算方法流程如图4所示,针对于某个区域,读出该区域内所有的道路的端点数据C2,并进行两两的道路的端点距离计算,取最小值,根据道路类型判断是否为相交道路,如果是,则计算相交端点附近的该两条道路的点串连线的矢量角度和曲线长度,计算该转向路口的曲率数据,得出需要的弯道曲线段的具体道路数据和其属性数据。具体的步骤为I、取出某个区域所有道路的端点数据C2,取出最前两条道路数据。2、两两道路相交计算,计算四种相交(首首相交、首尾相交、尾首相交、尾尾相交)的可能性端点之间的距离,最小距离(Cmin)的两个端点为最有可能相交的两个点,根据道路属性数据的道路等级判断最小距离对应的两个点是否为相交(CmirKdmin),其中dmin为该道路等级下相交的容许的最大距离差,如果相交进行下一步计算,如果不相交,则进入步骤4。 3、取出相交两条道路的所有道路数据,取出相交两端点附近η个相邻的道路点(相交包括上述四种情况,对于道路首端点,取出首端点后续的η个道路点;对于道路尾端点,取出尾端点前面的η个道路点),连成一条新的2η个点的道路数据,根据计算单条道路数据曲率的方法,计算出变化的角度差和距离,得出曲率,判断是否在所需范围内,保存该交叉路段的具体道路数据(相交道路的名称、该弧线段的点串个数和具体位置)和其属性数据(该弧线段的曲率半径的大小和范围框)写入文件中同时保存在结果数组2中。4、判断循环是否结束,未结束循环进入下两条道路的计算,重复步骤2和3,直到该区域计算完成。第四部分写文件分别对单条道路的弯道曲率计算和交叉路口的曲率计算得出的数据根据行政区进行索引并写入相应的文件。具体的步骤如下I、对所有单条道路的曲率计算结果根据行政区排序,同时建立行政区索引数据(索引数据里面包含了道路的基本数据),写入一索引文件中,每条道路曲率数据的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置。2、对所有交叉路口的曲率计算结果根据行政区排序,同时建立行政区索引数据,写入一索引文件中,每条道路的交叉路口的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置。第五部分导航应用导航应用的流程如图5所示,初始化曲率的数据文件,读取单条道路曲率数据和交叉路口曲率数据的索引,通过输入范围框为位置,得出所在行政区,读取该行政区的索引数据,判断是否在该范围中,根据索引取出完整的曲率数据。把曲率的数据叠加到地图上,同时根据当前GPS的位置和导航信息获取道路信息的出当前道路上的所在的弯道,进行计算和语音提示。具体的步骤为I、初始化曲率数据,判断在特定的路径下是否存在完整可用的曲率数据文件;读取单条道路曲率数据和交叉路口曲率数据的索引,保存在特定的数组中。2、传入所需当前需要数据的地理范围框,分别左上角和右下角的地理坐标;根据范围框的坐标计算出所覆盖的行政区;根据行政区获取其索引数据。
3、根据索引数据和范围框,判断车辆当前位置是否范围框里面,如果在,则根据当前索引数据,得出该范围框的所有曲率数据。
4、根据坐标转换,把曲线叠加到地图上,同时标注上曲率半径数值;同时根据GPS的位置根据道路匹配的算法得出道路的基本信息,根据当前导航路线,计算出前方的比较危险的弯道和转向,进行距离和语音提示,达到同时视觉和听觉的安全警示效果。
权利要求
1.一种车辆导航方法,其步骤为 1)分区读取每一道路的基本数据和属性数据,将同一区域的道路基本数据存入一列表Cl中,道路端点信息、标识符和道路属性数据存入一列表C2中; 2)对于每一区域,进行a)^c)处理 a)将列表Cl中每一道路的点串数据进行前后点连线并计算连线与正北方向夹角的矢量角度,得到一矢量角度数组; b)根据所述矢量角度数组计算每一道路的弯道曲线段及曲率,并保存满足设定条件的弯道曲线段的具体道路数据; c)根据列表C2中的数据,计算任意两道路的端点之间的距离,取距离最小值,根据道路类型判断两道路是否为相交道路;如果是,则计算该相交道路交叉路口的曲率,并保存满足设定条件的交叉路口的具体道路数据; 3)将所有区域中步骤b)、c)保存的数据分别写入一文件中并建立索引; 4)根据当前输入范围框位置,得出所在区域,根据步骤3)所建索引读取该所在区域道路的曲率数据,并将其叠加到当前输入范围框地图上,进行弯道信息提示导航。
2.如权利要求I所述的车辆导航方法,其特征在于所述步骤c)中,计算该相交道路交叉路口的曲率的方法为 1)取出列表C2中两条道路Rl、R2的数据; 2)计算两道路Rl、R2的首首端点、首尾端点、尾首端点、尾尾端点之间的距离,取最小距离Cmin,如果Cmin〈dmin,则判断两道路R1、R2为相交,进行步骤3),否则进行步骤4);其中,dmin为道路Rl、R2道路等级相交容许的最大距离差,对应的两端点为相交端点; 3)分别取出每一相交端点邻近的η个道路点,连成一条新的包括2η个点的交叉道路连线,计算出该交叉道路连线的弯道曲线段及曲率,并保存满足设定条件的交叉道路路段弯道曲线段的具体道路数据; 4)判断循环是否结束,如果未结束,则计算另外两条道路,重复步骤2)和3),直到该区域任两条道路均计算完成。
3.如权利要求2所述的方法,其特征在于所述具体道路数据包括相交道路的名称、交叉道路弧线段的点串个数和具体位置、属性数据。
4.如权利要求I或2所述的方法,其特征在于所述设定条件为曲率在设定的范围内或者相邻角度变化大于90°。
5.如权利要求I或2或3所述的导航方法,其特征在于所述弯道曲线段及曲率的计算方法为 11)根据所述矢量角度数组,确定前两个线段的角度变化趋势,并将其作为基准变化趋势,判断当前线段角度是否为终点,如果为终点则弧线段已结束,进行步骤12),如果当前线段角度与前一个线段的角度的变化趋势和基准变化趋势一致,则继续下一个线段的计算,直到变化趋势和基准变化趋势相反时,该弧线段结束; 12)针对于当前计算出的弧线段,计算该弧线的总的变化角度和长度比值,计算出该弧线段的曲率,并保存满足设定条件的弯道曲线段的具体道路数据; 13)以当前结束点为起点计算,重复步骤11)、12),直到该条道路的弯道曲线结束为止。
6.如权利要求I所述的方法,其特征在于所述将所有区域中步骤b)、c)保存的数据分别写入一文件中并建立索引的方法为 1)将所有区域中步骤b)单条道路弯道曲率计算结果根据行政区排序,同时建立行政区索引数据写入一索引文件中,每条道路曲率数据的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置; 2)将所有区域中步骤c)交叉路口曲率计算结果根据行政区排序,同时建立行政区索引数据,写入一索引文件中,每条道路的交叉路口的点串数据写入另一个文件,点串数据的起始地址写入索引文件中相应的位置。
7.如权利要求I所述的方法,其特征在于所述根据步骤3)所建索引读取该所在区域道路的曲率数据,并将其叠加到当前输入范围框地图上,进行弯道信息提示导航的方法为根据坐标转换,把读取的曲率数据叠加到当前输入范围框地图上,并标注曲率半径数值;同时根据GPS的位置得出道路的基本信息,根据当前导航路线,计算出前方的弯道或转向,进行距离和语音提示。
全文摘要
本发明公开了一种车辆导航方法,属于通信技术领域。本方法为1)分区读取道路数据,将同一区域的道路基本数据存入一列表C1中,道路属性数据存入一列表C2中;2)对于每一区域,将C1中每一道路的点串数据连线并计算每一道路的弯道曲线段及曲率,并保存满足设定条件的弯道曲线段的具体道路数据;根据列表C2中的数据,计算任意两道路的端点之间的距离,根据道路类型判断两道路是否为相交道路;如果是,则计算该相交道路交叉路口的曲率,并保存满足设定条件的交叉路口的具体道路数据;3)将所有区域中保存的数据分别写入一文件中并建立索引;4)根据所建索引读取车辆所在区域道路的曲率数据进行导航。本发明能大大提高车辆行驶安全性。
文档编号G01C21/34GK102636179SQ20121014773
公开日2012年8月15日 申请日期2012年5月11日 优先权日2012年5月11日
发明者王刚 申请人:北京赛德斯汽车信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1