用于通过区域的路线生成的方法和系统与流程

文档序号:21187368发布日期:2020-06-20 18:13阅读:235来源:国知局
用于通过区域的路线生成的方法和系统与流程

本公开总体上涉及生成通过地理区域中的所识别区域的一个或多个路线,并且更具体地涉及生成通过所述区域的路线的路线的数据。



背景技术:

道路工程或道路施工区通常存在于道路的一部分、整个道路、或者例如路面维修、电力线路工程、水利工程等目的而占用的一系列道路上。当发生重大事故并且需要清除来自事故的道路碎屑时,也可以发现道路施工区。使用道路标志(诸如“施工现场”标志、“在道路上的工人”标志、“施工进行中”标志、“危险道路施工”标志、“前方道路施工”标志等、或诸如交通锥、屏障板等临时标志)向车辆或自主车辆的用户指示此类道路施工区。在一些国家,使用距道路施工区一定距离的车道标识和距道路施工区一定距离的速度限制标志向车辆或自主车辆的用户指示道路施工区。然而,检测道路施工区的范围受到可见度、天气以及照明条件等的影响。一些车辆在导航通过道路施工区时可能错过车道标识,因为其它车辆可能阻挡视线或者车道标识可能被水、泥或雪遮盖。由于来自多个车辆的车道标识或道路标志的离散观测值,有关通过道路施工区的道路的连接性的信息可能缺失或无序。相应地,需要基于车辆的车道标识或道路标志的离散观测值来得到通过道路施工区的至少一个路线,以使车辆即使在能见度降低的情况下,也能安全通过已确定的道路施工区。



技术实现要素:

道路上的车辆通常依赖于含有关于道路几何形状、车道几何形状、道路链路连通性、道路类型等的信息的地图数据库。地图数据库中的信息可以利用提供交通数据、天气相关数据和道路维护相关信息的数据源来丰富。安装在车辆上的多个传感器可以提供关于道路施工区的信息,以扩充地图数据库或远程地图数据提供者的内容,警告危险情况的车辆的用户,或甚至提供用于以自主或半自主方式控制车辆的输入。道路施工区的检测对于车辆的导航是必不可少的,并且为车辆安全提供环境意识已经成为汽车制造商和相关的服务提供商的首要关注。然而,道路施工区的检测受到可见度、天气以及照明条件的影响。由于阳光在一天中的某一时间以特定方式反射或者车道标识可能被水、泥或雪遮盖,车辆可能无法检测道路施工区。而且,道路施工检测依赖于通过车辆的道路特征(诸如道路标志、车道标识、物理分隔物(例如护栏、护柱、锥体等))的基于点的离散观测值,并且所述离散观测值可以提供通过道路施工区的路线的不完整评估。为了在道路施工区工作的车辆和人员的安全,在到达目的地的途中生成通过道路施工区的路线,这将是有利的。

一种根据本文描述的实例实施例提供的、用于生成通过区域的一个或多个路线的路线数据的方法、系统和计算机程序产品可以是道路施工区。

本文公开的实施例可以提供一种用于生成通过区域的路线的路线数据的方法。所述方法包括:由处理器从地图数据库获得与所述区域相对应的多个地图匹配链路;基于多个地图匹配链路之间的关系从多个地图匹配链路中确定一个或多个第一链路和一个或多个第二链路;并且基于一个或多个第一链路中的每一个的一个或多个链路属性以及下游距离阈值,在第一链路的下游中由所述处理器搜索地图数据库,以便获得一个或多个缺失下游链路。所述方法进一步包括:针对基于一个或多个第二链路中的每一个的一个或多个链路属性和下游距离阈值的一个或多个缺失下游链路,在第二链路的上游中由处理器在地图数据库中搜索,并且基于一个或多个第一链路、第二链路、缺失下游链路、缺失上游链路以及多个地图匹配链路来生成所述路线的路线数据。

所述多个地图匹配链路对应于与由多个车辆做出的多个传感器观测值相关联的第一多个基于点的道路特征观测,多个地图匹配链路中的至少第三链路处于第一链路的上游中,并且多个地图匹配链路中的至少第四链路处于第二链路的下游中。

生成路线数据包括从一个或多个第二链路或缺失上游链路之一识别至少一个开始链路,并且从一个或多个第一链路或缺失下游链路中的一者识别至少一个结束链路。路线数据包括至少一个开始链路和至少一个结束链路中的每一个的位置数据和航向数据。一个或多个第一链路中的每一个的链路属性包含第一链路的功能类别、第一链路的链路开始位置和链路结束位置、第一链路的链路下游航向、以及第一链路的长度中的一个或多个。一个或多个第二链路中的每一个的链路属性包含第二链路的功能类别、第二链路的链路开始位置和链路结束位置、第二链路的链路上游航向、以及第二链路的长度中的一个或多个。另外,获得多个地图匹配链路包括:基于第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向,对第一多个基于点的道路特征观测进行聚类,以生成至少一个集群;并且基于在所生成的至少一个集群中的基于点的道路特征观测的观测类型、位置和航向,将所生成的至少一个集群与多个链路进行地图匹配,以获得多个地图匹配链路。所述方法进一步包括基于所生成的路线数据在一个或多个车辆的输出界面上输出可穿越路线。

在实例实施例中,提供了一种用于生成通过区域的一个或多个路线的路线数据的系统。所述系统可以包括:至少一个非暂时性存储器,其被配置成存储计算机程序代码指令;和至少一个处理器,其被配置成执行这些计算机程序代码指令以至少:从地图数据库获得与所述区域相对应的多个地图匹配链路,基于多个地图匹配链路之间的关系,从多个地图匹配链路中确定一个或多个第一链路和一个或多个第二链路,基于一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在第一链路的下游中搜索地图数据库,以便获得一个或多个缺失下游链路,基于一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在第二个链路上游中搜索地图数据库,以便获得一个或多个缺失上游链路,以及基于一个或多个第一链路、一个或多个第二链路、缺失下游链路、缺失上游链路、以及多个地图匹配链路生成路线的路线数据。处理器进一步被配置成从一个或多个第二链路或缺失上游链路中的一者识别至少一个开始链路;并且从一个或多个第一链路或缺失下游链路中的一者识别至少一个结束链路。处理器进一步经配置成基于第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向对第一多个基于点的道路特征观测进行聚类,以生成至少一个集群,并且基于在所生成的至少一个集群中的每一个基于点的道路特征观测的观测类型、位置和航向,将所生成的至少一个集群与多个链路进行地图匹配,以获得多个地图匹配链路。所述处理器任选地被配置成基于所生成的路线数据在一个或多个车辆的输出界面上输出可穿越路线。

本发明的实施例可以提供一种计算机程序产品,所述计算机程序产品包括具有其中存储有计算机可执行程序代码指令的至少一个非暂时性计算机可读存储介质。所述计算机可执行程序代码指令当由计算机执行时,导致计算机执行生成通过区域的一个或多个路线的路线数据的操作,所述操作包括:从地图数据库获得与区域相对应的多个地图匹配链路;基于多个地图匹配链路之间的关系从多个地图匹配链路中确定一个或多个第一链路和一个或多个第二链路,基于一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在第一链路的下游中搜索地图数据库,以便获得一个或多个缺失下游链路,基于一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在第二个链路上游中搜索地图数据库,以便获得一个或多个缺失上游链路,基于一个或多个第一链路、一个或多个第二链路、缺失下游链路、缺失上游链路、以及多个地图匹配链路生成路线的路线数据。为了生成路线数据,所述操作进一步包括从一个或多个第二链路或缺失上游链路中的一者识别至少一个开始链路,并且从一个或多个第一链路或缺失下游链路中的一者识别至少一个结束链路。为了获得多个地图匹配链路,所述操作进一步包括:基于第一多个基于点的道路特征观测中的每一个的观测类型、位置和航行,对第一多个基于点的道路特征观测进行聚类,以生成至少一个集群,并且基于在所生成的至少一个集群中的基于点的道路特征观测的观测类型、位置和航向,将所生成的至少一个集群与多个链路进行地图匹配,以获得多个地图匹配链路。

还公开了以下编号的段落:

1.一种用于生成通过区域的一个或多个路线的路线数据的方法,所述方法包含:

由处理器从地图数据库获得与所述区域相对应的多个地图匹配链路,其中所述多个地图匹配链路对应于与由多个车辆做出的多个传感器观测相关联的第一多个基于点的道路特征观测;

基于所述多个地图匹配链路之间的关系,从所述多个地图匹配链路确定一个或多个第一链路和一个或多个第二链路,

其中,所述多个地图匹配链路的至少第三链路在所述一个或多个第一链路中的每一个的上游中,并且

其中,所述多个地图匹配链路中的至少第四链路在所述一个或多个第二链路的每一个的下游中;

基于所述一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在所述一个或多个第一链路中的每一个的下游中,由所述处理器搜索所述地图数据库,以便获得一个或多个缺失下游链路,

基于所述一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在所述一个或多个第二链路中的每一个的上游中,由所述处理器搜索所述地图数据库,以便获得一个或多个缺失上游链路;以及

基于所述一个或多个第一链路、所述一个或多个第二链路、所述一个或多个缺失下游链路、所述一个或多个缺失上游链路、以及所述多个地图匹配链路生成所述一个或多个路线的路线数据。

2.如段落1所述的方法,其中,路线数据的生成包括:

从所述一个或多个第二链路或所述一个或多个缺失上游链路中的一者识别至少一个开始链路;以及

从所述一个或多个第一链路或所述一个或多个缺失下游链路中的一者识别至少一个结束链路。

3.如段落2所述的方法,其中,路线数据包含至少一个开始链路和至少一个结束链路中的每一个的位置数据和航向数据。

4.如段落1所述的方法,其中,一个或多个第一链路中的每一个的一个或多个链路属性包含第一链路的功能类别、第一链路的链路开始位置和链路结束位置、第一链路的链路下游航向、以及第一链路的长度中的一个或多个。

5.如段落1所述的方法,其中,一个或多个第二链路中的每一个的一个或多个链路属性包含第二链路的功能类别、第二链路的链路开始位置和链路结束位置、第二链路的链路上游航向、以及第二链路的长度中的一个或多个。

