CN108291815A - 改善流式导航数据的可用性的图块版本控制 - Google Patents
改善流式导航数据的可用性的图块版本控制 Download PDFInfo
- Publication number
- CN108291815A CN108291815A CN201680063730.3A CN201680063730A CN108291815A CN 108291815 A CN108291815 A CN 108291815A CN 201680063730 A CN201680063730 A CN 201680063730A CN 108291815 A CN108291815 A CN 108291815A
- Authority
- CN
- China
- Prior art keywords
- segment
- version
- map
- route
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3859—Differential updating map data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
- G01C21/3881—Tile-based structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/004—Map manufacture or repair; Tear or ink or water resistant maps; Long-life maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Navigation (AREA)
- Instructional Devices (AREA)
Abstract
描述了用于更新导航地图数据的系统、方法和装置。从用户或装置接收制定路线请求。根据制定路线请求来识别第一地图图块和第二地图图块。识别新版本的第一地图图块,并且访问至少所述第一地图图块的兼容性矩阵。可以执行对兼容性矩阵的分析以确定新版本的第一地图图块的对象是否与第二地图图块兼容。
Description
技术领域
以下公开内容涉及更新导航地图数据,或者更具体地,涉及用于更新、应用和检查混合导航的版本依赖性的系统和算法。
背景技术
增加的地图更新、混合导航以及导航数据流对现代导航系统而言是重要的。术语混合导航指的是以下所述的一种系统,在该系统中,一些地图数据缓存在移动装置处,但是在移动装置行进到新的地理区域时,移动装置仍依赖于从服务器下载地图数据。高度自动驾驶(HAD)
应用的区域需要可靠的数据。在此环境下的可靠性具有两个方面。第一,数据必须是新的,即,最新的和当前的。第二,其必须是一致的。
对于一致的数据库,包含在该数据库中的数据必须与在该数据库中的其他数据兼容。这种兼容性使得数据一致或可靠,并且当访问数据时,其产生期望的结果。
发明内容
在一个实施例中,识别两个或更多个地图图块以及访问两个或更多个地图图块的兼容性矩阵。执行对所述两个或更多个地图图块和所述兼容性矩阵的分析。所述兼容性矩阵包括图块版本值和对象版本值。基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突。基于所述一个或更多个版本冲突来生成路线。
在一个实施例中,至少一个存储器包括用于一个或更多个程序的计算机程序代码;所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使所述装置至少接收针对制定路线数据的制定路线请求;根据所述制定路线数据来识别两个或更多个地图图块;访问兼容性矩阵;执行对所述两个或更多个地图图块和具有对象版本值的所述兼容性矩阵的分析;基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突;以及基于所述制定路线请求和所述一个或更多个版本冲突来生成路线。
附图说明
参考以下附图来描述示例实施例。
图1示出存储用于在系统不具有互联网连接时更新导航地图数据的示例方式。
图2示出用于在系统具有网络连接时存储数据导航地图数据的示例。
图3示出用于在系统不具有网络连接时更新导航地图数据的示例系统。
图4示出用于无论网络连接如何,使用兼容性矩阵来更新导航地图数据的系统。
图5A示出部分地图或数据库的旧版本。
图5B示出图5A的部分地图或数据库的新版本。
图6A和图6B示出在图5A至图5B的旧版本和新版本之间改变的图块。
图7示出示例兼容性矩阵。
图8A示出示例制定路线情景。
图8B示出另一示例制定路线情景。
图9A示出另一示例制定路线情景。
图9B示出另一示例制定路线情景。
图10示出用于更新导航地图数据的示例移动装置。
图11示出用于更新导航地图数据的示例流程图。
图12示出用于更新导航地图数据的示例系统。
图13示出用于更新导航地图数据的示例流程图。
具体实施方式
现代导航系统使用版本控制来处理新鲜性(freshness)和一致性。通常,导航内容被组织在与地理区域相关联的图块中。图块具有版本并存储在数据库(如,SQLite数据库)中,并且图块可作为二进制大对象(BLOB)而被存储。此外,图块中的对象可具有版本,并且所述对象可在BLOB中被分类。
例如,路线数据存储在表中(例如,存储在路线表(制定路线(路由)图块表(RoutingTileTable))中),该表可具有三个或更多个属性(识别值(ID)、版本值、图块数据(TileData))。ID反映的是数据的空间位置,版本反映的是版本控制信息,且图块数据包含该特定区域的二进制编码的导航数据或BLOB数据。建立由导航装置使用的地图的过程需要编译地图并将地图下载到导航装置。在已经通过scrach来编译完整地图之后,表中的所有图块具有相同的版本,其可被称为版本一。地图可以以区域水平被编译,例如,德国、伊利诺斯州的地图或类似地理区域。如果导航装置(如,汽车中的导航头部单元)正在将编译的数据库从一个版本更新至另一个版本,则导航装置可更新具有后面版本的ID的所有图块。仅增加了被改变的图块的版本。如果所有图块已经被更新,则更新的数据库再一次是新的且一致的。不幸的是,更新完整产品(如,欧洲或至少德国)的大多数或所有图块是相当昂贵的操作。这种更新可需要大量地通过空中带宽(air bandwidth)且其花费非常多的时间来更新客户端上的数据库。
以下实施例涉及一种更新导航地图数据的方法。更新导航地图数据可通过维持导航应用与服务器之间的网络(如,互联网)连接来实现。导航应用可以以规律的间隔来下载部分地图。然而,下载全部地图可花费大量时间和带宽。兼容性矩阵可用于解决当导航应用与容纳地图数据的服务器之间不存在互联网连接时更新导航地图数据的问题。另外或替代地,兼容性矩阵可用于限制到导航应用的下载(即使在没有互联网连接的时候)。限制下载可改善导航应用的反应时间并降低与无线通信相关联的费用。
图1示出存储用于在系统不具有互联网连接时更新导航地图数据的示例技术。图1包括:一组图块102部分(1)、表104处的图块对应识别值(id)、版本号和数据,相同的一组图块106部分(2)(其上具有潜在路线),表108和112处的(具有改变的版本号和针对图块4712的改变的数据)图块对应id、版本号和数据,以及在110处的该组图块上的潜在路线。一种限制需要被下载的数据量的方法是仅下载导航装置当前正在其中行进的区域。假设导航装置计算从A到B的路线并在该过程中仅使用三个图块。例如,在图1中的从A到B的路线(部分(2))包括三个图块(4711、4712和4713)。
在计算路线时,导航装置可仅针对这三个图块查询系统以获得当前数据,并且因此只要这些图块已经改变就仅更新这些图块。例如,在图1中,在部分(1)和部分(2)之间,图块4712已经改变。因为存在互联网连接,由于已经更新了数据库108中的图块4712,因此可计算路线。如果导航装置稍后计算从点A到点C的路线,并且无论出于何种原因,导航装置不具有可用的互联网连接(如在114处由闪电标记所示的)(蜂窝的或其他无线的),则导航装置可查阅数据库并确定图块数据不是一致的,这意味着由于数据库不一致,计算这种路线不再是可能的,如图1的部分(3)所示。替代地,当导航装置不具有互联网连接(蜂窝的或其他无线的)时,导航装置可确定数据是一致的并且不需要下载新的图块版本,或者可确定数据是不一致的并且下载一个或更多个图块版本。
由于图块4712可具有对新版本的图块1034(其不在数据库108中)的参考,因此导致不一致性。换句话说,由于利用图1的部分(2)中的互联网连接进行路线制定,因此,图块4712的版本2与图块4711和4713的版本1一致。然而,由于未利用互联网连接进行路线制定,因此,不能确定图块4712的版本2是否与图块1034的版本2一致。因此,路线制定将是不可能的。更普遍地,一个图块可具有对新版本的另一图块(其不在数据库中)的参考,并且因此,路线制定将是不可能的。
在一个实施例中,用于高度自动驾驶的高分辨率数据库根本不更新或改变。因此,数据库保持一致。被下载的所有新数据存储在第二数据库中,称为缓存数据库,其与原始数据库具有相同结构。具有相同结构可被限定为具有图块id列、图块数据列以及图块版本列。导航装置可尝试通过网络装置(如本文描述的任一网络装置)建立互联网连接。在存在可用互联网连接的情况下,导航装置发送请求以从系统下载其当前正在使用的区域的新的图块。在导航应用中完成对存储在缓存数据库中的新下载的图块与存储在主数据库中的图块的合并。合并可包括导航装置检查主数据库中的数据库条目和缓存数据库中的数据库条目,以确定图块版本是否彼此一致。随后,导航装置可使用已经合并在一起的、缓存数据库中的图块数据和主数据库中的图块数据二者来建立针对请求的路线。在不存在可用的互联网连接的情况下,数据库恢复使用原始未变的数据库。因此,如果存在可用的互联网连接则可使用当前数据,以及如果不存在互联网连接则可使用一致的数据。
图2示出图1的示例的上下文中的情景。图2包括:一组图块数据202,如由表204、208、214所示的主数据库,在206和210处的一组图块数据(其上具有潜在路线),以及缓存数据库212和216。在图2的部分(2)中,当存在可用互联网连接时,新数据被下载到缓存数据库,其与原始数据库具有相同结构。在不存在可用互联网连接的情况下,其恢复使用原始未变的数据库。在图2的部分(3)中,当不存在可用互联网连接时,原始数据库用于制定从点A至点C的路线而不使用版本2的图块4712。因此,如果存在可用互联网连接则可使用新数据,以及如果不存在互联网连接则可使用一致的数据。
图2和3示出在不存在互联网连接时缓存数据库的使用。例如,假设在图2和3中,计算从点A至点B的路线,同时导航装置具有互联网连接。所述路线覆盖在从点A至点B的路径上的三个单独的图块4711、4712和4713。图块4711、4712和4713可对应于感兴趣的区域的地图的地理数据部分。在计算路线时,系统需要检查存储在缓存数据库中的任何较新的图块版本是否可用来计算路线,或者检查系统是否需要恢复使用一致版本的主数据库。在此示例中,如果图块4712具有新版本,则其被下载用于从点A至点B的路线计算。因为图块4711和4713是路线的一部分,因此,系统指示新版本的4712与4711和4713兼容。如果导航装置的用户请求从点A至点C的路线。该新路线可将导航装置的用户从图块4711按路线引导至图块1034。不幸的是,导航装置在图块1034的地理位置处不具有互联网连接,因此系统恢复到由于与图块1034不兼容而不包括图块4711的新版本的一致的数据库。
在没有互联网连接的情况下,可能的是,路线应当使用来自缓存数据库的一些图块和来自主数据库的一些图块。然而,还不保证的是,来自缓存数据库的该组图块彼此一致。可能的是,存储在缓存数据库中的图块是来自不同的一致的数据库编译。如果来自不同数据库编译的图块在一个制定路线操作中在一起使用,则操作可能导致错误。无论图块是从主数据库和缓存数据库的组合被加载还是仅从缓存数据库被加载,这都是真实的。需要在如果没有可用的互联网连接时检测是否可以使用存储在缓存数据库中的图块(彼此结合使用,或与主数据库组合使用)的方案。
图4示出用于使用版本可达性(version accessibility)矩阵来更新导航地图数据的示例系统400。系统400包括开发器系统402、一个或更多个移动装置或个人计算机404(在此为“移动装置”)以及网络406。可提供附加的、不同的或较少的组件。例如,许多移动装置404与网络406连接。开发器系统402包括服务器410和一个或更多个数据库408。
数据库408可以是地理数据库,其存储从一个或更多个移动装置404收集的导航地图数据或存储在数据库408中的、作为地图开发者系统402的一部分的导航地图数据。导航地图数据可包括存储在数据库408中的表中的图块数据、路线数据、道路数据、交通路线数据或历史交通数据。图块数据可包括对象列表和参考列表。对象列表可包括列出图块的交通路线(link)的交通路线对象列表和/或列出图块的节点的节点对象列表。参考列表可列出参考其他图块。参考列表描述边界图块。
图块数据可由现实世界中的交通工具或单独的驾驶路线收集。图块数据还可指以下数据:当构建在一起时,该数据组成针对地图的区域(如,城市、州、县、乡村或其一些组合)的地图数据。存储在数据库408中的图块数据可以是与沿着一个或多个路线行进的一个或更多个交通工具相关的数据。移动装置的用户可指示他们希望接收从点A至点B的制定路线的数据。图块数据可指示在相邻图块之间的道路交通路线是否彼此兼容,并且因此能够在拼凑在一起时形成路线。此外,版本兼容性矩阵可指示存储在数据库408中的任何图块彼此兼容。
一个实施例包括在服务器410处计算的版本兼容性矩阵。版本兼容性矩阵可以是被下载到移动装置404的图块数据的附加属性。属性可以是其中列出与图块数据兼容的图块的矩阵。兼容图块的列表可以是一组数据,其包括与图块数据条目兼容的图块数据id和图块数据版本。
系统400可接收针对制定路线数据的制定路线请求。制定路线数据可包含可用来构建感兴趣的区域(如,城市、县、州、区域、乡村或其一些组合)的地图的图块数据。在其他实施例中,移动装置404接收该请求。该请求可来自系统的终端用户,例如,在具有导航应用的交通工具中的驾驶员。替代地,该请求可来自服务器。制定路线请求可对应于存储在数据库408中的地址、建筑物、路标、感兴趣的点或一些其他地理识别符。
系统400可访问版本兼容性矩阵以确定存储器中的或数据库中的图块数据是否是一致的或兼容的。在其他实施例中,移动装置404访问版本兼容性矩阵。在一些实施例中,版本兼容性矩阵存储在移动装置404上,在其他实施例中,版本兼容性矩阵存储在服务器410或数据库408上。版本兼容性矩阵可包括指示存储在移动装置或服务器或数据库上的哪些图块是兼容的标志或另一类型的数据。版本兼容性矩阵可指示图块的版本。版本兼容性矩阵可包括指示图块是否包括更新的对象的标志或另一类型的数据。版本兼容性矩阵可指示对象的版本。对象可包括路径段、感兴趣的点(POI)和路径属性。路径段可包括道路、街道、人行道、行人道或其他路径。路径属性可包括路径的特征,如,速度限制、功能分类、转弯限制、十字路口类型、路径名称以及其他数据。
在一个示例中,矩阵被包括用于每个图块并列出相邻或可连接的图块的图块识别符和对象版本号。矩阵还可包括图块版本号。当道路段或道路交通路线在两个图块之间延伸时,两个图块是可连接的。在另一示例中,主矩阵可包括整个地理区域的所有图块和一致性。当两个图块一致时,图块对用于生成路线的系统来说是可用的。此外或替代地,矩阵可包括对象识别符和对象版本号,其描述对象数据(如,节点列表或交通路线列表)是否具有变化。
版本兼容性矩阵可指示哪个版本的图块与其他版本的图块兼容。该信息可在对存储在移动装置或服务器或数据库上的地理数据库的定期每月或每季度的编译中递送。版本兼容性矩阵可实施为数据库条目中的针对特定图块的附加属性。
版本兼容性矩阵可包含对应于感兴趣的区域的所有图块数据的兼容性。在另一版本中,版本兼容性矩阵可仅包含与从该特定图块是可能的制定路线连接相对应的图块数据(即,每个图块具有矩阵)。图块在矩阵中的引用顺序可由系统提前确定,因此,可预先安排(preorder)版本信息。相比于将图块id和版本数据存储在版本兼容性矩阵中,通过预先安排所述数据,版本兼容性矩阵的大小可较小。
在一个实施例中,版本兼容性矩阵可存储全部内容,即,所有的图块ID(tilelD)和版本ID(versionlD)对(pair)。在另一个实施例中,因为tilelD的列表也可存储在元数据中,因此仅存储版本序列可能是足够的。版本兼容性矩阵可仅包括一系列版本号。例如,版本兼容性矩阵(M)可包括图块版本阵列(如,[1,1,1,2,1,1,2])和/或对象版本阵列(如,[1,1,1,2,1,1,1]),其中,矩阵M中的每个元素指示针对该序列中已经存储在元数据中的tilelD的版本号。
所述序列可由压缩算法来压缩,所述压缩算法例如使用滑动窗口压缩且使用节点的二叉树(如,zlip)的deflate算法,或使用巴罗斯-惠勒(Burrows-Wheeler)变换的压缩算法或一些其他压缩算法压缩,其中,巴罗斯-惠勒变换是可逆的并将字符串重新布置成类似字符(如,bzip2a)的顺序。
在另一个实施例中,因为序列号的列表包括具有相同值的多个值,因此,矩阵可以是更加紧缩的。来自第一编译的每个图块的版本兼容性矩阵可包括所述数据库中的所有其他图块的1值的序列。即使所述数据库中的图块的数目多达几千,经压缩的版本兼容性矩阵也可是若干字节或与2字节一样小。
系统400可执行对版本兼容性矩阵的分析。在其他实施例中,移动装置404执行该分析。该分析可将横穿两个或更多个图块的路线与版本兼容性矩阵进行比较。系统400可比较两个或更多个图块的图块版本或对象版本。
例如,系统400可比较路线上的第一图块的图块版本与路线的第二图块的图块版本。当图块版本相同时,系统400可继续进行而不需要进一步的动作。当图块版本不相同时,系统400可比较所述对象版本。当对象版本指示图块是兼容的时,系统400可继续进行指定路线。当对象版本指示图块不是兼容的时,系统400可下载更新的图块,以使得图块版本一致。
例如,版本冲突可以是以下情况,其中,存储在数据库408中或者移动装置404中的一个图块具有为1的版本id,并且存储在缓存数据库中的图块的更新版本具有为2的版本id。在此情况下,相邻图块的版本兼容性矩阵可指示相邻图块仅与版本1兼容。因此,可存在相邻图块与存储在缓存数据库中的图块的版本冲突。
系统400可基于制定路线请求和版本冲突来生成路线。在其他实施例中,移动装置404可生成路线。路线可对应于终端用户可使用的以从点A行进至点B的路径。路线还可仅根据第一数据库生成。在其他实施例中,路线仅根据第二数据库生成。在一些实施例中,如果存在到移动装置404的互联网连接,则使用第一和第二数据库二者以及版本兼容性矩阵来生成路线。在又一实施例中,如果不存在互联网连接,则使用第一和第二数据库二者以及版本兼容性矩阵来生成路线。路线可由服务器发送至移动装置,或者在其他实施例中,路线从移动装置发送到服务器。
图5A示出数据库的部分地图550的旧版本。示出六个图块:4711、4712、4713、1033、1034、1035。地图550包括主要道路或路径552和若干次要道路或路径554。图5B示出图5A的部分地图或数据库的新版本。通过增加一个或更多个路径段、移动一个或更多个路径段或删除一个或更多个路径段,主要道路554在部分553附近已经改变。该变化反映在图块4712的对象列表中。此外,该变化反映在4711、4713、1034和1035的图块参考中。即,由于路径段将图块4711、4713、1034和1035中的每个连接到图块4712,因此,图块4712包括在图块4711、4713、1034和1035中的每个的参考列表中。
在一些系统中,参考图块4712的所有相邻图块可以被重新编译。从相邻图块至图块4712的参考可指向对象列表,如,道路段的列表。随着如果增加或删除新的交通路线而该道路段的列表改变,则重新调节从相邻图块的参考,且因此,重新计算图块4711、4713、1033、1034。虽然图块4713和1034需要被重新编译,但是相邻图块1035不必被重新编译。如果重新编译的图块的交通路线列表(其中,交通路线几何结构/拓扑不发生改变(即,不增加或删除交通路线))不改变,则参考它们的图块不需要被重新编译。可由编译器做出这个决定。
每个图块包含在该图块中的对象的至少一个对象列表和参考其他图块的至少一个参考列表。这些参考是与来自其他图块的TilelD结合的、在其他图块中的交通路线的位置。如果图块内不发生改变(即,未增加或删除如同节点或交通路线等的对象),则原则(如,编译器稳定性属性)保证对象列表不改变。由于可存在其他图块的对象列表的改变,因此参考列表可改变。
在图5中,由于对象列表改变,因此图块4712被重新编译,以及由于参考列表改变,图块4711、4713、1033和1034被重新编译。图6A和图6B示出在图5A和图5B的旧版本和新版本之间改变的图块。表651示出图块之间的关系。图块4712具有新的或移动的路径段。图块4711、4713、1033和1034具有参考列表的改变但不具有对象列表的改变。由于图块中的每个包括延伸到图块4712的路径段,因此发生参考列表的改变。由于没有路径段从图块1035延伸到图块4712,因此图块1035不改变。
图7示出在更新的状态下的地图650的示例兼容性矩阵771。为了将下载的数据量限制到最小,兼容性矩阵包括图块版本列和对象版本列。对象版本描述是否诸如节点列表或交通路线列表等对象数据是否已经改变。图块版本描述图块中的数据是否完全改变。对象版本的改变总是导致图块版本的改变。图块版本还能在不改变对象版本的情况下改变,例如,如果仅图块内的参考列表改变。继续更新的地图650的示例,对象版本值和图块版本值在兼容性矩阵771中示出。图块版本针对具有参考列表的所有新编译的图块增加,但是对象版本仅针对图块4712增加。
图8A、8B、9A、9B示出地图750上的各种路线情景。移动装置404可包括兼容性矩阵。兼容性矩阵可以是针对图块中的每个的形式(TilelD、对象版本)。例如,针对图5A的布置,针对图块4711的旧的兼容性矩阵是(4712,1),而例如,针对图5B的布置,新的兼容性矩阵是(4712,2)。对于图块4712,旧的兼容性矩阵与新的兼容性矩阵相同。对于图块4713,还改变新的兼容性矩阵以示出图块4712中的对象版本变化。下表概括了图块4711、4712和4713的兼容性矩阵。注意,地图750中存在附加图块,其未被分配图块ID且未在兼容性矩阵中示出。
表1
图8A示出地图750上的示例制定路线情景。路线751在图块4712处开始并且穿过图块4711和1033。在一个示例中,仅新版本图块被存储在服务器410处,且仅旧版本图块存储在移动装置404处。如果在服务器410和移动装置404之间存在通过网络406的连接,则系统将通常响应于针对路线751的请求而下载较新版本的图块4712、4711和1033。下载较新版本的图块4712可以是必要的。然而,图块4711和1033仅由于对图块4712的参考而被重新编译。从图块4712到其他图块的参考尚未改变。因此,查阅兼容性矩阵以确定图块4712与版本1的其他图块兼容。因此,旧版本的图块4711、4713、1033和1034将与新版本的图块4712一起使用。事实上,由于这些图块的对象数据未变,因此不存在益处。
图8B示出地图750上的另一示例制定路线情景。路线753穿过图块4711和1033。响应于制定路线请求,制定路线算法检查图块中的任一个是否包括新的对象版本。在此示例中,由于图块4711和1033任一个都不具有新的对象版本,因此不必须下载新的图块数据。虽然表1中未示出,但查阅图块4711的兼容性矩阵以知道版本1的图块1033是兼容的。因此,不需要更新到路线753中的图块。仅因为对图块4712的参考已经改变,因此存在新版本的图块4711和1033。
图9A示出地图750上的另一示例制定路线情景。路线754以该顺序延伸穿过图块4711、4712和4713。响应于制定路线请求,制定路线算法检查图块4711、4712和4713中的任一个是否包括新的对象版本。在此示例中,具有新的对象版本值的图块4712是可用的。制定路线算法确定应当下载图块4712。查阅兼容性矩阵以确定旧版本的图块4711现在不再与较新的图块4712兼容。这在图块4711中的图块兼容性矩阵参考图块4712的过期版本时被检测到。因此,移动装置404还下载较新版本的图块4711。移动装置404不需要下载较新版本的图块4713,这是因为图块4712的图块兼容性矩阵仍指示其能够与旧版本的图块4713一起工作。
图9B示出地图750上的另一示例制定路线情景。路线754以该顺序延伸穿过图块4713、4712和4711。在此示例中,图块4712可具有新的对象版本值。制定路线算法确定应当下载图块4712。查阅图块4713的兼容性矩阵以确定旧版本的图块4713现在不再与较新的图块4712兼容。这在图块4713中的图块兼容性矩阵参考图块4712的过期版本时被检测到。因此,移动装置404继续下载较新版本的图块4713。移动装置404不需要下载较新版本的图块4711,这是因为图块4712的图块兼容性矩阵仍指示图块4712能够与旧版本的图块4711一起工作。
图10示出可用做导航装置的示例移动装置或个人计算机404。图10包括处理器802、存储器804、输入装置806、通信接口808、位置电路系统810和显示器812。附加的、不同的或较少的组件可能用于移动装置404。移动装置404可以是个人装置,如,装备有位置电路系统(如,全球定位系统(GPS))和惯性测量单元(IMU)的移动电话。位置电路系统810生成指示移动装置404的方位的数据(“位置数据”)。除GPS之外或替代GPS,位置电路系统可包括推算(dead reckoning)型系统、蜂窝位置或这些或其他系统的组合。位置电路系统可包括适当的感测装置,其测量移动装置404的行进距离、速度、方向等。定位系统还可包括接收器和关联芯片以获得GPS信号。
图11示出用于通过使用版本兼容性矩阵来更新导航地图数据的示例流程图。可以以不同的顺序来施加动作。可忽略或重复动作。可增加附加动作。
在动作902处,处理器802或通信接口808可被配置为接收针对制定路线数据的路线请求。路线请求可由位置电路系统810、输入装置806、GPS或与移动装置404集成的其他输入装置输入。
在动作904处,处理器802可访问版本兼容性矩阵。在一个实施例中,版本兼容性矩阵可采取以下表2的形式:
表2
表2的最上面一行对应于特定图块号,其用来识别导航地图数据库中的图块数据条目。下一行指示当前图块的版本。图块版本和对象版本可遵循相同的编号法(即,版本N的图块与版本N的对象兼容)。
最后一行列出相邻图块或与当前图块共享路径段的图块。右列指示相邻图块的对象版本。示例表可具有更多行,并列出与当前图块号相关联的多个相邻图块。此外,可包括多于兼容图块和版本的多个列。例如,可包括针对兼容图块的对应的地理图块数据。
在动作906处,处理器802执行对两个或更多个地图图块和兼容性矩阵的分析。在一些实施例中,处理器可检查版本兼容性矩阵的行,以知道沿着所述路线哪些图块与图块数据兼容。处理器可检查版本兼容性矩阵的列,以知道图块中的哪个版本是兼容的。例如,路线可从图块A延伸到图块B。在此情况下,图块A的兼容性矩阵被检查以比较图块A的图块版本和图块B的对象数据库。
在动作908处,处理器802识别沿着所述路线,在相邻图块之间的版本冲突次数。如果版本兼容性矩阵中列出的路线中的随后的图块具有列出的、与之前图块的图块版本不同的对象版本,则可发生版本冲突。
在动作910处,处理器802基于路线请求和潜在的版本冲突来生成路线。处理器可在没有冲突时使用当前数据库来生成路线,并且可在识别到一个或更多个版本冲突时首先下载一个或更多个更新的图块。
图12示出可用于根据上述任一示例来计算和实施版本兼容性矩阵的示例服务器410和处理器1002。图12中的示例服务器包括处理器1002、存储器1004、和通信接口1006。在请求时,响应于针对制定路线的请求,根据时间计划而周期性地或当导航应用被启用时,可将矩阵从服务器410发送至移动装置404(例如,在请求任何路线之前,版本兼容性矩阵可被下载用于整个区域)。版本兼容性矩阵可以是图块专有的,并且每次图块被下载,版本兼容性矩阵可与图块一起被下载。图13示出用于通过使用版本兼容性矩阵来更新导航地图数据的示例流程图。图13的流程图的动作可替代地由服务器410或一组服务器来执行。可包括不同、较少或附加的动作。
在动作1102处,处理器1002或通信接口1006通过网络406接收针对制定路线数据的请求。在动作1104处,处理器1002从制定路线请求来识别至少一个路径段。路径段至少从制定路线请求的从第一地图图块延伸到第二地图图块。
在动作1106处,处理器1002识别存在第一地图图块或第二地图图块的新的图块版本。当所述分析指示冲突时,处理器1002发送新版本的第二地图图块。在不存在新图块版本时,处理器1002可利用旧版本的第一图块继续,如动作1107所示。
在动作1108处,处理器1002访问存储在数据库中的版本兼容性矩阵以确定第一地图图块的对象是否与第二地图图块兼容。该确定可基于旧版本的第一地图图块或新版本的第一地图图块。如果第一地图图块和第二地图图块兼容,则处理器1002继续生成路线。如果第一地图数据和第二地图图块不兼容,则处理器1002可检索新版本的第一地图图块或将新版本的第一地图图块发送至移动装置404或所述制定路线请求的发起者。
该过程可重复用于随后的地图图块。例如,处理器1002可从制定路线请求识别第三地图图块并访问第二地图图块的附加或相同的兼容性矩阵。对兼容性矩阵的分析确定第二地图图块的对象是否与第三地图图块兼容。该确定可基于旧版本的第一地图图块或新版本的第一地图图块。如果第三地图图块和第二地图图块兼容,则处理器1002继续生成路线。如果第二地图数据和第三地图图块不兼容,则处理器1002可检索新版本的第二地图图块或将新版本的第二地图图块发送至移动装置404或所述制定路线请求的发起者。
除了上述数据,数据库408可包括节点数据记录、道路段或交通路线数据记录、POI数据记录或其他数据记录。可提供较多、较少或不同的数据记录。在一个实施例中,其他数据记录包括地图数据记录、制定路线数据和机动数据。POI或事件数据的一个或更多个部分、组件、区域、层、特征、文本和/或符号可被存储在这些数据记录中的一个或更多个中、链接到这些数据记录中的一个或更多个和/或与这些数据记录中的一个或更多个相关联。例如,POI、事件数据或记录的路线信息的一个或更多个部分可经由位置或GPS数据关联(如,使用已知或未来地图匹配或地理编码技术)而与相应的地图或地理记录匹配。
根据示例实施例,道路段数据记录是如可用于计算的路线或记录的路线信息以确定一个或更多个个性化路线的、表示道路、街道或路径的交通路线或段。节点数据记录是对应于道路段数据记录的相应交通路线或段的端点。道路交通路线数据记录或节点数据记录表示如由交通工具、车辆和/或其他实体使用的道路网络。替代地,例如,除了交通工具道路记录数据或代替交通工具道路记录数据,数据库408可包含路径段或节点数据记录或表示行人路径或区域的其他数据。
道路/交通路线段和节点可与属性(如,地理坐标、街道名称、位置范围、速度限制、十字路口处的转弯限制)和其他导航相关属性以及POI(如,加油站、旅店、宾馆、博物馆、体育场、办公室、汽车销售、汽车修理车间、建筑物、商店、公园)等相关联。数据库408可包括关于POI的数据和在POI数据记录中的其相应位置。数据库408还可包括关于地点(如,城市、城镇或其他社区)以及其他地理特征(如,贮水池或山脉)等的数据。这种地点或特征数据可以是POI数据的一部分或可能与POI或POI数据记录(如,用于显示或表示城市位置的数据点)相关联。此外,数据库408可包括与POI数据记录或数据库408的其他记录相关联的事件数据(如,交通事故、建设、计划的事件、未计划的事件等)。
每个道路段与两个节点(如,一个节点表示道路段一端处的点,而另一节点表示道路段另一端处的点)相关联。道路段任一端处的节点可对应于道路与另一条道路交会的位置(即,十字路口)或道路尽头的位置。道路段数据记录还可包括指示分类(如,可对应于其功能分类的道路段的等级)的数据。示例功能分类包括主干道、次干道和支路。预先记录的路径可包括功能分类系统外的道路。替代地,附加功能分类(如,私有道路、临时道路或个性化道路)可被增加到地理数据库以区分预先记录的路径和其他段。发生率可基于功能分类分配给道路段。
数据库408可由内容提供者(如,地图开发器)维护。通过示例的方式,地图开发器可收集地理数据以生成和提高地理数据库。可存在由地图开发器用于收集数据的不同方式。这些方式可包括从其他源(如,直辖市或相应地理当局)获得数据。此外,例如,地图开发器可利用外勤人员通过交通工具沿着道路行进穿过地理区域以观察关于它们的特征和/或记录信息。另外,可使用远程感测,如,航空或卫星摄影。
计算装置处理器802和/或服务器处理器1002可执行所述计算中的任何一个。计算装置处理器802和/或服务器处理器1002可包括通用处理器、数字信号处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、模拟电路、数字电路、其组合,或其他现在已知或稍后开发的处理器。移动装置处理器802和/或服务器处理器1002可以是单个装置或装置的组合,所述装置的组合诸如与网络相关联、分布式处理或云计算。计算装置处理器802和/或服务器处理器1002还可被配置为使装置至少执行上述方法中的至少一个。
存储器804和/或存储器1004可以是易失性存储器或非易失性存储器。存储器804和/或存储器1004可包括只读存储器(ROM)、随机存取存储器(RAM)、闪存、电子可擦程序只读存储器(EEPROM)或其他类型的存储器中的一个或更多个。存储器804和/或存储器1004可从移动装置404(如,安全数字(SD)存储器卡)移除。
通信接口808和/或通信接口1006可包括任何可操作连接。可操作连接可以是其中信号、物理通信和/或逻辑通信可被发送和/或接收的连接。可操作连接可包括物理接口、电气接口和/或数据接口。通信接口808和/或通信接口1006可提供以任何现在已知或稍后开发的格式的无线和/或有线通信。
在上述实施例中,网络406可包括有线网络、无线网络或其组合。无线网络可以是移动电话网络、802.11、802.16、802.20或WiMax网络。进一步地,网络406可以是公共网络(如,互联网)、私有网络(如,内联网)或其组合,并且可利用现在可用或稍后开发的各种联网协议,其包括但不限于基于TCP/IP的联网协议。
虽然非暂时性计算机可读介质被描述为单个介质,但是术语“计算机可读介质”包括单个介质或多个介质,如,集中式或分布式数据库,和/或相关联的缓存器以及存储一个或更多组指令的服务器。术语“计算机可读介质”还应该包括能够存储、编码或承载一组由处理器执行的指令的任何介质或使计算机系统执行上述方法或操作中的任意一个或更多个的任何介质。
在具体的非限制性示例实施例中,计算机可读介质可包括固态存储器,如,存储器卡或容纳一个或更多个非易失性只读存储器的其他程序包。进一步地,计算机可读介质可以是随机存取存储器或其他易失性可重写存储器。此外,计算机可读介质可包括磁光介质或光学介质,如,包括磁盘或磁带或其他存储装置以捕获载波信号,所述载波信号如通过传输介质来传送的信号。附着到e-mail的数字文件附件或其他独立的信息档案或一组档案可被认为是为有形存储介质的分布介质。因此,本公开被认为包括其中可存储数据或指令的、计算机可读介质或分布介质及其他等效物和后记介质中的任何一个或更多个。
在替代的实施例中,专用硬件实施方式(如,专用集成电路、可编程逻辑阵列和其他硬件装置)可被构建为实施上述方法中的一个或更多个。可包括各种实施例的装置和系统的应用可广泛地包括各种电子和计算机系统。上述一个或更多个实施例可使用具有相关控制和数据信号的两个或更多个特定互连硬件模块或装置实施功能,该数据信号可在模块之间或通过模块通信或作为专用集成电路的一部分。因此,本系统包含软件、固件和硬件实施方式。
根据本公开的各种实施例,上述方法可由通过计算机系统执行的软件程序实施。进一步地,在示例性非限制性实施例中,实施方式可包括分布式处理、组件/对象分布式处理和并行处理。替代地,可构建虚拟计算机系统处理以实施上述方法或功能中的一个或更多个。
虽然本说明书描述了可以参考具体标准和协议在具体实施例中实施的组件和功能,但是本发明不限于这种标准和协议。例如,互联网以及其他分组交换网络传输的协议(如,TCP/IP、UDP/IP、HTML、HTTP、HTTPS)表示现有技术状态的示例。这种标准被具有基本相同功能的较快或更有效的等效物周期性取代。因此,具有如本文公开的相同或类似功能的替代标准和协议被认为是其等效物。
计算机程序(还被称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)来编写,且其可以任何形式被部署,包括作为独立程序或作为模块、组件、子程序或适于用在计算环境中的其他单元。计算机程序不必对应于文件系统中的文件。程序可被存储在保持其他程序或数据的文件的一部分中(如,一个或更多个脚本存储在标记语言文件中)、在专用于考虑中的程序的单个文件中、或在多个协调文件(如,存储一个或更多个模块、子程序或代码的一部分的文件)中。计算机程序可被部署以在一个计算机上或在多个计算机上执行,这些计算机位于一个位置处或分布在多个位置并由通信网络互连。
说明书中描述的过程和逻辑流程可由执行一个或更多个计算机程序的一个或更多个可编程处理器执行以通过操作输入数据和生成输出来执行功能。所述过程和逻辑流程还可由专用逻辑电路系统(如,FPGA(场可编程门阵列)或ASIC(专用集成电路))执行,并且装置还可实施为专用逻辑电路系统(如,FPGA(场可编程门阵列)或ASIC(专用集成电路))。
如本申请中使用的,术语“电路系统”或“电路”指以下各项中的所有项:(a)纯硬件电路实施方式(如,在纯模拟和/或数字电路系统中的实施方式)和(b)电路和软件(和/或固件)的组合,如,(如果适用的话):(i)(一个或更多个)处理器的组合或(ii)(一个或更多个)处理器/软件的一部分(包括(一个或更多个)数字信号处理器)、软件和(一个或更多个)存储器,其一起工作以使装置(如移动电话或服务器)执行各种功能;以及(c)电路,如,(一个或更多个)微处理器或(一个或更多个)微处理器的一部分,其需要软件或固件以进行操作,即使所述软件或固件不是物理存在的。
“电路系统”的定义应用于此术语在本申请中的所有使用,包括任何权利要求中的使用。如进一步的示例,如在本申请中使用的,术语“电路系统”还可覆盖仅处理器(或多个处理器)或处理器的一部分以及处理器(或多个处理器)的随附软件和/或固件的实施方式。例如,并且如果适用于具体权利要求元素,术语“电路系统”还可覆盖移动电话的基带集成电路或应用处理器集成电路或在服务器、蜂窝网络装置或其他网络装置中的类似集成电路。
通过示例方式,适用于执行计算机程序的处理器包括通用微处理器和专用微处理器二者以及任何种类的数字计算机中的任何一个或更多个处理器。通常,处理器从只读存储器或随机存取存储器或二者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或更多个存储器装置。通常,计算机还包括应用存储数据的一个或更多个大容量存储器(如,磁盘、磁光盘或光盘),或可操作地耦合为从一个或更多个大容量存储器(如,磁盘、磁光盘或光盘)接收数据或将数据传递到一个或更多个大容量存储器(如,磁盘、磁光盘或光盘)或二者。然而,计算机不需要具有这种装置。此外,计算机可体现在另一装置(如,移动电话、个人数码助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器等)中。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,例如,包括半导体存储器装置(如,E PROM,EEPROM)和闪存装置;磁盘(如,内部硬盘或可移动磁盘);磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路系统补充或合并到专用逻辑电路系统中。
为了提供与用户的交互,本说明书描述的主题的实施例可实施在具有以下组件的装置上:用于将信息显示给用户的显示器(如,CRT(阴极射线管)或LCD(液晶显示器)监控器)和用户可通过其提供输入至计算机的键盘和指向装置,如,鼠标或跟踪球。其他类型的装置也可用来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感测反馈,如,虚拟反馈、听觉反馈或触觉反馈;以及来自用户的输入可以任何形式被接收,所述形式包括听觉、讲话或触觉输入。
本说明书描述的主题的实施例可实施在包括后端组件(如,作为数据服务器)的计算系统或包括中间件组件(如,应用服务器)的计算系统或包括前端组件(如,具有用户可通过其与本说明书描述的主题的实施方式交互的图形用户界面或网页浏览器的客户端计算机)的计算系统中或一个或更多个此类后端、中间件或前端组件的任何组合中。系统的组件可通过任何形式的数字数据通信(如,通信网络)互连或可以是数字数据通信(如,通信网络)的介质。通信网络的示例包括局域网("LAN")和广域网("WAN"),如,互联网。
计算系统可包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络交互。客户端和服务器的关系凭借运行在相应计算机上并具有相对于彼此的客户端服务器关系的计算机程序而提升。
本文描述的实施例的说明意在提供对各种实施例结构的常规理解。说明不意在用作对利用本文描述的结构或方法的装置和系统的所有元素和特征的完整描述。在查阅本公开时,许多其他实施例对本领域技术人员可以是显而易见的。其他实施例可被利用并从本公开得到,使得在不偏离本公开范围的情况下,可进行结构和逻辑替换和改变。此外,说明仅是代表性的并且可不按比例描绘。说明内的某些比例可被放大,而其他比例可被最小化。因此,本公开和说明书附图被认为是说明性而非限制。
虽然本说明书包含许多细节,但他们应当被认为是对发明范围的限制或者可被要求保护,而不是作为专用于本发明的特定实施例的特征的描述。在单独的实施例的情况下在本说明书中描述的某些特征还可以在单个实施例中组合实施。相反,在单个实施例的情况下描述的各种特征还可以在多个实施例中单独或以任何适当子组合实施。此外,虽然特征可在上面被描述为用在某些组合中并且甚至因此被初始地要求保护,但是来自所要求保护的组合的一个或更多个特征在一些情况下可从该组合去除,并且所要求保护的组合可涉及子组合或子组合的变体。
类似地,虽然操作在附图中描绘并在本文以特定顺序被描述,但是这不应当被理解为需要这种操作以所示的特定顺序或以连续顺序被执行,或者所有所示操作被执行以实现期望结果。在某些情况下,多任务和并行处理可以是有利的。此外,上文描述的实施例中的各种系统组件的分离不应被理解为需要在所有实施例中的这种操作,并且其应当被理解为所描述的程序组件和系统可通常一起集成在单个软件产品中或被封装到多个软件产品中。
旨在的是,前述说明被认为是说明性而非限制并且应当理解随附权利要求(包括等效物)旨在限定本发明的范围。除非另有说明,否则随附权利要求不应当被解读为限于所描述的顺序和特征。因此,在随附权利要求和其等效物的范围和精神内的所有实施例作为本发明而要求保护。
还描述了本发明的以下示例实施例:
实施例1:
一种方法,包括:
识别两个或更多个地图图块;
访问兼容性矩阵;
执行对所述两个或更多个地图图块和所述兼容性矩阵的分析,其中,所述兼容性矩阵包括图块版本值和对象版本值;以及
基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突;以及
基于所述一个或更多个版本冲突来生成路线。
实施例2:
根据实施例1所述的方法,还包括:
当存在一个或更多个对象版本冲突时,下载与所述一个或更多个对象版本冲突相关联的更新的图块。
实施例3:
根据实施例1-2中任一个所述的方法,还包括:
当不存在对象版本冲突时,使用所述两个或更多个地图图块生成所述路线。
实施例4:
根据实施例1-3中任一个所述的方法,还包括:
基于所述分析来确定是否存在一个或更多个图块版本冲突。
实施例5:
根据实施例4所述的方法,还包括:
当存在一个或更多个图块版本冲突时,使用缓存的数据库生成所述路线。
实施例6:
根据实施例4-5中任一个所述的方法,还包括:
当不存在图块版本冲突时,使用更新的数据库生成所述路线。
实施例7:
根据实施例1-6中任一个所述的方法,还包括:
发送所述路线至移动装置。
实施例8:
根据实施例7所述的方法,还包括:
接收由所述移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置。
实施例9:
根据实施例1-8中任一个所述的方法,还包括:
确定新版本是否可用于所述两个或更多个地图图块;以及
当可用时,下载所述两个或更多个地图图块中的至少一个的所述新版本。
实施例10:
根据实施例9所述的方法,其中,所述对象版本值对应于所述两个或更多个地图图块中的至少一个的所述新版本。
实施例11:
一种方法,包括:
接收制定路线请求;
根据所述制定路线请求来识别第一地图图块和第二地图图块;
识别新版本的所述第一地图图块,
访问所述第一地图图块的兼容性矩阵;以及
执行对所述兼容性矩阵的分析以确定所述新版本的所述第一地图图块的对象是否与所述第二地图图块兼容。
实施例12:
根据实施例11所述的方法,还包括:
当所述分析指示冲突时,识别新版本的所述第二地图图块;以及
基于所述新版本的所述第二地图图块和所述制定路线请求来生成路线。
实施例13:
根据实施例11-12中任一个所述的方法,还包括:
当所述分析指示没有冲突时,基于旧版本的所述第二地图图块和所述制定路线请求来生成路线。
实施例14:
根据实施例11-13中任一个所述的方法,还包括:
根据所述制定路线请求来识别第三地图图块;以及
访问所述第二地图图块的兼容性矩阵,其中,对所述兼容性矩阵的分析确定所述第二地图图块的对象是否与所述第三地图图块兼容。
实施例15:
根据实施例11-14中任一个所述的方法,还包括:
发送包括所述新版本的所述第一地图图块和所述第二图块的路线至移动装置。
实施例16:
根据实施例15所述的方法,还包括:
接收由所述移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置,并且所述第一地图图块和所述第二地图图块是基于所述位置数据而被识别的。
实施例17:
一种方法,包括:
接收针对制定路线数据的制定路线请求;
根据所述制定路线数据来识别两个或更多个地图图块;
访问兼容性矩阵;
执行对所述两个或更多个地图图块和所述兼容性矩阵的分析,其中,所述兼容性矩阵包括对象版本值;
基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突;以及
基于所述制定路线请求和所述一个或更多个版本冲突来生成路线。
实施例18:
根据实施例17所述的方法,还包括:
识别新版本的所述第二地图图块,其中,所述一个或更多个对象版本冲突基于所述第一地图图块的所述对象版本和所述新版本的所述第二地图图块。
实施例19:
根据实施例17-18中任一个所述的方法,其中,所述一个或更多个对象版本冲突基于所述第一地图图块和所述第二地图图块的现有对象版本。
实施例20:
根据实施例17-19中任一个所述的方法,还包括:
接收由移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置,并且所述两个或更多个地图图块是基于所述位置数据和所述制定路线数据而被识别的。
实施例21:
一种装置,包括:
至少一个处理器;以及
至少一个存储器,其包括用于一个或更多个程序的计算机程序代码;所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行根据实施例1-20中任一个所述的方法。
实施例22:
一种装置,其被构造为实施根据实施例1-20中任一个所述的方法。
实施例23:
一种包括指令的非暂时性计算机可读介质,所述指令当被执行时可操作为执行根据实施例1-20中任一个所述的方法的步骤。
实施例24:
一组指令,其用于由处理器执行或使得计算机系统执行根据实施例1-20中任一个所述的方法。
实施例25:
一种计算机可读介质,其存储、编码或携带根据实施例24所述的一组指令。
Claims (20)
1.一种方法,包括:
识别两个或更多个地图图块;
访问兼容性矩阵;
执行对所述两个或更多个地图图块和所述兼容性矩阵的分析,其中,所述兼容性矩阵包括图块版本值和对象版本值;以及
基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突;以及
基于所述一个或更多个版本冲突来生成路线。
2.根据权利要求1所述的方法,还包括:
当存在一个或更多个对象版本冲突时,下载与所述一个或更多个对象版本冲突相关联的更新的图块。
3.根据权利要求1-2中任一项所述的方法,还包括:
当不存在对象版本冲突时,使用所述两个或更多个地图图块来生成所述路线。
4.根据权利要求1-3中任一项所述的方法,还包括:
基于所述分析来确定是否存在一个或更多个图块版本冲突。
5.根据权利要求4所述的方法,还包括:
当存在一个或更多个图块版本冲突时,使用缓存的数据库生成所述路线。
6.根据权利要求4-5中任一项所述的方法,还包括:
当不存在图块版本冲突时,使用更新的数据库生成所述路线。
7.根据权利要求1-6中任一项所述的方法,还包括:
发送所述路线至移动装置。
8.根据权利要求7所述的方法,还包括:
接收由所述移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置。
9.根据权利要求1-8中任一项所述的方法,还包括:
确定新版本是否可用于所述两个或更多个地图图块;以及
当可用时,下载所述两个或更多个地图图块中的至少一个的所述新版本。
10.根据权利要求9所述的方法,其中,所述对象版本值对应于所述两个或更多个地图图块中的至少一个的所述新版本。
11.一种装置,包括:
至少一个处理器;和
至少一个存储器,其包括用于一个或更多个程序的计算机程序代码;所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使所述装置至少执行:
接收制定路线请求;
根据所述制定路线请求来识别第一地图图块和第二地图图块;
识别新版本的所述第一地图图块,
访问所述第一地图图块的兼容性矩阵;并且
执行对所述兼容性矩阵的分析以确定所述新版本的所述第一地图图块的对象是否与所述第二地图图块兼容。
12.根据权利要求11所述的装置,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行:
当所述分析指示冲突时,识别新版本的所述第二地图图块;以及
基于所述新版本的所述第二地图图块和所述制定路线请求来生成路线。
13.根据权利要求11-12中任一项所述的装置,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行:
当所述分析指示没有冲突时,基于旧版本的所述第二地图图块和所述制定路线请求来生成路线。
14.根据权利要求11-13中任一项所述的装置,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行:
根据所述制定路线请求来识别第三地图图块;以及
访问所述第二地图图块的兼容性矩阵,其中,对所述兼容性矩阵的分析确定所述第二地图图块的对象是否与所述第三地图图块兼容。
15.根据权利要求11-14中任一项所述的装置,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行:
发送包括所述新版本的所述第一地图图块和所述第二图块的路线至移动装置。
16.根据权利要求15所述的装置,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述装置至少执行:
接收由所述移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置,并且所述第一地图图块和所述第二地图图块是基于所述位置数据而被识别的。
17.一种包括指令的非暂时性计算机可读介质,所述指令当被执行时可操作为进行以下操作:
接收针对制定路线数据的制定路线请求;
根据所述制定路线数据来识别两个或更多个地图图块;
访问兼容性矩阵;
执行对所述两个或更多个地图图块和所述兼容性矩阵的分析,其中,所述兼容性矩阵包括对象版本值;
基于所述分析来确定是否存在在所述两个或更多个地图图块之间的一个或更多个对象版本冲突;以及
基于所述制定路线请求和所述一个或更多个版本冲突来生成路线。
18.根据权利要求17所述的非暂时性计算机可读介质,其还包括当被执行时可操作为进行以下操作的指令:
识别新版本的所述第二地图图块,其中,所述一个或更多个对象版本冲突基于所述第一地图图块的所述对象版本和所述新版本的所述第二地图图块。
19.根据权利要求17-18中任一项所述的非暂时性计算机可读介质,其中,所述一个或更多个对象版本冲突基于所述第一地图图块和所述第二地图图块的现有对象版本。
20.根据权利要求17-19中任一项所述的非暂时性计算机可读介质,其还包括当被执行时可操作为进行以下操作的指令:
接收由移动装置收集的位置数据,其中,所述位置数据描述所述移动装置的地理位置,其中,所述两个或更多个地图图块是基于所述位置数据和所述制定路线数据而被识别的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/926,845 US9671236B2 (en) | 2015-10-29 | 2015-10-29 | Tile versioning to improve usability of streamed navigation data |
US14/926,845 | 2015-10-29 | ||
PCT/EP2016/076103 WO2017072308A1 (en) | 2015-10-29 | 2016-10-28 | Tile versioning to improve usability of streamed navigation data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108291815A true CN108291815A (zh) | 2018-07-17 |
CN108291815B CN108291815B (zh) | 2022-08-12 |
Family
ID=57208316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680063730.3A Active CN108291815B (zh) | 2015-10-29 | 2016-10-28 | 用于生成路线的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9671236B2 (zh) |
EP (1) | EP3368861A1 (zh) |
CN (1) | CN108291815B (zh) |
WO (1) | WO2017072308A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656425A (zh) * | 2021-08-18 | 2021-11-16 | 北京百度网讯科技有限公司 | 电子地图的更新方法、装置、电子设备、存储介质及产品 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9874450B2 (en) * | 2016-04-28 | 2018-01-23 | Here Global B.V. | Referencing closed area geometry |
US11486717B1 (en) * | 2017-03-13 | 2022-11-01 | Mapbox, Inc. | Generating navigation instructions based on digital map context |
US10803361B2 (en) * | 2017-05-11 | 2020-10-13 | Facebook, Inc. | Systems and methods for partitioning geographic regions |
CN111263960B (zh) * | 2018-01-15 | 2022-04-05 | Sk电信有限公司 | 用于更新高清晰度地图的设备和方法 |
DE102019114534A1 (de) * | 2019-05-29 | 2020-12-03 | Bayerische Motoren Werke Aktiengesellschaft | Konsistentes Aktualisieren einer geographischen Karte |
DE102019114538A1 (de) * | 2019-05-29 | 2020-12-03 | Bayerische Motoren Werke Aktiengesellschaft | Effizientes Aktualisieren einer geographischen Karte |
CN115335664A (zh) * | 2020-03-24 | 2022-11-11 | 御眼视觉技术有限公司 | 用于优化针对导航的地图图块请求的系统和方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1882971A (zh) * | 2003-11-19 | 2006-12-20 | 株式会社查纳位资讯情报 | 导航装置、更新数据提供装置、更新数据提供方法 |
CA2654865A1 (en) * | 2006-09-29 | 2008-04-17 | Aisin Aw Co., Ltd. | Map update data supplying apparatus, version table, map data updating system, and map update data supplying method |
CN101273246A (zh) * | 2005-11-08 | 2008-09-24 | 爱信艾达株式会社 | 导航装置、地图服务器、地图更新系统、方法及程序 |
EP1643395B1 (en) * | 2004-09-30 | 2011-04-27 | Navteq North America, LLC | Method of operating a navigation system to report effects of updated portions of a geographic database |
WO2011004026A8 (en) * | 2009-07-09 | 2011-06-30 | Tomtom International B.V. | Navigation device and method for time - dependent route calculation |
CN103090876A (zh) * | 2011-11-07 | 2013-05-08 | 伊莱比特汽车公司 | 用于结构化导航数据的技术 |
CN103743406A (zh) * | 2007-12-28 | 2014-04-23 | 纳夫特克有限公司 | 管理地理数据库版本之间的差异 |
US8880589B2 (en) * | 2010-12-29 | 2014-11-04 | Environmental Systems Research Institute, Inc. | Signature based map caching |
US9075822B2 (en) * | 2011-02-11 | 2015-07-07 | Here Global B.V. | Incremental testing of a navigation database |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7672778B1 (en) | 2004-07-20 | 2010-03-02 | Navteq North America, Llc | Navigation system with downloaded map data |
US7450003B2 (en) | 2006-02-24 | 2008-11-11 | Yahoo! Inc. | User-defined private maps |
US8139514B2 (en) | 2006-02-24 | 2012-03-20 | Yahoo! Inc. | Method and system for communicating with multiple users via a map over the internet |
US8060699B2 (en) | 2008-11-13 | 2011-11-15 | International Business Machines Corporation | Spiral cache memory and method of operating a spiral cache |
US8386715B2 (en) | 2009-11-30 | 2013-02-26 | Nokia Corporation | Method and apparatus for tile mapping techniques |
US8750845B2 (en) | 2010-02-24 | 2014-06-10 | Nokia Corporation | Method and apparatus for providing tiles of dynamic content |
US20120303263A1 (en) | 2011-05-23 | 2012-11-29 | Microsoft Corporation | Optimization of navigation tools using spatial sorting |
US20150186443A1 (en) | 2011-11-16 | 2015-07-02 | Google Inc. | Management of versioned map data tiles stored on a client device |
EP2626668B1 (en) | 2012-02-09 | 2016-11-30 | HERE Global B.V. | Testing of a map database update |
US9202311B2 (en) * | 2012-02-10 | 2015-12-01 | Google Inc. | Accessing map tiles |
US8672816B2 (en) * | 2012-04-30 | 2014-03-18 | Usa Sports, Inc. | Dumbbells and barbells with improved attachments |
US9593955B2 (en) | 2015-01-19 | 2017-03-14 | Here Global B.V. | Updating navigational map data |
-
2015
- 2015-10-29 US US14/926,845 patent/US9671236B2/en active Active
-
2016
- 2016-10-28 WO PCT/EP2016/076103 patent/WO2017072308A1/en active Application Filing
- 2016-10-28 CN CN201680063730.3A patent/CN108291815B/zh active Active
- 2016-10-28 EP EP16787901.4A patent/EP3368861A1/en active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1882971A (zh) * | 2003-11-19 | 2006-12-20 | 株式会社查纳位资讯情报 | 导航装置、更新数据提供装置、更新数据提供方法 |
EP1643395B1 (en) * | 2004-09-30 | 2011-04-27 | Navteq North America, LLC | Method of operating a navigation system to report effects of updated portions of a geographic database |
CN101273246A (zh) * | 2005-11-08 | 2008-09-24 | 爱信艾达株式会社 | 导航装置、地图服务器、地图更新系统、方法及程序 |
CA2654865A1 (en) * | 2006-09-29 | 2008-04-17 | Aisin Aw Co., Ltd. | Map update data supplying apparatus, version table, map data updating system, and map update data supplying method |
CN103743406A (zh) * | 2007-12-28 | 2014-04-23 | 纳夫特克有限公司 | 管理地理数据库版本之间的差异 |
WO2011004026A8 (en) * | 2009-07-09 | 2011-06-30 | Tomtom International B.V. | Navigation device and method for time - dependent route calculation |
US8880589B2 (en) * | 2010-12-29 | 2014-11-04 | Environmental Systems Research Institute, Inc. | Signature based map caching |
US9075822B2 (en) * | 2011-02-11 | 2015-07-07 | Here Global B.V. | Incremental testing of a navigation database |
CN103090876A (zh) * | 2011-11-07 | 2013-05-08 | 伊莱比特汽车公司 | 用于结构化导航数据的技术 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656425A (zh) * | 2021-08-18 | 2021-11-16 | 北京百度网讯科技有限公司 | 电子地图的更新方法、装置、电子设备、存储介质及产品 |
CN113656425B (zh) * | 2021-08-18 | 2024-04-30 | 北京百度网讯科技有限公司 | 电子地图的更新方法、装置、电子设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN108291815B (zh) | 2022-08-12 |
US9671236B2 (en) | 2017-06-06 |
EP3368861A1 (en) | 2018-09-05 |
WO2017072308A1 (en) | 2017-05-04 |
US20170122750A1 (en) | 2017-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10030985B2 (en) | Updating navigational map data | |
CN108291815A (zh) | 改善流式导航数据的可用性的图块版本控制 | |
CN108700424A (zh) | 导航数据库更新包 | |
US10002156B2 (en) | Version management for incrementally compiled map data | |
US10049129B2 (en) | Method and apparatus for providing map updates from distance based bucket processing | |
US9015200B2 (en) | Map update scripts with tree edit operations | |
US11334605B2 (en) | Incremental update of compressed navigational databases | |
US20080162039A1 (en) | Road map data structure, road map data structure creating method, road map data storage medium, and navigation device | |
JP2006220524A (ja) | 地図更新処理用データ作成方法、地図更新方法及び装置 | |
US11113320B2 (en) | Versioned change propagation | |
EP3040855B1 (en) | Updating navigational map data organized in lists | |
JP6136511B2 (ja) | 地図差分データ配信装置、車両用ナビゲーション装置、および地図差分データ配信方法 | |
JP5005961B2 (ja) | データ更新システム、ナビゲーション装置、及びデータ更新方法 | |
CN103257971B (zh) | 终端和文件管理方法 | |
US9970769B2 (en) | Flexible organization of navigation attributes to support hybrid navigation and data streaming | |
JP5261439B2 (ja) | データ更新システム、ナビゲーション装置、及びデータ更新方法 | |
JP4952987B2 (ja) | データ更新システム及び方法並びにナビゲーション装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |