一种轨迹查询方法、系统及装置制造方法及图纸

技术编号:18940580 阅读:33 留言:0更新日期:2018-09-15 11:05
本申请实施例公开了一种轨迹查询方法、系统和装置。所述方法包括:匹配历史轨迹数据和道路网的路段数据,建立路段与历史轨迹之间的映射关系;根据路段数据生成以所述路段数据为空间对象的路网索引;根据路段数据,计算查询点到各个路段的距离;确定待选轨迹所属的候选集,包括:对每个查询点,使用路网索引查找距离最近的一条或多个路段,将与所述最近的一条或多条路段相映射的历史轨迹放入查询点的子候选集中,直至子候选集的交集中存在至少K条历史轨迹;将子候选集合并为候选集;选取候选集中与所述查询点的距离和最小的K条历史轨迹。这种方式能够提高轨迹查询的效率和准确度。

A track query method, system and device

The application embodiment discloses a track inquiry method, system and device. The method includes: matching the historical track data and the road segment data of the road network, establishing the mapping relationship between the road segment and the historical track; generating the road network index with the road segment data as the spatial object according to the road segment data; calculating the distance from the query point to each road segment according to the road segment data; and determining the waiting time of the selected track. Selection, including: for each query point, using the road network index to find one or more of the nearest segments, and putting the historical trajectory mapped to the nearest or more segments into the subset of query points until at least K historical trajectories exist in the intersection of subsets; and turning the subset of candidates into candidate sets. Select the distance between the candidate set and the query point and the minimum K track. This way can improve the efficiency and accuracy of track query.