6.如段落1所述的方法,其中,从获得多个地图匹配链路包含:

基于所述第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向,对所述第一多个基于点的道路特征观测进行聚类,以生成至少一个集群;以及

基于在所述生成的至少一个集群中的每一个基于点的道路特征观测的所述观测类型、所述位置和所述航向,将所述生成的至少一个集群与多个链路进行地图匹配,以获得所述多个地图匹配链路。

7.根据权利要求6所述的方法,其中所述观测类型是道路标识、道路标志、护柱、锥体、道路屏障或护栏中的一者。

8.如段落1所述的方法,进一步包含基于所生成的路线数据在一个或多个车辆的输出界面上输出可穿越路线。

9.一种用于生成通过区域的一个或多个路线的路线数据的系统,所述系统包含:

至少一个存储器,所述存储器被配置为存储计算机程序代码指令;以及

至少一个处理器,所述处理器被配置为执行所述计算机程序代码指令以:

从地图数据库获得与所述区域相对应的多个地图匹配链路,其中,所述多个地图匹配链路对应于与由多个车辆做出的多个传感器观测相关联的第一多个基于点的道路特征观测;

基于所述多个地图匹配链路之间的关系,从所述多个地图匹配链路确定一个或多个第一链路和一个或多个第二链路,

其中,所述多个地图匹配链路的至少第三链路在所述一个或多个第一链路中的每一个的上游中,并且

其中,所述多个地图匹配链路中的至少第四链路在所述一个或多个第二链路中的每一个的下游中;

基于所述一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在所述一个或多个第一链路中的每一个的下游中搜索所述地图数据库,以便获得一个或多个缺失下游链路;

基于所述一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在所述一个或多个第二链路中的每一个的上游中搜索所述地图数据库,以便获得一个或多个缺失上游链路;以及

基于所述一个或多个第一链路、所述一个或多个第二链路、所述一个或多个缺失下游链路、所述一个或多个缺失上游链路、以及所述多个地图匹配链路生成所述一个或多个路线的所述路线数据。

10.如段落9所述的系统,其中,为了生成路线数据,所述至少一个处理器进一步被配置成:

从所述一个或多个第二链路或所述一个或多个缺失上游链路中的一者识别至少一个开始链路;以及

从所述一个或多个第一链路或所述一个或多个缺失下游链路中的一者识别至少一个结束链路。

11.如段落10所述的系统,其中,路线数据包含至少一个开始链路和至少一个结束链路中的每一个的位置数据和航向数据。

12.如段落9所述的系统,其中,一个或多个第一链路中的每一个的一个或多个链路属性包含第一链路的功能类别、第一链路的链路开始位置和链路结束位置、第一链路的链路下游航向、以及第一链路的长度中的一个或多个。

13.如段落9所述的系统,其中,一个或多个第二链路中的每一个的一个或多个链路属性包含第二链路的功能类别、第二链路的链路开始位置和链路结束位置、第二链路的链路上游航向、以及第二链路的长度中的一个或多个。

14.如段落9所述的系统,其中,为了获得地图匹配链路,所述至少一个处理器被进一步配置成:

基于所述第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向,对所述第一多个基于点的道路特征观测进行聚类,以生成至少一个集群;以及

基于在所述生成的至少一个集群中的每一个基于点的道路特征观测的所述观测类型、所述位置和所述航向,将所述生成的至少一个集群与多个链路进行地图匹配,以获得所述多个地图匹配链路。

15.如段落14所述的系统,其中,其中,观测类型是道路标识、道路标志、护柱、锥体、道路屏障或护栏中的一个。

16.如段落9所述的系统,其中,所述至少一个处理器进一步被配置成基于所生成的路线数据在一个或多个车辆的输出界面上输出可穿越路线。

17.一种计算机程序产品,其包含至少一个非暂时性计算机可读存储介质,所述至少一个非暂时性计算机可读存储介质上存储有计算机可执行程序代码指令,所述计算机可执行程序代码指令在由计算机执行时使所述计算机执行用于生成通过区域的一个或多个路线的路线数据的操作,所述操作包括:

从地图数据库获得与所述道路施工区相对应的多个地图匹配链路,其中,所述多个地图匹配链路对应于与由多个车辆做出的多个传感器观测相关联的第一多个基于点的道路特征观测;

基于所述多个地图匹配链路之间的关系,从所述多个地图匹配链路确定一个或多个第一链路和一个或多个第二链路,

其中,所述多个地图匹配链路的至少第三链路在所述一个或多个第一链路中的每一个的上游中,并且

其中,所述多个地图匹配链路中的至少第四链路在所述一个或多个第二链路中的每一个的下游中;

基于所述一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在所述一个或多个第一链路中的每一个的所述下游中搜索所述地图数据库,以便获得一个或多个缺失下游链路;

基于所述一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在所述一个或多个第二链路中的每一个的所述上游中搜索所述地图数据库,以便获得一个或多个缺失上游链路;以及

基于所述一个或多个第一链路、所述一个或多个第二链路、所述一个或多个缺失下游链路、所述一个或多个缺失上游链路、以及所述多个地图匹配链路生成所述一个或多个路线的路线数据。

18.如段落17所述的计算机程序产品,其中,为了生成路线数据,所述操作包含:

从所述一个或多个第二链路或所述一个或多个缺失上游链路中的一者识别至少一个开始链路;以及

从所述一个或多个第一链路或所述一个或多个缺失下游链路中的一者识别至少一个结束链路。

19.如段落17所述的计算机程序产品,其中,为了获得多个地图匹配链路,所述操作包含:

基于所述第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向,对所述第一多个基于点的道路特征观测进行聚类,以生成至少一个集群;以及

基于在所生成的至少一个集群中的每一个基于点的道路特征观测的观测类型、位置和航向,将所生成的至少一个集群与多个链路进行地图匹配,以获得多个地图匹配链路。

20.如段落17的计算机程序产品,所述操作进一步包含基于所生成的路线数据输出用于一个或多个车辆的输出界面的可穿越路线。

附图说明

因此,总体而言已经描述了本发明的实例实施例,现在将参考附图(所述附图不必按比例绘制),并且在附图中:

图1绘示了根据一个实例实施例的用于生成通过区域的一个或多个路线的路线数据的系统的示意图;

图2绘示了根据一个实例实施例的用于生成通过区域的一个或多个路线的路线数据的系统的实施例的框图;

图3绘示了根据一个实例实施例的在图2中示例性示出的地图绘制平台的框图,所述地图绘制平台可以被用于生成通过区域的一个或多个路线的路线数据;

图4绘示了根据一个实例实施例的用于生成通过区域的一个或多个路线的路线数据的方法;

图5绘示了包含基于地图绘制平台的不同模块之间的交互生成通过区域的一个或多个路线的路线数据的步骤的流程图,如图3所示。

图6a至6b绘示了根据一个实例实施例的示出构成路线的地图匹配链路的链路属性的示意图;

图7a至7b绘示了根据一个实例实施例的示出指示通过区域的一个或多个路线的地图匹配链路的示意图;

图8a至8b绘示了根据一个实例实施例的示出用于在第一链路的下游中搜索,以便获得一个或多个缺失下游链路的步骤的流程图;以及

图9a至9b绘示了根据一个实例实施例示出用于在第二链路的上游中搜索以便获得一个或多个缺失上游链路的步骤的流程图。

具体实施方式

现在将在下文中参考附图更全面地描述本发明的一些实施例,其中示出了本发明的一些但不是全部实施例。实际上,本发明的各种实施例可以以许多不同的形式实施,并且不应当被解释为限于在本文阐述的实施例;相反,提供这些实施例是为了使本公开内容满足适用的法律要求。相同的附图标记始终指代相同的元件。并且,意味着与实施例结合描述的特定特征、结构或特性的在本说明书中对“一个实施例”或“实施例”的引用被包括在本公开内容的至少一个实施例中。在说明书中各处出现的短语“在一个实施例中”不必须都指代相同的实施例,也不一定是与其它实施例相互排斥的单独的或可代替的实施例。进一步,本文中的术语“一”和“一个”不表示数量的限制,而是表示存在至少一个所引用的项目。而且,描述了各种特征,这些特征可以由一些实施例呈现而不可以由其它实施例呈现。类似地,描述了各种要求,这些要求可以是一些实施例的要求而不是其它实施例的要求。如本文所用,术语“数据”、“内容”、“信息”以及类似术语可以互换使用以指代能够根据本发明实施例显示、传输、接收和/或存储的数据。因此,任何此类术语的使用不应视为限制本发明实施例的精神和范围。

本文描述的实施例是为了说明的目的,并且可以进行许多变化。应当理解的是,等同物的各种省略和替换被认为是环境可能暗示或有利的,但是旨在覆盖应用或实施方式,而不脱离本公开的精神或范围。进一步,应当理解的是,本文所采用的措辞和术语是处于描述的目的,而不应被认为是限制性的。本说明书中利用的任何标题仅仅是为了方便,并且没有法律或限制效果。

定义

术语“链路”可以用来指代任何连接途径,包括但不限于道路、公路、高速公路、快速公路、车道、街道通路、道路、小巷、受控进入道路、自由进入道路等。

术语“速度漏斗”可用于指代一组两个或更多个速度限制标志,其从速度漏斗的一端到另一端速度限制标志符号值的变化。速度漏斗可以被用作道路施工区、在道路上即将到来的隧道、或从路径到斜坡的过渡的指示。

术语“路线”可以被用于指在任何链路上从源位置到目的地位置的通路。

定义结束

