一种导航电子地图的增量包及自校验方法

文档序号:5940238阅读:318来源:国知局
专利名称:一种导航电子地图的增量包及自校验方法
技术领域
本发明属于自校验导航电子地图更新领域,涉及一种以导航兴趣点Ρ0Ι、道路中心线、导航线、交通规制等导航要素为内容实体的导航电子地图的增量包及自校验方法。
背景技术
目前在导航电子地图增量更新领域,动态拓扑实现方法研究较多且比较成熟。在更新技术中主要采用版本式离线更新模式。版本式离线更新模式是将数据按一定的产品规格,生成一套完整的导航数据(导航要素、背景要素和拓扑关系),数据生产商按一定的周期(半年或一年)以光盘或在线下载的形式发布,客户依据自己的需要和实际情况获取数据并更新自己的数据,这种方法首先第一个缺点是更新周期长。第二个缺点是不容易通过网络传输实现在线更新,因为导航数据量较大,容易受到外界条件的影响。第三个缺点是数据安全难以保证,该方法以整版数据的形式发布,在数据发布中一旦被窃取将造成重大的泄密或侵权事件。公开号为CN101694392A的专利公开了一种基于XML格式的增量包制作方法,该方法实现简单,以XML格式将增加、修改、删除的导航线和导航节点封装成一个文件通过网络传输发布给客户端。在实际的导航电子地图增量更新中,数据内容不仅包括这些,还包括导航兴趣点Ρ0Ι、方向看板、交通规制等导航要素,除了导航要是外,还包括导航线和节点层的几何拓扑关系和要素间的逻辑联通拓扑关系。所有这些导航要素和导航关系均是增量更新中需要动态更新的内容。另外,增量包只包括更新的内容,用户除了要实现数据的更新外, 还需要校验更新结果是否正确,在增量包中还需包括校验信息,在公开号为CN101162149A、 CN101319912A和CN1017^309A的专利中,提出的增量更新方法均没有解决增量更新数据校验的问题。因此,现有技术不能满足电子地图增量包包括全导航要素和增量包自校验的要求。

发明内容
本发明为解决公知技术中存在的技术问题而提供了一种导航电子地图的增量包及自校验方法。本发明为解决公知技术中存在的技术问题所采取的技术方案是
一种导航电子地图的增量包,其特征在于该增量包以2进制方式存储增量信息,分为2部分,第一部分是增量包包头,包含了增量包的整体描述坐标范围、增量包块范围、层数、数据层定义,各层总记录数,每块数据的地址和每层的数据地址;第二部分是增量数据部分,包括具体的增量更新数据,增加标识、增加的要素的完整记录,删除标识、删除的要素 ID,修改标识,修改的要素的完整信息。本发明的导航电子地图增量包的自校验方法,包括如下步骤服务器端依据外部资料动态维护导航要素制作电子地图增量包首先在要素层面上编辑要素,并记录要素更新的增加、删除和修改标签,在导航线动态更新时同步动态更新导航节点层和几何拓扑关系,当导航节点发生变化时,记录更新标签;其它的交通规制、方向看板、逻辑连通拓扑关系等维护时同样记录更新标签;最后所有导航要素的属性发生变化时也需记录变化标签,以此反应更新状态,保证所有数据更新状态均有标签来记录; 导航电子地图的客户端下载电子地图增量包;
导航电子地图的客户端读取和解析电子地图增量包首先读取文件头,获取数据集信息、块信息和图层头信息;首先读取增量标志,如果标志为0,为块增量,则用通用读取方法即可;如果为1,则为记录增量,接着读取三个整数增加,修改,删除,按数量读取相应的记录,每个记录前有一个int型标识,1 增加,2 修改,删除部分按结构S_DelC0ntent读取; 导航电子地图的客户端对电子地图的更新进行自校验在原始的电子地图完整包中获取每个图幅中每层的记录数,设为On ;在增量包的文件头中也存放了每个图幅中每层的记录数,设为Dn ;增量包中增加记录数为Anum,修改记录数为Mnum,删除记录数为Dnum,更新后,更新包的记录数应该为Dn,且Dr^On+Anum-Dnum,如果该等式成立,说明更新成功,反之则更新失败。本发明的优点和有益效果是
本发明的导航电子地图的更新及自校验方法,实现了以导航要素、导航要素逻辑连通拓扑关系为数据实体的增量包及其自校验方法。将导航要素、导航拓扑关系以自校验的增量包的形式传输到客户端,实现了导航电子地图导航要素和导航拓扑关系的动态更新且通过自校验方法验证数据增量更新是否成功。


