具有地图压缩的导航系统和其操作的方法

文档序号:6002361阅读:214来源:国知局
专利名称:具有地图压缩的导航系统和其操作的方法
技术领域
本发明一般关于导航系统,尤其关于具有地图压缩的导航系统。
背景技术
现代便携式消费者和工业电子产品提供越来越多功能水平以支持现代生活,包括基于位置的信息服务。这对于比如导航系统、手机、便携式数位助理、和多功能装置的客户装置而言特别是如此。随着用户采用基于位置的服务装置,新和旧的用途开始利用此新的装置空间。有很多技术解决方案利用此新的装置位置机会。一种现有的方式是使用位置信息来提供导航服务,比如移动装置的全球定位服务(GPS)导航系统。系统可以显示地图信息,导航并显示两点之间的路径,并在这些装置上启用其它服务。回应于消费者需求,导航系统提供不断增加的信息量,要求这些系统在有限的时间量中处理越来越多的数据。此信息包括地图数据、商业数据、当地天气、和当地驾驶条件。需要更多数据量来启用这些服务。然而,众多系统的分散本质会为这些系统的用户带来许多挑战。例如,系统可能需在具有有限带宽之系统间中继大量的数据。并且,装置上的可用存储可能会减损其存储大块数据的能力,比如大面积的地图数据,或者具有精细程度的细节的地图数据。因此,仍然需要一种导航系统,能够有效率传送大量数据,或可以有效率储存供系统使用的大量数据块。有鉴于不断增加的商业竞争压力,伴随着成长的消费者期望和市场中越来越少的有意义的产品差异化的机会,亟需为这些问题找到答案。此外,降低成本,提高效率和性能,并满足竞争压力的需求为寻找这些问题的答案的关键必要性添加了更大的紧迫性。已长期寻求这些问题的解决方案,但先前的发展并未教导或提出任何解决方案,因此,本领域技术人员仍未得到这些问题的解决方案。

发明内容
本发明提供一种导航系统的操作的方法,包括基于用于识别位置数据点的多个空间感知识别预先建构多层索引;基于所述空间感知识别的所述多层索引选择第一路口 ;和基于在装置上显示的所述第一路口产生主要路线。本发明提供一种导航系统,包括预先建构模块,基于用于识别位置数据点的多个空间感知识别预先建构多层索引;段选择模块,基于所述空间感知识别的所述多层索引选择第一路口 ;和控制单元的导航引导模块,基于在装置上显示的所述第一路口产生主要路线,所述控制单元耦合到用户接口。
本发明的某些实施例具有除了上述那些以外或取代上述那些的其它方面。对于参考附图阅读下列详细说明后的本领域技术人员而言,这些方面将变得清楚明显。