本文根据实例实施例提供了一种用于生成通过区域(可以是道路施工区)的一个或多个路线的路线数据的方法、系统和计算机程序产品。道路施工区由机构临时限定,以承担道路的一部分或整个道路的道路修复工程。在这种情况下,机构可以合并道路的两条车道、阻塞一个或多个车道、或者将车道转向小路等。这种道路工程修理在道路施工区实际开始之前被指示给旅行者,因为这种车道的合并可能需要降低车辆的速度以避免碰撞或任何事故。通过道路标志(诸如沿着路径的静态或动态限速标志、车道标识、护柱、锥体、物理分隔物、护栏等)向用户指示道路施工区。限速标志可以类似至少一个速度漏斗并且通常可以在道路施工区之前。车辆可以沿着道路施工附近的路径检测速度漏斗和车道标识。道路特征(诸如车道标识、道路标志、护柱、圆锥体、物理分隔物、护栏等)的检测是离散观测值。也就是说,由车辆检测道路特征是指示区域(即道路施工区)内的道路特征的位置坐标的基于点的观测值。然而,由于环境条件(诸如能见度、天气情况和照明条件等)在检测道路特征时占主导地位,因而车辆可能无法检测到一些道路特征。车辆无法检测到某些道路特征可能是由于,例如,阳光在一天中的某个时间以特定的方式反射,车道标识可能被水、泥或雪遮盖,一些车辆可能会错过车道标志,因为其它车辆可能会阻挡车道标志的查看。这种对道路特征的离散观测值,通常没有特定的顺序,并且有时无法检测道路特征可能会提供对道路施工区的不完全评估和通过道路施工区的导航。本发明通过提供一种方法和系统来解决上述问题,以确定在离散观测值之间的连通性,从而生成通过区域的一个或多个路线。附加地,本发明提供了一种方法和系统,以生成指示通过区域的路线的开始和结束的路线数据。

图1示出了根据实例实施例的用于生成通过区域的一个或多个路线的路线数据的系统100的示意图。系统100包括用户装置(ue)或用户设备101,所述系统可以通过网络103与地图绘制平台105通信。网络103可以是有线的、无线的、或者有线和无线通信网络(诸如蜂窝、wi-fi、因特网、局域网等)的任意组合。尽管在图1中描述了单一用户装置101,但是可以设想到,地图绘制平台105可以与几个用户装置通信耦合。可以进一步设想的是,一个或多个用户装置可以用作数据捕获设备,而一个或多个其它用户装置可以用作受益设备,所述受益设备接收并利用由系统产生的输出数据,以便获得各种应用(诸如导航辅助)。然而,为了简单起见,可以参考单一用户装置(诸如用户装置101的)来解释两种功能。

用户装置101可以是导航系统,所述导航系统可以被配置成向车辆的用户提供路线引导和导航相关功能。在一些实施例中,用户装置101可以安装在车辆中并且可以捕获道路特征(诸如沿着路径的限速标志、车道标识、结构隔离物(诸如中间屏障、物理分隔物、护柱、护栏等))。用户装置101还可以包括图像捕获设备,诸如用于捕获道路特征的照相机。使用捕获的道路特征,用户装置101生成基于点的道路特征观测。基于点的特征观测值可以被称为离散特征观测值,其特征在于被指定为坐标对的道路特征的捕获位置。基于点的特征观测值包括作为属性的道路特征类型、道路特征位置以及道路特征航向。道路特征类型可以是车道标识、道路标志、护柱、锥体、物理分隔物、护栏等,道路特征位置可以作为坐标对(1at,ion)给出,并且道路特征航向可以以度数表示。车辆还可以包括一个或多个传感器,所述传感器用于生成传感器观测值,基于点的道路特征观测从所述传感器观测值导出。传感器数据构成传感器观测值。道路特征可以是静态道路标志或沿路径设置的可变道路标志。可变道路标志的标志值可以基于可变道路标志(诸如lcd显示面板、led面板等)附近的交通情况而变化。用户装置101或车辆中的传感器可以顺序地将所生成的基于点的道路特征观测传输到oem云。在实施例中,基于点的道路特征观测可以被定期地以成批地传输到oem云。

用户装置101可以包括移动计算设备(诸如膝上型计算机、平板计算机、移动电话、智能电话、导航单元、个人数据助理、手表、照相机等)。附加地或可替换地,用户装置101可以是固定计算设备(诸如个人计算机、计算机工作站、信息亭、办公室终端计算机或系统等)。用户装置101可以被配置成经由处理部件109通过例如地图绘制应用的用户界面来访问地图绘制平台105,使得用户装置101可以向用户提供导航辅助以及通过访问地图绘制平台105而提供的其它服务。

如示例性所示,地图绘制平台105还可以包括地图数据库107,所述地图数据库可以存储节点数据、路段数据或链路数据、兴趣点(poi)数据、张贴的标记相关的数据等。在实施例中,地图数据库107可以是从外部地图数据库下载的地图服务提供商的外部地图数据库的本地副本/拷贝。在一些实施例中,地图数据库107可以是托管在云中的地图数据库的缓存版本。地图数据库107还可以包括制图数据、路线数据和/或操纵数据。根据一些实例实施例,路段数据记录可以是表示道路、道路上的车道、街道或通路的链路或节段,如可以用于计算路线或记录的路线信息,用于确定一个或多个个性化路线。节点数据可以是与路段数据的各个链路或节段的端部点。道路链路数据和节点数据可以表示诸如由车辆(例如汽车、卡车、公共汽车、摩托车和/或其它实体)使用的道路网络。任选地,地图数据库107可以含有通路段和节点数据记录,或者例如在车辆道路记录数据之外或替代车辆道路记录数据可以表示行人通路或区域的其它数据。道路/链路段和节点可以与属性(诸如地理坐标、街道名称、地址范围、速度限制、交叉路口处的转弯限制以及其它导航相关属性)以及poi(诸如燃料供应站、旅馆、餐馆、博物馆、体育场馆、办公室、汽车修理商店、建筑物、商店、公园等)相关联。地图数据库107可以包括关于poi及其在poi记录中的它们相应位置的数据。

地图数据库107可以附加地包括关于地方(诸如城市、城镇或其它社区)以及其它地理特征(诸如水体、山脉等)的数据。这种地方或特征数据可以是poi数据的一部分,或者可以与poi或poi数据记录(诸如用于显示或表示城市位置的数据点)相关联。另外,地图数据库107可以包括与poi数据记录相关联的事件数据(例如,交通事故、建设活动、预定事件、非预定事件等)或与地图绘制平台105相关联的地图数据库107的其它记录。地图数据库107可以附加地包括与区域、区域中的道路、道路上的道路施工区(诸如,道路施工区的位置)、由于道路施工区引起的变更、避免由于道路施工区导致的拥塞的建议路线等相关的数据。与道路相关的数据可以由系统100从外部系统(诸如市政当局)取得。地图数据库107进一步包含所述区域中的所有链路。链路可以包括与学习到的道路特征相对应的地图匹配链路、其相应的基于点的道路特征观测可能没有被车辆捕获的下游链路和上游链路。

诸如地图开发者的内容提供商可以维护地图绘制平台105。举例来说,地图开发者可以收集地理数据以生成并增强地图绘制平台105。地图开发者可以使用不同的方式来收集数据。这些方式可以包括从其它源(诸如市政当局或相应的地理机构)获得数据。此外,例如,地图开发者可以采用现场人员乘车沿整个地理区域的道路行驶以观测特征和/或记录关于它们的信息。可以采用地理地图数据的众包来生成、证实或更新地图数据。例如,来自多个数据探针(这些数据探针可以是例如沿着道路网络或在场地内行驶的车辆)的传感器数据可以被采集并融合,以推断数据探针在其中移动的环境的精确地图。此类传感器数据可以实时更新(诸如每小时更新一次)以提供准确和最新的地图数据。传感器数据可以来自可以向地图数据库通知适合于地图绘制的环境内的特征的任何传感器。例如,运动传感器、惯性传感器、图像捕捉传感器、近程传感器、lidar(光探测和测距)传感器、超声波传感器等。采集大量的源自人群的数据可以促进环境的精确建模和地图绘制,无论其是路段还是多层停车结构的内部。并且,诸如航空或卫星摄影术的遥感可以用于直接或通过如本文所述的机器学习来生成地图几何形状。

地图绘制平台105的地图数据库107可以是以有助于更新、维护和开发的格式存储的主地图数据库。例如,主地图数据库或主地图数据库中的数据可以是诸如用于开发或生产目的oracle空间格式或其它空间格式。oracle空间格式或开发/生产数据库可以编译成输送格式(诸如地理数据文件(gdf)格式)。呈生产和/或输送格式的数据可以被编译或进一步编译以形成可以在终端用户导航设备或系统中使用的地理数据库产品或数据库。

例如,地理数据可以被编译(诸如编译成平台规范格式(psf)格式)以组织和/或配置用于通过导航设备(诸如,通过用户装置101)执行确定通过区域的一个或多个路线以及通过所述区域的导航相关功能和/或服务(诸如路线计算,路线引导、地图显示、速度计算、距离和行进时间功能以及其它功能)的数据。导航相关功能可以对应于车辆导航、行人导航、导航到偏好停车场或其它类型的导航。虽然本文描述的实例实施例总体上涉及沿着道路的车辆行驶和停车,但是实例实施例可以被实施用于沿着自行车路径和自行车架/停车可用性的自行车行驶、沿着包括船坞或船舶滑移可用性的海上导航路线的船舶行驶等。产生终端用户数据库的编译可以由与地图开发者分离的部分或实体来执行。例如,地图开发者(诸如导航设备开发者或其它最终用户设备开发者)的消费者可以对所接收的地图数据库以输送格式执行编译以产生一个或多个经编译的导航数据库。

在一些实施例中,地图绘制平台105可以是配置在服务器侧的主地理数据库,但是在替代实施例中,客户端侧地图绘制平台可以表示编译的导航数据库,所述导航数据库可以在终端用户设备(例如,用户装置101)中使用或与所述终端用户设备一起使用,以提供导航、速度调节和/或地图相关功能,从而导航通过道路施工区。地图绘制平台105可以对从多个车辆获得的基于点的道路特征观测值进行聚类,并且在由地图开发者开发的地图的链路上对基于点的道路特征观测的集群进行地图匹配。基于点的道路特征观测可以对应于区域边界的开始、区域边界的结束、以及指示区域的开始和结束的通过区域的路线。根据地图匹配链路,地图绘制平台105可以确定地图匹配链路之间的表示通过所述区域的一个或多个路线的连接序列。另外,地图绘制平台105可以生成通过区域的一个或多个路线的路线数据。地图绘制平台105可以与终端用户设备(即,用户装置101)一起使用,以向用户提供导航特征。在这种情况下,地图绘制平台105可以被下载或存储在用户装置101上,所述用户装置可以在网络103上通过无线或有线连接来访问地图绘制平台105。

