一种联网车载导航终端实现远程快速更新地图导航数据的方法转让专利

申请号 : CN200610135275.1

文献号 : CN101162149B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 彭勇许宁杜坤明

申请人 : 厦门雅迅网络股份有限公司

摘要 :

本发明涉及一种联网车载导航终端中实现远程快速更新导航地图数据的方法,首先将全国导航地图数据进行分幅切割,形成多个图幅;当车载导航终端向导航服务中心发起地图更新请求时,导航服务中心将升级数据包下发到车载导航终端上;车载导航终端接收到完整的升级数据包后以图幅为单位,对车载导航终端的导航地图文件进行更新;本发明采用单元分割的方式将大型地图数据分割成图幅单元,更新1个图幅单元的数据只需传输受到影响的该图幅单元,最多只需要增加更新相邻的8个图幅单元的数据,从而可快速、及时地实现车载导航终端地图数据的远程更新。

权利要求 :

1.一种联网车载导航终端中实现远程快速更新导航地图数据的方法,其特征在于:

首先将全国导航地图数据进行分幅切割,形成多个图幅;所述的分幅地图数据包括用于路径规划和导航的导航拓扑数据和用于电子地图显示的地图显示数据,其中导航拓扑数据包含道路元素及道路之间的连通信息;地图显示数据包含有道路、信息点、绿地、山脉、水域等区域元素;

在车载导航终端上,所有图幅的数据组织成一个文件,该文件头记录了地图版本号和各图幅数据地址的索引区,该索引区按照图幅编号排序;在导航服务中心,每个图幅的数据保存为一个独立的文件,或作为一段独立的数据记录保存在数据库中;

当车载导航终端向导航服务中心发起地图更新请求时,导航服务中心将升级数据包下发到车载导航终端上;

车载导航终端接收到完整的升级数据包后以图幅为单位,对车载导航终端上的导航地图文件进行更新;如果更新后图幅数据的实际大小没有超过占用空间大小,则该图幅原来的占用空间仍可以容纳更新后的数据,在图幅原来的存放位置直接更新数据,并将该图幅数据字节数修改为实际大小;若图幅数据的实际尺寸变大了,把更新后的图幅数据整体移到导航地图文件的末尾,并且在文件头的图幅地址索引区,修改该图幅数据的地址索引,使之指向新的存储地址;在更新后或任务空闲时,车载导航终端读取旧文件头的图幅索引,按照图幅编号顺序,依次将图幅数据从旧文件复制到新文件中,并在新文件中设置各图幅索引,复制完毕后删除旧文件;

所述的导航服务中心对数据更新的任务管理过程:

每次版本升级,导航服务中心在对数据进行更新处理时,是一个任务一个任务排队进行的,一个任务只完成一次更新操作,以及该操作带来的相关连带操作,一个任务结束后,才在新的地图之上进行下一个更新任务;

一次版本升级结束后,导航服务中心对产生变化的图幅数据,逐字节比较更新前和更新后的数据,当出现不一致的数据时,即确定以该地址开始,更新之后的该图幅内数据,从而确定该图幅的更新数据,并记入导航地图图幅数据表中;

导航服务中心对每个产生更新的图幅数据进行分析后,将各个图幅的更新数据合并,组织成本次升级的完整更新数据包,再存入导航地图数据更新记录表中;

如果某个图幅从一个版本升级到下一个版本时不需要更新,则直接将数据表中该图幅数据的版本号修改为新级别;

所述的导航服务中心对导航拓扑数据进行更新操作时,由于数据本身的插入、删除操作,使某些数据的编号或者之间的顺序产生变化;若邻接图幅中某道路指向本图幅的道路,且指向的道路是在本图幅的ID发生变化的道路范围内,则邻接图幅中相应的邻接转向信息需要更新,最多只需要更新相邻的8个图幅单元的数据。

2.根据权利要求1所述的一种联网车载导航终端中实现远程快速更新导航地图数据的方法,其特征在于:导航地图数据的更新,按照版本由低->高逐级更新,不能跳级更新,即导航服务中心必须将更新前级别至更新后级别之间的所有级别更新数据进行下发,车载导航终端也必须按照级别顺序依次更新;

当车载导航终端主动向导航服务中心发起地图更新请求时,导航服务中心解析请求数据包中的旧版本号,与数据库中最新的版本号比较,从数据表中提取各个级别的升级包,组合成升级数据包,下发到车载导航终端上;

车载导航终端接收到完整的升级数据包后进行解析,当解出一个级别的升级数据后,即对该级别的升级数据,以图幅为单位,对导航地图文件进行更新;进行完一级别的升级后,修改地图文件版本号,如果还有下一级别的升级数据,则继续升级。

