本申请涉及路径计算技术领域,更具体地说,涉及一种道路孤岛确定方法及装置。
背景技术:
道路孤岛的意思是:若某位置周边的道路与外界道路没有连通性,则该位置即为道路孤岛。
道路孤岛的存在会影响路径计算服务,为此我们希望及早地将道路孤岛查找出来。但是,由于路网的复杂性,如果我们在电子地图中逐个遍历各个坐标附近的道路情况,进行孤岛的查找,将会耗费大量的时间。为此现有技术亟需一种方案,能够快速、高效地确定道路孤岛。
技术实现要素:
有鉴于此,本申请提供了一种道路孤岛确定方法及装置,用于快速、高效的确定道路孤岛。
为了实现上述目的,现提出的方案如下:
一种道路孤岛确定方法,包括:
获取多个包含起点坐标和终点坐标的算路请求,所述算路请求为算路引擎未成功给出求路结果的算路请求;
将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。
一种道路孤岛确定装置,包括:
算路请求获取单元,用于获取多个包含起点坐标和终点坐标的算路请求,所述算路请求为算路引擎未成功给出求路结果的算路请求;
聚合单元,用于将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。
从上述的技术方案可以看出,本申请实施例提供的道路孤岛确定方法,获取多个包含起点坐标和终点坐标的算路请求,算路请求为算路引擎未成功给出求路结果的算路请求,进一步将多个算路请求中的起点坐标和终点的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。由于算路引擎未成功给出求路结果的算路请求,其起点坐标和终点坐标中至少有一个是道路孤岛,本申请将聚合点作为候选道路孤岛,仅仅需要对候选道路孤岛进行周边道路连通性的查看,确定其是否为道路孤岛,极大缩小了道路孤岛的查询范围,相比于现有技术能够快速、高效的确定道路孤岛。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种道路孤岛确定方法流程图;
图2为本申请实施例公开的另一种道路孤岛确定方法流程图;
图3为本申请实施例公开的又一种道路孤岛确定方法流程图;
图4为本申请实施例示例的一种r-tree树示意图;
图5为本申请实施例示例的一种r-tree树构建方法流程图;
图6为本申请实施例公开的一种向电子地图上投影聚合点并标记聚合数值的方法流程图;
图7-9为本申请实施例示例的电子地图在不同缩放等级下聚合点显示效果图;
图10为本申请实施例公开的一种道路孤岛确定装置结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,图1为本申请实施例公开的一种道路孤岛确定方法流程图。
如图1所示,该方法包括:
步骤s100、获取多个包含起点坐标和终点坐标的算路请求,所述算路请求为算路引擎未成功给出求路结果的算路请求;
具体地,用户向算路引擎发送算路请求,该算路请求包含了起点坐标和终点坐标,请求算路引擎给出从起点坐标至终点坐标的可行路线。算路引擎根据起点坐标和终点坐标进行路径计算,若路网中存在满足条件的路径,则算路引擎会给出求路结果,若路网中不存在满足条件的路径,则算路引擎无法成功给出求路结果。
本申请获取的算路请求即为,算路引擎未成功给出求路结果的算路请求。
步骤s110、将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛。
具体地,上一步骤获取得到多个算路请求,利用多个算路请求中的起点坐标和终点坐标组成坐标点集合,进而对坐标点集合中的各个坐标点进行点聚合,得到多个聚合点。点聚合时可以使用现有的聚合算法,例如基于距离的点聚合算法等。
由于算路引擎未成功给出求路结果的算路请求,其起点坐标和终点坐标中至少有一个是道路孤岛,因此本申请将点聚合得到的多个聚合点作为候选道路孤岛,后续可以从候选道路孤岛中确定道路孤岛。
从候选道路孤岛中确定道路孤岛可以是由工作人员来做,例如工作人员查看候选道路孤岛附近的道路连通性,进而确定候选道路孤岛是否为道路孤岛。
本申请实施例提供的道路孤岛确定方法,获取多个包含起点坐标和终点 坐标的算路请求,算路请求为算路引擎未成功给出求路结果的算路请求,进一步将多个算路请求中的起点坐标和终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。由于算路引擎未成功给出求路结果的算路请求,其起点坐标和终点坐标中至少有一个是道路孤岛,本申请将聚合点作为候选道路孤岛,仅仅需要对候选道路孤岛进行周边道路连通性的查看,确定其是否为道路孤岛,极大缩小了道路孤岛的查询范围,相比于现有技术能够快速、高效的确定道路孤岛。
参见图2,图2为本申请实施例公开的另一种道路孤岛确定方法流程图。
如图2所示,该方法包括:
步骤s200、获取算路引擎的服务日志;
具体地,算路引擎的服务日志中记录有每条算路请求的起点坐标、终点坐标和求路结果。
用户在需要进行路径服务时访问算路引擎,并提交包含起点坐标和终点坐标的算路请求。算路引擎根据算路请求进行路径计算,并记录每条算路请求的求路结果。求路结果有两种,一种是求路成功,另一种是求路失败。
步骤s210、在所述服务日志中筛选出求路结果为失败的算路请求;
具体地,当算路引擎的服务日志中积累了足够数量的算路请求之后,从服务日志中筛选出求路结果为失败的算路请求。
步骤s220、将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛。
具体地,后续可以从所述候选道路孤岛中确定道路孤岛。
本申请实施例提供了一种获取算路请求的具体实现方式。也即,在算路引擎的服务日志中筛选出求路结果为失败的算路请求。当然,除此之外,本申请还可以通过第三方途径来获取算路请求,对此本申请不进行严格限定。
可选的,在上述实施例中,算路引擎的服务日志中还可以进一步记录每一条算路请求的请求时间。也即,算路引擎记录了算路请求的如下信息:1、请求时间;2、求路结果;3、起点坐标;4、终点坐标。
基于此,上述步骤s200,获取算路引擎的服务日志的过程可以是,根据 请求时间,选取处于目标时间段的算路请求。例如,获取2015.1.1-2016.1.1之间的算路请求。
由于地图数据是持续更新的,因此距离当前时间太久的算路请求可能已经失效,为了算法的准确性,本申请可以设定时间范围,仅获取请求时间处于所述时间范围内的算路请求。
参见图3,图3为本申请实施例公开的又一种道路孤岛确定方法流程图。
如图3所示,该方法包括:
步骤s300、获取多个包含起点坐标和终点坐标的算路请求,所述算路请求为算路引擎未成功给出求路结果的算路请求;
具体地,用户向算路引擎发送算路请求,该算路请求包含了起点坐标和终点坐标,请求算路引擎给出从起点坐标至终点坐标的可行路线。算路引擎根据起点坐标和终点坐标进行路径计算,若路网中存在满足条件的路径,则算路引擎会给出求路结果,若路网中不存在满足条件的路径,则算路引擎无法成功给出求路结果。
本申请获取的算路请求即为,算路引擎未成功给出求路结果的算路请求。
步骤s310、将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛;
具体地,上一步骤获取得到多个算路请求,利用多个算路请求中的起点坐标和终点坐标组成坐标点集合,进而对坐标点集合中的各个坐标点进行点聚合,得到多个聚合点。
由于算路引擎未成功给出求路结果的算路请求,其起点坐标和终点坐标中至少有一个是道路孤岛,因此本申请将点聚合得到的多个聚合点作为候选道路孤岛,后续可以从候选道路孤岛中确定道路孤岛。
步骤s320、确定所述聚合点的聚合数值,所述聚合数值表示聚合点所聚合的坐标点的个数。
可以理解的是,对于起点为孤岛的情况,绝大部分算路失败且起点相近的请求中,用户的终点都各不相同。同理,终点为孤岛时,绝大部分请求的起点各不相同。因此,在聚合后得到的聚合点的聚合数值也各不相同。聚合 数值越大,代表对应聚合点为道路孤岛的可能性越大。因此,通过聚合点的聚合数值可以进一步缩小道路孤岛的判断范围,减少工作人员的排查工作量。
进一步可选的,在上述实施例的基础上,本申请还可以将聚合点投影到电子地图上,并将聚合点的聚合数值在电子地图中进行标记。
通过将聚合结果展现在电子地图上,电子地图上会出现某个地区的聚合数值很大,而其它地方零星的散落着很小数值的情况,工作人员可以筛选出聚合数值较大的聚合点,进而根据电子地图上聚合点周边道路的连通性,确定聚合点是否为道路孤岛,加快了工作人员确定道路孤岛的速度。
在本申请的又一个实施例中,介绍对由多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合的一种可选方案。
本申请将多个算路请求中的起点坐标和终点坐标组成坐标点集合;进一步对坐标点集合中的坐标点进行多层次的聚合,聚合结果组成空间树。
空间树的层级与电子地图的比例尺的可缩放等级一一对应,坐标点集合中的坐标点与空间树的叶子节点一一对应,空间树中任意一个节点的父节点为对其各个子节点进行聚合所得到的聚合点,空间树中任意一个非叶子节点的节点都记录有聚合数值,聚合数值为以该节点为根节点的树形结构的所有叶子节点的个数。
在本发明实施例中,空间树优选的为r-tree树,但不限于r-tree树,参见图4,图4为本申请实施例示例的一种r-tree树示意图。
假设电子地图的比例尺的可缩放等级数为3,坐标点集合中共有5个坐标点,分别为a1-a5。
参考图4,坐标点集合中的5个坐标点a1-a5作为r-tree树的第一层节点,也即叶子节点。
对第一层的a1-a5共5个节点进行点聚合操作,由a1-a3聚合得到节点a6;由a4-a5聚合得到节点a7。在r-tree树中节点a6作为节点a1-a3的父节点,且节点a6的聚合数值为以节点a6为根节点的树形结构中的叶子节点的总个数,节点a6的聚合数值f=3。在r-tree树中节点a7作为节点a4-a5的父节点,且节点a7的聚合数值为以节点a7为根节点的树形结构中的叶子节点的总个数,节点a7的聚合数值f=2。
节点a6和节点a7作为r-tree树的第二层节点。
对第二层的a6和a7共2个节点进行点聚合操作,由a6和a7聚合得到节点a8。在r-tree树中节点a8作为节点a6和a7的父节点,且节点a8的聚合数值为以节点a8为根节点的树形结构中的叶子节点的总个数,节点a8的聚合数值f=5。
节点a8作为r-tree树的第三层节点。
综上可知,电子地图的可缩放等级数与r-tree树的层级数相同,且一一对应。电子地图的第一缩放等级对应r-tree树的第一层级;电子地图的第二缩放等级对应r-tree树的第二层级;电子地图的第三缩放等级对应r-tree树的第三层级。
其中,第一缩放等级>第二缩放等级>第三缩放等级,且缩放等级越大代表电子地图放大倍数越高,显示的地图信息越详细。
上述实施例介绍了对坐标点集合中的坐标点进行多层次的聚合,聚合结果组成的r-tree树的结构。对于r-tree树的构建过程可以参考图5。
如图5所示:
步骤s500、确定所述电子地图的比例尺的可缩放等级数;
步骤s510、将坐标点集合中的坐标点,确定为待聚合点,将待聚合点确定为r-tree树中同一层的节点;
其中,坐标点集合由多个所述算路请求中的起点坐标和终点坐标组成。
步骤s520、判断所述r-tree树的层级数是否达到所述可缩放等级数,若是,执行步骤s530,若否,执行步骤s540;
步骤s530、结束并输出所述r-tree树;
步骤s540、对所述待聚合点进行聚合,得到若干聚合点,在r-tree树中,将所述聚合点确定为其所聚合的待聚合点所对应的节点的父节点,并在父节点中记录聚合数值;
其中,所述聚合数值为以该父节点为根节点的树形结构的所有叶子节点的个数。
步骤s550、将所述聚合点确定为待聚合点,并返回执行步骤s520。
基于上述实施例所公开的,对坐标点集合中的坐标点进行多层次的聚合,利用聚合结果组成r-tree树的过程,本实施例进一步对上述实施例中,将所述聚合点投影到电子地图上,并将聚合点的聚合数值在电子地图中进行标记的过程进行介绍。
参见图6,图6为本申请实施例公开的一种向电子地图上投影聚合点并标记聚合数值的方法流程图。
如图6所示,该过程包括:
步骤s600、确定所述电子地图的比例尺的当前缩放等级数;
具体地,上述实施例已经介绍了电子地图的比例尺可以存在多个缩放等级,本步骤中确定电子地图的比例尺的当前缩放等级数。
步骤s610、根据所述当前缩放等级数,在所述r-tree树中确定对应的层级;
上文已经介绍了电子地图的比例尺的不同缩放等级在r-tree树中均存在对应的层级,因此本步骤中确定r-tree树中与所述当前缩放等级数对应的层级。
步骤s620、将确定的对应的层级的节点投影到所述电子地图上,并在电子地图中标记投影节点的聚合数值。
具体地,在电子地图当前缩放等级下,将确定的对应层级的节点投影到电子地图上对应位置,并在电子地图中标记投影节点的聚合数值。
按照本实施例的投影方法,工作人员可以控制电子地图的缩放等级,在不同缩放等级的电子地图上能够看到不同的聚合点及聚合数值。
参见图7-9,图7-9为本申请实施例示例的电子地图在不同缩放等级下聚合点显示效果图。
其中,图7为第三缩放等级下显示效果,图8为第二缩放等级下显示效果,图9为第一缩放等级下显示效果。
工作人员在第一缩放等级下可以看到全国各个重点省市的聚合结果,聚合点的聚合数值越大代表该省份下包含道路孤岛的可能性越高,反之,代表该省份下包含道路孤岛的可能性越低。
举例如,工作人员选取广州市进行放大,在第二缩放等级下,图8定位到广州市下的“保利.东江首府”,该点的聚合数值为11,代表该点下聚合有11个坐标点。
进一步对“保利.东江首府”进行放大,在第三缩放等级下的显示效果如图9。图9中黑色小旗子代表坐标点。工作人员可以在图9中对各个坐标点附近的道路连通性进行查看,进而确定坐标点是否为道路孤岛。
综上可知,工作人员可以在最小放大等级下的电子地图中选取聚合数值超过阈值的聚合点,进而对该聚合点进行逐级放大,直至定位到最大缩放等级下电子地图中的坐标点,判断该坐标点是否为道路孤岛。对于聚合数值低于阈值的聚合点,本申请认定其不包含道路孤岛,进而不对其进行排查,减少了道路孤岛的筛选工作量。
下面对本申请实施例提供的道路孤岛确定装置进行描述,下文描述的道路孤岛确定装置与上文描述的道路孤岛确定方法可相互对应参照。
参见图10,图10为本申请实施例公开的一种道路孤岛确定装置结构示意图。
如图10所示,该装置包括:
算路请求获取单元10,用于获取多个包含起点坐标和终点坐标的算路请求,所述算路请求为算路引擎未成功给出求路结果的算路请求;
聚合单元11,用于将多个所述算路请求中的起点坐标、终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。
本申请实施例提供的道路孤岛确定装置,由算路请求获取单元获取多个包含起点坐标和终点坐标的算路请求,算路请求为算路引擎未成功给出求路结果的算路请求,由聚合单元将多个算路请求中的起点坐标和终点坐标的坐标点进行点聚合,得到多个聚合点,将多个聚合点作为候选道路孤岛,以便从所述候选道路孤岛中确定道路孤岛。由于算路引擎未成功给出求路结果的算路请求,其起点坐标和终点坐标中至少有一个是道路孤岛,本申请将聚合点作为候选道路孤岛,仅仅需要对候选道路孤岛进行周边道路连通性的查看,确定其是否为道路孤岛,极大缩小了道路孤岛的查询范围,相比于现有技术 能够快速、高效的确定道路孤岛。
可选的,上述算路请求获取单元可以包括:
服务日志获取单元,用于获取算路引擎的服务日志,所述服务日志中记录有每条算路请求的起点坐标、终点坐标和求路结果;
算路请求筛选单元,用于在所述服务日志中筛选出求路结果为失败的算路请求。
可选的,本申请的道路孤岛确定装置还可以包括:
聚合数值确定单元,用于确定所述聚合点的聚合数值,所述聚合数值表示聚合点所聚合的坐标点的个数。
可选的,本申请的道路孤岛确定装置还可以包括:
投影单元,用于将所述聚合点投影到电子地图上,并将聚合点的聚合数值在电子地图中进行标记。
可选的,上述聚合单元可以包括:
第一聚合子单元,用于对由多个所述算路请求中的起点坐标和终点坐标组成的坐标点集合中的坐标点进行多层次的聚合,聚合结果组成空间树;
所述空间树的层级与所述电子地图的比例尺的可缩放等级一一对应,坐标点集合中的坐标点与空间树的叶子节点一一对应,空间树中任意一个节点的父节点为对其各个子节点进行聚合所得到的聚合点,空间树中任意一个非叶子节点的节点都记录有聚合数值,聚合数值为以该节点为根节点的树形结构的所有叶子节点的个数。
基于第一聚合子单元所得到的空间树,上述投影单元可以包括:
第一投影子单元,用于确定所述电子地图的比例尺的当前缩放等级数;
第二投影子单元,用于根据所述当前缩放等级数,在所述空间树中确定对应的层级;
第三投影子单元,用于将确定的对应的层级的节点投影到所述电子地图上,并在电子地图中标记投影节点的聚合数值。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术 语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。