在一个实施例中,用户设备或用户装置101可以是可以执行导航相关功能(诸如数字路线和地图显示)的车载导航系统(诸如信息娱乐系统、电子控制单元(ecu)、高级驾驶员辅助系统(adas)、个人导航设备(pnd)、便携式导航设备、蜂窝电话、智能电话、个人数字助理(pda)、手表、照相机、计算机、工作站和/或其它设备)。根据一些实例实施例,终端用户可以使用用户装置101用于导航和地图功能(例如引导和地图显示),并且用于基于一个或多个计算和记录的路线来确定一个或多个个性化路线或路段。在一些实施例中,根据一些实例实施例,可以由地图绘制平台105通知车辆的用户关于道路施工区的位置,并且用户可以使用用户装置101(例如,车载导航系统)用于导航和地图功能(例如引导和地图显示)。用户装置101可以包括例如具有用户界面的地图绘制应用程序的应用程序,所述用户界面可以使用户能够访问地图绘制平台105以利用上面公开的功能,诸如用于在通过所识别的道路施工区的一个或多个路线上导航。

图2示例性地示出了系统200的一个实施例的框图,所述系统用于生成通过区域的一个或多个路线的路线数据,为了使用地图绘制平台105来导航车辆201通过所述区域。车辆201可以是用户驾驶的车辆或自主车辆。如贯穿本公开所使用的自主车辆可以是指至少在一些条件下具有自主驾驶能力的车辆。例如,自主车辆可以展现在具有在驾驶车道之间的物理分隔物的街道和道路上的自主驾驶。系统200包括用户装置101,所述用户装置包括具有用于访问一个或多个地图和导航相关功能的用户界面205的应用程序203。用户装置101还可以包括一个或多个传感器207(诸如相机、相机阵列、加速度传感器、陀螺传感器、激光雷达传感器、接近传感器、运动传感器等)。传感器207可以主要用于检测道路标志和确定车辆201的位置,并且传感器207可以内置或嵌入用户装置101中或在其内部。在一些实施例中,用户装置101使用通信信号来进行位置确定。传感器207(诸如加速计、陀螺仪等)可以用于检测车辆的位置和航向,使得能为所检测到的道路特征导出位置和航向。用户装置101可以从定位系统、全球卫星导航系统(诸如全球定位系统(gps)、galileo(伽利略)、glonass、北斗(beidou)等)、蜂窝塔定位方法、接入点通信指纹法(诸如基于wi-fi或蓝牙(bluetooth)的无线电地图等)接收位置数据。由传感器207收集的数据可以用于采集与车辆201的环境(例如,区域)相关的信息。在一些实施例中,车辆201可以具有位于其上或其内的传感器,并且传感器可以提供指示车辆201的位置、与道路特征相关联的航向数据、道路特征的类型、沿着接近区域道路施工区的路径的道路标志的标志值、以及指示正在接近的道路施工区的任何其它类型的车道标识的数据。由传感器收集的数据可以被传输到oem云。车辆数据(本文也称为“探针数据”)可以由能够确定必要信息并将必要信息提供给远程实体的任何设备收集。用户装置101是可以被用作探针以收集车辆201的探针数据的设备的一个实例。

更具体地,由用户装置101收集的探针数据可以表示车辆201在各个时间点的位置,并且可以在车辆201沿着路线行驶时收集。虽然本文将探针数据描述为车辆探针数据,但是实例实施例可以利用行人探针数据、船舶探针数据或非机动化车辆探针数据(例如,来自自行车、滑板、马背等)来实施。根据下面描述的实例实施例,其中探针数据来自沿着道路行驶的机动车辆,所述探头数据可以包括但不限于位置数据(例如纬度、经度位置和/或高度、gnss坐标,与射频识别(rfid)标签相关联的接近读数)等)、驾驶的速率(例如速度)、驾驶的方向(例如航向、基本方向等)、设备标识符(例如车辆标识符、用户标识符等)、与数据收集相关联的时间戳等。用户装置101可以是能够收集上述探针数据的任何设备。在一个实例中,使用来自用户装置101的传感器数据,在图1中示例性地示出的类似于地图绘制平台的地图绘制平台105可以生成通过区域的一个或多个路线的路线数据,以帮助车辆201导航通过所述区域。由传感器207生成的传感器数据可以构成基于点的道路特征观测。也就是说,安装在多个车辆(诸如201或用户装置)中的传感器207可以沿着路径捕获道路特征(诸如限速标志、不同颜色的车道标识),并且捕获道路特征的位置、道路特征的类型、道路特征的值、在道路特征的位置处的航向、以及与道路特征的捕获时间相关联的时间戳。所捕获的道路特征的位置、道路特征的类型、道路特征的值、道路特征的位置处的航向以及与道路特征的捕获相关联的时间戳构成基于点的道路特征观测。由处理器303(图3中示例性示出,与地图绘制平台105中的、图1中示例性示出的处理组件109相同)执行:处理基于点的道路特征观测以生成多个地图匹配的道路,并且处理多个地图匹配的道路以从地图匹配的道路中识别区域的开始链路和结束链路,从而生成通过所述区域的路线。

系统200可以进一步包括服务平台209,所述服务平台可以用于向在用户装置101上运行的应用程序203提供导航相关功能和服务211a-211i。服务211a-211i可以包括诸如导航功能、速度调整功能、交通相关更新、天气相关更新、警告和警报、停车相关服务、室内地图服务等。服务211a至211i可以由多个内容提供商213a至213k提供。在一些实例中,内容提供商213a至213k可以从用于实施一个或多个服务的服务平台209访问各种sdk。在实例中,服务平台209和地图绘制平台105可以被集成到单一平台中,以向oem设备(诸如用户装置101)提供一组与地图绘制和导航相关的应用程序。用户装置101可以被配置成在网络103上与服务平台209、内容提供商的服务213a至213k和地图绘制平台105接口。因此,地图绘制平台105和服务平台209可以通过多个车辆(诸如承载用户装置101的201)使得能够为用户装置101提供基于云的服务(诸如成批地或实时地将基于点的道路特征观测值存储在oem云中,并且检索所存储的基于点的道路特征观测值以便获得生成穿过所述区域的路线),如图3的详细描述中所公开的。

图3示出了根据本发明实例实施例的可以用于生成通过区域的一个或多个路线的路线数据的在图2中示例性示出的地图绘制平台105的框图。在本文描述的实施例中,地图绘制平台105包含数据通信模块301、地图匹配引擎305、链路确定模块307、链路搜索引擎309、路线确定模块311以及用户界面模块313。在图3中示例性地示出的这个实施例中,地图匹配引擎305、链路确定模块307、链路搜索引擎309和路线确定模块311被体现在处理器303内。处理器303可以检索可以存储在存储器315中的计算机程序代码指令,用于通过地图绘制平台105的模块305、模块307、模块309和模块311执行计算机程序代码指令。处理器303可以由地图绘制平台105的各种模块(即301、305、307、309和311)控制计算机程序代码指令的执行。在一个实施例中,数据通信模块301与在图2的详细描述中公开的传感器207通信,并且可以从传感器207接收传感器数据和第一多个基于点的道路特征观测。在实施例中,数据通信模块301可以在网络103上从oem云接收基于点的道路特征观测。第一多个基于点的道路特征观测可以来自沿着路径定位的静态道路标志(诸如速度限制标志的速度漏斗、“建筑工地”标志、“道路上的工人”标志、“在建工程”、标志、“危险道路”标志、“前方道路施工”标志等)的检测,第一多个基于点的道路特征观测可以来自沿着路径定位的数字或动态道路标志(诸如led面板、lcd面板等)的检测。第一多个基于点的道路特征观测可以来自车道标识(例如,指示在国家(诸如德国)中的道路施工区的黄色车道标记)的检测。在一些实例实施例中,第一多个基于点的道路特征观测可以来自结构隔离物(诸如护栏、屏障、中线、物理分隔物)的检测,用于道路上车辆的安全导航。第一多个基于点的道路特征观测包含从车辆(诸如201)捕获道路特征(诸如车道标识、速度限制标志、结构隔离物等)的时间,作为与每个基于点的道路特征观测相关联的时间戳。经过每个道路特征的位置的多个车辆(诸如201)生成每一个道路特征的基于点的道路特征观测。因此,每个基于点的道路特征观测可以不同于基于来自车辆的位置数据、航向数据、道路特征值和道路特征类型以及道路特征捕获时间的其它基于点的道路特征观测。数据通信模块301可以接收被配置为描述安装在车辆201中的用户装置101的位置的传感器数据,或者用户装置101的控制器可以从用户装置101的定位系统接收传感器数据。道路特征的位置可以对应于从车辆(诸如201)捕获的道路特征的位置,并且道路特征的位置可以构成基于点的道路特征观测中的位置数据。基于点的道路特征观测的位置可以包括与纬度分量和经度分量的坐标。类似地,与道路特征相关联的航向可以对应于捕获道路特征的车辆201的航向,并且道路特征的航向可以对应于基于点的道路特征观测中的航向数据。

输入到地图绘制平台105的数据(例如传感器数据等)可以由地图绘制平台105变换、处理和执行,以通过如下公开的地图匹配引擎305与地图数据库107中的链路进行地图匹配。来自安装在用户装置101或车辆201中的不同传感器207的传感器数据可以被转换为与地图绘制平台105兼容的单元和范围,以将基于点的道路特征观测与地图数据库107中的链路进行精确地图匹配,并且搜索地图匹配链路之间的连通性,以生成通过所述区域的路线。

