CN107110658B - 更新导航地图数据 - Google Patents
更新导航地图数据 Download PDFInfo
- Publication number
- CN107110658B CN107110658B CN201680005289.3A CN201680005289A CN107110658B CN 107110658 B CN107110658 B CN 107110658B CN 201680005289 A CN201680005289 A CN 201680005289A CN 107110658 B CN107110658 B CN 107110658B
- Authority
- CN
- China
- Prior art keywords
- tile
- database
- version
- data
- route
- 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.)
- Active
Links
Images
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/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
- 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/3863—Structures of map data
-
- 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
- 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/10—Map spot or coordinate position indicators; Map reading aids
- G09B29/106—Map spot or coordinate position indicators; Map reading aids using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Databases & Information Systems (AREA)
- Educational Technology (AREA)
- Educational Administration (AREA)
- Business, Economics & Management (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明描述用于更新导航地图数据的系统、方法和设备。接收对于路线规划数据的路线规划请求。可以存取对应于所述路线规划请求的版本相容性矩阵。执行高速缓冲存储数据库、主数据库和所述版本相容性矩阵的分析。基于所述分析识别所述高速缓冲存储数据库与主数据库之间的多个版本冲突。使用这些版本冲突,生成基于所述路线规划请求的一个或多个路线。
Description
相关申请的交叉引用
本申请要求2015年1月19日提交的美国临时申请No.62/104,910的优先权权益。临时申请的整个内容以引用的方式并入本文中,除了在与本说明书有任何不相容的公开或定义的情况下,这时将以本文中的公开或定义为准。
技术领域
以下公开涉及更新导航地图数据,或者更具体来说,涉及用于更新、应用和检查混合导航的版本相依性的系统和算法。
背景技术
递增地图更新、混合导航和导航数据流式传输对于现代的导航系统是至关重要的。混合导航这个术语是指在移动装置处高速缓冲存储一些地图数据但是在移动装置行进到新地理区域时移动装置仍然依赖于从服务器下载地图数据的系统。高度自动化驾驶(HAD)应用领域需要可靠的数据。在此背景下的可靠性有两个方面。首先,数据必须是新鲜的,即最新的并且是当前的。其次,数据必须是一致的。要让数据库一致,数据库中包含的数据必须与数据库中的其它数据相容。这个相容性使得数据一致或可靠,并且当存取数据时其产生预期结果。
发明内容
本发明提供接收路线规划请求并且确定数据集之间的版本冲突以提供经过更新的导航地图数据的方法、设备和系统。拼片版本相容性矩阵对应于路线规划请求。执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的分析。基于所述分析识别所述高速缓冲存储数据库与主数据库之间的多个版本冲突。使用这些版本冲突,生成基于所述路线规划请求的一个或多个路线。所述路线可以发送到最终用户、服务器或某个其它系统。
以下实施例提供用于更新导航地图数据的系统和方法。本发明提供接收路线规划请求并且确定数据集之间的版本冲突以提供经过更新的导航地图数据的方法、设备和系统。可以使用对应于所述路线规划请求的拼片版本相容性矩阵。可以使用拼片版本相容性矩阵指示导航地图数据中的哪个拼片数据版本是当前的并且与导航地图数据中的其它拼片数据一致。执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的分析。基于所述分析识别所述高速缓冲存储数据库与主数据库之间的多个版本冲突。使用这些版本冲突,生成基于所述路线规划请求的一个或多个路线。所述路线可以发送到最终用户、服务器或某个其它系统。
在一个实施例中,最终用户想要在规划到目的地的路线的同时更新导航地图数据。导航应用可以接收对于路线规划数据的路线规划请求。路线规划数据对应于导航地图中的拼片数据。导航应用可以存取拼片版本相容性矩阵。所述拼片版本相容性矩阵可能含有关于导航地图中的拼片数据的版本管理信息。导航应用可以执行第一数据库、第二数据库和拼片版本相容性矩阵的分析。第一和第二数据库可以由拼片数据组成。导航应用可以基于所述分析识别第一数据库和第二数据库之间的多个版本冲突。版本冲突表示两个拼片彼此不一致。导航应用可以基于路线规划请求和多个版本冲突生成路线。
在另一实施例中,一种非暂时性计算机可读媒体能用于执行更新导航地图数据的指令。所述指令当执行时接收对于路线规划数据的路线请求,存取拼片版本相容性矩阵,执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的分析,基于分析识别高速缓冲存储器数据库与主数据库之间的多个版本冲突,以及基于路线请求和多个版本冲突生成路线。
附图说明
本文中参看以下图式描述示例性实施例。
图1示出当系统没有因特网连接时存储数据以用于更新导航地图数据的示例性方式。
图2示出当系统具有网络连接时存储数据导航地图数据的示例。
图3示出当系统没有网络连接时用于更新导航地图数据的示例系统。
图4示出用于不管有没有网络连接都使用拼片版本相容性矩阵更新导航地图数据的系统。
图5示出用于更新导航地图数据的示例性数据库和拼片版本相容性矩阵。
图6示出用于更新导航地图数据在拼片版本相容性矩阵中存储数据的另一个实施例。
图7示出用于更新导航地图数据的在拼片版本相容性矩阵中存储数据的又一实施例。
图8示出用于更新导航地图数据的示例性移动装置。
图9示出用于更新导航地图数据的示例性流程图。
图10示出用于更新导航地图数据的示例性系统。
图11示出用于更新导航地图数据的示例性流程图。
具体实施方式
现代的导航系统使用版本管理(versioning)来解决新鲜度和一致性问题。通常以拼片形式使用导航内容。拼片具有版本并且作为二进制大对象(BLOB)存储于数据库(例如SQLite数据库)中。
举例来说,路线规划数据存储在表格中,例如可具有三个属性(ID、版本、拼片数据)的路线规划拼片表中。ID反映数据的空间位置,版本反映版本管理信息,拼片数据含有该特定区域的二进制编码导航数据或BLOB数据。构建地图供导航装置使用的过程需要编译地图和将地图下载到导航装置。在从头开始编译完整的地图之后,表格中的所有拼片具有相同版本,即第一版本。通常在地区级别编译地图,例如德国、伊利诺伊州州或类似地理地区的地图。如果导航装置(例如汽车上的导航音响单元)在将编译的数据库从一个版本更新到另一个版本,则导航装置必须更新所有拼片,这些拼片具有较晚版本的ID。只有经过改变的拼片的版本增加。如果所有拼片已经更新,则经过更新的数据库再次是新鲜的并且一致的。令人遗憾的是,更新完整产品(例如欧洲或至少德国)的所有拼片是成本相当高的操作。更新客户端上的数据库需要大量的空中带宽并且需要相当长的一些时间。
以下实施例涉及一种更新导航地图数据的方法。历史上更新导航地图数据是通过在导航应用与服务器之间维持网络(例如因特网)连接实现的。导航应用可以每隔一定间隔下载地图的一些部分。然而,下载整个地图可能要用相当长的时间和相当大的带宽。当导航应用与容纳地图数据的服务器之间不存在因特网连接时,可以使用拼片版本可存取性矩阵来解决更新导航地图数据的问题。
图1示出当系统没有因特网连接时存储数据以用于更新导航地图数据的示例性方式。图1包含一组拼片102区段(1),拼片对应于表格104中的id,版本号和数据,相同组的拼片106区段(2),其具有可能的路线,拼片对应于表108和112中的id,版本号,以及具有改变的版本号的数据和用于拼片4712的数据,以及110中的所述组拼片上的可能的路线。一种限制需要下载的数据量的方法是只下载导航装置当前在其中行进的区域。假设导航装置计算从A到B的路线并且在这个过程中只使用三个拼片。例如,图1中从A到B的路线(区段(2))包含三个拼片(4711、4712和4713)。
在计算路线时,导航装置可以向系统查询仅仅这三个拼片的当前数据,并且因此只更新这些拼片,并且只有在这些拼片已经改变的情况下才更新。例如,图1中在区段(1)和(2)之间,拼片4712已经改变。因为存在因特网连接,所以可以计算路线,因为数据库108中的拼片4712已经更新。如果导航装置稍后计算从点A到点C的路线,并且出于任何原因,导航装置没有通过114处的闪电束示出的因特网连接(蜂窝网络或其它无线网络)可用,则导航装置可以查询数据库并且确定拼片数据不一致,这意味着不再可能计算此路线,因为数据库不相容,如图1通过区段(3)所示。引起不一致是因为拼片4712可能参考了数据库108中不存在的拼片1034的新版本。换句话说,拼片4712的版本2与拼片4711和4713的版本1一致,因为图1中区段(2)是用因特网连接完成的路线规划。然而,不能确定拼片4712的版本2是否与拼片1034的版本2一致,因为路线规划是在没有因特网连接的情况下完成的。因此,将不可能进行路线规划。更一般而言,一个拼片可能参考数据库中没有的另一拼片的新版本,因此可能无法进行路线规划。
在一个实施例中,用于高度自动驾驶的高清数据库根本不更新或改变。因此数据库始终保持一致。所有下载的新数据存储于第二数据库中,第二数据库被称作高速缓冲存储数据库,结构与原始数据库相同。结构相同可以被定义为具有拼片id列、拼片数据列和拼片版本列。导航装置可以尝试通过例如图4、图8或图10中的网络装置之类的网络装置建立因特网连接。在有因特网连接可用的情况下,导航装置发送从系统下载它当前在使用的区域的新鲜拼片的请求。在导航应用中进行存储于高速缓冲存储数据库中的新下载拼片和存储于主数据库中的拼片的合并。合并可以包含导航装置对照高速缓冲存储数据库检查主数据库中的数据库条目以确定拼片版本是否彼此一致。导航装置接着可使用已经合并在一起以构建路线的高速缓冲存储数据库中的拼片数据和主数据库中的拼片数据两者为请求构建路线。倘若没有因特网连接可用,数据库就转而使用原始的未改变的数据库。因此,如果有因特网连接可用则可以使用当前数据,如果没有因特网连接则可以使用一致的数据。
图2示出图1的示例的背景下的这个场景。图2由一组拼片数据202、通过表204、208和214所示的主数据库、206和210上的具有多组拼片上的可能路线的一组拼片数据和高速缓冲存储数据库212和216组成。在图2区段(2)中,当有因特网连接可用时,将新数据下载到高速缓冲存储数据库,高速缓冲存储数据库的结构与原始数据库相同。倘若没有因特网连接可用,它就转而使用原始的未改变的数据库。在图2区段(3)中,当没有因特网连接可用时,对于从点A到点C的路线规划使用原始数据库而不使用拼片4712的版本2。因此,如果有因特网连接可用则可以使用新鲜数据,如果没有因特网连接则可以使用一致的数据。
没有因特网连接可用时的高速缓冲存储数据库的不可用性会造成限制。图2和图3在没有因特网连接时利用高速缓冲存储数据库。例如,假设在图2和图3中从点A到点B计算路线,此时导航装置具有因特网连接。该路线覆盖从点A到点B的路径上的三个分开的拼片4711、4712和4713。拼片4711、4712和4713可以对应于兴趣区域的地图的地理数据部分。在计算路线时,系统需要检查是否有任何存储于高速缓冲存储数据库中的较新的拼片版本可以用于计算路线,或者是否系统必须转而使用主数据库的一致版本。在这个实例中,如果拼片4712具有新版本,则下载新版本以用于从点A到点B的路线计算。系统表示4712的新版本与4711和4713相容,因为拼片4711和4713是路线的一部分。如果导航装置的用户请求从点A到点C的路线。则这个新路线可能将导航装置的用户从拼片4711引导到拼片1034。令人遗憾的是,导航装置在用于拼片1034的地理位置没有因特网连接,因此,系统转而使用一致数据库,一致数据库不包含拼片4711的新版本,因为它与拼片1034不相容。
在“没有因特网连接”的情况下,有可能路线应当使用来自高速缓冲存储数据库的一些拼片和来自主数据库的一些拼片。然而,还不能保证来自高速缓冲存储数据库的该组拼片彼此一致。存储于高速缓冲存储数据库中的拼片可以来自不同的一致的数据库编译。如果在一个路线规划操作中一起使用来自不同数据库编译的拼片,则操作可能导致错误。无论拼片是从主数据库和高速缓冲存储数据库的组合加载还是仅仅从高速缓冲存储数据库加载,这一点都成立。需要在没有因特网连接可用的情况下检测存储于高速缓冲存储数据库中的拼片是否可以使用(彼此依赖或者结合主数据库)的方案。
图4示出用于无论是否有因特网连接都使用拼片版本可存取性矩阵更新导航地图数据的示例系统400。.系统400包含开发者系统402,一个或多个移动装置或个人计算机404(下文中称为“移动装置”),以及网络406。可以提供额外的、不同的或更少的组件。例如,许多移动装置404与网络406连接。开发者系统402包含服务器410和一个或多个数据库408。
数据库408可以是地理数据库,其存储从一个或多个移动装置404收集的导航地图数据或存储于作为地图开发者系统402的一部分的数据库408中的导航地图数据。导航地图数据可以包含存储于数据库408中的表格中的拼片数据、路线数据、道路数据、链路数据或历史业务数据。拼片数据可以指车辆收集的数据或现实世界中的各条驾驶路线。拼片数据还可指当构成在一起时组成例如市、州、县、国家或其某一组合的地图区域的地图数据。存储于数据库408中的拼片数据可以是与沿着一条或多条路线行驶的一个或多个车辆有关的数据。移动装置的用户可以指示他们想要接收从点A到点B的路线规划数据。拼片数据可以指示是否邻近拼片之间的道路链彼此相同、因而当拼接在一起时能够形成路线。此外,拼片版本相容性矩阵可以指示存储于数据库408中的任何拼片彼此相容。数据库408可以包含主数据库和高速缓冲存储数据库。
一个实施例包含在服务器410处计算的拼片版本相容性矩阵。拼片版本相容性矩阵可以是下载到移动装置404并且存储于高速缓冲存储数据库中的拼片数据的额外属性。属性可以是列举了与拼片数据相容的拼片的矩阵。相容拼片的列表可以是一组数据,其中包含拼片数据id和与拼片数据条目相容的拼片数据版本。图5、图6和图7中描绘了数据库和拼片版本相容性矩阵的示例。
系统400可以接收对于路线规划数据的路线规划请求。路线规划数据可以含有拼片数据,这些拼片数据可以用于构建兴趣区域(例如市、县、州、区域、国家或其某一组合)的地图。在其它实施例中,移动装置404接收请求。请求可能是来自系统的最终用户,例如带有导航应用的车辆中的驾驶员。替代地,请求可能来自服务器。路线规划请求可能对应于地址、建筑物、地标、关注点或存储于数据库408中的某个其它地理识别符。
系统400可以存取拼片版本相容性矩阵以确定存储器或数据库中的拼片数据是否一致。在其它实施例中,移动装置404存取拼片版本相容性矩阵。在一些实施例中,拼片版本相容性矩阵存储在移动装置404上,在其它实施例中拼片版本相容性矩阵存储在服务器410或数据库408上。拼片版本相容性矩阵包含旗标或另一类型的数据,其指示存储在移动装置或服务器或数据库上的哪些拼片是相容的。在一个实例中,对于每个拼片包含矩阵,并且矩阵列举邻近或可连接拼片的拼片识别符和版本号。当路段或道路链在两个拼片之间延伸时,这两个拼片可连接起来。在另一个实例中,主矩阵可以包含所有拼片和整个地理区的一致性。当两个拼片一致时,拼片可供系统用于生成路线。
拼片版本相容性矩阵可以指示哪些拼片版本与其它拼片版本相容。这个信息可以来自存储在移动装置或服务器或数据库上的地理数据库的有规律的每月或每季度编译。拼片版本相容性矩阵可以实施为特定拼片的数据库条目中的额外属性。
拼片版本相容性矩阵可以含有对应于兴趣区域的所有拼片数据的相容性。在另一版本中,拼片版本相容性矩阵可以只含有对应于从该特定拼片可能的路线规划连接(即,每个拼片有一个矩阵)。系统可以提前确定在矩阵中参考拼片的顺序,因此可以将版本信息预先排序。通过将拼片数据预先排序,拼片版本相容性矩阵的大小可以比在拼片版本相容性矩阵中存储拼片id和版本数据更小。
在一个实施例中,拼片版本相容性矩阵可以存储完整的内容,即所有成对的tileID和versionID。在另一实施例中,因为tileID的清单也可以存储于元数据中,所以只要存储版本序列号就够了。拼片版本相容性矩阵可以只包含这一系列版本号。例如,版本相容性矩阵(M)可以是[1,1,1,2,1,1,2],其中矩阵M中的每个元件指示已经存储于元数据中的序列中的tileID的版本号。图6中示出了这个矩阵的示例。该序列可以通过压缩算法压缩,该压缩算法例如是缩小算法(deflate algorithm),其使用滑动窗压缩并且使用节点的二元树(例如zlip),或者是通过这样的压缩算法:它使用可逆的巴罗斯-惠勒变换(Burrows-Wheeler transformation),并且将串重排成类似字符的顺序(例如bzip2a),或者通过某个其它压缩算法。
在另一实施例中,矩阵可以甚至进一步压缩,因为序列号的列表包含大量具有相同值的值。来自第一编译的每个拼片的拼片版本相容性矩阵可以包含数据库中的所有其它拼片的1值的序列。即使数据库中的拼片的数目多达数千,压缩拼片版本相容性矩阵也可以是几个字节或者像2字节这么少。
拼片版本相容性矩阵可以限于只有通过道路链彼此连接的那些拼片。图7中示出了这个过程的示例。通过将拼片版本相容性矩阵限于只有通过道路链连接的那些拼片,例如图4中的系统400之类的系统不需要检查不彼此连接的链路之间的版本数据的不一致。
系统400可以执行第一数据库、第二数据库和拼片版本相容性矩阵的分析。在其它实施例中,移动装置404执行分析。在一些实施例中,第一数据库是高速缓冲存储数据库。高速缓冲存储数据库可以是在将信息合并到另一数据库中之前临时存储信息的数据库。类似地,在一些实施例中,第二数据库可以是系统或移动数据库依赖的主数据库。数据库可以包含所有所下载的最近的完整地图数据。所述分析可以将存储于所述数据库中的数据与存储于拼片版本相容性矩阵中的数据比较。
系统400可以基于所述分析识别第一数据库和第二数据库之间的多个版本冲突。版本冲突可以例如是存储在数据库408或者移动电话404中的一个拼片具有版本id 1,并且存储于高速缓冲存储数据库中的拼片的经过更新的版本具有版本id 2的情形。在此情况下,邻近拼片的拼片版本相容性矩阵可以指示邻近拼片仅仅与版本1相容。因此,邻近拼片与存储于高速缓冲存储数据库中的拼片将存在版本冲突。
系统400可以基于路线规划请求和多个版本冲突生成路线。在其它实施例中,移动装置404可以生成路线。路线可以对应于最终用户可能用来从点A行驶到点B的路径。也可以仅仅从第一数据库生成路线。在其它实施例中,仅仅从第二数据库生成路线。在一些实施例中,如果与移动装置404有因特网连接,则使用第一和第二数据库以及拼片版本相容性矩阵生成路线。在另外其它实施例中,如果没有因特网连接,则使用第一和第二数据库以及拼片版本相容性矩阵生成路线。服务器可以将路线发送到移动装置,或者在其它实施例中,将路线从移动装置发送到服务器。
图5是拼片版本相容性矩阵的一个实施例的示例。所述示例示出了一组拼片数据502,如表504和508中所示的主数据库,拼片数据506上的一组可能的规划路线,以及拼片版本相容性矩阵510。例如,例如拼片4712之类的拼片可具有以下属性:id、版本、拼片数据和拼片版本相容性矩阵。拼片4712可具有以下值,id=4712、版本=2、拼片数据=82349423AE23423f098和拼片版本相容性矩阵=(4711,1),(4712,1),(4713,1),...(1033,1),(1034,2),(1035,1)。拼片版本相容矩阵的值指示拼片4712版本2与拼片4711版本1、拼片4713版本1、拼片1033版本1、拼片1034版本2和拼片1035版本1相容。沿着那些拼片需要计算的任何路线可以在没有因特网连接的情况下进行。如果用户试图规划从点D到点E的路线(这将需要行驶到1033),则系统将从拼片版本相容性矩阵看出需要拼片1033的版本1。如果拼片1033的版本1不在主数据库或高速缓冲存储数据库中,则可能不发生路线规划。图5中,拼片1033的版本1在主数据库和高速缓冲存储数据库中都存在,所以不管有没有因特网连接都可以发生路线规划。然而,如果路线规划应该是从D到F,并且不存在因特网连接,则可能不发生路线规划,因为拼片版本相容性矩阵510指示4712与拼片1034版本2相容,但是主数据库仅仅具有拼片1034的版本1。
图6是使用与图5相同的数据的拼片版本相容性矩阵的示例,但是在图6中,拼片版本相容性矩阵610仅仅含有版本id,例如1,2,1,...1,2,和1。在这个实施例中,拼片id的顺序存储于导航应用可以存取的元数据中,并且因而允许导航应用仅仅存储拼片id版本。接着,当运行路线规划算法时,处理算法所需要的资源数量减少。
图7示出仅仅限于通过道路链彼此连接的那些拼片的拼片版本相容性矩阵的示例。例如,接收到从D到E的路线规划请求。在拼片数据组702处示出了可能的路线。路线规划算法在拼片4712中的点D处开始。系统分析链路,并且路线规划算法将达到拼片4712的拼片边界。拼片4712具有链路L1和链路L2。算法可以检查主数据库704以看出各种拼片的版本信息是什么。算法无法在链路L1继续,因为拼片1034根据拼片4712的拼片版本相容性矩阵706具有版本值2,并且拼片1034版本2在主数据库中无法获得。因此算法在链路L1停止。
接下来,算法在另一个方向上在链路L2继续。因为版本2的拼片4711与版本1的拼片1033一致,所以算法可以继续。算法识别拼片1033中的链路L3。当从主数据库获取当前拼片4711并且拼片1033只有在主数据库中可以获得时,拼片4711和1033彼此相容,并且路线规划可以继续到目的地C。
当算法被版本不相容性“阻断”一次(在以上实例中在链路L1)时,系统再次仅仅基于主数据库计算相同路线。接下来,将仅仅使用主数据库的路线和使用组合高速缓冲存储数据库和主数据库的路线彼此比较,并且因此使用更好的路线。
例如,接收到从D到F的路线规划请求。路线规划算法在点D开始。系统分析链路,并且路线规划算法将到达链路L1和L2并且只能用链路L2继续。仍然可以使用来自版本2的拼片4712计算经由链路L1、L3和L4从D到F的路线。当路线规划被阻断时,导航装置还可计算主数据库上的从D到F的路线,并且将所述结果与使用组合的主数据库和高速缓冲存储数据库的结果比较。
系统可以通过路线速度、路线时间、路线交通量或某个其它度量确定哪条路线更好。系统可以通过测量沿着所计算的路线的平均行驶速度来计算路线速度。系统可以通过测量沿着所计算的路线的平均行驶时间来计算路线时间。系统可以通过与记录沿着路线的交通量的交通节点通信来计算交通量。系统接着可比较速度、时间和交通,并且基于过去对于导航装置的使用来确定最佳的可能路线。
导航装置可以以有规律地计划的时间间隔(例如每天、每周、每月、每季度)或者在接收到路线规划请求时下载拼片版本相容性矩阵。在下载期间,导航装置可以仅仅下载与其它拼片相容的那些拼片的拼片版本相容性矩阵。
图8示出了可以用作导航装置的示例性移动装置或个人计算机404。图8包含处理器802、存储器804、输入装置806、通信接口808、定位电路810和显示器812。对于移动装置/个人计算机404,额外的、不同的或更少的组件是可能的。移动装置104可以是个人装置,例如配备有定位电路(例如全球定位系统(GPS))和惯性测量单元(IMU)的移动电话。定位电路810生成指示移动装置404的位置的数据(“位置数据”)。作为GPS的补充或替代,定位电路可以包含航位推算型系统、蜂窝定位或这些或其它系统的组合。定位电路可以包含合适的感测装置,其测量移动装置104的行进距离、速度、方向等等。定位系统还可包含接收器和相关芯片以获得GPS信号。
图9示出通过使用拼片版本相容性矩阵更新导航地图数据的示例性流程图。可以用不同的顺序施加所述动作。可以忽略或重复所述动作。可以添加额外的动作。在动作902,处理器802或通信接口808可以被配置成接收对于路线规划数据的路线请求。定位电路810、输入装置806、GPS或与移动装置404集成的其它输入装置输入路线请求。在动作904,处理器802可以存取版本相容性矩阵。在一个实施例中,版本相容性矩阵可以采取下表的形式:
在上表中,顶部行对应于特定的拼片编号,用于识别导航地图数据库中的拼片数据条目。左侧的列识别导航地图数据库中的与拼片编号相容的其它拼片。右侧的列指示相容拼片的哪个版本与拼片编号相容。示例性表格可具有更多的行,并且列举与拼片编号相容的多个相容拼片。此外,可以包含超出相容拼片和版本的多个列。例如,可以包含用于相容拼片的对应的地理拼片数据。
在动作906,处理器802执行高速缓冲存储数据库、主数据库和版本相容性矩阵的分析。处理器可以配合存储器804执行这个步骤。在一些实施例中,处理器可以检查版本相容性矩阵的行以查看哪些拼片与沿着所述路线的拼片数据相容。处理器可以检查版本相容性矩阵的列以查看拼片的哪个版本是相容的。处理器可以检查高速缓冲存储数据库和主数据库以确保拼片的这个版本在这些数据库之一中。
在动作908,处理器802基于分析识别高速缓冲存储器数据库和主数据库之间的多个版本冲突。如果拼片版本相容性矩阵中列举的拼片具有与高速缓冲存储数据库或主数据库中列举的拼片不同的所列版本,则可能发生版本冲突。
在动作910,处理器802基于路线请求和多个版本冲突生成路线。处理器可以使用高速缓冲存储数据库和主数据库、仅仅高速缓冲存储数据库、仅仅主数据库或数据库的某个其它组合生成路线。
图10示出了根据任何以上示例的可以用于计算和实施拼片版本相容性矩阵的示例性服务器410和处理器1002。图10中的示例性服务器包含处理器1002、存储器1004和通信接口1006。在请求时,响应于对于路线规划的请求,周期性地根据时间调度,或者当起始导航应用(例如在请求任何路线之前可以针对整个区域下载拼片版本相容性矩阵)时,可以从服务器410向移动装置404发送矩阵。拼片版本相容性矩阵可以是拼片特有的,并且每当下载拼片时与拼片一起下载。图11示出通过使用拼片版本相容性矩阵更新导航地图数据的示例性流程图。图11的流程图的动作可以替代地通过服务器410或一组服务器执行。可以包含不同的、更少的或额外的动作。
在动作1102,处理器1002或通信接口1006通过网络406接收对于路线规划数据的路线规划请求。在动作1104,处理器1002存取存储于数据库中的拼片版本相容性矩阵。拼片版本相容性矩阵可以采取下表的形式:
在上表中,拼片版本相容性矩阵包含多个拼片并且所述拼片与那些拼片及其对应的版本相容。
在动作1106,处理器1002可以执行第一数据库、第二数据库和拼片版本相容性矩阵的分析。在动作1108,处理器1002基于分析识别第一数据库和第二数据库之间的多个版本冲突。在动作1110中,处理器1002基于路线规划请求和多个版本冲突生成路线。
除了以上描述的数据之外,数据库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的网络连接协议。
虽然描述非暂时性计算机可读媒体是单一媒体,但是术语“计算机可读媒体”包含单一媒体或多个媒体,例如集中式或分布式数据库和/或存储一个或多个指令集的相关联的高速缓冲存储器和服务器。术语“计算机可读媒体”还应包含具有以下特点的任何媒体:能够存储、编码或传送用于由处理器执行的指令集,或使计算机系统执行本文中所公开的任何一种或多种方法或操作。
在特定的非限制性示例性实施例中,计算机可读媒体可以包含固态存储器,例如存储卡或其它容纳一个或多个非易失性只读存储器的封装。此外,计算机可读媒体可以是随机存取存储器或其它易失性可重写存储器。此外,计算机可读媒体可以包含磁光或光学媒体,例如用于俘获经由传输媒体传送的例如信号的载波信号的盘或带或其它存储装置。电子邮件的数字文件附件或其它独立信息档案或档案集可以被视为有形存储媒体式的分布媒体。因此,本公开被视为包含可存储数据或指令的任何一个或多个计算机可读媒体或分布媒体以及其他等效物和后继媒体。
在替代实施例中,可建构专用硬件实施方案(例如专用集成电路、可编程逻辑阵列和其他硬件装置)以实施在此所描述的一种或多种方法。可包括各种实施例的设备和系统的应用可广泛地包括多种电子和计算机系统。本文所描述的一个或多个实施例可以使用两个或更多个特定的互连硬件模块或装置实施功能,其中可以在模块之间并且通过模块传送相关控制和数据信号,或者可以作为专用集成电路的部分实施功能。因此,本发明的系统涵盖软件、固件以及硬件实施方案。
根据本发明的各种实施例,本文所描述的方法可以通过计算机系统可执行的软件程序实施。另外,在一个示例性非限制性实施例中,实施方案可包括分布式处理、组件/对象分布式处理,以及并行处理。替代地,可建构虚拟计算机系统处理来实施如在此所描述的一种或多种方法或功能性。
虽然本说明书参照特定标准和协议描述在特定实施例中可以实施的组件和功能,但是本发明不限于这些标准和协议。例如,用于因特网和其它分组交换网络传输的标准(例如TCP/IP、UDP/IP、HTML、HTTP、HTTPS)代表技术现状的示例。这些标准会被功能基本上相同的更快或更高效的等效标准周期性地取代。因此,功能与本文中所公开的标准和协议相同或相似的替代标准和协议被视为它们的等效物。
计算机程序(也被称作程序、软件、软件应用、脚本或代码)可以任何形式的编程语言编写,包含编译或解译语言,且其可以任何形式部署,包含作为独立程序或作为适合于在计算环境中使用的模块、组件、子例程或其它单元。计算机程序不一定与文件系统中的文件相对应。程序可存储在保持其它程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中、专用于所讨论程序的单个文件中,或多个经协调文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。计算机程序可经部署以在一个计算机上或在位于一个位点或跨越多个位点分布并由通信网络互连的多个计算机上执行。
本说明书中描述的过程和逻辑流程可由一个或多个可编程处理器执行,所述可编程处理器执行一个或多个计算机程序以通过对输入数据操作且产生输出而执行功能。还可通过例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路来执行过程和逻辑流程,且设备也可实施为例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路。
如本申请中所使用,术语“电路”(circuitry或电路)是指所有以下各物:(a)仅硬件电路实施方案(例如仅模拟和/或数字电路中的实施方案)和(b)电路和软件(和/或固件)的组合,例如(在适当时):(i)处理器的组合或(ii)处理器/软件的部分(包含数字信号处理器),软件和存储器,其一起工作以使得例如移动电话或服务器的设备执行各种功能),以及(c)电路,例如微处理器或微处理器的一部分,其需要软件或固件以用于操作,即使软件或固件物理上并不存在也是如此。
“电路”的此定义适用于此术语在本申请中(包含在任何权利要求中)的所有使用。作为另一个实例,如本申请中所使用,术语“电路”还将涵盖仅处理器(或多个处理器)或处理器的一部分及其伴随的软件和/或固件的实施方案。术语“电路”还将涵盖(例如并且如果适用于特定权利要求要素)基带集成电路或移动电话中的应用处理器集成电路或服务器、蜂窝网络装置或其它网络装置中的类似集成电路。
适合于执行计算机程序的处理器包含(举例来说)通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。一般来说,处理器从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器装置。通常,计算机还包含用于存储数据的一个或多个大容量存储装置,或以操作方式耦合以从所述大容量存储装置接收数据或向其传送数据或进行这两种操作,所述大容量存储装置例如是磁盘、磁光盘或光盘。然而,计算机无需具有此类装置。此外,计算机可嵌入在另一装置中,例如移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器,仅举几例。适合于存储计算机程序指令和数据的计算机可读媒体包含所有形式的非易失性存储器、媒体和存储器装置,包含例如:半导体存储器装置,例如EPROM、EEPROM和快闪存储器装置;磁盘,例如内部硬盘或可装卸式磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入在专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可实施在具有显示器(例如,CRT(阴极射线管)、LCD(液晶显示器)监视器)以用于向用户显示信息且具有用户可用来对计算机提供输入的键盘和指向装置(例如,鼠标或轨迹球)的装置上。其它种类的装置同样可以用于提供与用户的交互;举例来说,向用户提供的反馈可以是任何形式的感觉反馈(例如视觉反馈、听觉反馈或触感反馈);并且来自用户的输入可以按任何形式接收,包含声学、语音或触感输入。
本说明书中描述的主题的实施例可在计算系统中实施,所述计算系统包含后端组件,例如数据服务器,或包含中间件组件,例如应用服务器,或包含前端组件,例如具有用户可通过其与本说明书中描述的主题的实施方案交互的图形用户界面或网络浏览器的客户端计算机,或一个或多个这些后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或媒体的数字数据通信(例如,通信网络)互连。通信网络的示例包含局域网(“LAN”)、广域网(“WAN”),例如因特网。
计算系统可包含客户端和服务器。客户端和服务器大体上远离彼此且通常通过通信网络交互。客户端与服务器的关系是借助于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序产生。
本文中所描述的实施例的图示意在提供对于各种实施例的结构的总体理解。该图示并不希望用作对利用本文所述的结构或方法的设备和系统的所有元件和特征的完整描述。所属领域的技术人员在审阅本公开后可以明显看出许多其它实施例。可以利用其它实施例并且从本公开导出其它实施例,使得可以在不脱离本公开的范围的前提下作出结构和逻辑的替代和变化。此外,该图示只是代表性的并且可能不是按比例绘制的。图示内的某些比例可以放大,而其它比例可以最小化。因此,应将本公开及附图视为说明性的而非限制性的。
虽然本说明书含有许多细节,但这些不应解释为对本发明的范围或可要求何种内容的限制,而是解释为对本发明的具体实施例特有的特征的描述。本说明书的上下文或单独实施例中所述的某些特征也可在单个实施例中组合地实施。相反,在单个实施例的上下文中所述的各种特征也可分别在多个实施例中实施或以任何适合子组合来实施。此外,尽管上文可能将特征描述为以某些组合起作用且甚至最初是这样要求的,但在一些情况下,可将来自所要求的组合的一个或多个特征从组合中删除,且所要求的组合可涉及子组合或子组合的变化。
类似地,虽然在图式中按特定次序描绘操作且在本文中按特定次序描述操作,但此情形不应被理解为要求按所示的特定次序或按顺序次序执行此类操作,或执行所有所说明的操作才能实现需要的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上述实施例中的各种系统组件的分离不应被理解为在所有实施例中要求这样分离,且应理解,所描述的程序组件及系统一般可一起集成在单个软件产品中或封装到多个软件产品中。
希望前述描述被看作是说明性而非限制性的,并且应理解,所附权利要求书包含所有等效物意在限定本发明的范围。权利要求书不应视为限于所描述的次序或元件,除非如此陈述。因此,本发明要求所有属于随附权利要求书及其等效物的范围和精神内的实施例。
Claims (12)
1.一种计算机实现的方法,其包括:
接收对于路线规划数据的路线规划请求;
执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的分析,所述高速缓冲存储数据库和所述主数据库各自包含针对区域的地图拼片数据,每个数据库的每个拼片具有相关联的版本数据,其中,所述高速缓冲存储数据库的每个拼片都具有比所述主数据库的拼片更新的版本数据,其中所述主数据库的每个拼片与所述主数据库的每个相邻拼片均相容,并且其中所述拼片版本相容性矩阵指示:针对所述高速缓冲存储数据库的一个或多个拼片,哪些版本的一个或多个相邻拼片与所述高速缓冲存储数据库的相应的一个或多个拼片相容;
基于所述分析识别所述高速缓冲存储数据库和主数据库之间的多个版本冲突,其中,根据所述拼片版本相容性矩阵,如果所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则发生版本冲突;以及
基于所述路线规划请求和所述多个版本冲突,使用所述高速缓冲存储数据库和所述主数据库中的至少一个来生成路线,其中:
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片相容,则这两个拼片可用于生成所述路线,以及
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则生成的路线不会在这两个拼片之间延伸。
2.根据权利要求1所述的方法,其中当存在一个或多个版本冲突时,使用所述主数据库生成所述路线。
3.根据权利要求1所述的方法,其中当不存在版本冲突时,使用所述高速缓冲存储数据库和所述主数据库生成所述路线。
4.根据权利要求1所述的方法,其中识别包括:
存取拼片数据,所述拼片数据包括存储于所述高速缓冲存储数据库和所述主数据库中的版本数据;
将来自所述高速缓冲存储数据库和所述主数据库的所述版本数据与所述拼片版本相容性矩阵进行比较;以及
确定来自所述版本数据的版本冲突。
5.根据权利要求1所述的方法,其中所述高速缓冲存储数据库、所述主数据库和所述拼片版本相容性矩阵的拼片数据与用于区域、市、州或国家或其组合的路线规划信息相对应。
6.根据权利要求1所述的方法,还包括:如果存在一个或多个版本冲突,则使用所述高速缓冲存储数据库和所述主数据库生成路线,使用所述主数据库生成路线,并且比较这两条路线。
7.根据权利要求1所述的方法,还包括向移动装置发送所述路线。
8.根据权利要求7所述的方法,其中,将所述高速缓冲存储数据库中的所述地图拼片数据用于由所述主数据库中的所述地图拼片数据所覆盖的区域的子集,所述区域的子集是基于所述移动装置的行进区域而确定的。
9.一种设备,其包括:
至少一个处理器;以及
至少一个存储器,其包含用于一个或多个程序的计算机程序代码;所述至少一个存储器和所述计算机程序代码被配置为:通过所述至少一个处理器,使所述设备至少执行:
接收对于路线规划数据的路线请求;
执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的分析,所述高速缓冲存储数据库和所述主数据库各自包含针对区域的地图拼片数据,每个数据库的每个拼片具有相关联的版本数据,其中,所述高速缓冲存储数据库的每个拼片都具有比所述主数据库的拼片更新的版本数据,其中所述主数据库的每个拼片与所述主数据库的每个相邻拼片均相容,并且其中所述拼片版本相容性矩阵指示:针对所述高速缓冲存储数据库的一个或多个拼片,哪些版本的一个或多个相邻拼片与所述高速缓冲存储数据库的相应的一个或多个拼片相容;
基于所述分析识别所述高速缓冲存储数据库和所述主数据库之间的多个版本冲突,其中,根据所述拼片版本相容性矩阵,如果所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则发生版本冲突;以及
基于所述路线请求和所述多个版本冲突,使用所述高速缓冲存储数据库和所述主数据库中的至少一个来生成路线,其中:
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片相容,则这两个拼片可用于生成所述路线,以及
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则生成的路线不会在这两个拼片之间延伸。
10.根据权利要求9所述的设备,其中,当存在一个或多个版本冲突时,使得所述设备使用所述主数据库生成所述路线,并且其中当不存在版本冲突时,使得所述设备使用所述高速缓冲存储数据库和所述主数据库生成所述路线。
11.一种包括指令的非暂时性计算机可读介质,当执行所述指令时能用于:
接收对于路线规划数据的路线请求;
执行高速缓冲存储数据库、主数据库和拼片版本相容性矩阵的版本冲突分析,所述高速缓冲存储数据库和所述主数据库各自包含针对区域的地图拼片数据,每个数据库的每个拼片具有相关联的版本数据,其中,所述高速缓冲存储数据库的每个拼片都具有比所述主数据库的拼片更新的版本数据,其中所述主数据库的每个拼片与所述主数据库的每个相邻拼片均相容,并且其中所述拼片版本相容性矩阵指示:针对所述高速缓冲存储数据库的一个或多个拼片,哪些版本的一个或多个相邻拼片与所述高速缓冲存储数据库的相应的一个或多个拼片相容;
基于所述分析识别所述高速缓冲存储数据库和所述主数据库之间的多个版本冲突,其中,根据所述拼片版本相容性矩阵,如果所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则发生版本冲突;以及
基于所述路线请求和所述多个版本冲突,使用所述高速缓冲存储数据库和所述主数据库中的至少一个来生成路线,其中:
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片相容,则这两个拼片可用于生成所述路线,以及
如果所述拼片版本相容性矩阵指示所述主数据库中的拼片与所述高速缓冲存储数据库中的拼片不相容,则生成的路线不会在这两个拼片之间延伸。
12.根据权利要求11所述的非暂时性计算机可读介质,其中,当不存在版本冲突时,所述指令用于使用所述高速缓冲存储数据库和所述主数据库生成所述路线,并且当存在一个或多个版本冲突时,所述指令用于使用所述主数据库生成所述路线。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562104910P | 2015-01-19 | 2015-01-19 | |
US62/104,910 | 2015-01-19 | ||
US14/742,153 | 2015-06-17 | ||
US14/742,153 US9593955B2 (en) | 2015-01-19 | 2015-06-17 | Updating navigational map data |
PCT/EP2016/050922 WO2016116412A1 (en) | 2015-01-19 | 2016-01-18 | Updating navigational map data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107110658A CN107110658A (zh) | 2017-08-29 |
CN107110658B true CN107110658B (zh) | 2020-06-16 |
Family
ID=56407630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680005289.3A Active CN107110658B (zh) | 2015-01-19 | 2016-01-18 | 更新导航地图数据 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9593955B2 (zh) |
EP (1) | EP3247978B1 (zh) |
CN (1) | CN107110658B (zh) |
WO (1) | WO2016116412A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016193408A1 (en) | 2015-06-04 | 2016-12-08 | Here Global B.V. | Incremental update of compressed navigational databases |
US9671236B2 (en) | 2015-10-29 | 2017-06-06 | Here Global B.V. | Tile versioning to improve usability of streamed navigation data |
US10305697B2 (en) | 2017-06-27 | 2019-05-28 | Iheartmedia Management Services, Inc. | Handling excess travel-related information |
CN107270917A (zh) * | 2017-07-28 | 2017-10-20 | 中景艺(北京)旅游文化有限公司 | 一种在手绘地图上拟合gps定位的方法及导览图 |
DE102017218394A1 (de) * | 2017-10-13 | 2019-04-18 | Robert Bosch Gmbh | Verfahren und System zum Laden von digitalen geographischen Kartenkacheln |
US10921136B2 (en) * | 2017-10-27 | 2021-02-16 | Mapbox, Inc. | Efficient processing for vector tile generation |
CN108132056B (zh) * | 2017-11-15 | 2021-04-30 | 北京通途永久科技有限公司 | 一种通过gps推断公交路径方法 |
US10334658B2 (en) * | 2017-11-17 | 2019-06-25 | Microsoft Technology Licensing, Llc | Obtaining information related to a shared frequency spectrum on behalf of a wireless network that lacks internet connectivity |
CN110110019B (zh) * | 2018-01-31 | 2021-10-29 | 北京四维图新科技股份有限公司 | 一种道路网拓扑数据更新的方法及装置 |
US20190340939A1 (en) * | 2018-05-03 | 2019-11-07 | Microsoft Technology Licensing, Llc | Facilitating communication between a mobile object and a remote system over long distances |
US10907976B2 (en) * | 2018-06-26 | 2021-02-02 | Uber Technologies, Inc. | Detecting defects in map data |
CN109189796B (zh) * | 2018-08-20 | 2020-10-13 | 武汉中海庭数据技术有限公司 | 高精度地图数据管理方法及装置 |
WO2020045324A1 (ja) * | 2018-08-31 | 2020-03-05 | 株式会社デンソー | 車両側装置、方法および記憶媒体 |
CN110618994B (zh) * | 2018-10-26 | 2022-05-20 | 国交空间信息技术(北京)有限公司 | 一种公路路网数据路段序列号重排及桩号传递方法 |
US10976164B2 (en) * | 2018-12-12 | 2021-04-13 | Here Global B.V. | Methods and systems for route generation through an area |
CN111475514B (zh) * | 2019-01-23 | 2023-05-26 | 阿里巴巴集团控股有限公司 | 地图数据制作方法、更新方法及装置、介质、设备 |
US11096026B2 (en) * | 2019-03-13 | 2021-08-17 | Here Global B.V. | Road network change detection and local propagation of detected change |
US20240248916A1 (en) * | 2021-06-22 | 2024-07-25 | Beijing Baidu Netcom Science Technology Co., Ltd. | Map Data Updating Method, Apparatus and Electronic Device |
CN113656425B (zh) * | 2021-08-18 | 2024-04-30 | 北京百度网讯科技有限公司 | 电子地图的更新方法、装置、电子设备、存储介质及产品 |
WO2023069398A1 (en) * | 2021-10-22 | 2023-04-27 | Zoox, Inc. | Drivable surface map for autonomous vehicle navigation |
US12025465B2 (en) | 2021-10-22 | 2024-07-02 | Zoox, Inc. | Drivable surface map for autonomous vehicle navigation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1643395A2 (en) * | 2004-09-30 | 2006-04-05 | Navteq North America, LLC | Method of operating a navigation system to report effects of updated portions of a geographic database |
CN102338638A (zh) * | 2010-07-26 | 2012-02-01 | 北京旅行者科技有限公司 | 一种导航设备及其地图数据更新方法 |
CN102944243A (zh) * | 2012-11-16 | 2013-02-27 | 沈阳美行科技有限公司 | 一种地图数据可以增量更新的导航设备及方法 |
EP2626668A1 (en) * | 2012-02-09 | 2013-08-14 | HERE Global B.V. | Testing of a map database update |
Family Cites Families (13)
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 |
JP5001617B2 (ja) * | 2006-09-29 | 2012-08-15 | アイシン・エィ・ダブリュ株式会社 | 地図更新データ供給装置、バージョンテーブル、地図データ更新システム、地図更新データ供給プログラム、及び地図データ更新プログラム |
US8031114B2 (en) * | 2008-03-31 | 2011-10-04 | International Business Machines Corporation | Infrastructure and method for geography based vehicle alert |
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 |
US9075822B2 (en) * | 2011-02-11 | 2015-07-07 | Here Global B.V. | Incremental testing of a navigation database |
US20120303263A1 (en) * | 2011-05-23 | 2012-11-29 | Microsoft Corporation | Optimization of navigation tools using spatial sorting |
EP2589931B1 (en) * | 2011-11-07 | 2016-06-29 | Elektrobit Automotive GmbH | Technique for structuring navigation data |
US20150186443A1 (en) * | 2011-11-16 | 2015-07-02 | Google Inc. | Management of versioned map data tiles stored on a client device |
US9201898B2 (en) * | 2013-05-15 | 2015-12-01 | Google Inc. | Efficient fetching of map tile data |
-
2015
- 2015-06-17 US US14/742,153 patent/US9593955B2/en active Active
-
2016
- 2016-01-18 WO PCT/EP2016/050922 patent/WO2016116412A1/en active Application Filing
- 2016-01-18 CN CN201680005289.3A patent/CN107110658B/zh active Active
- 2016-01-18 EP EP16700848.1A patent/EP3247978B1/en active Active
-
2017
- 2017-01-30 US US15/419,306 patent/US10030985B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1643395A2 (en) * | 2004-09-30 | 2006-04-05 | Navteq North America, LLC | Method of operating a navigation system to report effects of updated portions of a geographic database |
CN102338638A (zh) * | 2010-07-26 | 2012-02-01 | 北京旅行者科技有限公司 | 一种导航设备及其地图数据更新方法 |
EP2626668A1 (en) * | 2012-02-09 | 2013-08-14 | HERE Global B.V. | Testing of a map database update |
CN102944243A (zh) * | 2012-11-16 | 2013-02-27 | 沈阳美行科技有限公司 | 一种地图数据可以增量更新的导航设备及方法 |
Also Published As
Publication number | Publication date |
---|---|
US10030985B2 (en) | 2018-07-24 |
EP3247978B1 (en) | 2021-03-03 |
WO2016116412A1 (en) | 2016-07-28 |
US20160209221A1 (en) | 2016-07-21 |
EP3247978A1 (en) | 2017-11-29 |
US9593955B2 (en) | 2017-03-14 |
CN107110658A (zh) | 2017-08-29 |
US20170138743A1 (en) | 2017-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107110658B (zh) | 更新导航地图数据 | |
CN108291815B (zh) | 用于生成路线的方法和装置 | |
US11035680B2 (en) | Fresh hybrid routing independent of map version and provider | |
EP3109594B1 (en) | Midpoint-based map-agnostic navigation routing | |
US20190155827A1 (en) | Map Updates from a Connected Vehicle Fleet | |
US10317222B2 (en) | Decision-based map-agnostic navigation routing | |
US10803096B2 (en) | Parallelized clustering of geospatial data | |
EP3070621A1 (en) | Version management for incrementally compiled map data | |
US9500486B2 (en) | Method and apparatus for formulating a positioning extent for map matching | |
US9015200B2 (en) | Map update scripts with tree edit operations | |
US11042648B2 (en) | Quantification of privacy risk in location trajectories | |
US11333505B2 (en) | Method and system to generate updated map data for parallel roads | |
US20160179841A1 (en) | Versioned Change Propagation | |
CN112444254B (zh) | 生成地图版本间对应关系的方法、设备和计算机程序产品 | |
CN112444255B (zh) | 生成地图版本间对应关系的方法、设备和计算机程序产品 | |
US11602974B2 (en) | System and method for generating map data associated with road objects | |
US20210156696A1 (en) | Method and system to validate road signs | |
US9970769B2 (en) | Flexible organization of navigation attributes to support hybrid navigation and data streaming | |
US9976859B2 (en) | Navigation API based on virtual tables |
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 |