图I是使用本发明的一个实施例的环境的一个范例。图2是显示在本发明的第一实施例中的具有地图压缩的导航系统的一示范应用的绘图。图3是空间感知识别的四叉树图。图4是多层索引的绘图。
图5是拓扑数据记录的绘图。图6是叶中一个路口点的位置的路口相对位置的绘图。图7是边缘相对位置的绘图。图8A和8B是一个约束的一个范例的各种图。图9是地图呈现的形状数据记录的绘图。图10是地图数据压缩流程的流程图。图11是路线产生流程的流程图。图12是地图呈现用的形状选择的流程图。图13是在本发明的第二实施例中的具有地图压缩的导航系统的方块图。图14是在本发明的第三实施例中的具有地图压缩的导航系统的方块图。图15是在本发明的又另一实施例中的具有地图压缩的导航系统的操作的方法的流程图。
具体实施例方式以足够的细节描述下面的实施例,使本领域的技术人员能够制作和使用本发明。可理解到根据本公开使其它实施例为显见,且可做出系统、工艺、或机械变化而不偏离本发明的范围。在下面的描述中,提出许多具体细节以提供本发明的透彻了解。然而,显然也可在没有这些具体细节的情况下实行本发明。为了避免模糊本发明,没有详细公开一些知名的电路、系统配置、和工艺步骤。显示系统的实施例的绘图是半图解性和不按比例,特别是一些尺寸是为了演示的清晰度而在图中夸大显示。同样,虽然为便于描述,图中的观点普遍显示类似的取向,但在图中的这种描绘大部分是任意的。一般来说,可在任何取向中操作本发明。在所有图中使用的相同号码是关于相同的组件。已将实施例编号为第一实施例、第二实施例等,为描述方便而已,且不意图有任何其它的意义或提供本发明的限制。本领域技术人员可了解到表示导航信息的格式并非本发明的一些实施例的关键。例如,在一些实施例中,以(x,y)格式表示导航信息,其中X和y界定地理位置(即用户的位置)的两个坐标。通过经度和纬度的相关信息呈现导航信息。导航信息还包括速度元素,包括速率分量和方向分量。本文中提及的“导航路由信息”一词是定义为所述的导航信息,还有关于对用户的兴趣点的信息,如当地企业、营运时间、业务类型、广告特价、交通信息、地图、当地事件、和附近的社区或个人信息。
本文中提及的“模块”一词可包括软件、硬件、或上述的组合。例如,软件可以是机器代码、固件、嵌入式代码、和应用软件。另外,例如,硬件可以是电路、处理器、计算机、集成电路、集成电路核心、或上述的组合。现在参照图1,显示使用本发明的一个实施例的环境100的范例。环境100应用于稍后所述的本发明的任何实施例。环境100包括第一装置102 (比如服务器或客户端)。第一装置102可以通信路径106 (比如网路)连接到第二装置104 (比如客户端或服务器)。第一装置102可以是各种集中或分布式计算装置的任一者。例如,例如,第一装置102可以是计算机、网格计算池(grid computing pool)中的计算机、虚拟化的计算机、云计算池中的计算机、或者在分布式计算拓扑中的计算机。第一装置102可以包含路由功能或切换功能已用于耦合通信路径106而和第二装置104沟通。第二装置104可以是各种移动装置的任一者。例如,第二装置104可以是手机、个人数字助理、笔记本电脑、或者具有能够耦合到通信路径106的机构的其它多功能移动通信或娱乐装置。通信路径106可以是各种的网路。例如,通信路径106可包括无线通信、有线通信、光学、超声波、或上述的组合。卫星通信、蜂窝通信、蓝牙、红外数据协会标准(IrDA)、无线保真(WiFi)、和全球微波接入互操作性(WiMAX)是可以包括在通信路径106中的无线通信的例子。以太网、数字用户线路(DSL)、光纤到户(FTTH)、和普通老式电话服务(POTS)是可以包括在通信路径106中的有线通信的例子。此外,通信路径106可通过多个网路拓扑结构和距离。例如,通信路径106可以包括个人区域网(PAN)、局域网(LAN)、城域网(MAN)、和广域网(WAN)。为了便于说明,第一装置102显示在单一位置中,但应了解到服务器可以是集中或分布式并且位在不同位置。例如,第一装置102可以代表在单一计算机室中、跨不同室所分散、跨不同地理位置所分散、嵌入电信网路内、在包括网格或云式计算资源的一或更多其它计算机系统内的虚拟化服务器、或在高功率客户端装置中的真实或虚拟服务器。另外为了便于说明,将环境100显示成以第一装置102和第二装置104为通信路径106的终点,但应了解到环境100也可在第一装置102、第二装置104、和通信路径106之间具有不同的分区。例如,第一装置102、第二装置104、或上述的组合也可作用为通信路径106的一部分。现在参照图2,显示在本发明的第一实施例中的具有地图压缩的导航系统200的一示范应用。将导航系统200显示成以用户接口 204在装置202上操作。装置202可以是比如图I的第二装置104的移动计算装置。用户接口 204可以包括输入装置和输出装置。例如,输出装置可以包括显示器206、投影机、视频萤幕、扬声器、或上述的任何组合。输入装置的范例包括小键盘、触摸板、软功能键、键盘、麦克风、或上述的任何组合,提供数据和通信输入。图示在具有导航系统200的装置202的显示器206上显示街道地图的一个区域。显示器206显示主要路线208。为了清楚,将主要路线208显示为虚线箭头。主要路线208可以在第一路口 210开始,可以沿着第一道路段212到第二路口 214,并可以沿着第二道路段216最终到达第三路口 218。第四路口 220也包括在图中。第四路口 220显示成通过第三道路段222 (其并非、主要路线208的一部分)连接到第一路口 210。导航系统200可通过从地图数据或其它数据来源选择道路段和路口来产生主要路线208。导航系统200可以序列选择道路段和路口以提供从第一路口 210到第三路口 218的导航路由信息。地图数据可以包括有关路口、道路段、特征的信息,和其它有关于导航信息系统的功能的其它信息。
用户接口 204也可显示形状,比如第一特征224和第二特征226。导航系统200可以撷取并显示比如商场、道路、公园、行政区、兴趣点(POI)的形状和关于显示地图或导航信息的其它形状。在此范例中,第一特征224可以是通过导航系统200所产生的接近主要路线208的商场。导航系统200可在主要路线208旁显示第一特征224。导航系统200也可显示第二特征226,其可以是博物馆,且其也接近主要路线208。其它特征和形状也可包括在数据来源中。导航系统200可基于位置和与地图数据中的特征和形状关联的其它信息显示特征和形状。现在参照图3,显示空间感知识别(spatially-aware identification) 300的四叉树(quad-tree)图。图2的导航系统200可以针对比如地图数据的信息预先建构空间感知识别300。空间感知识别300为基于一个数据点相关于其它数据点的位置对该数据点的参照。空间感知识别300可以包括一串字符,例如,其可独特识别一个数据点,比如一个位置、一个路口、或一个特征。该识别为空间感知,使得地图数据的一个数据点的空间感知识别300可与其地理位置关联。在空间感知识别300的四叉树图中的节点和数据点的位置可以反映节点或数据点的地理位置的邻近度。可由导航系统200使用地图数据的空间感知识别300来提供导航
路由信息。地图数据的数据点可以代表实际位置,比如道路段的路口、街道上的形状点、地址、兴趣点(POI)或和导航相关的其它实体。数据点是包括在节点中,其可为其它节点或数据点的集合。数据点可以包括导航系统200可操作以产生导航路由信息的数据。为了便于说明,将四叉树显示成具有以圆形表示的节点,和以具有内十字的正方形表示的数据点。图显示地图数据的数据点,比如第一路口 210和第二路口 214,这两者都包括在一个节点中,比如第一叶302。第三路口 218是包括在第二叶304中,其是一个不同的节点。第四路口 220是包括在第三叶306中,其又是四叉树的另一个不同的节点。第一路口 210和第二路口 214地理上接近,并可以通过四叉树中其之紧邻性反映出来。第二叶304中的第三路口 218可反映第三路口 218是在自第一路口 210的一个较远距离。第三叶306中的第四路口 220可反映出自第一路口 210和第二路口 214的又一个较远距离。导航系统200可针对地图数据的每一个节点和数据点产生空间感知识别300,从比如地图根部310的根部开始。地图根部310可以是地图数据所包括的所有信息之共同起源点。可通过四叉树在接续层中将信息递归分成四个象限来排列四叉树。可进一步分裂每一个节点直到每一个节点可满足一个标准,比如观察最大数量的数据点。仅含有数据点或路口的节点可称为叶。例如,第一叶302可以是一个节点,其可以包括第一路口 210和第二路口 214。作为叶的标准的一个例子,导航系统200可以具有叶中数据点的数量的限制,比如在任何叶中最大两百五十六个数据点。包括超过两百五十六个数据点的节点可进一步通过导航系统200分成象限直到可观察到叶中两百五十六个数据点的限制。最大两百五十六个数据点的选择可以是和具有二进制表示法的系统有关,因为可以通过八位的一字节来寻址两百五十六个数据点。举例而言,美国的四十八个相邻州的地图数据可分成十三层树结构,其中叶包括最大两百五十六个数据点。为了便于叙述本发明,图3显示成具有四层的节点,但应了解到不同数量的层可用来叙述不同地理区域。图3也包括第一内节点312,其是空间感知识别300的四叉树的一个内节点。导航系统200可以产生具有内节点的空间感知识别300,其可用来自空间感知识别300排除一个数据点相关于另一个数据点的冗馀。空间感知识别300的识别方案可以是基于空间感知识别300的四叉树中的一个数据点的位置,并且可表示成从地图根部310到任何节点或数据点的路径。例如,在第一层中的地图根部310可分成第二层中的四个节点,其可以二进制表示法识别为在预定地理顺序中的00、01、10、和11。第二层的每一个节点可进一步分成第三层中的四个节点,且第三层中的一个节点可具有基于其第二层根识别符的识别符。例如,第二层中的第一内节点312可识别为00,且第三叶306可识别为0001。因为地图数据分成地理象限,所以任何节点的识别可以是独特且空间感知。到内部节点或来自内部节点的路径可称为部分路径。在空间感知识别300中,从地图根部310到一个内部节点的部分路径可称为块识别。例如,从地图根部310到第一内节点312的部份路径可以是具有00值的第一块识别314。在第一内节点312下的子树中的节点或数据点可共享第一内节点312为共同子根部,并可共享第一块识别314为共同块识另U。例如,第一路口 210、第二路口 214、和第三路口 218,皆共享第一块识别314为其块识别。从内节点到叶可以有部分路径。例如,从第一内节点312到第一叶302的部份路径可称为相对叶识别,比如第一相对叶识别316。将更详细讨论相对叶识别。叶中的每一个数据点可以具有顺序识别,其为数据点的独特识别符以和相同叶中的其它数据点区分。数据点或路口可根据地理位置组织在叶中。例如,第一叶302的数据点和路口,比如第一路口 210和第二路口 214,可根据其位置在叶中加以排序。可从最左边的路口开始顺序分配路口的顺序识别符。针对地图数据,此排序可以最西边的路口开始,进展经过第一叶302的所有数据点。已发现到空间感知识别300可以相对邻近度提供导航位置之一个数据点相关于其它数据点的参照。互相接近的位置的空间感知识别300可以非常类似,这允许有效率的存储和附近位置的呼叫,还有从附近数据点到一个数据点的简化通过。空间感知识别300的实际变换导致基于导航系统200的操作的实体世界中的移动,比如使用车辆的人。当实体世界中的移动发生时,移动本身产生额外信息,其被转变回空间感知识别300,以供导航系统200继续操作并继续实体世界中的移动。现在参照图4,显示多层索引400的绘图。多层索引400可提供图3的空间感知识 别300的索引能力,限制空间感知识别300的长度而不损失信息。图2的导航系统200可以基于图3的空间感知识别300预先建构多层索引400以组织与数据(比如地图数据)一起包括的信息。数据点可具有空间感知识别300的独特实例,且多层索引400可组织数据点的空间感知识别300。多层索引可以包括块索引402。块索引402可以包括和内节点(比如图3的第一内节点312)关联的索引信息。块索引402可以包括比如第一块识别314的块识别。块识别可以是从图3的地图根部310到一个内节点(比如图3的第一内节点312)的部分路径。块索引402还可以包括和块识别关联的叶计数。例如,第一叶计数404可以是叶的数量,其具有第一内节点312作为共同子根部。叶计数可向导航系统200指示子树中有多少叶,且导航系统200可以在通过空间感知识别300以得到有关于内节点的子树的信息时使用此信息。
块索引402还可以包括和块索引402的每一个块识别关联的叶偏移。例如,第一叶偏移406可以是和第一内节点312的第一块识别314关联的偏移。第一叶偏移406可以指示和第一内节点312的子树的叶关联的信息的开始。导航系统200可以预先建构空间感知识别300,使得在一子树内的叶的信息可以是连续的。使一个内节点下的叶子排列成连续的,并且知道内节点下的叶数,可以让导航系统200有效率地通过多层索引400和空间感知识别300。为了清楚,图4显示块索引402仅具有第一内节点312的信息。然而,可了解到块索引402可以包括图3的空间感知识别300的其它内节点的信息。例如,在块索引402中可以有超过一个的块识别,具有和每一个块识别关联的一个叶计数及一个叶偏移。多层索引400还可以包括叶索引408。叶索引408可以包括关于和一个内节点关联的一个个别叶的信息的安排的信息。例如,第一叶偏移406可以指示在叶索引408中和第一内节点312关联的信息。叶索引408可以包括相对叶识别,比如第一相对叶识别316。第一相对叶识别316可以是从第一内节点312到图3的第一叶302的部分路径。第一块识别314和第一相对叶识别316的组合可以代表第一叶302的独特识别。叶索引408还可以包括比如第一拓扑偏移412的拓扑偏移,和比如第一拓扑计数414的拓扑计数。拓扑计数可以是数据点的数量的计数,各具有一个拓扑记录,和一叶关联。例如,第一拓扑计数414可以是和第一叶302关联的数据点的数量。拓扑偏移,比如第一拓扑偏移412,可以是对和第一叶302关联的拓扑信息的开始的偏移。拓扑一词可以指由导航系统200用来产生导航路由信息的信息。例如,拓扑信息可以包括道路、路口、和导航系统可以用来产生导航路由信息和导航引导的其它信息。叶索引408还可以包括比如第一形状偏移416的形状偏移,和比如第一形状计数418的形状计数。形状偏移可指向存储空间的开始,其中可连续地存储和一叶关联的形状信息。例如,第一形状偏移416可指向和第一叶302中的形状关联的信息。形状计数可以是和一叶关联的形状的数量的计数。例如,第一形状计数418可以是和第一叶302关联的形状的数量。形状信息可以有关于实体的实际形状,例如,包括公园、河流、山坡和其它的地图数据。导航系统200在显示器上呈现导航路由信息时可使用形状信息。举例而言,图2的第一特征224和图2的第二特征226可以是位在图2的主要路线208附近的形状或特征。为了清楚,图4显示叶索引408具有和一叶,其是第一叶302,关联的索引信息。然而,可了解叶索引408可以包括关于和第一内节点312和其它内节点关联的其它叶的信息。多层索引还可以在拓扑数据420中包括数据点的拓扑信息。导航系统200的拓扑数据420可由导航系统200用来产生导航路由信息,比如主要路线208。导航系统200可以空间感知识别300的树结构通过图4的多层索引400,使用拓扑数据420的数据点来选择用于产生主要路线208的道路段。拓扑数据420中的数据点的范例可以包括道路和路口。导航系统可从拓扑数据420撷取信息来产生比如主要路线208的导航路由信息。空间感知识别300的拓扑数据420可以包括比如第一路口索引422的路口索引,和比如第一路口记录424的数据点的信息的纪录。第一路口索引422可指向包括第一路口记录424的存储空间。第一路口记录424可以包括和图3的第一路口 210关联的信息,比如连接到第一路口 210的路口和道路段的位置。这种信息可由导航系统200用来产生比如主要路线208的导航路由信息。叶索引408的第一拓扑偏移412可指向拓扑数据420的第一路口索引422。第一拓扑计数414可以是第一叶302中的路口点的数量的计数。此索引可以提供导航系统200迅速定位用于产生导航路由信息的拓扑信息的手段。多层索引400还可以包括形状数据426。形状数据426可以包括形状的信息,比如第一特征记录428。形状数据426可以包括在叶索引408中的形状计数中所计算的每一个形状的记录。例如,叶索引408的第一形状计数418可以是形状数据426中的形状的数量,其和第一叶302关联。导航系统200可以在装置的显示器上显示主要路线208。导航系统200还可以在显示器上显示特征的形状以增进具有主要路线208的导航路由信息的显示。已发现导航系统200可减少空间感知识别300的节点和叶的识别中的冗馀,并减少地图数据所需的存储。多层索引400的实际变换导致基于导航系统200的操作的实体世界中的移动,比如使用车辆的人。当实体世界中的移动发生时,移动本身产生额外信息,其被转变回多层索引400,以供导航系统200继续操作并继续实体世界中的移动。现在参照图5,显示拓扑数据记录的绘图。图5显示和图2的第一路口 210关联的第一路口记录424的细节。第一路口记录424可以包括关于连接到第一路口的道路段或边缘的信息,和第一路口 210的地理位置。比如第一路口记录424的信息可用于图2的导航系统200的导航路由应用。—个道路段可叙述为和地图数据一起包括的可导航道路的一个区段,可被选为一条路线或其它导航路由信息的一部分。可通过在道路段的各端的路口的位置来叙述道路段。例如,可以图2的第一路口 210和图2的第二路口 214的位置来叙述图2的第一道路段212。对导航系统200来说,边缘可与道路段相同。为了方便叙述具有地图压缩的导航系统200,将第一路口记录424显示成具有一个外出边缘和一个内进边缘。然而,可了解路口点可以具有任何数量的外出边缘和任何数量的内进边缘。第一路口记录424可以包括第一外出边缘计数502和第一外出边缘偏移504。比如第一外出边缘计数502的外出边缘计数可以是源自于第一路口 210的边缘的数量的计数。比如第一外出边缘偏移504的外出边缘偏移可指向有关于一个路口的外出边缘的信息的存储位置。
可将关于第一路口 210的外出边缘的信息存储在第一路口记录424中。例如,第一外出边缘偏移504可以指向和第一道路段212关联的信息的开始,第一道路段212是第一路口 210的外出边缘。可在第一路口记录424中在关于第一道路段212的信息之后连续地存储和第一路口 210的其它外出边缘关联的数据。第一路口记录424可以包括第一相对目的地506。一个相对目的地可以是相对于起源路口的位置一个外出边缘的目的地的位置的表示。例如,第一相对目的地506可以是相对于第一路口 210的位置第二路口 214的位置。第一路口记录424还可以包括第一属性计数508。属性计数可以是和一个外出边缘关联的属性的数量,其是包括在路口记录中。例如,第一属性计数508可以是与和第一道路段212关联的第一路口记录424 —起包括的属性的数量的计数。在记录中有属性计数可以向导航系统200指示可以从关于特定道路段的路口记录撷取出多少信息。第一路口记录424还可以包括第一时间属性510。时间属性可以是一个装置从一个路口沿一个外出边缘行进到一个目的地路口所需的时间的估计。例如,第一时间属性510可以是从第一路口 210沿着第一道路段212行进到第二路口 214所需的估计时间。时间属性可由导航系统200用来产生具有行进时间为优先的可导航路线。第一路口记录424还可以包括第一长度属性512。长度属性可以是从一个路口沿一个外出边缘行进到一个目的地路口的长度的估计。例如,第一长度属性512可以是从第一路口 210沿着第一道路段212到第二路口 214的长度。长度属性可由导航系统200用来产生具有行进距离为优先的可导航路线。第一路口记录424还可以包括第一约束514。约束的范例可以包括速限、停车限制、转弯限制等等。约束可以是全日制限制,或在特定时间适用。举例而言,在晚上下班时间禁止沿边缘停车,或在平常日禁止左转。和路口的外出边缘关联的信息可以包括相对目的地、属性计数、时间计数、和长度计数、和约束。可和路口记录一起存储和路口关联的外出边缘信息。第一路口记录424还可以包括第一内进边缘计数516和第一内进边缘偏移518。比如第一内进边缘计数516的内进边缘计数可以是到于第一路口 210的内进边缘的数量的计数。比如第一内进边缘偏移518的内进边缘偏移可指向有关于一个路口的内进边缘的信息的存储位置。第一内进边缘偏移518可以指向第一相对起源520,其可以是第一路口 210的一个内进边缘的起源路口的位置。比如第一相对起源520的起源路口可以是相对于第一路口210的位置所表示的路口的相对位置。举例而言,图2的第三道路段222可以是图2的第四路口 220的外出边缘,并可以是第一路口 210的内进边缘。第一相对起源520可以是相对于第一路口 210的位置第四路口 220的位置。可以在第一路口记录424中连续地储存有关于第一路口 210的内进边缘的信息。例如,第一内进边缘偏移518可以指向和第三道路段222关联的信息的开始。可在第一路口记录424中在有关于第三道路段222的信息之后连续地储存和第一路口 210的其它内进边缘关联的数据。第一内进边缘偏移518可以指向第一相对起源520,其可以包括相对于第一路口210第四路口 220的位置。第一起源偏移522可以是指向和第三道路段222关联的其它信息的偏移。和第四路口 220的路口记录一起存储第三道路段222的信息。第一路口记录424以第一起源偏移指向第三道路段222的信息。、
具有地图压缩的导航系统200可以使用偏移来避免重复和路口关联的信息的冗馀。这些偏移明显减少存储比如地图数据的信息所需的存储量。使用偏移来参照信息可使导航系统200更稳健,因为重复使用相同信息会包括错误。
第一路口记录424可以包括路口相对位置,比如第一路口相对位置524。将更详细叙述,具有地图压缩的导航系统200可以计算一个路口的路口相对位置,其是相对于在一叶内其位置的其位置。例如,第一路口相对位置524可以是相对于图3的第一叶302的起源点第一路口 210的位置。在地图数据中表示值所需的字符数量可能有不同。要更精确表示数值会需要更多字符。具有地图压缩的导航系统200可进一步通过使用“vint (可变整数)”来表示可能有变化大小的某些值来减少存储量。vint是用于具有地图压缩的导航系统200中某些数值的表示的动态编码方案。vint可以包括对导航系统200的指标,其可指示值的表示是否完整,或值是否包括额外词或词组。例如,街道名称的长度可变化。街道名称可将街道名称的字母编码成vint序列。除了最后一个字母外的所有字母可包括街道名称中有额外字母的指标。街道名称的最后一个字母可以具有没有额外字母的指标,并可在记录中标记街道名称的结束。可以vint表示第一路口记录424中的一些值,比如第一路口相对位置524、第一时间属性510、和第一长度属性512。计数和偏移可以具有共同长度,并各可不用vint来加以表示。比如第一约束514的约束信息可以是一个记录,其可包括表示记录的某些值的vint。已发现到使用vint可提供指示记录(比如街道名称或和导航点关联的其它信息)的大小的有效率手段。记录大小的指示可让导航系统200更迅速且有效率地撷取位置信息以供导航系统200的功能和模块使用。比如第一路口记录424的记录可用于导航系统200中的导航路由和转弯引导的目的。可根据地理位置和与连接路口点的邻近度来群集比如第一路口记录424的数据。也可在不同级别群集数据,比如道路的类别。例如,数据的一个级别可以包括公路、州际公路、高速公路等等的纪录,以强调公路阶层。另一级别可以包括主要的市区道路,比如快速道路和大道。又另一级别可以包括地方道路的纪录,比如市区街道、住宅区域。比如第一路口记录424的路口记录可以包括、指向、或否则指示关于路口点、其位置、和与路口关联的任何内进或外出边缘的数据和信息。此信息可由具有地图压缩的导航系统200撷取来产生导航路由信息,比如图2的主要路线208。由地图数据解决方案的供应商所提供的地图数据可以包括大量重复的信息。例如,使用经常重复的名称表单来叙述街道。这对于长道路来说特别是如此,其可具有大量的路口。长道路的街道名称在地图数据中可能重复多次并因此是冗馀的来源。具有地图压缩的导航系统200可以产生每一个路口的路口记录,并且可通过产生对信息的单一实例的偏移来排除大量的冗馀或重复信息。有了信息的单一实例也可增进可靠度并限制因相同信息的多次重复而导致的错误。现在参照图6,显示一叶中一个路口点的位置的路口相对位置的绘图。图6绘示第一路口相对位置524可如何将第一路口 210的位置关连到第一叶302的位置。可以在第一路口相对位置524中表示第一路口 210的位置。图5的第一路口记录424可以包括第一路口相对位置524。
信息和数据,比如图4的拓扑数据420,可以包括在绝对地理坐标中表示的路口点的位置信息。然而,注意到绝对地理坐标可能很长且过多。路口相对位置可表示路口相对于包括该路口的叶的位置的位置信息。例如,第一路口 210的位置可相对于第一叶302的叶起源602来加以表示。叶起源602可以是叶中的一个点,比如第一叶302的西北角落。第一路口相对位置524可以将第一路口 210的位置包括为自叶起源602的偏移。例如,第一路口相对位置524可被表示成自叶起源602的经度偏移和纟韦度偏移的组合。举另一例来说,第一路口相对位置524可被表不成极坐标,具有自叶起源602的距离和自叶起源602的方向。由于叶可以是一个特定的地理区域,所以针对相同路口点,可通过相较于绝对地理坐标的相对小的数量来表示任何路口点的偏移。比如第一路口相对位置524的路口相对位置可如稍早所述被表示成vint。 具有地图压缩的图2的导航系统200可以产生压缩的地图数据的任何路口点的相对表示。已发现使用路口相对位置,比如第一路口相对位置524,可以大幅减少存储路口点的位置信息所需的存储量。路口相对位置的实际变换导致基于导航系统200的操作的实体世界中的移动,比如使用导航系统200或车辆的人。当实体世界中的移动发生时,移动本身产生额外信息,其被转变回路口相对位置,以供导航系统200继续操作并继续实体世界中的移动。现在参照图7,显示边缘相对位置的绘图。边缘相对位置可以识别内进边缘的起源路口,或外出边缘的目的地路口。图2的导航系统200可以使用和路口和边缘关连的信息,比如边缘相对位置,来产生导航路由信息。图7显示第一相对起源520可如何将第一路口 210的位置关连到第四路口 220。图7显示图3的空间感知识别300的四叉树表示的一部分。为了便于说明,四叉树显示成具有显示为圆形的节点,和显示成具有内十字的正方形的数据点。绘图显示在第一叶302中的第一路口 210和在第三叶306中的第四路口 220。第一内节点312可以是第一路口 210和第四路口 220的四叉树的共同内节点。已经说明过,拓扑数据记录,比如图5的第一路口记录424,可以包括第一相对起源520,其可以是第一路口 210的内进边缘的起源路口的边缘相对位置。在此范例中,第一相对起源520可以是相对于第一路口 210第四路口 220的位置。有了第一路口 210和第一相对目的地506的位置可向导航系统200指示图2的第三道路段222的起源和目的地路口。边缘相对位置可以向导航系统200指示如何通过四叉树进至另一个数据点。例如,导航系统200可从第一路口 210往上通过四叉树的层到第一内节点312,由三虚线箭头之一表示。导航系统200可接着从第一内节点312通过四叉树到第三叶306,其可以包括第四路口 220,由另一虚线箭头表示。导航系统200可接着通过第三叶306到第四路口 220,由第三个虚线箭头表示。比如第一相对起源520的边缘相对位置可以是合成表示,其可以包括从第一路口210上至第一内节点312的层的数量。第一相对起源520还可以包括从第一内节点312到第三叶306的部份路径。第一相对起源520还可以包括在第三叶306中第四路口 220的顺序识别。导航系统200可使用第一路口记录424的第一相对起源520来判定其是否包括第四路口 220以产生导航路由信息。
图7绘示第一路口 210的一个内进边缘,但可了解边缘相对位置可叙述路口的外出边缘。例如,图5的第一相对目的地506可以是将图2的第二路口 214的位置叙述成自第一路口 210的图2的第一道路段212的目的地的一个边缘相对位置。第一相对起源520还可以包括一个项目,指示第一路口 210与第四路口 220间是否有额外的边缘。在两个路口间可以有超过一个的道路段。边缘相对位置可向导航系统200指示具有多个连接边缘的两个路口间有边缘的选择。现在参照图8A和8B,显示约束的一个范例的各种图。道路可受到各种约束或法令以控制车辆交通、限制停车、并施加其它限制于道路、路口点、停车场、或会需要交通控制的 其它地方。约束的范例可包括转弯限制、单向街道、或在特定时间内的限制。约束可以约束记录包括在拓扑数据记录中,比如图5的第一路口记录424的第一约束514。图8A显示第一道路段212和在第二路口 214连接的第二道路段216的绘图。图2的主要路线208显示成具有第一道路段212和第二道路段216,和在第二路口 214的左转。图8A显示第一约束514,其可和图5的第一路口记录424包括在一起。为了叙述具有地图压缩的图2的导航系统200,第一约束514显示成禁止从第一道路段212左转到第二道路段216。然而,可了解图2中显示主要路线208无第一约束514,且为了说明而在图8A中显示第一约束514。约束可应用至一或更多边缘。应用是仅一边缘的约束可以包括,例如,受约束停车或单向交通。其它约束可应用至两个边缘。例如,比如第一约束514的左转约束可以被叙述在第一路口 210的第一路口记录424和第二路口 214的路口记录中。其它约束可影响超过两个边缘,比如回转的限制。图8B显示比如第一约束514的约束记录的一个范例。约束记录可以包括第一约束识别802。第一约束514可以包括约束识别,比如第一约束识别802,其可以是第一约束514中的第一约束514的独特识别符。可以vint表示第一约束识别802来节省存储空间。第一约束514还可以包括第一约束条件804。约束条件,比如第一约束条件804,可叙述可施加第一约束514的条件。可以vint表示第一约束条件804。约束条件的范例可以包括仅在平常日、仅在某些时段、仅在特定日期的执法。第一约束514还可包括禁止钥匙。禁止钥匙,比如禁止钥匙806,可指示第一约束514是否叙述禁止行为。这种约束的范例包括不可左转或不可停车。不使用禁止钥匙的约束的范例可以包括残障停车、许可证停车、共乘车道、或可选择性施加的其它约束。第一约束514还可以包括约束类型。约束类型,比如第一约束类型808,可指示约束的类型。第一约束类型808的范例可包括看守闸道、钥匙进入、转弯约束、和停车约束。第一约束514还可以包括约束码。约束码,比如第一约束码810,可指示约束的起始边缘、或结束边缘、或中间边缘。约束可牵涉超过一个边缘,比如第一约束514,其禁止从第一道路段212左转到第二道路段216。第一约束的起始边缘是第一道路段212,且第一约束514的结束边缘是第二道路段216。第一约束码810可指示第一道路段212是第一约束514的起始边缘。第二路口 214的路口记录中的一个相应约束码可以指示第二道路段216可以是第一约束514的结束边缘。具有地图压缩的导航系统200可从地图数据撷取约束,并压缩约束记录,比如第一约束514。例如,导航系统200可以压缩第一禁止钥匙806、第一约束类型808、和第一约束码810,成为二进制表示方案中的一字节。相同字节可包括一个后续约束是否可施加到相同边缘的指示。现在参照图9,显示用于地图呈现的形状数据记录的绘图。图9显示第一特征记录428的细节,其可和图4的形状数据426包括在一起。具有地图压缩的图2的导航系统200可以在形状数据426中包括形状信息以用来在显示器上显示地图特征。特征可自然发生,比如河流、湖、或山坡。特征也可以是人为对象,比如道路、建筑、或行政区。为了紧密存储和用于通过之撷取的便利性,导航系统200可将形状信息压缩成形状数据记录。 特征可属于不同类别,比如路线特征、区域特征、线特征、或POI特征。路线特征可叙述例如道路和公路的形状。区域特征可叙述例如湖、草地、或建筑的形状。线特征可叙述行政区域、文化区域、或其它可区别的区域的边境。POI特征可叙述位置和服务,其可以是兴趣点。一或更多个特征的形状信息,比如第一特征记录428,可和形状数据426包括在一起。第一特征记录428可以包括第一缩放级别902。第一缩放级别902可以是第一特征记录428的一个记录的第一组件。地图呈现模块可读取第一缩放级别902,并判定特征在哪个显示的放大级别是可见。例如,市区公园在城市的地图呈现中是可见,而在州的地图呈现中不可见。作为另一范例,历史建筑在城市街区的地图呈现中是可见,而在城市的地图呈现中是不可见。第一缩放级别902可以是记录中的第一项目。若显示的放大是使得第一缩放级别902不适合显示,导航系统200可跳过其馀的第一特征记录。第一特征记录428还可以包括第一特征长度904。第一特征长度904可以指示和特征记录包括在一起的数据项目的数量。若缩放等级在某放大不适合显示,第一特征长度904可以向导航系统200的地图呈现模块指示跳过多少个数据项目以移到新的形状记录。第一特征记录428还可以包括第一特征主题码906。第一特征主题码906可以指示叙述在第一特征记录428中的形状的性质。例如,特征主题码可以识别或代表任何导航特征,比如公园、道路、邻里、或海滨。作为另一范例,特征可以是显着的建筑,比如商场、历史建筑、市政建筑、或商业园。可从特征记录省略第一特征主题码906。例如,兴趣点(POI)的特征记录可省略主题码。第一特征记录428还可以包括第一特征名称908。第一特征名称908可代表形状的名称,使得可和形状一起呈现名称。名称可有数个字所构成,名称中的每一个字可具有字识别符。字识别符可以界定在字识别符的字典中。字识别符的字典可将名称(比如第一特征名称908)的每一个字识别符和形状的名称中的字关联。第一特征地址910也可以是来自字识别符字典的一串字识别符。针对某些特征,比如区域、道路、或线特征,特征地址可以是随意的。第一特征地址910可叙述POI特征(t匕如商店、博物馆、或其它位置)的地址位置。第一特征属性912可以叙述形状的一或更多个属性。可以vint表示第一特征属性912来指示形状的多个属性。特征属性可以包括用于显示形状的额外信息。例如,特征属性可以包括和形状一起显示的额外词,或用于显示形状的特定颜色。第一点位置914和第二点位置916可以是标记特征的边界的点位置。点位置可指示例如公园的边界。可将第一点位置914的位置表示成含有形状的叶中路口相对位置。例如,第一点位置914可相对于其叶的西北角落来加以表示。第一特征记录428中的后续点可相对于前一个点来加以表不。例如,可相对于第一点位置914表不第二点位置916。第一特征记录428可以包括不同数量的点位置,比如第一点位置914和第二点位置916。在第一特征记录428中的更多点可让形状具有更多细节和更精准。具有一个点位置的特征可代表POI特征,使得该点指示一个位置的地址。现在参照图10,显示地图数据压缩流程1000的流程图。具有地图压缩的图2的导航系统200的地图数据压缩流程1000可以产生导航系统200的导航功能和模块的压缩地图数据1002。地图数据压缩流程1000可预先建构多层索引400,具有拓扑数据420和形状数据426。拓扑数据420可以包括路口记录,比如图5的第一路口记录424。形状数据426可以包括形状记录,比如图9的第一特征记录428。建构树模块1004可以接收比如来源地图数据1006的数据。建构树模块1004可以产生四叉树1008。分配器模块1010可以接收四叉树1008,并且可以产生具有空间感知识别300的多层索引400。压缩模块1012可以从分配器模块1010接收空间感知识别300和多层索引400。压缩模块1012还可以接收来源地图数据1006并产生拓扑数据420和形状数据426。对准偏移模块1014可以接收拓扑数据420、形状数据426、空间感知识别300和多层索引400,并可以产生压缩地图数据1002。建构树模块1004可以接收来源地图数据1006。可以从比如外部供应商的来源提供来源地图数据1006。建构树模块1004可以将来源地图数据1006的数据组织成四叉树1008。建构树模块1004可以产生具有每一叶中两百五十六个数据点或路口的限制的四叉树1008。建构树模块1004可以针对由来源地图数据1006覆盖的整个领域产生四叉树1008。建构树模块1004还可以插入内节点到四叉树1008中,比如图3的第一内节点312。建构树模块1004可以产生图4的块索引402,具有块识别、叶计数、和叶偏移。例如,建构树模块1004可以产生图4的第一块识别314、图4的第一叶计数404、和图4的第一叶偏移406。建构树模块1004可以产生叶索引,具有相对叶识别、拓扑偏移、拓扑计数、形状偏移、和形状计数。例如,建构树模块1004可以产生图4的叶索引408、图4的第一相对叶识别316、图4的第一拓扑偏移412、图4的第一拓扑计数414、图4的第一形状偏移416、和图4的第一形状计数418。块索引402和叶索引408可和多层索引400包括在一起。分配器模块1010可以从建构树模块1004接收四叉树1008。分配器模块1010可以产生空间感知识别300和多层索引400。分配器模块1010还可插入路口的偏移到路口的拓扑数据记录中,比如图4的第一路口索引422。如前所述,第一块识别314、第一相对叶识别316、和第一路口索引422可包含地图区域的一个数据点(比如路口)的独特识别。压缩模块1012可以接收来源地图数据1006。压缩模块1012还可以接收空间感知识别300和多层索引400,并可预先建构拓扑数据420和形状数据426。压缩模块1012可以产生路口相对位置,比如图5的第一路口相对位置524。压缩模块1012还可以计算内进边缘的计数,比如图5的第一内进边缘计数516,和外出边缘的计数,比如图5的第一外出 边缘计数502。压缩模块1012可以插入偏移到拓扑数据中,比如图5的第一外出边缘偏移504、图5的第一内进边缘偏移518、和图5的第一起源偏移522。
压缩模块1012还可以计算内进边缘的相对位置,比如图5的第一相对起源520和图5的第一相对目的地506。压缩模块1012可以将来自来源地图数据的绝对位置值转换成具有vint的边缘相对位置以限制相对位置的大小。压缩模块1012可以产生属性计数,比如图5的第一属性计数508。压缩模块1012还可以产生约束记录,比如图8的第一约束514。压缩模块1012还可以压缩来自来源地图数据1006的形状信息成为形状数据426的形状记录,比如第一特征记录428。压缩模块1012可以撷取缩放等级,比如图9的第一缩放级别902,并计算形状记录的长度,比如图9的第一特征长度904。压缩模块1012还可以撷取主题码,比如图9的第一特征主题码906。压缩模块1012可以提取比如图9的第一特征名称908的名称,和比如图9的第一特征地址910的地址。压缩模块1012还可以撷取比如图9的第一特征属性912的属性,和比如图9的第一点位置914的点位置。压缩模块1012可以发送包括拓扑记录和形状记录的拓扑数据420和形状数据426到对准偏移模块1014。对准偏移模块1014可以接收拓扑数据420和形状数据426。对准偏移模块1014可以对准拓扑数据420的边缘和路口的偏移。例如,拓扑数据420可以包括图5的第一路口记录424。由于压缩模块1012产生第一路口记录424,比如图5的第一外出边缘偏移504会需要细化。对准偏移模块1014可完成偏移的细化。对准偏移模块1014可以汇编具有空间感知识别300、多层索引400、拓扑数据420、和形状数据426的压缩地图数据1002。对准偏移模块1014可以发送压缩地图数据1002到定制数据模块1016。定制数据模块1016可以接收压缩地图数据1002并可以产生压缩地图数据1002的更新版本。定制数据模块1016还可以提交修订约束1018和错误校正1020。可从导航系统200的输入装置提交修订约束1018和错误校正1020。修订约束1018可以是压缩地图数据1002中的约束记录的修改。定制数据模块1016可允许拓扑数据420中的新约束,或拓扑数据420中的现有约束的修改。例如,导航系统200的用户可选择施加速度约束于一道路段上,比如图2的第一道路段212。导航系统200的用户可以提交修订约束1018到图5的第一路口记录424以改变速限。修订约束可以包括各种个人偏好,例如,用户可以选择永远不使用特定街道,或可以选择永远不使用高速公路。其它范例可以包括在特定路口的左转的优选约束,或非法定速限的速限。还可以直接在压缩地图数据1002编辑错误校正1020。例如,若在来源地图数据1006中拼错街道名称,定制数据模块1016可以接收具有更新的街道名称的错误校正1020。已发现导航系统200可提供迅速且有效率地修改数据以适应个人偏好或校正缺陷的手段。具有地图压缩的导航系统200的此能力启用更稳健更多功能的系统。修改的地图数据的实际变换导致基于导航系统200的操作的实体世界中的移动,比如使用导航系统200或车辆的人。当实体世界中的移动发生时,移动本身产生额外信息,其被转变回压缩地图数据,以供导航系统200继续操作并继续实体世界中的移动。也已发现导航系统200的压缩地图数据1002可比来源地图数据1006占用更小的存储空间。例如,涵盖美国48个相邻州的地图数据会需要超过6GBytes的储存空间,而具有地图压缩的导航系统200可以压缩相同地图数据成小于2GBytes。这可以是显着经济的存储,其允许压缩地图数据1002储存在更紧密且便携式装置中的更小内存装置上。、
具有地图压缩的导航系统200的实际变换导致基于导航系统200的操作的实体世界中的移动,比如使用导航系统200或车辆的人。当实体世界中的移动发生时,移动本身产生额外信息,其被转变回压缩地图数据1002,以供导航系统200继续操作并继续实体世界中的移动。
现在参照图11,显示路线产生流程1100的流程图。具有地图压缩的图2的导航系统200的路线产生流程1100绘示用于产生路线(比如主要路线208)的压缩地图数据1002的边缘的搜寻和撷取。路线产生流程1100可以,基于图3的空间感知识别300的图4的多层索引400,选择比如图2的第一路口 210的路口,以包括在已产生路线中。路线产生流程1100可以基于图2的第一路口 210产生主要路线208,以显示在比如图2的装置202的装置上。路线请求模块1102可以接收开始位置1104和目的地位置1106。开始位置1104可以是即自其产生可导航路线的路口或其它位置。目的地位置1106可以是可导航路线的终点的目标位置。路线请求模块1102可以从导航系统200的输入接收开始位置1104和目的地位置1106。路线请求模块1102可以发送开始位置1104和目的地位置1106到地图通过模块1108。地图通过模块1108可以判定开始位置1104的相对位置,并且可通过具有空间感知识别300的多层索引400到和开始位置1104关联的路口记录,比如和图4的拓扑数据420中的第一路口 210关联的图4的第一路口记录424。地图通过模块1108还可以选择路口,比如和目的地位置1106关联的图2的第三路口 218。地图通过模块1108可接着搜寻会导至目的地的边缘。路线请求模块1102可通过压缩地图数据1002到第一路口记录424。地图通过模块1108可以查询第一路口记录424的外出边缘。例如,地图通过模块1108可以判定没有导至在第三路口 218的目的地位置1106的第一路口 210的外出边缘。地图通过模块1108也可判定第一路口的哪个外出边缘导至目的地位置1106。地图通过模块1108可从第一路口 210通过压缩地图数据1002到边缘的目的地。例如,地图通过模块1108可通过空间感知识别300的多层索引400到和图2的第二路口214关联的第一相对目的地506。地图通过模块1108可以判定第一道路段212,从第一路口210导至在第二路口 214的第一相对目的地506,可以是主要路线208的一个适当边缘。地图通过模块1108可以基于将和主要路线208包括在一起的第一路口 210选择第一道路段212。地图通过模块1108可以撷取图5的第一时间属性510和图5的第一长度属性512。针对具有路线最短时间为优先的路线,地图通过模块1108可以依据第一时间属性510选择第一道路段212。针对具有路线最短距离为优先的路线,地图通过模块1108也可以依据第一长度属性512选择第一道路段212。地图通过模块1108也可以撷取第一约束514。第一约束514可以包括对一个约束的修改,比如图10的修订约束1018。地图通过模块1108可依据图5的第一约束514选择第一道路段212。若第一约束514提供在主要路线208中使用第一道路段212的障碍,地图通过模块1108将搜寻第一道路段212的替代者。修订约束1018也可提供使用第一道路段212的障碍,且地图通过模块1108可以找寻第一道路段212的替代道路段。地图通过模块可以发送第一道路段212到更新路线模块1110。更新路线模块1110可以和到主要路线208的第二路口 214关联的第一道路段212更新主要路线208。若主要路线208不完整,路线产生流程可回到地图通过模块1108。地图通过模块1108可查询第二路口 214的外出边缘以找出适当边缘,其也可被添加到主要路线208。若主要路线208是从开始位置1104到目的地位置1106的一条完整路线,更新路线模块1110可以发送主要路线208到显示路线模块1112。显示路线模块1112可以从更新路线模块1110接收主要路线208。显示路线模块1112可以在具有导航系统200的显示器上显示主要路线208。显示路线模块1112可接着回到路线请求模块1102以等待路由信息的新请求。路线产生流程1100可以通过选择路口并判定和连接到另一路口的路口关联的道路段来产生可导航路线。路线产生流程1100可汇编可以从开始位置1104导至目的地位置1106的一或更多个道路段。路线产生流程1100可以基于通过边缘信息的时间属性和长度属性所判定的所需的最小距离或最小时间的偏好来考虑多条路线。现在参照图12,显示用于地图呈现的形状选择1200的流程图。地图呈现可以包括在具有图2的导航系统200的装置上的影像的显示,其表现一个区域中的形状。例如,将图2的主要路线208显示成具有比如图2的第一道路段212的道路段,和比如图2的第一特征224和图2的第二特征226的显着建筑。在图2中显示的特征和形状增进主要路线208的显示。可通过在导航系统200的形状选择1200中的地图呈现来达成图2的显示器206上的道路段和建筑的显示。地图呈现可允许形状的显示,其可和形状数据426和比如第一特征记录428的形状记录包括在一起。可通过选择和即将显示的一个区域关联的形状,并通过判断显示形状是否适当,来达成导航系统200中的地图呈现。显示请求模块1202可以产生区域显示的请求。可以多个方式接收显示请求模块1202。显示请求模块1202的一个范例可以是在导航路由信息的产生之后导航系统200的一个自动功能。路线产生流程1100可以产生主要路线208,且导航系统200可以自动发送显示请求模块1202以用相同区域的适当的形状显示主要路线208。显示请求模块1202的另一个范例可以是请求观看一个市的地图,而不一定非得显示路线。形状选择1200可进到形状通过模块1204。形状通过模块1204可通过压缩地图数据1002到压缩地图数据1002的形状数据426。显示请求模块1202可以包括叶的身分,其形状可由导航系统200加以显示。显示请求模块1202可以包括叶的身分,其形状可由导航系统200加以显示。例如,显示请求模块1202可以包括图3的第一叶302,具有图3的第一块识别314和图4的第一相对叶识别316。形状通过模块1204可以通过多层索引400到第一相对叶识别316,并且可以定位和图2的第一特征224关联的图4的第一特征记录428。形状通过模块1204可以发送和第一叶302关联的形状记录到选择特征模块1206。选择特征模块1206可以个别选择每一个形状记录来判定是否可以显示该形状。选择特征模块1206可以发送比如第一特征记录428的形状记录到查询缩放模块1208。查询缩放模块1208可撷取形状的缩放等级。例如,查询缩放模块1208可撷取图9的第一缩放级别902。查询缩放模块1208可以比较第一缩放级别902与即将显示的地图区域的规模。 若查询缩放模块1208判定可从显示器省略第一特征224,则形状选择1200可回到选择特征模块1206以发送第一叶302的另一形状。若查询缩放模块1208判定可以显示第一特征224,查询属性模块1210可以撷取第一特征224的其它信息,比如图9的第一特征主题码906、图9的第一特征名称908、图9的第一点位置914等等。查询属性模块1210可以发送关于第一特征224的信息到显示形状模块1212。显示形状模块1212可操作显示器,比如在图2的用户接口 204上的图2的显示器206,以呈现出第一特征224的影像。显示形状模块1212可以回到选择特征模块1206来选择第一叶302的另一个形状。若第一叶302的所有形状都已发送到查询缩放模块1208,选择特征模块1206可回到形状通过模块1204。
查询属性模块1210可以接收形状过滤器1214。可从导航系统200的输入接收形状过滤器1214,并且可过滤在显示器206上的形状的呈现。例如,导航系统200的用户可以选择仅显示街道和道路,并且可发送形状过滤器1214到查询属性模块1210来过滤待呈现的形状。查询属性模块1210可以接收形状过滤器1214,并且可以防止某些形状的显示,比如公园、河流、和大型建筑。可以根据用户偏好发送形状过滤器1214,使得导航系统200可以根据叙述在形状过滤器1214中的用户偏好来呈现地图。形状通过模块1204可以判断是否可检阅一个不同叶来在显示器206上呈现形状。若形状通过模块1204选择另一叶,选择特征模块1206可以发送该叶的形状到查询缩放模块1208。否则,若形状通过模块1204判定不应该再检阅其它叶,形状通过模块1204可回到显示请求模块1202等待显示形状的新请求。现在参照图13,显示在本发明的第二实施例中的具有地图压缩的导航系统1300的方块图。导航系统1300可以是图I的第二装置104。例如,导航系统1300可以是任何各种装置,比如手机、个人数字助理、笔记本计算机、或娱乐装置。导航系统1300可以是独立装置,或可并入车辆中,例如,汽车、卡车、客车、或火车。作为另一范例,导航系统1300可以是特定机器,比如大型机、服务器、集群服务器、机架安装服务器、或刀片服务器,或作为更具体例子,IBM System zlO 商务级大型机或HP ProLiant ML "服务器。导航系统1300可以包括用户接口 1302、位置单元1304、存储单元1306、比如处理器的控制单元1308、和通信单元1310。用户接口 1302可以包括输入装置和输出装置。例如,输出装置可以包括显示器、投影机、视频萤幕、扬声器、或上述的任何组合。输入装置的范例包括小键盘、触摸板、软功能键、键盘、麦克风、或上述的任何组合,提供数据和通信输入。为了便于说明,将导航系统1300叙述成具有离散功能模块,但应了解到导航系统1300可以具有不同组态。例如,控制单元1308、通信单元1310、和用户接口 1302可以不是离散功能模块,但可以具有结合成一个功能模块的上述模块的一或更多者。通信单元1310可以包括主动或被动组件,比如微电子件或天线,以和比如图I的通信路径106的通信道路互动。控制单元1308可以执行软件1312并可以提供导航系统1300的智能。举例而言,软件1312可以包括图2的导航系统200。控制单元1308可操作用户接口 1302来显示由导航系统1300产生的信息,或接收信息以供导航系统1300使用。控制单元1308可以包括预先建构模块1314、段选择模块1316、导航引导模块1318、和地图呈现模块1320。用户接口1302可以接收来源地图数据1006。用户接口 1302也可以接收图10的修订约束1018和图10的错误校正1020。控制单元1308的预先建构模块1314可以操作图10的地图数据压缩流程1000来产生压缩地图数据1002。用户接口 1302也可以接收图11的开始位置1104和目的地位置1106。控制单元1308的段选择模块1316可以操作图11的路线请求模块1102和图11的地图通过模块1108来产生图2的主要路线208。控制单元1308的导航引导模块1318可以操作图11的更新路线模块1110和图11的显示路线模块1112。用户接口 1302也可以接收图12的显示请求模块1202。控制单元1308的地图呈现模块1320可以操作图12的形状选择1200。控制单元1308也可以操作用户接口 1302来显示由导航系统1300产生的信息。例如,控制单元可以操作用户接口 1302来显示比如图2的主要路线208的路线,和比如图 2的第一特征224的形状。存储单元1306可以包括软件1312,设定数据、和导航系统1300的其它数据,其可以包括图10的地图数据压缩流程1000、图11的路线产生流程1100、和图12的形状选择1200。控制单元1308可以在存储单元1306中存储来源地图数据1006。控制单元1308也可以在存储单元1306中存储压缩地图数据1002。导航系统1300的位置单元1304可以接收导航系统1300的位置读数。可以许多方式实现位置单元1304。例如,位置单元1304可以是提供位置读数的导航组件,比如全球定位系统(GPS)、惯性导航系统、细胞塔位置系统、加速计位置系统、或上述的组合。位置读数可以用为主要路线208的开始位置1104。现在参照图14,显示在本发明的第三实施例的具有地图压缩的导航系统1400的方块图。导航系统1400可以包括第一装置1402、第二装置1404、和通信路径106。第一装置1402可以透过通信路径106与第二装置1404通信。为了便于说明,将导航系统1400显示成具有作为客户端的第一装置1402,但应了解到导航系统1400可以具有作为不同类型的装置的第一装置1402。例如,第一装置1402可以是服务器。同样为了便于说明,将导航系统1400显示成具有作为服务器的第二装置1404,但应了解到导航系统1400可以具有作为不同类型的装置的第二装置1404。例如,第二装置1404可以是客户端。作为另一例子,第一装置1402可以是特定机器,比如便携式计算装置、薄客户机、笔记本计算机、上网本、智能手机、个人数字助理、或手机,且作为具体的例子,AppleiPhone (TM) ,Palm Centro (TM)、或MOTO Q Global (TM)。又作为另一例子,第二装置 1404 可以是特定机器,比如大型机、服务器、集群服务器、机架安装服务器、或刀片服务器,或者作为更具体的例子,IBM System zlO (TM)商务级大型机或HP ProLiant ML (TM)服务器。为了简化本发明的此实施例的说明,第一装置1402将被叙述成客户端装置且第二装置1404将被叙述成服务器装置。本发明不限于装置类型的此选择。选择是本发明的一个范例。第一装置1402可以包括,例如,比如处理器的第一控制单元1406、第一存储单元1408、第一通信单元1410、位置单元1304、和第一用户接口 1412。为了便于说明,将导航系统1400显示成具有以离散功能模块叙述的第一装置1402,但应了解到导航系统1400可以具有在不同组态中的第一装置1402。例如,第一控制单元1406、第一通信单元1410、和第一用户接口 1412可以不是离散功能模块,但可以具有结合成一个功能模块的上述模块的一或更多者。第一控制单元1406可以包括段选择模块1316、导航引导模块1318、和地图呈现模块1320。第一控制单元1406可以执行来自第一存储单元1408的第一软件1414并可以提供第一装置1402的智能。举例而言,第一软件1414可以包括图2的导航系统200的一部分。第一控制单元1406可以操作第一用户接口 1412来显示由导航系统1400产生的信息。第一控制单元1406也可为导航系统1400的其它功能执行第一软件1414。段选择模块1316可以操作图11的路线请求模块1102和图11的地图通过模块1108。导航引导 模块1318可以操作图11的更新路线模块1110和图11的显示路线模块1112。控制单元1308的地图呈现模块1320可以操作图12的形状选择1200。可以多个方式实现第一存储单元1408。例如,第一存储单元1408可以是易失性内存、非易失性内存、内部内存、或外部内存。第一存储单元1408可以包括第一软件1414,和压缩地图数据1002。第一用户接口 1412可以包括输入装置和输出装置。例如,输出装置可以包括投影机、视频萤幕、扬声器、或上述的任何组合。输入装置的范例包括小键盘、触摸板、软功能键、键盘、麦克风、或上述的任何组合,提供数据和命令输入。第一用户接口 1412可以接收到第一装置1402的输入,比如图11的开始位置1104和图11的目的地位置1106。第一装置1402的位置单元1304可以产生导航系统1400的当前位置。可以许多方式实现位置单元1304。例如,位置单元1304可以是全球定位系统(GPS)、惯性导航系统、细胞塔位置系统、加速计位置系统、或上述的组合。第一通信单元1410可以包括主动或被动组件,比如微电子件或天线,以和通信路径106互动。第一控制单元1406可以执行第一软件1414并且提供第一装置1402的智能以经由第一通信单元1410和第二装置1404、第一用户接口 1412、通信路径106互动,和对位置单元1304的互动。第二装置1404可以包括,例如,比如处理器或计算机的第二控制单元1416、第二存储单元1418、第二用户接口 1420、和第二通信单元1422。为了便于说明,将导航系统1400显示成具有以离散功能模块叙述的第二装置1404,但应了解到导航系统1400可以具有在不同组态中的第二装置1404。例如,第二控制单元1416和第二通信单元1422可以不是离散功能模块,但可以具有结合成一个功能模块的上述模块的一或更多者。第二存储单元1418可以包括第二装置1404的第二软件1424、来源地图数据1006、和压缩地图数据1002。举例而言,第二软件1424可以包括图2的导航系统200的一部分。为了便于说明,将第二存储单元1418显示成单一元件,但应了解到第二存储单元1418可以是存储元件的散布。同样为了便于说明,将导航系统1400显示成具有作为单一阶层存储系统的第二存储单元1418,但应了解到导航系统1400可具有在不同组态中的第二存储单元1418。例如,可以不同存储技术形成第二存储单元1418,形成包括不同级别的高速缓存、主内存、旋转媒体、或离线存储的内存阶层式系统。
第一通信单元1410可以和通信路径106耦合以发送信息到第二装置1404。第二装置1404可以从第二通信单元1422的通信路径106接收信息。第二通信单元1422可以和通信路径106耦合以发送信息到第一装置1402。第一装置1402可以从第一通信单元1410中的通信路径106接收信息。可通过第一控制单元1406、第二控制单元1416、或上述的组合来执行导航系统1400。第二控制单元1416可以包括预先建构模块1314。预先建构模块1314可以操作第二用户接口 1420来接收来源地图数据1006。预先建构模块1314可以操作图10的地图数据压缩流程1000来接收来源地图数据1006并产生压缩地图数据1002。预先建构模块1314还可以操作第二用户接口 1420以接收图10的错误校正1020以用于更新压缩地图数据 1002。第二控制单元1416可以操作第二通信单元1422来透过通信路径106发送压缩地图数据1002到第一装置1402。第二控制单元1416也可在第二存储单元1418中存储压缩地图数据1002。第一控制单元1406可以操作第一通信单元1410来从通信路径106接收压缩地图数据1002。第一控制单元1406可以在第一存储单元1408中存储压缩地图数据1002。第一用户接口 1412可以接收图11的路线请求模块1102中的图11的开始位置1104和图11的目的地位置1106。若开始位置1104是第一装置1402的位置读数,则第一控制单元1406可以操作位置单元1304以接收位置读数。第一控制单元1406也可以操作第一软件1414的路线产生流程1100来产生图2的主要路线208。第一控制单元1406也可以操作第一用户接口 1412来在第一用户接口 1412的显示组件上显示主要路线208。第一用户接口 1412也可以接收图10的修订约束1018和图10的错误校正1020。第一控制单元1406可以操作图10的定制数据模块1016来更新第一装置1402上的压缩地图数据1002。第一控制单元1406也可以操作形状选择1200来在第一用户接口 1412的显示器上显示图2的第一特征224。现在参照图15,显示在本发明的又另一实施例中的具有地图压缩的导航系统200的操作的方法1500的流程图。方法1500包括在模块1502中基于用于识别位置数据点的多个空间感知识别而预先建构多层索引;在模块1504中基于空间感知识别的多层索引而选择第一路口 ;和在模块1506中基于在装置上显示的第一路口而产生主要路线。本发明的又另一重要态样是在于其有价值地支持并服务减少成本、简化系统、并增加性能的历史趋势。本发明的这些和其它有价值的态样因此使技术的状态进展到至少下一水平。因此,已发现本发明的导航系统提供重要且迄今未知且不可得的解决方法、能力、和功能方面,在使用具有基于位置的服务能力的移动客户端上改善性能、增加可靠度、增加安全性、和减少成本。所得的方法和组态是简单、有成本效益、不复杂、高度灵活、准确、灵敏、和有效,并可通过适应已知的组件来加以实现以供就绪、高效率、和经济的制造、应用、和利用。虽然已结合特定的最佳模式描述本发明,当然许多的替代、修改、和变化对于在阅读了上述说明的本领域的技术人员而言为显而易见。因此,意图涵盖落入所包括的权利要求的范围内的所有这些替代、修改、和变化。在此迄今提出或附图中所示的所有事宜应说明、性和非限制性的 加以解释。
权利要求
1.一种导航系统的操作的方法,包含 基于用于识别位置数据点的多个空间感知识别预先建构多层索引; 基于所述空间感知识别的所述多层索引选择第一路口 ;和 基于在装置上显示的所述第一路口产生主要路线。
2.根据权利要求I所述的方法,其中预先建构所述多层索引包括 以可变整数、路口相对位置、相对目的地、和相对起源提供路口记录;和 预先建构具有所述路口记录的拓扑数据。
3.根据权利要求I所述的方法,其中选择所述第一路口包括 通过所述多层索引到和所述第一路口关联的第一路口记录; 通过所述多层索引到和第二路口关联的第一相对目的地;和 以和所述第一路口关联的第一道路段更新所述主要路线。
4.根据权利要求I所述的方法,其中产生所述主要路线包括 撷取和所述第一路口关联的第一时间属性;和 基于所述第一时间属性选择第一道路段。
5.根据权利要求I所述的方法,其中产生所述主要路线包括 撷取和所述第一路口关联的第一长度属性;和 基于所述第一长度属性选择第一道路段。
6.—种导航系统,包含 预先建构模块,基于用于识别位置数据点的多个空间感知识别预先建构多层索引;段选择模块,基于所述空间感知识别的所述多层索引选择第一路口 ;和控制单元的导航引导模块,基于在装置上显示的所述第一路口产生主要路线,所述控制单元耦合到用户接口。
7.根据权利要求6所述的系统,其中所述预先建构模块是用于以可变整数、路口相对位置、相对目的地、和相对起源提供路口记录,和预先建构具有所述路口记录的拓扑数据。
8.根据权利要求6所述的系统,其中 所述段选择模块是用于通过所述多层索引到和所述第一路口关联的第一路口记录,并通过所述多层索引到和第二路口关联的第一相对目的地;和 所述控制单元的所述导航引导模块是用于以和所述第一路口关联的第一道路段更新所述主要路线,所述控制单元耦合到通信单元。
9.根据权利要求6所述的系统,其中所述段选择模块是用于撷取和所述第一路口关联的第一时间属性和基于所述第一时间属性选择第一道路段。
10.根据权利要求6所述的系统,其中所述段选择模块是用于撷取和所述第一路口关联的第一长度属性和基于所述第一长度属性选择第一道路段。
全文摘要
一种导航系统的操作的方法包括基于用于识别位置数据点的多个空间感知识别预先建构多层索引;基于所述空间感知识别的所述多层索引选择第一路口;和基于在装置上显示的所述第一路口产生主要路线。
文档编号G01C21/30GK102639961SQ201080055285
公开日2012年8月15日 申请日期2010年10月7日 优先权日2009年10月8日
发明者K·邓, Y·林, Y·秦 申请人:泰为信息科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1