在一些实例实施例中,地图匹配引擎305可以根据由多个车辆(诸如201)捕获的第一多个基于点的道路特征观测来生成地图匹配链路。也就是说,地图匹配引擎305可以将第一多个基于点的道路特征观测与地图数据库107中的已知链路进行地图匹配。可以使用索引link_id在地图数据库107中标识地图匹配链路中的每一个。地图匹配引擎305可以基于第一多个基于点的道路特征观测中的每一个的观测类型、位置和航向对第一多个基于点的道路特征观测进行聚类,以生成至少一个集群。地图匹配引擎305可以进一步基于在所生成的群集中的每一个基于点的道路特征观测的观测类型、位置和航向,将所生成的集群与地图数据库107中的多个链路进行地图匹配。在实施例中,可以通过应用空间聚类方法(诸如k-means方法或dbscan方法),通过设置用于位置聚类和/或航向聚类的预定参数来生成基于点的道路特征观测的集群。在实施例中,地图匹配引擎305可以基于位置数据、航向数据、观测值和观测类型中的至少三个对基于点的道路特征观测进行聚类。观测类型可以是道路特征(诸如车道标识、速度限制标志、结构分离物、道路标志、护柱、锥体、道路屏障,护栏等)的类型。地图匹配引擎305可以使用聚类算法(例如,关于位置数据的dbscan算法)对具有例如eps=150米和minpts=3的搜索半径的第一多个基于点的道路特征观测进行聚类。地图匹配引擎305的聚类可以基于观测值,观测类型和地图匹配链路来区分第一多个基于点的道路特征观测。在实施例中,在k-means聚类方法中,根据第一多个基于点的道路特征观测生成的学习到的道路特征是所生成的集群的聚类质心。地图匹配引擎305可以将学习到的道路特征与地图数据库107中的已知链路进行地图匹配。在实施例中,地图匹配引擎305可以基于在基于点的道路特征观测中每一个的侧向偏移和基于点的道路特征观测的持久性,对第一多个基于点的道路特征观测进行聚类。侧向偏移可以指从多个车辆(诸如201)捕获的道路特征的位置和沿路径的道路特征的实际位置的差异。在实施例中,在生成地图匹配链路时,地图匹配引擎305可以不区分沿着构成一个或多个基于点的道路特征观测的路径的道路特征的侧向偏移。

每一个地图匹配链路可以与link_id、链路开始位置、链路结束位置、链路上游航向、链路下游航向、链路形状位置、以及链路长度相关联,如图6a至6b示例性所示。链路开始位置是指地图匹配链路的开始节点的位置坐标。类似地,链路结束位置是指地图匹配链路的结束节点的位置坐标。链路上游航向是指测量作为由道路开始位置和最接近道路开始位置的形状位置形成的向量的航向的链路开始位置的航向。链路下游航向是指测量作为由链路结束位置和最靠近链路结束位置的形状位置形成的向量的航向的链路结束位置的航向。链路形状位置是指除了链路开始位置和链路结束位置之外的地图匹配链路的形状位置组。链路长度是指地图匹配链路的总长度。

由于第一多个基于点的道路特征观测可以在一天的不同时间从多个车辆获得,所以由地图匹配引擎305生成的地图匹配链路可以是无序的,即,地图匹配链路不具有显式序列。链路确定模块307、链路搜索引擎309和路线确定模块311确定无序地图匹配链路之间的连通性,并且还在无序地图匹配链路的上游和下游搜索地图数据库107中的地图匹配链路,以表示通过区域的一个或多个路线。

链路确定模块307可从地图匹配引擎305获得多个无序地图匹配链路,并且链路确定模块307可以基于无序地图匹配链路的链路属性,从无序地图匹配链路确定一个或多个第一链路和一个或多个第二链路,如图7a至7b的详细描述中所公开的。所述一个或多个第一链路中的每一个可以在上游处具有所述地图匹配链路中的至少一个,并且所述一个或多个第二链路中的每一个可以在下游处具有所述地图匹配链路中的至少一个。链路确定模块307可以在生成图7b中示例性说明的参考矩阵时,确定一个或多个第一链路和一个或多个第二链路,所述参考矩阵限定地图匹配链路之间的关系。一个或多个第一链路中的每一个在下游处没有连接的地图匹配链路,并且一个或多个第二链路在上游处没有地图匹配链路。链路搜索引擎309可以在地图数据库107中搜索在一个或多个第一链路中的每一个的下游中的一个或多个缺失下游链路,如图8a至8b中示例性示出的。类似地,链路搜索引擎309可以在地图数据库107中搜索在一个或多个第二链路的上游中的一个或多个缺失上游链路,如图9a至9b示例性示出的。链路搜索引擎309验证地图匹配链路之间的连通性,并且在地图数据库107中搜索地图匹配链路,所述地图匹配链路可以分别存在于在距第一链路和第二链路有限阈值距离内的一个或多个第一链路中的每一个的下游和一个或多个第二链路中的每一个的上游。也就是说,链路搜索引擎309可以基于功能类别、链路开始位置、链路结束位置以及在在距第一链路的下游距离阈值内的链路下游航向来搜索下游链路。类似地,链路搜索引擎309可以基于在距第二链路的上游距离阈值内的功能类别、链路开始位置、链路结束位置以及链路上游航向来搜索上游链路。链路搜索引擎309可以获得下游距离阈值和上游距离阈值作为沿着路径的道路特征之间的物理距离。当分别在第一链路和第二链路的上游和下游处搜索时,上游距离阈值和下游距离阈值可以相等。在实施例中,上游距离阈值和下游距离阈值可以具有不同的值。在地图数据库107中搜索的地图匹配链路的功能类别使得能够搜索具有来自第一链路和第二链路的平滑链路转换的地图匹配链路,并且避免在第一链路的下游和/或第二链路的上游添加交叉链路。

链路搜索引擎309可以将第一链路、下游链路、第二链路和上游链路存储在地图数据库107中的多个表中。在实施例中,链路搜索引擎309可以将构成通过道路施工区的一个或多个路线的所确定的下游链路和所确定的上游链路存储在地图数据库107的存储表中。在搜索下游链路和上游链路的过程中,所述链路搜索引擎309可以将地图匹配链路的临时信息存储在地图数据库的转换表中。另外,链路搜索引擎309可以将在转换表中的每一个第一链路和每一个第二链路的下游距离阈值和上游距离阈值内的搜索到的下游链路或候选下游链路与搜索到的上游链路或候选上游链路存储在地图数据库107的候选链路表中。

路线确定模块311可以生成通过所述区域的一个或多个路线的路线数据,其中限定路线的下游链路和上游链路被存储在存储表中。路线确定模块311可以通过识别来自一个或多个第二链路或一个或多个缺失上游链路中的一者的至少一个开始链路并且通过识别来自一个或多个第一链路或一个或多个缺失下游链路的至少一个结束链路来生成路线数据。路线确定模块311可以识别通过所述区域的路线的开始链路和结束链路。路线的路线数据包括开始链路和结束链路的位置数据和航向数据。

基于所生成的通过道路施工区的路线的路线数据,用户界面模块313可以在用户界面205上输出通过所述区域的可穿越路线。用户界面模块313可以在用户界面205上输出关于通过接近区域的关于可代替导航路线的通知。在实施例中,用户界面模块313可以在用户界面205上呈现前方道路施工区的指示。在实施例中,用户界面模块313可以基于用户的目的地向车辆201的使用者提供导航建议,以避开道路施工区。导航建议的不同表示可以是具有指示路线上的交通状况、路线上的速度漏斗的位置等的颜色编码或图案道路链路的地图形式。在一些实例实施例中,用户界面模块313可以经由用户装置101的用户界面205向车辆201的使用者通知关于前方的道路施工区和通过道路施工区可用的导航路线。在一些实例实施例中,在用户使用的移动应用程序或导航应用程序中,用户界面模块313呈现关于由于前方的道路施工区以及修改的道路施工区对停车情况的影响而在导航路线方面的改变的通知。用户界面模块313可以被配置成在从处理器303接收到控制指令时更新所呈现的推荐。

处理器303可以以多种不同的方式实现。例如,处理器303可以实施为各种硬件处理装置(诸如协处理器、微处理器、控制器、数字信号处理器(dsp),具有或不具有随附dsp的处理元件、或包括集成电路(例如,asic(专用集成电路)、fpga(现场可编程门阵列)、微控制器单元(mcu)、硬件加速器、专用计算机芯片等)的各种其它处理电路)中的一个或多个。由此,在一些实施例中,处理器303可以包括被配置为独立执行的一个或多个处理核。多核处理器使得能够在单个物理包内实现多处理。附加地或可替换地,处理器303可以包括经由总线串联配置的一个或多个处理器,以使得能够独立地执行指令、流水线操作(pipelining)和多线程(multithreading)。

附加地或可替换地,处理器303可以包括能够处理大量工作负载和操作以提供对大数据分析的支持的一个或多个处理器。在实例实施例中,处理器303可以经由总线与存储器315通信,用于在系统200的组件之间传递信息。存储器315可以是非暂时性的,并且可以包括例如一个或多个易失性和/或非易失性存储器。换句话说,例如,存储器315可以是电子存储设备(例如,计算机可读存储介质),其包含被配置为存储可由机器(例如,像处理器303的计算设备)检索的数据(例如,字节)的门。存储器315可以被配置为存储信息、数据、内容、应用程序、指令等,用于使设备能够根据本发明的示例性实施例执行各种功能。例如,存储器315可以被配置成通过处理器303处理缓冲输入数据。如图3示例性示出的,存储器315可以被配置成存储由处理器303执行的指令。由此,无论是通过硬件或软件方法配置还是通过其组合配置,处理器303都可以表示能够在相应配置的同时执行根据本发明实施例的操作的实体(例如,物理地包含在电路系统中)。因此,例如,当处理器303被实现为asic、fpga等时,处理器303可以是用于执行本文所描述的操作的特定配置的硬件。可替换地,作为另一实例,当处理器303被实现为软件指令的执行器时,这些指令可以具体地配置处理器303以在执行这些指令时执行在本文所描述的算法和/或操作。然而,在一些情况下,处理器303可以是处理器专用设备(例如,移动终端或固定计算设备),所述处理器专用设备被配置为通过由用于执行本文所描述的算法和/或操作的指令,通过进一步配置处理器303来采用本发明的实施例。处理器303尤其可以包括时钟、算术逻辑单元(alu)和被配置为支持处理器303的操作的逻辑门。