【技术实现步骤摘要】
一种轨迹查询方法、系统及装置
本申请涉及导航
,尤其涉及一种轨迹查询方法、系统及装置。
技术介绍
给定多个查询点,在历史轨迹中找到与这些查询点的距离的和最小的一条或多条轨迹,是多点轨迹查询方法所要解决的问题。其中,所述轨迹可以是动物的行动轨迹或者交通工具的行驶轨迹。例如旅游过程中,游客希望在一天内游览多个景点,如果将这些景点作为查询点,多点轨迹查询就是从历史行驶路线中找到距离这些景点最近的一条或多条行驶路线,从而帮助游客进行路线规划。多点轨迹查询方法中,历史轨迹由在动物或交通工具行动或行驶过程中实时采集的GPS位置信息组成。基于采集的历史轨迹数据,多点轨迹查询方法通常分为两个步骤:先通过查询算法确定离查询点最近,也就是与查询点的距离的和最小的一条或多条轨迹所在的候选集,所述候选集为历史轨迹数据集合的子集;然后对候选集中的每条轨迹,计算其到各个查询点的距离和,将各个轨迹按所述距离和从小到大排列,选取最小的前K条历史轨迹,作为最终结果。其中,查询算法是多点轨迹查询方法的重点。现有的多点轨迹查询算法主要包括IKNN(Incrementalk-NNbasedAlgorithm,扩展的K近邻算法)、GH(GlobalHeap,全局堆)和SRA(SpatialRange-basedApproach,基于空间区域的算法)。其中,IKNN构建以轨迹为结点的R树空间索引,使用扩展的K近邻算法在R树中进行搜索,确定离查询点最近的K条历史轨迹所在的候选集。IKNN中,扩展的K近邻算法以查询点与轨迹之间的相似度为搜索距离:上式中m为查询点个数,Q是查询点的集合,T是一条轨迹,e是自然常数,Dist(qi,T)是查询点qi到轨迹T的欧氏距离,相似度会越大,查询点距离轨迹越近。GH对每个查询点qi都建立一个独立堆,独立堆中含有该查询点和所有轨迹点组成的二元组,并使其按照轨迹点到查询点的距离从小到大排列,再选择其中距离最小的二元组,以此为基础建立一个全局堆,然后以全局堆为索引基础进行搜索,确定离查询点最近的K条历史轨迹所在的候选集。GH中的搜索距离是查询点到轨迹Tx的欧式距离的累加:SRA构建以轨迹为结点的R树空间索引,基于轨迹R树进行空间区域搜索,来确定离查询点最近的K条历史轨迹所在的候选集,其所使用的搜索距离与GH所使用的搜索距离相同。但是,现有的多点轨迹查询算法都是基于查询点到轨迹的欧氏距离进行搜索,查询点到轨迹的欧氏距离根据轨迹的GPS(GlobalPositioningSystem,全球定位系统)数据计算,由于GPS数据与真实位置数据之间存在偏移,查询点到轨迹的欧氏距离也将偏移查询点到实际轨迹的真实距离,产生很大的计算误差,导致查询准确度降低。再者,现有的多点轨迹查询方法都是基于轨迹构造空间索引,把所有轨迹的GPS点放在一个R树下或者堆中,由于轨迹和轨迹点数量众多,索引结构将非常庞大,导致索引速度慢,查询效率低。
技术实现思路
本申请提供了一种轨迹查询方法、系统及装置,以解决现有技术中轨迹查询效率低的问题。第一方面,本申请提供了一种轨迹查询方法,该方法包括:匹配历史轨迹数据和道路网的路段数据,建立路段与历史轨迹之间的映射关系,所述路段为道路网中两个相邻节点之间的线路,所述历史轨迹数据由动物或交通工具沿道路行动的历史GPS位置数据组成;根据所述路段数据生成路网索引,所述路网索引为以所述路段数据为空间对象的空间索引;确定待选轨迹所属的候选集C,包括:对每个查询点qi,使用所述路网索引查找距离qi最近的一条或多个路段,将与所述离qi最近的一条或多条路段相映射的历史轨迹放入查询点qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹,其中,K为预设值,i取区间[1,m]中的所有自然数,m为所述查询点的个数,所述查询点为待选轨迹经过或从旁边经过的位置点,所述查询点预先给定,所述待选轨迹为与所述查询点的距离和最小的一条或多条历史轨迹;将Ci合并为所述候选集C;选取所述候选集C中与所述查询点的距离和最小的K条历史轨迹。采用本实现方式,引入道路网数据,将历史轨迹数据与道路网的路段数据匹配,得到路段与轨迹的映射关系,并生成以路段数据为空间对象的空间索引,在此空间索引中查询距离查询点最近的多个路段,再根据路段与历史轨迹的映射关系,进一步计算得到距离查询点最近的一条或多条历史轨迹。相比于现有技术中以历史轨迹为结点的空间索引,本实现方式中空间索引以路段数据为空间对象,数据体量更小,结构更简洁,能够大大提高轨迹查询效率,而且,由于路段数据是精确的,在空间索引中根据查询点与路段的距离进行搜索,相比现有技术中根据查询点与历史轨迹的距离进行搜索,具有更高的准确度。结合第一方面,在第一方面第一种可能的实现方式中,所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次相映射的历史轨迹使用所述路网索引查找除相映射的历史轨迹已放入Ci的路段之外距离qi最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹;若是,将Ci合并为所述候选集C。采用本实现方式,基于查询点与路段的距离,使用以路段为空间对象的路网索引进行查询,逐步对子候选集进行扩展,相比现有技术具有更高的准确度和效率。结合第一方面,在第一方面第二种可能的实现方式中,所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次选取轨迹条数最少的子候选集Cj(min),使用所述路网索引查找除相映射的历史轨迹已放入Cj(min)的路段之外距离qj最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述子候选集Cj(min),直至Ci的交集中存在至少K条历史轨迹,Cj(min)为qj的子候选集;若是,将Ci合并为所述候选集C;其中,j为在[1,m]区间的自然数。采用本实现方式,每次只对当前轨迹条数最少的子候选集进行扩展,相比每次对所有子候选集进行扩展,具有更高的查询效率。结合第一方面,在第一方面第三种可能的实现方式中,所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的一个或多个路段,将与所述距离qi最近的一个或多个路段相映射的总共λ条历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次计算λ=λ+Δ,使用所述路网索引查找距离qj最近的一个或多个路段,将与所述距离qi最近的一个或多个路段相映射的总共λ条历史轨迹放入qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹;若是,将Ci合并为所述候选集C;其中,λ和Δ预先设定。采用本实现方式,利用轨迹数λ来控制子候选集的扩展,在λ足够大的情况下,扩展速度有可能相比根据距离增量扩展的方式更快。结合第一方面,在第一方面第四种可能的实现方式中,所述方法还包括:根据所述路段和所述历史轨迹之本文档来自技高网
...