说明书 :

一种联网车载导航终端实现远程快速更新地图导航数据的

方法

技术领域

[0001] 本发明涉及一种联网车载导航终端实现远程快速更新地图导航数据的方法。

背景技术

[0002] 自主式车载导航终端使用的地图数据保存在本地设备中,这样,由于各地区道路信息等的变更,使得地图数据的更新成为非常重要的问题。如果数据无法更新或者更新不及时,则导航终端所指引的导航信息就会与实际路况产生偏差,从而影响导航的准确性。为此,导航数据需要能不断得到及时的更新。
[0003] 目前,车载导航终端的数据更新通常是需要在服务网点,或者是自己下载了更新数据后,再通过外接的存储设备(如U盘、CF卡等)将更新数据导入,十分不方便,也不能做到导航数据的及时更新。如果将车载导航终端通过GPRS或CDMA网络与导航服务中心进行联网,这样车载导航终端将不再是独立的个体,导航服务中心可以与各个车载导航终端进行数据通信,从而实现远程数据更新的功能,及时更新地图导航数据。然而,导航数据中有很多是进行连续的有序编号的数据,主要是道路拓扑数据,为了反映道路的连通关系,数据和数据之间的关联性非常紧密,同时,因为要充分利用存储空间,数据的结构也十分紧密。因此,导航数据的更新(特别是插入、删除数据)往往牵一发而动全身,修改很小的一部分数据都可能导致很大一部分,甚至整个数据都收到影响,需要重新组织。如果是全国性的地图导航数据,需要更新的数据量可能会是几兆、几十兆乃至几百兆字节。这么大的数据量,以现在普遍使用的广域无线通信技术来说,例如GPRS或CDMA通信(实际速率在40k~100k比特/秒左右)的方式,再考虑到网络本身的稳定性导致的出错重传问题,则每次更新的传输时间将很长,费用花销也比较大,显然是行不通的。因此,研究一种可靠且效率高的远程更新导航数据的方法就显得非常必要。

发明内容

[0004] 本发明旨在提供一种联网车载导航终端中实现远程快速更新导航地图数据的方法,该方法将全国的地图数据分割为多个独立的图幅,以图幅为单位更新地图,从而解决“大型导航数据因为插入、删除等操作而产生庞大的更新数据量,导致传输时间太长、更新效率低下的问题”。
[0005] 本发明一种联网车载导航终端中实现远程快速更新导航地图数据的方法,包括以下步骤:首先将全国导航地图数据进行分幅切割,形成多个图幅;当车载导航终端向导航服务中心发起地图更新请求时,导航服务中心将升级数据包下发到车载导航终端上;车载导航终端接收到完整的升级数据包后以图幅为单位,对车载导航终端的导航地图文件进行更新。
[0006] 所述的覆盖全国的矩形区域的经度范围是73.375°~135.125°,纬度范围是18.0833333°~53.58343°,根据中华人民共和国国家标准《国家基本比例尺地形图分幅和编号——GB/T 13989-92》,选择1∶10万的分幅标准(经差7′30″、纬差5′),将全国范围的矩形区域分隔为426行X494列个图幅,并对这些图幅按照“自上而下,从左到右”的方式编号。
[0007] 所述的分幅地图数据内容格式为:包括用于路径规划和导航的导航拓扑数据和用于电子地图显示的地图显示数据,其中导航拓扑数据包含道路元素及道路之间的连通信息;地图显示数据包含有道路、信息点、绿地、山脉、水域等区域元素。
[0008] 所述的分幅地图数据的存储方式为:在车载导航终端上,所有图幅的数据组织成一个文件,该文件头记录了地图版本号和各图幅数据地址的索引区,该索引区按照图幅编号排序;在导航服务中心,每个图幅的数据保存为一个独立的文件,或作为一段独立的数据记录保存在数据库中。
[0009] 所述的导航服务中心对数据更新的任务管理过程:
[0010] 每次版本升级,导航服务中心在对数据进行更新处理时,是一个任务一个任务排队进行的,一个任务只完成一次更新操作,以及该操作带来的相关连带操作,一个任务结束后,才在新的地图之上进行下一个更新任务;
[0011] 一次版本升级结束后,导航服务中心对产生变化的图幅数据,逐字节比较更新前和更新后的数据,当出现不一致的数据时,即确定以该地址开始,更新之后的该图幅内数据,从而确定该图幅的更新数据,并记入导航地图图幅数据表中;
[0012] 导航服务中心对每个产生更新的图幅数据进行分析后,将各个图幅的更新数据合并,组织成本次升级的完整更新数据包,再存入导航地图数据更新记录表中;
[0013] 如果某个图幅从一个版本升级到下一个版本时不需要更新,则直接将数据表中该图幅数据的版本号修改为新级别;
[0014] 当车载导航终端主动向导航服务中心发起地图更新请求时,导航服务中心解析请求数据包中的旧版本号,与数据库中最新的版本号比较,从数据表中提取各个级别的升级包,组合成升级数据包,下发到车载导航终端上。
[0015] 下载后解析数据包内容进行更新操作:车载导航终端接收到完整的升级数据包后进行解析,当解出一个级别的升级数据后,即对该级别的升级数据,以图幅为单位,对导航地图文件进行更新;进行完一级别的升级后,修改地图文件版本号,如果还有下一级别的升级数据,则继续升级;
[0016] 在车载导航终端上,如果更新后图幅数据的实际大小没有超过占用空间大小,则该图幅原来的占用空间仍可以容纳更新后的数据,在图幅原来的存放位置直接更新数据,并将该图幅数据字节数修改为实际大小;若图幅数据的实际尺寸变大了,把更新后的图幅数据整体移到导航地图文件的末尾,并且在文件头的图幅地址索引区,修改该图幅数据的地址索引,使之指向新的存储地址;
[0017] 车载导航终端对更新后数据的整理:读取旧文件头的图幅索引,按照图幅编号顺序,依次将图幅数据从旧文件复制到新文件中,并在新文件中设置各图幅索引,复制完毕后删除旧文件。
[0018] 本发明采用单元分割的方式将大型地图数据分割成图幅单元,更新1个图幅单元的数据只需传输受到影响的该图幅单元,最多只需要增加更新相邻的8个图幅单元的数据,地图导航数据的更新,特别是插入、删除数据只需要修改很小的一部分数据,即使是全国性的地图导航数据,需要更新的数据量也非常小,从而可快速、及时地实现车载导航终端地图数据的远程更新。