在一些实施例中,处理器303可以被配置为向本文所公开的系统200的用户提供物联网(iot)相关的能力。通过使用用于提供导航和停车推荐服务以及道路施工区识别服务的基于云的地图绘制平台105,来通过提供实时停车更新、大数据分析以及基于传感器的数据收集,iot相关能力反过来可以用于提供智能城市解决方案。在一些实施例中,地图绘制平台105可以被配置为提供用于开发根据在本文公开的实施例的导航系统的停车策略推荐解决方案的环境。可以使用本文公开的地图绘制平台105的用户界面模块313来访问环境。用户界面模块313可以提供用于访问存储在地图绘制平台105中的各种特征和数据的界面。

在一些实施例中,地图绘制平台105可以被配置为提供用于实施导航系统的多个基于位置的服务的算法库。例如,地图绘制平台105可以包括与地理编码、选路(多模式、多式联运和单峰)、聚类算法、基于位置的解决方案中的机器学习、自然语言处理算法、人工智能算法等相关的算法。用于地图绘制平台105的不同模块的数据可以使用多个技术来收集,这些技术包括但不限于无人驾驶飞机、传感器、连接的汽车、照相机、探针、芯片组等。根据本文公开的实施例,所收集的数据可以由处理器303处理,以生成通过区域的一个或多个路线的路线数据,所述区域可以是道路施工区。如上所述,地图绘制平台105可以由处理部件实现。然而,在一些实施例中,地图绘制平台105可以实现为芯片或芯片组。换句话说,地图绘制平台105可以包含一个或多个物理封装(例如,芯片),所述物理封装包括在结构组件(例如,基板)上的材料、部件和/或导线。结构组件可以为包括在其上的部件电路系统提供物理强度、尺寸守恒和/或电相互作用的限制。因此,在某些情况下,地图绘制平台105可以被配置成在单个“在芯片上的系统”上实施本发明的实例实施例。由此,在一些情况下,芯片或芯片组可以构成用于执行用于提供本文所描述的功能性的一个或多个操作的装置。

用户装置101的用户界面205反过来可以与处理器303通信,以向用户提供输出,并且在一些实施例中,接收用户输入的指示。在一些示例实施例中,系统200可以包括与处理器303通信并显示地图绘制平台105的输入和/或输出的用户界面205。这样,用户界面205可以包括显示器,并且在一些实施例中还可以包括键盘、鼠标、控制杆、触摸屏、触摸区域、软键、一个或多个麦克风、多个扬声器或其它输入/输出机构。在一个实施例中,处理器303可以包含用户界面电路系统,所述用户界面电路系统被配置为控制一个或多个用户界面元件(诸如显示器)的至少一些功能,并且在一些实施例中,控制多个扬声器、振铃器、一个或多个麦克风等。处理器303和/或包含处理器303的用户界面电路系统可以被配置为通过存储在处理器303(例如,存储器设备310等)可访问的存储器上的计算机程序指令(例如,软件和/或固件)来控制一个或多个用户界面元件的一个或多个功能。在一些实例实施例中,处理器303可以被配置为提供用于生成通过区域的一个或多个路线的路线数据的方法,如以下将结合图4讨论的。

根据实例实施例,图4示例性示出了用于生成通过区域的一个或多个路线的路线数据的方法400。应当理解的是,所述方法400的流程图的每个框可以通过各种装置(诸如硬件、固件、处理器、电路系统和/或与包括一个或多个计算机程序指令的软件的执行相关联的其它通信设备)来实施。例如,上述过程中的一个或多个可以通过计算机程序指令来实现。在这点上,体现上述过程的计算机程序指令可以由地图绘制平台105的存储器315存储,所述计算机程序指令采用本发明的实施例并且由装置的处理器303执行。如将认识到的,可以将任何这样的计算机程序指令加载到计算机或其它可编程装置(例如,硬件)上以产生机器,使得所得到的计算机或其它可编程装置实施流程图方框中指定的功能。这些计算机程序指令还可以存储在计算机可读存储器315中,所述计算机可读存储器可以指示计算机或其它可编程装置以特定方式工作,使得存储在计算机可读存储器315中的指令产生执行实施流程图块中指定的功能的制品。计算机程序指令还可以被加载到计算机或其它可编程装置上,以使一系列操作要在计算机或其它可编程装置上执行,从而产生计算机实施的过程,使得在计算机或其它可编程装置上执行的指令提供用于实施流程图方框中指定的功能的操作。

相应地,流程图的框支持用于执行指定功能的装置的组合以及用于执行指定功能的用于执行指定功能的操作的组合。还应理解的是,流程图的一个或多个框以及流程图中框的组合可以由执行指定功能的基于专用硬件的计算机系统或专用硬件和计算机指令的组合来实施。由图4的流程图所示的用于生成通过区域的一个或多个路线的路线数据的方法400包括:在401,从地图数据库107获得与所述区域相对应的多个地图匹配链路。多个地图匹配链路对应于与由多个车辆做出的多个传感器观测相关联的第一多个基于点的道路特征观测。在403,方法400可以包括基于多个地图匹配链路之间的关系从多个地图匹配链路中确定一个或多个第一链路和一个或多个第二链路。多个地图匹配链路中的至少第三链路在一个或多个第一链路中的每一个的上游中,并且多个地图匹配链路的至少第四链路在一个或多个第二链路的每一个的下游中。在405,方法400可以包括基于一个或多个第一链路中的每一个的一个或多个链路属性和下游距离阈值,在一个或多个第一链路中的每一个的下游中搜索地图数据库107,以便获得一个或多个缺失下游链路,并且在407,所述方法包括基于一个或多个第二链路中的每一个的一个或多个链路属性和上游距离阈值,在一个或多个第二链路中的每一个的上游搜索地图数据库107,以便获得一个或多个缺失上游链路。在409,所述方法可以进一步包括基于一个或多个第一链路、一个或多个第二链路、缺失下游链路、缺失上游链路、以及多个地图匹配链路来生成路线的路线数据,如图3的详细描述中所公开的。

在实例实施例中,用于执行上述图4的方法的系统可以包含被配置为执行上述操作(401至409)中的一些或每一个操作的处理器(例如,处理器303)。例如,处理器可以被配置为通过执行硬件实施的逻辑功能,执行存储的指令,或执行用于执行每一个操作的算法来执行操作(401至409)。可替换地,所述系统可以包含用于执行所述每一个操作的装置。在这点上,根据示例实施例,用于执行操作401至409的装置的实例可以包含例如处理器303和/或用于执行指令或执行如上所述的用于处理信息的算法的设备或电路。

在实施本文所公开的方法400时,由地图绘制平台105生成的最终结果是对通过区域的一个或多个路线的有形确定,可以是道路施工区以及对相应路线数据的确定。利用物理分隔物、车道标识、锥体、屏障等确定通过所述区域的路线,有助于平滑且良好计划导航车辆通过所述区域。在自主车辆导航通过所述区域之前确定通过所述区域的路线有助于自主车辆平稳地从自主模式转换到手动模式。在例如道路施工区的区域中,以手动模式操作自主车辆可能是优选的,以避免发生任何不适当的误动作或碰撞。在确定道路施工区的过程中,地图绘制平台105通过确定从所获得的基于点的道路特征观测产生的地图匹配链路之间的连通性,克服了基于点的道路特征观测的缺点和一些道路特征的检测失败。通过道路施工区的路线的确定可以基于车辆捕获的道路标志的随机分布的位置,道路标志可以彼此相距几百米或几十米。

在本文公开的实例实施例提供了与带有物理分隔物、车道标识、锥体、屏障、道路施工区等的区域相关的导航技术的改进方案,如下所述:这些区域可以具有许多人与重型机械一起工作。道路施工区可能导致道路上的阻塞,并且可能导致道路车道的多样化或合并。通过道路施工区到车辆的预先确定路线可以避免由于铺设车辆而在道路施工区发生任何事故,并且还节省了经由道路施工区铺设的用户的行进时间。在通过道路工程区的路线中的一个上通过道道路工程区的车辆的计划导航可以允许机构计划和管理在道路施工区上的重型机械的移动以避免灾祸。地图绘制平台105使用基于点的道路特征观测,所述基于点的道路特征观测从经由所述区域往返的车辆生成,并且可以产生学习到的道路特征。将学习到的道路特征与在道路施工区之前路径上的限速标志相似的链路进行地图匹配。地图绘制平台105可以从当天的车辆收集如图2中公开的传感器数据,从所收集的传感器数据获得基于点的道路特征观测,并且基于在相同的一天的道路标志的位置、航向、观测类型和观测值对基于点的道路特征观测进行聚类。所收集的传感器数据可以存储在oem云中,并且地图绘制平台105可以访问oem云,用于对基于点的道路特征观测进行聚类,并将集群再次存储在oem云中。在进行聚类时,地图绘制平台105从基于点的道路特征观测中除去异常值,而仅产生很少的学习到的道路特征。因此,本发明的实施例导致较少的处理,从而导致用于解决深深植根于导航技术、自主车辆和车辆安全的问题的资源利用低。地图绘制平台105分别搜索一个或多个第二链路和第一链路中的每一个的上游链路和下游链路,而在所有地图匹配链路的上游和下游中进行搜索。在缩小搜索过程时,地图绘制平台105导致将繁琐的搜索过程减少到资源密集程度更小的搜索过程。所确定的通过道路施工区的路线可以被存储在地图数据库107中,以帮助车辆导航通过所述区域,直到可能存在物理分隔物、车道标识、锥体、屏障、道路施工。存储在地图数据库107中所确定的的通过所述区域的路线可以构成机构在将来要规划的道路施工的历史数据。在实施例中,地图绘制平台105可以生成关于优选的不同运输模式的推荐,以避免在区域中所确定的路线上通行。

图5示出了包含用于基于地图绘制平台105(如图3定义的)的不同模块之间的交互来生成通过区域的一个或多个路线的路线数据的步骤的流程图。如示例性示出的,在步骤501,从多个车辆的传感器观测获得基于点的道路特征观测,并且在步骤503,对基于点的道路特征观测进行聚类,以获得学习到的道路特征。地图匹配引擎305接收学习到的道路特征并与地图数据库107中的链路进行地图匹配。链路确定模块307基于无序地图匹配链路的链路属性从无序地图匹配链路中搜索一个或多个第一链路和一个或多个第二链路507,如图3的详细描述中所公开的。链路搜索引擎309可以在地图数据库107中对一个或多个第一链路的每一个的下游中的一个或多个缺失下游链路进行下游搜索509,并且链路搜索引擎309可以在地图数据库107中对一个或多个第二链路的上游中的一个或多个缺失上游链路进行上游搜索511,如图3的详细描述中所公开的。