【技术保护点】
1.一种轨迹查询方法,其特征在于,所述方法包括:匹配历史轨迹数据和道路网的路段数据,建立路段与历史轨迹之间的映射关系,所述路段为道路网中两个相邻节点之间的线路,所述历史轨迹数据由动物或交通工具沿道路行动的历史GPS位置数据组成;根据所述路段数据生成路网索引,所述路网索引为以所述路段数据为空间对象的空间索引;确定待选轨迹所属的候选集C,包括:对每个查询点qi,使用所述路网索引查找距离qi最近的一条或多个路段,将与所述离qi最近的一条或多条路段相映射的历史轨迹放入查询点qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹,其中,K为预设值,i取区间[1,m]中的所有自然数,m为所述查询点的个数,所述查询点为待选轨迹经过或从旁边经过的位置点,所述查询点预先给定,所述待选轨迹为与所述查询点的距离和最小的一条或多条历史轨迹;将Ci合并为所述候选集C;选取所述候选集C中与所述查询点的距离和最小的K条历史轨迹。

【技术特征摘要】
1.一种轨迹查询方法,其特征在于,所述方法包括:匹配历史轨迹数据和道路网的路段数据,建立路段与历史轨迹之间的映射关系,所述路段为道路网中两个相邻节点之间的线路,所述历史轨迹数据由动物或交通工具沿道路行动的历史GPS位置数据组成;根据所述路段数据生成路网索引,所述路网索引为以所述路段数据为空间对象的空间索引;确定待选轨迹所属的候选集C,包括:对每个查询点qi,使用所述路网索引查找距离qi最近的一条或多个路段,将与所述离qi最近的一条或多条路段相映射的历史轨迹放入查询点qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹,其中,K为预设值,i取区间[1,m]中的所有自然数,m为所述查询点的个数,所述查询点为待选轨迹经过或从旁边经过的位置点,所述查询点预先给定,所述待选轨迹为与所述查询点的距离和最小的一条或多条历史轨迹;将Ci合并为所述候选集C;选取所述候选集C中与所述查询点的距离和最小的K条历史轨迹。2.如权利要求1所述的轨迹查询方法,其特征在于,所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次相映射的历史轨迹使用所述路网索引查找除相映射的历史轨迹已放入Ci的路段之外距离qi最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹;若是,将Ci合并为所述候选集C。3.如权利要求1所述的轨迹查询方法,其特征在于所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次选取轨迹条数最少的子候选集Cj(min),使用所述路网索引查找除相映射的历史轨迹已放入Cj(min)的路段之外距离qj最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述子候选集Cj(min),直至Ci的交集中存在至少K条历史轨迹,Cj(min)为qj的子候选集;若是,将Ci合并为所述候选集C;其中,j为在[1,m]区间的自然数。4.如权利要求1所述的轨迹查询方法,其特征在于,所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的一个或多个路段,将与所述距离qi最近的一个或多个路段相映射的总共λ条历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次计算λ=λ+Δ,使用所述路网索引查找距离qj最近的一个或多个路段,将与所述距离qi最近的一个或多个路段相映射的总共λ条历史轨迹放入qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹;若是,将Ci合并为所述候选集C;其中,λ和Δ预先设定。5.如权利要求1所述的轨迹查询方法,其特征在于,所述方法还包括:根据所述路段和所述历史轨迹之间的映射关系,计算得到同时经过r个路段的轨迹集合,将所述轨迹集合标记为冗余,其中,r大于或等于2;所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次将被选路段相映射的与已有轨迹之间标记为冗余的相同轨迹集合之外的历史轨迹,放入所述子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹,所述被选路段为除相映射的历史轨迹已放入Ci的路段之外,使用所述路网索引查找到的距离qi最近的路段,所述已有轨迹为当前所述子候选集Ci中已有的历史轨迹;若是,将Ci合并为所述候选集C。6.如权利要求1所述的轨迹查询方法,其特征在于,所述方法还包括:根据所述路段和所述历史轨迹之间的映射关系,计算得到同时经过r个路段的轨迹集合,将所述轨迹集合标记为冗余,其中,r大于或等于2;所述确定所述待选轨迹所属的候选集C,具体包括:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次选取轨迹条数最少的子候选集Cj(min),将被选路段相映射的与已有轨迹之间标记为冗余的相同轨迹集合之外的历史轨迹,放入子候选集Cj(min)中,直至Ci的交集中存在至少K条历史轨迹,所述被选路段为除相映射的历史轨迹已放入Cj(min)的路段之外,使用所述路网索引查找到的距离qj最近的路段,所述已有轨迹为当前所述子候选集Cj(min)中已有的历史轨迹;若是,将Ci合并为所述候选集C;其中,j为在[1,m]区间的自然数。7.如权利要求1至6任一项所述的轨迹查询方法,其特征在于,所述选取所述候选集C中与查询点的距离和最小的K条历史轨迹,包括:计算所述候选集C中历史轨迹Tj与查询点之间的距离其中,Q为查询点的集合,Dist(qi,Tj)为历史轨迹Tj所经过的距离查询点qi最近的路段与查询点qi的距离;按距离Dist(Q,Tj)从小到大的顺序选取前K条历史轨迹;其中,j取区间[1,n]中的所有自然数,n为所述候选集C中轨迹的条数。8.一种轨迹查询系统,其特征在于,所述系统包括:道路网路段数据接收单元,用于接收道路网的路段数据,其中,所述路段为道路网中两个相邻节点之间的线路;历史轨迹数据接收单元,用于接收采集的历史轨迹数据,其中,所述历史轨迹数据由动物或交通工具沿道路行动的历史GPS位置数据组成;路网索引生成单元,用于根据所述路段数据生成路网索引,所述路网索引为以所述路段数据为空间对象的空间索引;匹配单元,用于匹配所述道路网的路段数据和所述历史轨迹数据,建立路段与历史轨迹之间的映射关系;候选集确定单元,用于确定待选轨迹所属的候选集C,具体用于:对每个查询点qi,使用所述路网索引查找距离qi最近的一条或多个路段,将与所述离qi最近的一条或多条路段相映射的历史轨迹放入查询点qi的子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹,其中,K为预设值,i取区间[1,m]中的所有自然数,m为所述查询点的个数,所述查询点为待选轨迹经过或从旁边经过的位置点,所述查询点预先给定,所述待选轨迹为与所述查询点的距离和最小的一条或多条历史轨迹;将Ci合并为所述候选集C;轨迹确定单元,用于选取所述候选集C中与所述查询点的距离和最小的K条历史轨迹。9.如权利要求8所述的轨迹查询系统,其特征在于,所述候选集确定单元,具体用于:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci之间的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次使用所述路网索引查找除相映射的历史轨迹已放入Ci的路段之外距离qi最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述子候选集Ci中,直至Ci的交集中存在至少K条历史轨迹;若是,将Ci合并为所述候选集C。10.如权利要求8所述的轨迹查询系统,其特征在于,所述候选集确定单元,具体用于:使用所述路网索引查找距离qi最近的第一路段,将与所述第一路段相映射的历史轨迹放入qi的子候选集Ci中;计算Ci的交集,判断所述交集中是否存在至少K条历史轨迹;若否,则每次选取轨迹条数最少的子候选集Cj(min),使用所述路网索引查找除相映射的历史轨迹已放入Cj(min)的路段之外距离qj最近的路段,将与所述距离qi最近的路段相映射的历史轨迹放入所述...

【专利技术属性】
技术研发人员:袁明轩曾嘉饶卫雄
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1