附图说明

[0019] 图1为本发明中全国地图分幅切割示意图;
[0020] 图2为本发明中全国地图分幅数据编号示意图;
[0021] 图3为本发明中车载导航终端上存放的导航地图文件的内容示意图;
[0022] 图4为本发明中导航服务中心存放的导航地图图幅数据记录表内容示意图;
[0023] 图5为本发明中导航服务中心存放的导航地图数据更新记录表内容示意图;
[0024] 图6为本发明中图幅数据因为删除操作而产生的图幅内数据向前移动的示意图;
[0025] 图7为本发明中图幅数据因为插入操作而产生的图幅内数据向后移动的示意图;
[0026] 图8为本发明中图幅更新时导致周边邻接图幅更新的示意图;
[0027] 图9为本发明中一次更新下发的升级数据包的内容示意图;
[0028] 图10为本发明中因为图幅数据实际大小的变化,造成车载导航终端上文件内的空隙的示意图。

具体实施方式

[0029] 本发明一种联网车载导航终端中实现远程快速更新导航地图数据的方法,包括以下步骤:
[0030] (1)将全国导航地图数据进行分幅切割:
[0031] 将可覆盖全国的矩形区域进行分幅切割,如图1所示,覆盖全国的矩形区域的经度范围是73.375°~135.125°,纬度范围是18.0833333°~53.58343°,根据中华人民共和国国家标准《国家基本比例尺地形图分幅和编号——GB/T 13989-92》,选择1∶10万的分幅标准(经差7′30″、纬差5′),将全国范围的矩形区域分隔为426行X494列个图幅,这样,全国地图区域就由许许多多的小矩形(图幅)构成,并对这些图幅,按照“自上而下,从左到右”的方式编号,如图2所示。
[0032] (2)定义分幅地图数据内容格式:
[0033] 各图幅内的导航地图数据,既有用于路径规划和导航的导航拓扑数据,又有用于电子地图显示的地图显示数据。作为地图显示数据时,包含的元素有道路、信息点、绿地、山脉、水域等区域元素,而作为导航拓扑数据时,只含道路元素及道路之间的连通信息。
[0034] 在车载导航终端上,将所有图幅的数据组织成一个文件,在文件头记录了地图版本号、各图幅数据地址的索引区。索引区按照图幅编号排序,这样就能根据图幅编号,快速跳转到图幅数据的存储区,加载该图幅的导航地图数据。
[0035] 导航文件的内容组织如图3所示。
[0036] 对图3,需要补充说明的是:
[0037] 导航拓扑数据,既作为拓扑数据,用于路径规划,又作为道路的地图显示数据使用。格式为:【道路弧1权值、点个数、点集…、转向个数、转向1出弧ID、转向1转向权值、注(转向1出弧ID所在图幅的ID) 、转向2出弧ID、转向2转向权值,……】,【道路弧2权值、点个数、点集…、转向个数、转向1出弧ID、转向1转向权值、转向2出弧ID、转向2转向权值,……】,…………,【道路弧n权值,点个数、点集…、转向个数、转向1出弧ID、转向1转向权值、转向2出弧ID、转向2转向权值……】。
[0038] 地图显示数据,除了道路以外的地图元素的显示数据,格式为:【显示对象1类型、点个数、点集…】、【显示对象2类型、点个数、点集…】、…………,【显示对象n类型、点个数,点集…】
[0039] 图幅数据字节数和占用空间字节数,在后文(6)中进行解释。
[0040] 与车载导航终端不同的是,在导航服务中心,每个图幅的数据保存为一个独立的文件,或者作为一段独立的数据记录保存在数据库中,图幅内部的数据内容格式和车载导航终端上相同。导航服务中心上,如果以数据库的方式保存的地图数据表,则格式如图4和图5所示:
[0041] 在导航拓扑数据中括号内的数据,只有当出弧所在图幅是邻接图幅时才出现,此时的转向信息,就是所谓的邻接转向信息,体现了图幅之间的的连通性。
[0042] (3)导航服务中心对不同类型的数据进行的更新操作不同:
[0043] 图幅与图幅之间存在连通关系的只有导航拓扑数据,其他类型的数据在图幅之间并不需要考虑连通的问题。
[0044] 图幅内的数据,如果仅仅作为地图显示使用的数据(即除道路元素以外的数据)发生变化后,对其他图幅是没有影响的,即哪个图幅发生变化了就更新哪个图幅即可;但是对于用于导航的道路拓扑数据来说,因为图幅之间的连通性问题,一个图幅变化时,可能(不是一定)会影响到相邻的图幅,从而导致相邻图幅也要同时更新。因此,更新操作的难点在于导航拓扑数据的更新。
[0045] 当一个图幅内的导航数据更新时,可能产生如下4种情况:
[0046] a)某些数据的编号,或者之间的顺序产生变化
[0047] 变化的原因,可能是因为数据本身的插入、删除操作;
[0048] b)图幅数据的存储空间大小变化
[0049] 变化的原因,可能是某数据的名称发生变化,也可能是某些数据的插入、删除等操作造成的;
[0050] c)a、b两种情况的组合;
[0051] d)a、b两种情况都不出现。
[0052] 其中,若出现情况a,且是因为导航拓扑数据的更新,则要考虑邻接图幅同时更新的问题,即若邻接图幅中某道路指向本图幅的道路,且指向的道路是在本图幅的ID发生变化的道路范围内,则邻接图幅中相应的邻接转向信息需要更新。
[0053] 举例来说,假设图幅A有1条ID为2的道路记录了与图幅B的ID为5的道路相连,若图幅B更新后道路的编号发生了变化,即原来ID为5的道路现在ID为7,则应更新图幅A中ID为2的道路的邻接转向信息,将转入图幅B的相连道路ID由5改为7。或者,若图幅B中原来ID为5的道路被删除了,则图幅A中ID为2道路邻接转向信息中对应的转向记录也应删除,递减图幅A中ID为2道路的转向个数,并重新排列该道路的剩余转向信息,然后,因为数据的删除留下了空隙,所以还应将图幅A中其后的数据往前搬移,见图6所示。又若,图幅B中新增了一条道路p,且图幅A中有1条ID为2道路可以到p,则该道路应增加一个转向信息,并将该道路的转向信息重新排列,此时因为图幅A中数据的插入,所以应将图幅A中其后的数据往后搬移,见图7所示。
[0054] 需要说明的是,图幅B道路ID的变化,虽然可能导致邻接图幅A导航拓扑数据产生的变化,但是不会改变图幅A自身的道路ID。所以如果图幅A因为受图幅B道路拓扑数据的更新影响,而出现连带更新,则此时图幅A可能产生的变化只可能是情况b,不会再有情况a出现。因此,不会再出现又因为A的变化而再导致A周边图幅又要更新的问题。所以,图幅B道路ID变化后,由此产生影响需要更新的图幅,最多就是图幅B周边的8个图幅(包括图幅A),如图8所示。
[0055] 对于地图显示数据来说,不会出现情况a。
[0056] (4)导航服务中心对数据更新的任务管理过程:
[0057] 每次版本升级,导航服务中心在对数据进行更新处理时,是一个任务一个任务排队进行的,一个任务只完成一次更新操作,以及该操作带来的相关连带操作,例如:数据的删除、更改、插入,以及数据的变化导致邻接图幅产生的数据更新操作(对于导航拓扑数据来说),或图幅数据的移动操作等。一个任务结束后,才能在新的地图之上进行下一个更新任务。
[0058] 一次版本升级结束后,导航服务中心会对产生变化的图幅数据,逐字节比较更新前和更新后的数据,当出现不一致的数据时,即确定以该地址开始,更新之后的该图幅内数据,从而确定该图幅的更新数据,并记入图4所示的导航地图图幅数据表中。
[0059] 导航服务中心对每个产生更新的图幅数据进行分析后,将各个图幅的更新数据合并,组织成本次升级的完整更新数据包,再存入图5所示的导航地图数据更新记录表中。表中,完整升级数据格式是:【更新图幅编号、更新起始地址、更新前字节数、更新后字节数、更新内容】、【更新图幅编号、更新起始地址、更新前字节数、更新后字节数、更新内容】、…………。
[0060] 上述数据中,每个图幅的更新数据——【更新图幅编号、更新起始地址、更新前字节数、更新后字节数、更新内容】,与图4导航地图图幅数据表的字段“图幅编号、升级数据图幅内起始地址、被覆盖数据原始大小、升级数据包大小、从上一级别升级的数据内容”一一对应。
[0061] 如果某个图幅从一个版本升级到下一个版本时不需要更新,则直接将图4的数据表中,该图幅数据的版本号修改为新级别的即可。
[0062] (5)更新数据包的下载:
[0063] 车载导航终端在需要更新地图时,由用户操作,通过与导航服务中心联接的网络,主动向导航服务中心发起地图更新请求,请求中包含了车载导航终端当前使用的地图版本号。导航服务中心接收到更新请求后,与数据库中最新地图的版本号比较,判断出跨越了几个级别,然后从图5的数据表中提取各个级别的升级数据包,再组合成一个完整的更新数据包下载给车载导航终端。下载的更新数据包的格式如图9所示。
[0064] (6)下载后解析数据包内容进行更新操作:
[0065] 车载导航终端成功下载完整的更新数据包后,再对数据进行解析,按照版本升级顺序依次更新。每个版本升级,又以图幅为单位进行更新。举例来说,先解出一个版本所需要的更新数据,然后再一个一个图幅地解出更新数据进行更新,所有需要更新的图幅完成操作后,更改车载导航终端地图文件头中当前的地图版本号,再进行下一个版本升级的更新操作。
[0066] 更新时,若出现前文(3)中所述的b情况,则还要考虑图幅数据是否要进行搬移。这是因为,初次生成车载导航终端上使用的全国导航地图文件后,各图幅数据区域之间是紧密无缝连接的,此时图3中的图幅数据字节数和占用空间字节数相同。某个图幅的数据更新后,该图幅数据的实际尺寸(即图幅数据字节数)可能发生变化。在车载导航终端上,如果更新后图幅数据的实际大小没有超过占用空间大小,则该图幅原来的占用空间仍可以容纳更新后的数据,在图幅原来的存放位置直接更新数据即可,但是要修改图幅数据字节数为实际大小;若图幅数据的实际尺寸变大了,则原来的占用空间不能容纳更新后的数据,此时,应把更新后的图幅数据整体移到导航地图文件的末尾,并且在文件头的图幅地址索引区,修改该图幅数据的地址索引,使之指向新的存储地址。上述操作如图10所示。
[0067] (7)数据版本控制:
[0068] 导航服务中心每次修改地图后,对图4所示的导航地图图幅数据记录表中添加各个修改之后图幅的数据记录,包括版本号、从旧版本到新版本的升级数据包等。导航地图数据的更新,必须按照版本由低->高逐级更新,不能跳级更新,即导航服务中心必须将更新前级别至更新后级别之间的所有级别更新数据进行下发,车载导航终端也必须按照级别顺序依次更新。
[0069] (8)车载导航终端对更新后数据的整理:
[0070] 如(6)中所述,在车载导航终端上,图幅更新后的数据变小或者变大,都将产生空隙,见图10。这样更新多次后,文件中的空隙越来越多,造成了空间的浪费。所以,车载导航终端需要对数据进行整理。整理的时机,可以是每次更新结束后自动进行,也可以是任务空闲时由用户控制启动。整理的方法是,读取旧文件头的图幅索引,按照图幅编号顺序,依次将图幅数据从旧文件复制到新文件中,并在新文件中设置各图幅索引,复制完毕后删除旧文件即可。