图6a至6b示出了示出构成路线的多个地图匹配链路中的一个的链路属性的示意图。地图绘制平台105在对第一多个基于点的道路特征观测进行聚类时获得多个地图匹配链路。地图匹配链路可以根据集群中的第一多个基于点的道路特征观测形成。每一个地图匹配链路具有相应的link_id。如图6a示例性示出的,地图匹配链路具有:带有链路开始位置p的开始节点、带有链路结束位置q的结束节点、链路上游航向u、链路下游航向w、带有相应的链路形状位置[si]的多个形状点、以及链路长度l。如图6a示例性所示的,地图匹配链路具有带有相应的形状位置s1、s2、s3和s4的四个形状点。

图7a至7b示出了根据实例实施例的示出指示通过区域的一个或多个路线的地图匹配链路的示意图。如图7a示例性示出的,地图绘制平台105获得多个地图匹配链路,例如,具有相应的link_id的五个地图匹配链路。五个地图匹配链路具有相应的link_id:t1、t2、t3、t4和t5。五个地图匹配链路t1、t2、t3、t4和t5可以彼此连接,如图7a中示例性所示。五个地图匹配链路之间的连通性是已知的,并且地图绘制平台105搜索五个地图匹配链路中的一个或多个上游链路和一个或多个下游链路,以确定包含五个地图匹配链路、和/或上游链路、和/或下游链路的一个或多个路线。如示例性所示,在地图匹配链路t1的下游连接地图匹配链路t2和t3,并且在地图匹配链路t1的上游不存在地图匹配链路。类似地,在地图匹配链路t4的下游连接地图匹配链路t5,并且在地图匹配链路t4的上游不存在地图匹配链路。基于关于地图匹配链路t1、t2、t3、t4和t5之间的连接性的可用的信息,地图绘制平台105生成图6b中示例性示出的参考矩阵。参考矩阵是n*n矩阵,其中n是其间连通性已知的地图匹配链路的数目。使用地图匹配链路的参考矩阵,地图绘制平台105确定一个或多个第一链路和一个或多个第二链路。也就是说,地图绘制平台105识别没有所连接的下游链路的地图匹配链路组和没有所连接的上游链路的地图匹配链路组。在参考矩阵中,如果在行中的地图匹配链路在上游中被连接到列中的地图匹配链路,则地图绘制平台105输入与行中的地图匹配链路和列中的地图匹配链路的交点相对应的值1。在参考矩阵中,如果行中的地图匹配链路在上游中没有被连接到列中的地图匹配链路,则地图绘制平台105输入与行中的地图匹配链路和列中的地图匹配链路的交点相对应的值0。如示例性所示,地图匹配链路t1在地图匹配链路t2和t3的上游中,即地图匹配链路t2和t3在t1的下游中,地图绘制平台105输入与行中的地图匹配链路t1与列中的地图匹配链路t2的交点相对应的值1,以及与行中的地图匹配链路t1与列中的地图匹配链路t3的交点相对应的值1。以类似的方式,地图绘制平台105基于图7a在参考矩阵中输入值。

由于地图匹配链路t2、t3和t5没有下游链路,因此与行中的地图匹配链路t2和列中的地图匹配链路t1、t3、t4和t5的交点相对应的值为0。类似地,与行中的地图匹配链路t3和列中的地图匹配链路t1、t2、t4和t5的交点相对应的值是0,并且与行中的地图匹配链路t5和列中的地图匹配链路t1、t2、t3和t4的交点相对应的值是0。并且,地图匹配链路t1和t4没有上游链路。地图绘制平台105将不具有下游链路的地图匹配链路t2、t3和t5确定为第一链路组[st1],将不具有上游链路的地图匹配链路t1和t4确定为第二链路组[st2]。地图绘制平台105确定其行中的值之和为0的第一链路和其列中的值之和为0的第二链路。数学上,

其中n是地图匹配链路的数目,并且i和j是指示参考矩阵中的行和列的索引。[st1]和[st2]是没有上游链路和下游链路的地图匹配链路。即使给定链路在一个车辆的检测结果中可能没有上游链路,它也可能在其它车辆的结果中找到上游链路。因此,根据从来自多个车辆的传感器观测导出的基于点的道路特征观测,确定在[st1]中的第一链路和在[st2]中的第二链路。

地图绘制平台105进一步在地图数据库107中的第一链路组[st1]中的每个第一链路的下游中搜索一个或多个缺失下游链路。类似地,地图绘制平台105进一步在地图数据库107中的第二链链路组[st2]中的每个第二链路的上游中搜索一个或多个缺失上游链路。地图绘制平台105利用有限距离阈值分别验证并记录在第二链路和第一链路的上游和下游中的所有可能的连接链路。对于[st1]中的每个第一链路,地图绘制平台105搜索缺失下游链路,如图8a至8b中示例性所示。另外,地图绘制平台105基于在图6a至6b的详细描述中公开的第一链路的链路属性来确定在距第一链路的下游距离阈值(诸如0.25km)内的缺失下游链路。类似地,对于[st2]中的每个第二链路,地图绘制平台105在地图数据库107中搜索缺失上游链路,如图9a至9b中示例性所示。另外,地图绘制平台105基于在图6a至6b的详细描述中公开的第二链路的链路属性来确定在距第二链路的上游距离阈值(例如0.25km)内的缺失上游链路,。

地图绘制平台105可以将在[st1]中的第一链路以及在[st2]中的第二链路的所确定的下游链路和所确定的上游链路存储在地图数据库107的存储表中。地图绘制平台105将搜索下游链路的过程中(如图8a至8b中示例性示出的)以及搜索上游链路的过程中(如图9a至9b中示例性示出的)的地图匹配链路的中间信息存储在转换表中。中间信息可以是被搜索的候选下游链路和候选上游链路的链路属性。地图绘制平台105进一步将地图匹配链路的下游和上游中的合格的所连接的地图匹配链路存储在地图数据库107的候选链路表中的转换表中。

图8a至8b示出了根据实例实施例示出用于在第一链路的下游中搜索一个或多个缺失下游链路的步骤的流程图。对于[st1]中的每个第一链路,地图绘制平台105可以搜索一个或多个缺失下游链路。地图绘制平台105的输入是第一链路组[st1],如在步骤801示例性所示。在步骤803,在转换表中,地图绘制平台105分别将链路结束位置qm、链路下游航向wm初始化为第一链路qst1的链路结束位置和链路下游航向wst1。将值0分配给链路长度lm,并且标识搜索到的地图匹配链路bm的分支id可以是数字和/或字母。

在步骤805,地图绘制平台105确定转换表是否为空。如果转换表是空的,则在步骤807,地图绘制平台105可以结束对下游链路的搜索,因为在转换表中没有需要搜索下游链路的第一链路。如果转换表不为空,则地图绘制平台105继续搜索第一链路的下游中的一个或多个下游链路。在步骤809,地图绘制平台105从地图数据库107获得地图匹配链路[t]。在步骤811,地图绘制平台105根据[t]确定候选地图匹配链路tn,所述候选地图匹配链路tn的链路开始位置pn可以与转换表中的第一链路的链路结束位置qm相同,并且其上游航向un可以与第一链路的下游航向wm相似。也就是说,候选地图匹配链路的上游航向un与第一链路的下游航向wm之间的航向差不大于70度。在步骤813,地图绘制平台105在步骤811中为地图匹配链路在转换表中创建分支idb1n,并将b1n分配给bm。在执行流程图的第一循环中,地图绘制平台识别具有被识别为连接到[st1]中的第一链路的下游的下游链路的分支idb1n的候选地图匹配链路tn。具有分支idb1n的候选地图匹配链路tn被存储在存储表中。存储表中的分支id被更新为分支idb1n。在步骤815,假使有多个候选地图匹配链路在下游连接到相同第一链路,则地图绘制平台105更新所创建的分支idb1n到b2n,以向连接到相同的第一链路的候选地图匹配链路分配不同的分支id。地图绘制平台将分支idb1n与b1n的行号合并,以获得新的分支idb2n。新的分支id在下游搜索过程中区分存储表中的不同树分支,并且第一链路的相同下游分支中的地图匹配链路将具有相同的分支id。使用新的分支idb2n,地图绘制平台105可以确定具有新的分支idb2n的分支是否是第一链路组[st1]中的一个。如果分支是第一链路组[st1]中的一个,则地图绘制平台105可以检索具有新的分支idb2n的分支下游中的所有链路,如进一步公开的。并且,如果地图绘制平台105发现分支不是第一链路集组[st1]中的一个并且总链路长度大于距离阈值,则则地图绘制平台105可以相应地移除这个分支中的所有链路,如将在步骤825和步骤827中确定的。另外,在步骤817,地图绘制平台105将连接在分支idb1n的下游的候选地图匹配链路与相应的分支idb1n、b2n、链路开始位置pn、链路上游航向un和链路长度ln一起存储在候选链路表中。在步骤819,地图绘制平台105确定候选链路表是否为空。如果候选链路表为空,则地图绘制平台105在步骤821结束用于搜索具有分支idb2n的下游链路的过程。如果候选链路表不为空,则地图绘制平台105继续进一步确定具有分支idb2n的候选地图匹配链路是否是缺失下游链路。在步骤823,地图绘制平台105确定候选地图匹配链路tn中的每一个是否是第一链路组[st1]中的一个。如果具有分支idb2n的候选地图匹配链路tn不是第一链路,则地图绘制平台105继续确定具有分支idb2n的候选地图匹配链路tn是否是分支idb1n的下游中的缺失下游链路。在步骤825,地图绘制平台105利用候选地图匹配链路tn的链路属性更新转换表。分支idb1n下游中的候选地图匹配链路tn具有相同的分支idb2n。地图绘制平台105将具有分支idb2n的候选地图匹配链路的链路开始位置pm初始化为具有分支idb1n的候选地图匹配链路tn的链路结束位置qn,将具有分支idb2n的候选地图匹配链路的链路上游航向um初始化为具有分支idb1n的候选地图匹配链路tn的链路下游航向wn,将分支idbm初始化为候选地图匹配链路tn的分支idb2n,将链路的长度lm初始化为具有分支idb1n的候选地图匹配链路tn的总长度,以及将具有分支idb2n的候选地图匹配链路的长度初始化为lm+ln。在步骤827,如果lm小于或等于下游距离阈值(诸如0.25km),则地图绘制平台105利用链路属性(诸如链路开始位置pm、链路上游航向um、分支idbm以及具有分支idbm的候选地图匹配链路tn的总长度lm)来更新转换表。下游距离阈值可以基于路线上距离而不是欧几里得距离(euclideandistance)。路线上距离可以是沿着路径的道路标志之间的总物理距离。具有分支idb2n的候选地图匹配链路tn被识别为连接到具有分支idb1n的候选地图匹配链路tn的下游的下游链路。在827中,转换表将仅具有其总长度距离小于下游距离阈值的候选地图匹配链路,并且转换表中的候选地图匹配链路将继续到下一循环。地图绘制平台105迭代从步骤803开始的搜索过程以获得下游链路tn中的其它下游链路,这些其它下游链路可以连接在下游链路tn的下游但距离第一链路0.25km以内。