图1是本发明的自校验导航电子地图增量包的制作和使用流程图; 图2是本发明的导航电子地图完整包与增量包的关系图3是本发明的导航电子地图增量包的读取过程。
具体实施例方式下面结合附图和实施例对本发明的自校验导航电子地图增量包及其制作方法进行详细说明。本发明将导航电子地图增量包以2进制方式存储增量信息,分为2部分,第一部分是增量包包头,包含了增量包的整体描述坐标范围、增量包块范围、层数、数据层定义,各层总记录数,每块数据的地址和每层的数据地址。第二部分是增量数据部分,包括具体的增量更新数据,增加标识、增加的要素的完整记录,删除标识、删除的要素ID,修改标识,修改的要素的完整信息。这样增量数据完全包含在增量包中,在增量数据部分,可通过图层数据结构可计算各层中每条记录的长度,结合增加、修改、删除的记录数,通过各层总记录数、客户端图层记录数和增量更新的记录数进行校验,以验证更新是否成功。通过以上解决方案,不但解决了增量更新中数据量大、数据项繁多的问题,实现了导航要素和导航拓扑关系的实时传输,保证了数据安全,通过自校验的方法保证更新是否有效,使增量包更新更实用。
1.增量包制作和使用流程 (1)导航要素动态维护模块
服务器端依据外部资料动态维护导航要素,首先在要素层面上编辑要素,并记录要素更新的增加、删除和修改标签,在导航线动态更新时同步动态更新导航节点层和几何拓扑关系,当导航节点发生变化时,记录更新标签;其它的交通规制、方向看板等维护时同样记录更新标签。最后所有导航要素的属性发生变化时也需记录变化标签,以此反应更新状态, 保证所有数据更新状态均有标签来记录。在导航要素增量更新模块,首先设计增量更新包的结构,依据要素的更新标签生成将导航要素、导航要素关系的变化以记录形式记录在增量包中,同时将数据地址和增量验证信息记录在内。客户端增量包接收模块负责从服务器获取增量包。客户端增量包解析和更新模块在获取到增量包后负责读取增量包并实现客户端的更新,并校验是否更新有效。导航数据动态维护方法在现有的专利[200910218030. 9]和其它文献中比较完整和成熟的实现。但是除此之外,导航要素生命周期和编辑状态是实现增量更新的另一个关键技术。在本专利中导航要素以通用型大型数据库Oracle、DB2或SQL Server存储,每个导航要素以对象关系模型存储,便于数据的管理。除了业务数据项外,增加维护要素生命周期的起止时间(start_time,end_time)和编辑状态的标签(edit_status)要素编辑过后记录其编辑状态(增加A,删除D,修改D),另外,删除记录时在数据表中不实时删除记录而是加上删除标签D和填上截止时间(encLtime),在一新的完整版发布后再删除这些删除的记录。图2显示了完整包和增量包序列,可以看出增量包对完整包的依赖关系。Ftl为初始状态,FpF2、…、Fi表示完整包序列。Tn、T12、…、Τ21、…、Tij表示增量包序列,Tij为第 i个完整包Fi后的第j个增量包。(2)导航要素增量包生成模块
导航电子地图的增量包分为块增量、记录增量和混合增量三种类型
1块增量以块为增量单位,即块中所选图层的全部信息都作为增量信息;
2记录增量以图层中的记录为单位,即在图层中选择出变化记录作为增量信息;
3混合增量在数据集中既有块增量又有记录增量,默认是记录增量,但是可以选择某些图块为块增量。增量包的结构包括两部分,即文件头和数据部分。文件头的结构为
数据集信息数据集范围图层数量图层定义行数列数比例尺
数据块1信息数据块范围
第1层地址//即图幅块地址
第1层记录数第η层地址第η层记录数
数据块η信息数据块范围第1层地址第1层记录数
第η层地址第η层记录数
数据集部分 第1块增量
0//增量模式标识
第1层数据第2层数据
第η层数据第2块增量
1//增量模式标识1表示记录增量
增加记录数修改记录数删除记录数增加的记录数据修改的记录数据删除的记录数据
上面的“增加的记录数据”和“修改的记录数据”和文件头定义的一致,便于增量包的使用。删除记录的结构为
struct S—DelContent
{
unsigned long Record_ID; //记录的ID号,对应业务数据的ID值 unsigned long Del_ID;// 统一编号
unsigned long Row_ID ;//网格行号
unsigned long Col_ID;//网格列号
};
在生成增量包时首先设置增量模式,依据增量模式,先生成文件头,然后依次为每块生成增量信息。 (3)客户端增量包接收模块
导航电子地图增量包的客户端包客户端,比如手机、导航仪、PDA等设备,这些设备一般通过无线传输获取增量包,这样记录增量是最好的选择,因为记录增量包的数据量较少,无线网络传输的成功率较高,不容易出错。对于使用有线网络的客户,可依据具体情况选择适合自己的增量包形式。(4)客户端增量包解析和更新模块
读取过程如图3所示,首先读取文件头,获取数据集信息、块信息和图层头信息。首先读取增量标志,如果标志为0,为块增量,则用通用读取方法即可。如果为1,则为记录增量, 接着读取三个整数增加,修改,删除,按数量读取相应的记录,每个记录前有一个int型标识,1 增加,2 修改,删除部分按结构S_DelC0ntent读取。数据更新指的是增量包的使用,这需要依据客户端的环境设计具体的算法来使用增量包数据。校验方法,在完整包中可以获取每个图幅中每层的记录数,设为On;在增量包的文件头中也存放了每个图幅中每层的记录数,设为Dn;增量包中增加记录数为Anumdf 改记录数为Mnum,删除记录数为Dnum,那么如果更新过后,更新包的记录数应该为Dn,且 Dr^On+Anum-Dnum,如果该等式成立,那么说明更新成功,反之则更新失败。
权利要求
1.一种导航电子地图的增量包,其特征在于该增量包以2进制方式存储增量信息,分为2部分,第一部分是增量包包头,包含了增量包的整体描述坐标范围、增量包块范围、层数、数据层定义,各层总记录数,每块数据的地址和每层的数据地址;第二部分是增量数据部分,包括具体的增量更新数据,增加标识、增加的要素的完整记录,删除标识、删除的要素 ID,修改标识,修改的要素的完整信息。
2.权利要求1所述的导航电子地图增量包的自校验方法,其特征在于该方法包括如下步骤服务器端依据外部资料动态维护导航要素制作电子地图增量包首先在要素层面上编辑要素,并记录要素更新的增加、删除和修改标签,在导航线动态更新时同步动态更新导航节点层和几何拓扑关系,当导航节点发生变化时,记录更新标签;其它的交通规制、方向看板、逻辑连通拓扑关系等维护时同样记录更新标签;最后所有导航要素的属性发生变化时也需记录变化标签,以此反应更新状态,保证所有数据更新状态均有标签来记录;导航电子地图的客户端下载电子地图增量包;导航电子地图的客户端读取和解析电子地图增量包首先读取文件头,获取数据集信息、块信息和图层头信息;首先读取增量标志,如果标志为0,为块增量,则用通用读取方法即可;如果为1,则为记录增量,接着读取三个整数增加,修改,删除,按数量读取相应的记录,每个记录前有一个int型标识,1 增加,2 修改,删除部分按结构S_DelC0ntent读取;导航电子地图的客户端对电子地图的更新进行自校验在原始的电子地图完整包中获取每个图幅中每层的记录数,设为On ;在增量包的文件头中也存放了每个图幅中每层的记录数,设为Dn ;增量包中增加记录数为Anum,修改记录数为Mnum,删除记录数为Dnum,更新后,更新包的记录数应该为Dn,且Dr^On+Anum-Dnum,如果该等式成立,说明更新成功,反之则更新失败。
全文摘要
本发明公开了一种导航电子地图的增量包及自校验方法,包括如下步骤服务器端依据外部资料动态维护导航要素制作电子地图增量包导航电子地图的客户端下载电子地图增量包;导航电子地图的客户端读取和解析电子地图增量包导航电子地图的客户端对电子地图的更新进行自校验。本发明的优点和有益效果是本发明的导航电子地图的更新及自校验方法,实现了以导航要素、导航要素逻辑连通拓扑关系为数据实体的增量包及其自校验方法。将导航要素、导航拓扑关系以自校验的增量包的形式传输到客户端,实现了导航电子地图导航要素和导航拓扑关系的动态更新且通过自校验方法验证数据增量更新是否成功。
文档编号G01C21/32GK102564435SQ20121000251
公开日2012年7月11日 申请日期2012年1月6日 优先权日2012年1月6日
发明者崔铁军, 郭继发 申请人:天津师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1