并行地,在步骤829,地图绘制平台105利用候选地图匹配链路tn的b2n的分支id更新存储表中的分支id,并且进一步在步骤831,地图绘制平台105通过将候选链路表附加到存储表来更新存储表。在步骤833,存储表包含所确定的下游链路tz,并且在步骤837,地图绘制平台105输出所确定的下游链路的link_id。如果在步骤823,候选地图匹配链路是[st1]中的第一链路之一,则在步骤835,地图绘制平台105结束对缺失下游链路的搜索,并在步骤837输出第一链路的link_id。地图绘制平台105对[st1]中的每个其它第一链路迭代从步骤801开始的搜索下游链路的过程。

图9a至9b示出了根据实例实施例示出用于在第二链路的上游中搜索一个或多个缺失上游链路的步骤的流程图。对于[st2]中的每个第二链路,地图绘制平台105可以搜索一个或多个缺失上游链路。到地图绘制平台105的输入是第二链路组[st2],如在步骤901示例性所示。在步骤903,在转换表中,地图绘制平台105分别将链路开始位置pm、链路上游航向um初始化为第二链路pst2和链路上游航向ust2的链路开始位置。将值0分配给链路长度lm,并且可以为标识搜索到的地图匹配链路bm的分支id分配数字和/或字母。

在步骤905,地图绘制平台105确定转换表是否为空。如果转换表是空的,则在步骤907,地图绘制平台105可以结束对上游链路的搜索,因为不存在需要为其搜索上游链路的第二链路。如果转换表不为空,则地图绘制平台105继续搜索第二链路的上游中的一个或多个上游链路。在步骤909,地图绘制平台105从地图数据库107获得地图匹配链路[t]。在步骤911,地图绘制平台105确定候选地图匹配链路tn,所述候选地图匹配链路的链路结束位置qn可以与转换表中的第二链路的链路开始位置pm相同,并且其下游航向wn可以与第二链路的上游航向um相似。也就是说,候选地图匹配链路tn的下游航向wn与第二链路的上游航向um之间的航向差不大于70度。在步骤913,地图绘制平台105在转换表中为在步骤911中所确定的地图匹配链路创建分支idb1n,并将b1n分配给bm。在执行流程图的第一循环中,地图绘制平台识别具有被识别为连接到[st2]中的第二链路的上游的上游链路的分支idb1n的候选地图匹配链路tn。具有分支idb1n的候选地图匹配链路tn被存储在存储表中。存储表中的分支id被更新为分支idb1n。在步骤915,假使有多个候选地图匹配链路在下游连接到相同第二链路,则地图绘制平台105更新所创建的分支idb1n到b2n,以向连接到相同的第二链路的候选地图匹配链路分配不同的分支id。地图绘制平台将分支idb1n与b1n的行号合并,以获得新的分支idb2n。新的分支id在上游搜索过程中区分存储表中的不同树分支,并且第二链路的相同上游分支中的地图匹配链路将具有相同的分支id。使用新分支idb2n,地图绘制平台105可以确定具有新的分支idb2n的分支是否是第二链路组[st2]中的一个。如果分支是第一链路组[st2]中的一个,则地图绘制平台105可以检索具有新的分支idb2n的分支的上游中的所有链路,如进一步公开的。并且,如果地图绘制平台105发现分支不是第二链路组[st2]中的一个并且总链路长度大于距离阈值,则地图绘制平台105可以相应地移除所述分支中的所有链路,如将在步骤925和927中确定的。另外,在步骤917,地图绘制平台105将所确定的连接在分支idb1n的上游的候选地图匹配链路tn与相应的分支idb1n、b2n、链路结束位置qn、链路下游航向wn和链路长度ln一起存储在候选链路表中。在步骤919,地图绘制平台105确定候选链路表是否为空。如果候选链路表为空,则地图绘制平台105在步骤921结束用于搜索具有分支idb2n的上游链路的过程。如果候选链路表不为空,则地图绘制平台105继续进一步确定具有分支idb2n的候选地图匹配链路是否是缺失上游链路。在步骤923,地图绘制平台105确定候选地图匹配链路tn中的每一个是否是第二链路组[st2]中的一个。如果候选地图匹配链路tn不是第二链路,则地图绘制平台105继续确定具有分支idb2n的候选地图匹配链路tn是否是分支idb1n的上游中的缺失上游链路。在步骤925,地图绘制平台105利用候选地图匹配链路tn的链路属性更新转换表。在分支idb1n的上游处的候选地图匹配链路tn具有相同的分支idb2n。地图绘制平台105将具有分支idb2n的候选地图匹配链路的链路结束位置qm初始化为具有分支idb1n的候选地图匹配链路tn的链路开始位置pn,将具有分支idb2n的候选地图匹配链路的链路下游航向wm初始化为具有分支idb1n的候选地图匹配链路tn的链路上游航向un,将分支idbm初始化为候选地图匹配链路tn的分支idb2n,将链路的长度lm初始化为具有分支idb1n的候选地图匹配链路tn的总长度,以及将具有分支idb2n的候选地图匹配链路tn的长度初始化为lm+ln。在步骤927,如果lm小于或等于上游距离阈值(诸如0.25km),则地图绘制平台105利用链路属性(诸如链路结束位置qm、链路下游航向wm、分支idbm以及具有分支idbm的候选地图匹配链路tn的总长度lm)来更新转换表。上游距离阈值是基于路线上距离而不是欧几里得距离。具有分支idb2n的候选地图匹配链路tn被识别为连接到具有分支idb1n的候选地图匹配链路tn的上游的上游链路。地图绘制平台105迭代从步骤903开始的搜索过程以获得上游链路tn中的其它上游链路,这些其它上游链路可以连接在上游链路tn的上游但距离第一链路0.25km以内。

并行地,在步骤929,地图绘制平台105利用b2n的分支id更新存储表中的分支id更新存储表中的分支id,并且进一步在步骤931,地图绘制平台105通过将候选链路表附加到存储表来更新存储表。在步骤933,存储表包含所确定的上游链路tz,并且在步骤937,地图绘制平台105输出所确定的上游链路的link_id。如果在步骤923,候选地图匹配链路是[st2]中的第二链路之一,则在步骤935,地图绘制平台105结束对缺失上游链路的搜索,并在步骤937输出第二链路的link_id。从步骤901开始,地图绘制平台105对[st2]中的每个其它第二链路迭代搜索上游链路的过程。

在图8a至8b和图9a至9b中示例性地示出的搜索过程结束时,地图绘制平台105将[st1]中的第一链路的下游中的一个或多个缺失下游链路以及[st2]中的第二链路的上游中的一个或多个缺失上游链路存储在地图数据库107的存储表中。存储表包含在第一链路、缺失下游链路、第二链路以及导致通过所述区域的路线的缺失上游链路之间的连接序列。

地图绘制平台105进一步识别存储在存储表中的在第一链路、所确定的下游链路、第二链路、以及所确定的上游链路之中的一个或多个开始链路和一个或多个结束链路。为了识别开始链路和结束链路,地图绘制平台105使用存储在存储表中的第一链路、所确定的下游链路、第二链路以及所确定的上游链路来生成类似于图7b中示例性示出的参考矩阵的参考矩阵。地图绘制平台105将开始链路识别为参考矩阵中没有上游链路的地图匹配链路,将结束链路识别为参考矩阵中没有下游链路的地图匹配链路。也就是说,在参考矩阵中,结束链路是地图匹配链路,其行中的地图匹配链路与所述列中的其它地图匹配链路的交点之和是0。类似地,开始链路是地图匹配链路,其列中的地图匹配链路与所述行中的其它地图匹配链路的交点之和为0。数学上,

地图绘制平台105生成路线数据,即所识别的开始链路和所识别的结束链路的位置数据和航向数据。路线数据可以具有所有必要链路以生成可穿越路线,但是可以存在可从路线数据导出的多于一个单一可穿越路线,和/或在可以不按正确顺序排序的数据中的链路。地图绘制平台105可以基于存储表中所有上游链路和下游链路的参考矩阵中的值来导出通过所述区域的可穿越路线。在参考矩阵中,如果所有的值都是1,则这样的上游链路和下游链路形成可穿越路线。地图绘制平台105可以在用户界面205上输出可穿越路线。

受益于前述描述和相关附图中给出的教导,本发明所属领域的技术人员将想到本文阐述的本发明的许多修改和其它实施例。因此,应当理解的是,本发明不限于所公开的特定实施例,并且修改和其它实施例旨在包括在所附权利要求的范围内。而且,尽管前面的描述和相关联的附图在元件和/或功能的某些实例组合的上下文中描述了实例实施例,但是应当理解的是,在不脱离所附权利要求的范围的情况下,替代实施例可以提供元件和/或功能的不同组合。在这点上,例如,与上面明确描述的那些元件和/或功能不同的元件和/或功能的组合也被设想为可以在一些所附权利要求中阐述。尽管本文采用了特定的术语,但是它们仅用于一般的和描述性的意义,而不是用于限制的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1