CN107917716A - 固定线路导航方法、装置、终端及计算机可读存储介质 - Google Patents
固定线路导航方法、装置、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107917716A CN107917716A CN201810002107.8A CN201810002107A CN107917716A CN 107917716 A CN107917716 A CN 107917716A CN 201810002107 A CN201810002107 A CN 201810002107A CN 107917716 A CN107917716 A CN 107917716A
- Authority
- CN
- China
- Prior art keywords
- section
- sub
- speed
- distance
- mobile object
- 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
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
Abstract
本发明公开了固定线路导航方法、装置、设备及计算机可读存储介质,方法包括:当导航过程中检测不到GPS信号时获取当前最新的查询对象位置信息,并保存当前的导航路线信息;根据查询对象位置信息和导航路线信息,循环利用改进kNN算法计算当前路面的驾驶速度;其利用kNN算法计算当前路面的驾驶速度,包括:根据当前查询对象位置信息,利用基于固定路线的kNN算法确定查询对象所处的子路段,并向用户发送该子路段对应的速度信息;同时根据距离查询对象最近的k个移动对象,计算k个移动对象在指定时间内平均行驶路程作为查询对象的行使路程,并利用平均行驶路程更新终端对应的当前查询对象位置信息;在无GPS信号时准确进行导航。
Description
技术领域
本发明涉及导航技术领域,特别涉及一种固定线路导航方法、装置、终端及计算机可读存储介质。
背景技术
手机导航软件带给人们很大的便利,为人们的出行规划好路线。由于手机接收GPS信号的差异,因此会遇到这样的情况,在同一个地方有些手机GPS信号很弱无法导航,而另一些手机GPS信号却很正常。又或者在城市中使用卫星定位时,因为楼宇、树木和高架桥等的遮挡,手机无法收到卫星的信号。而且在城市环境下使用卫星定位手机位置会产生漂移,有的时候还会无法定位。当在某一个地方手机导航的GPS没有信号时,手机导航软件就会停止更新,只显示当前的页面,因此可能会错过需要经过的路口。
目前为了解决没有GPS信号无法定位导航的问题,采用手机基站进行辅助定位,但是这种方法定位距离越远,脱离GPS信号越久精度越差,而且和运动方式,以及手机种类有关,这种方法需要手机进行大量的计算,这对手机是一个大的消耗。且该方法在高架路以及城市道路等这种复杂的道路上是不可行的。因此,如何在无GPS信号时,准确进行导航,是本领域技术人员需要解决的技术问题。
发明内容
本发明的目的是提供一种固定线路导航方法、装置、终端及计算机可读存储介质,基于实时速度的路网划分聚类方法,并利用kNN算法根据不同路段预测汽车行驶的速度以及对应的行驶路程,利用该行驶路程更新终端位置实现无GPS信号时对终端进行导航。
为解决上述技术问题,本发明提供一种固定线路导航方法,所述方法包括:
当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
根据所述查询对象位置信息所述导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,利用kNN算法计算当前的驾驶速度以及更新当前查询对象位置信息,包括:
根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送所述子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
可选的,所述子路段及对应的所述驾驶速度的计算方式,包括:
将所述导航路线信息中的路口位置作为路节点,利用所述路节点将所述导航路线信息划分为路段的集合;
所述路段中根据不同移动对象的行驶速度将所述路段划分为具有不同行驶速度的若干子路段,并将每个子路段对应的行驶速度作为驾驶速度。
可选的,所述路段中根据不同移动对象的行驶速度将所述路段划分为具有不同行驶速度的若干子路段,包括:
获取子路段内前r个移动对象的初始平均速度,同时将对应路段内的移动对象的速度与所述初始平均速度进行聚类迭代对比,并计算移动对象的速度与所述初始平均速度绝对差值,若所述绝对差值大于所述初始平均速度的预设倍数的移动对象的个数超过预设阈值则停止迭代;其中,所述预设倍数的为大于0小于1的数值;
若停止聚类迭代形成一个子路段,需要将所述子路段中最后一个移动对象的位置作为对应路段的一个子路节点,并把得到的所述子路段的移动对象集合存储到所述子路段中。
可选的,获取子路段内前r个移动对象的初始平均速度,包括:
计算对应路段中各移动对象到右节点的距离,并将所述距离按照升序排序;
选取前r个对象,计算前r个对象的平均速度;其中,r为正整数;
计算前r个对象中最大速度与平均速度的第一绝对差值,并计算前r个对象中最小速度与平均速度的第二绝对差值;
判断第一绝对差值与第二绝对差值的第三绝对差值是否大于平均速度的预设倍数;
若不大于,则返回平均速度作为初始平均速度;
若大于,则判断第一绝对差值是否大于第二绝对差值;若大于则删除所述最大速度对应的移动对象,若不大于则删除所述最小速度对应的移动对象,迭代执行直到所有移动对象的速度满足预设范围,并计算得到的移动对象的平均速度作为初始平均速度。
可选的,所述方法还包括:
当存在新加入的移动对象进入所述路段时,将所述新的移动对象存储到最后一个子路段的对象表中;
当所述新的移动对象的平均速度与所述最后一个子路段对应的平均速度的绝对差值大于平均速度的预设倍数时,所述路段重新进行子路段划分。
可选的,所述方法还包括:
当存在移动对象进入其他子路段时,将所述移动对象从原子路段的对象表中删除。
可选的,查询距离所述终端最近的预设数量的移动对象,包括:
依次比较所述终端到所在子路段的两侧对应的子路段的距离,并选择距离较小的子路段作为候选子路段,直到找到候选子路段中的移动对象的数量大于或等于预设数量时,在对应的候选子路段中找出所述终端的预设数量的最近邻;
比较所述终端与所述两侧对应的非候选子路段的距离,若小于或等于所述最近邻中最远距离,则更新最远的对象,若大于则停止。
本发明还提供一种固定线路导航装置,所述装置包括:
触发模块,用于当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
导航模块,用于根据所述查询对象位置信息所述导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,所述导航模块,包括:
kNN算法单元,用于根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送所述子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
本发明还提供一种固定线路导航设备,所述设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的固定线路导航方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的固定线路导航方法的步骤。
本发明所提供的一种固定线路导航方法,包括:当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;根据查询对象位置信息导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;其中,利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息,包括:根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
可见,该方法的目的在于解决在道路行驶时遇到GPS无信号时如何进行导航的问题,该方法基于汽车实时速度的路网划分聚类方法形成具有驾驶速度的子路段,用于后续利用kNN算法查找行驶汽车的最近邻;在GPS导航无信号时能快速对汽车行驶路线即导航路线进行划分,同时利用kNN算法根据不同路段预测汽车行驶的速度,并查找距离汽车最近的k个最近邻,以k个最近邻的平均行驶路程作为行驶路程,更新终端对应的当前查询对象位置信息;本发明还提供一种固定线路导航装置、设备及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的固定线路导航方法的流程图;
图2为本发明实施例所提供的城市路线图模型化有向加权示意图;
图3为本发明实施例所提供的路段划分子路段结果示意图;
图4为本发明实施例所提供的获取初始平均速度值流程示意图;
图5为本发明实施例所提供的路段划分子路段示意图;
图6为本发明实施例所提供的导航线路中各路段划分子路段分层示意图;
图7为本发明实施例所提供的kNN查询事例示意图;
图8为本发明实施例所提供的具体的固定线路导航方法的流程示意图;
图9为本发明实施例所提供的固定线路导航装置的结构框图。
具体实施方式
本发明的核心是提供一种固定线路导航方法,实现在无GPS信号时准确进行导航。本发明的另一核心是提供一种固定线路导航装置、终端及计算机可读存储介质。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的固定线路导航方法的流程图;该方法的执行主体可以是服务器,该方法可以包括:
S100、当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
具体的,在导航过程中能够检测到GPS信号时,首先在百度地图或者其他导航软件的服务器中存储已经计算好的路线图即导航路线信息,根据导航路线信息中规划的导航路线图进行导航行驶,同时记录该终端的实时位置数据即实时记录查询对象位置信息,进一步本实施例中的导航路线信息也会根据终端当前位置数据,只存储当前位置到终点位置这一段距离的实时数据作为当前对应的导航路线信息。当然也可以就保存起始位置到终点位置的导航路线信息,只是后续在进行无GPS信号时的导航时,需要根据获取的当前最新的查询对象位置信息来确认,当前位置到终点位置这一段距离的导航路线信息。
当系统检测到GPS无信号时就会启动本实施例提供的方式进行无GPS信号时的导航。因此此时需要获取的参数为当前最新的查询对象位置信息(即在检测不到GPS信号之前系统所存储的最新的查询对象位置信息),以及保存的导航路线信息(即在检测不到GPS信号之前系统所存储的最新的当前位置到终点位置的导航路线信息)。
步骤S110即根据当前终端最新的查询对象位置信息,以及保存的最新的导航路线信息来进行无GPS信号时的导航。
S110、根据查询对象位置信息导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息,包括:
根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
其中,本实施例首先要根据最新的导航路线信息确定查询对象所处的子路段,并向终端发送系统中记录的该子路段对应的驾驶速度(一般都是该子路段中移动对象对应的平均速度)以使汽车按照该驾驶速度进行行驶。这样系统就可以根据该速度以及时间确定当前终端应该处于的位置信息。
本实施例并不限定具体k的具体数值,k为正整数,以及指定时间的具体数值。一般来说指定时间的数值一般不大。
本实施例中基于汽车实时速度的路网划分聚类方法形成具有驾驶速度的子路段。具体过程可以如下:
请参考图2,由于服务器中已经存储导航路线信息即汽车需要行驶的线路图,以及经过各个路口的位置。根据路线图中各个路口的位置进行建模,把城市路线图建模为一个有向图,称每个路口为一个路节点。将行驶路线图建模为一个有向加权图G=<V,E>,其中V是一组路节点的集合,E是一组路段的集合。每个路段(u,v)∈E(u,v∈V)有一个权重,表示从节点u到节点v之间的距离。
其中,移动对象:在行驶路段上移动的每个对象(例如,汽车)由m=(p,t,s)表示,其中p是在时间t时m的地理位置,s是在时间t时m的速度。
对象表:对于每个路节点,都有一个对象表C,表中每个项用(m,d)表示,其中m表示汽车对象,d表示偏移量(例如移动对象(可以简称为对象)到路节点的欧式距离),对象表中的元素按照到路节点的远近进行排序。
路节点:将每个路口模型化为一个路节点,每个路节点(RoadNode)需要保存该节点的位置和当前时间,一个对象表、该路段的平均速度、该路段的限速。如图2所示在节点2中,可以存储节点1到节点2这一段路程汽车的平均速度,以及该路段的最高限速,同时存储一个对象表。称整个路线的第一个节点为起始节点,最后一个节点为终止节点。起始节点是需要进行查询的对象(图中节点1)只存储当前时刻的速度和位置。
路段:每两个相邻的路节点的边称为一个路段,所要行驶的路程是由节点之间的路段累加起来的。同时每个路段上的信息存储在右边的路节点上,如图所示,路段E1=<V1,V2>,该路段的信息存储在路节点2(即V2)。
在上述有向图的基础上对每个路段按照速度划分为各个子路段。使得每个子路段都具有其对应的驾驶速度。具体的,即将导航路线信息中的路口位置作为路节点,利用路节点将导航路线信息划分为路段的集合;根据路段中不同移动对象的行驶速度将路段划分为具有不同行驶速度的若干子路段,并将每个子路段对应的行驶速度作为驾驶速度。
本实施例中并不限定每个子路段对应的行驶速度的计算标准,例如可以是平均速度,也可以是按照该子路段内的移动对象的速度众数获取的行驶速度。优选的,为了计算方便准确,一般情况下可以选择每个子路段对应的各个移动对象的平均行驶速度作为驾驶速度。
进一步,为了得到的子路段更加精确,优选的,本实施例根据路段中不同移动对象的行驶速度将路段划分为具有不同行驶速度的若干子路段可以包括:
获取子路段内前r个移动对象的初始平均速度,同时将对应路段内的移动对象的速度与初始平均速度进行聚类迭代对比,并计算在移动对象的速度与初始平均速度绝对差值,若所述绝对差值大于初始平均速度的预设倍数的移动对象的个数超过预设阈值则停止迭代;
若停止聚类迭代形成一个子路段,同时需要将子路段中最后一个移动对象的位置作为对应路段的一个子路节点,并把得到的子路段的移动对象集合存储到子路段中。
具体的,本实施例中对应路段内的移动对象的速度与初始平均速度进行聚类迭代对比。即请参考图3,若是速度1对应的子路段时,其对应路段内的移动对象即为该路段内的全部移动对象,速度2对应的子路段时,其对应路段内的移动对象即为该路段内的排除速度1对应的子路段的移动对象后的移动对象,即速度2对应的子路段的右边起始点到节点V1。
优选的,获取移动对象的初始平均速度可以包括:
计算对应路段中各移动对象到右节点的距离,并将距离按照升序排序;
选取前r个对象,计算前r个对象的平均速度;其中,r为正整数;
计算前r个对象中最大速度与平均速度的第一绝对差值,并计算前r个对象中最小速度与平均速度的第二绝对差值;
判断第一绝对差值与第二绝对差值的第三绝对差值是否大于平均速度的预设倍数;
若不大于,则返回平均速度作为初始平均速度;
若大于,则判断第一绝对差值是否大于第二绝对差值;若大于则删除最大速度对应的移动对象,若不大于则删除最小速度对应的移动对象,迭代执行直到所有移动对象的速度满足预设范围,并计算得到的移动对象的平均速度作为初始平均速度。
具体的,请参考图3,速度2对应的子路段的右节点即与速度1对应的子路段之间的虚线的位置。可以理解为一个子路段具有左右两个节点,左节点即汽车进入该子路段的节点,右节点即汽车出该子路段对应的节点。本实施例并不限定具体r的数值。也不限定具体的预设范围。用户可以根据实际情况进行设定和修改。其中所述预设倍数的为大于0小于1的数值。具体过程可以参考图4。
下面请参考图5和图6具体说明上述子路段的划分过程:
由于每个路段中的汽车行驶速度不同,把每个路段按照其速度划分为几个子路段。首先计算每个路段内的元素对象(移动对象)到路节点的距离,然后选择距离路节点最近r个对象(r的大小由系统根据对象数量设定),并计算r个对象的平均速度Vave。同时得到这r个对象中的最大速度Vmax和最小速度Vmin,若Vmax和Vmin之间的绝对差值大于(Vave/4),则分别计算最大值和平均值的绝对差值即Vax(Vax=|Vmax-Vave|),最小值和平均值的绝对差值即Vin(Vin=|Vmin-Vave|),若Vax大于或等于Vin,则从这k个对象中删除速度最大的,反之删除速度最小的。该过程迭代运行,直至所有的速度都能满足在一定的范围,然后运行结果得到对象的一个平均速度Vave。
根据得出的平均速度,把节点中对象的速度依次与平均速度进行比较,选取速度与平均速度的绝对差值小于或等于(Vave/4)的对象,若在此过程节点中对象的速度与平均速度绝对差值大于(Vave/4)的对象的个数大于或等于3个,则停止该进程。同时把最后一个对象的位置作为下一个子路段的分界节点,并把得到的对象集合存储到子节点中。
如图5所示,节点V2是路段的节点,也是其子节点的第一个节点。同时把路段内剩下的对象重新计算到分界节点的距离,并按距离进行排序。按照以上聚类算法迭代运行,直到计算得到的平均速度与该路段的限速差值小于等于(Vave/4),则算法停止。如图5所示节点V1和节点V2的之间的路段,根据聚类方法,把路段分为三个子路段,这三个子路段中相邻子路段的速度不相同。最终导航路线信息形成的子路段的分层图可以看到图6。
进一步,为了提高子路段的划分的准确性以及对应移动对象的实时性。优选的,本实施例还可以包括对移动对象进行更新,以及根据更新后的移动对象对子路段进行更新。
当存在新加入的移动对象时,本实施例还可以包括:
当存在新加入的移动对象进入路段时,将新的移动对象存储到最后一个子路段的对象表中;
当新的移动对象的平均速度与最后一个子路段对应的平均速度的绝对差值大于平均速度的预设倍数时,路段重新进行子路段划分。
具体的,当有新的移动对象进入路段中,由于移动对象都是从后面向前面行驶,因此把这个新的移动对象直接存储在该路段的最后一个子路段中的对象表中,此时并不需要计算距离,只是添加到对象表中。同时计算插入对象的平均速度,若插入这些移动对象的平均速度与该子路段平均速度的差值大于(Vave/4),则该路段会重新进行分裂,即更新该路段的子路段,从而保证在无GPS信号进行导航时的可靠性。
当删除移动对象时,本实施例还可以包括:
当存在移动对象进入其他子路段时,将移动对象从原子路段的对象表中删除。
具体的,当有移动对象进入其他子路段中,要从该子路段的对象表中删除该移动对象。若删除后该子路段没有对象元素,则要把这个子路段与前一个子路段合并。
由于每个路段中都要涉及到频繁的移动对象更新,每个子路段中的对象移动只是需要更新其到该子节点的距离和速度,这个操作的时间复杂度为O(1),因此本实施例可以支持大量的移动对象的更新。当每个子路段中插入的对象的平均速度与该子路段的平均速度的差值大于(Vave/4)时,则该路段会重新进行分段。同时也可以设定更新时间,即每隔一段时间,需要对路段重新进行分段。从而保证子路段划分的可靠性,进而保证无GPS导航的准确性。
本实施例中利用KNN算法计算终端的当前的驾驶速度以及当前查询对象位置信息具体可以包括:
依次比较终端到所在子路段的两侧对应的子路段的距离,并选择距离较小的子路段作为候选子路段,直到找到候选子路段中的移动对象的数量大于或等于预设数量时,在对应的候选子路段中找出终端的预设数量的最近邻;
比较终端与两侧对应的非候选子路段的距离,若小于或等于最近邻中最远距离,则更新最远的对象,若大于则停止。
具体的,首选要计算候选子路段,把每个路段内的移动对象按照其速度进行聚类,聚类完成之后以此为索引进行knn的查询。当移动对象在起始节点,选择其前面路段的距离查询对象最近一个子路段,把子路段内的对象作为其最近邻。若其子路段的对象少于k个,则选择相邻的一个子路段,直至找到其k个最近邻。本实施例k的具体数值,k为正整数。
然后确定最终搜索区域,若查询对象的位置不在起始节点,如果查询对象在子路段中,则自动为一个候选子路段并将对象插入列表H中。若中的对象(即移动对象)数量大于或等于k个,找出距离查询对象最近的k个最近邻,并计算这k个最近邻中距离查询对象q最远的一个对象距离dis。同时计算查询对象q到下一个子路段中最后一个对象的距离和上一个子路段中第一个对象的距离,计算得出的距离与dis比较,若小于dis,则把该对象替换最远距离的对象。同时继续计算这k个对象中的最远距离,继续比较,直到所得到的距离都大于或等于dis,则算法结束。如图7所示,假如设置k值为3,子路段中的对象数等于k=3,则计算得出这三个对象中距离查询q最远的一个对象,同时计算查询q到下一个子路段中最后一个对象O6的距离,以及q到上一个子路段中的第一个对象O1的距离。子路段中O3距离q最远,但是其距离小于q到子路段中O6的距离,因此子路段中的对象就是查询对象q的最近邻。
假设预设数量的值为5,子路段中对象少于5个,需要计算查询对象q到子路段中对象O6的距离与q到中对象O1的距离相比较,选择距离较小的,如图7所示查询对象q到子路段中O6的距离为24.2,小于q到中对象O1的距离(距离为26.5)。由于查询对象q到子路段中O6的距离较小,所以将的对象添加到列表H中,若列表H中的对象数大于或等于5个,则计算列表H中距离查询对象q最近5个最近邻,并在这5个最近邻对象中找出距离最远的一个,其最远距离为dis。同时比较相邻子路段到查询对象q的距离,如图7所示,在子路段和中找出q的5个最近邻,这5个最近邻为中的{O1,O2,O3},以及中的{O6,O5}。由于位于子路段右边的其他子路段中不存在大于dis的距离,所以考虑位于左边的子路段中的对象。计算查询对象到子路段中第一个对象O1的距离,若小于dis则将子路段中的这个对象替换最远对象,以此迭代比较,直到计算查询对象到子路段中对象的距离大于或等于dis。
本实施例首先把已经规划好的导航线路进行分段,每个路口是一个节点。汽车要行驶的路程就是若干个路段累加起来。对于每一个路段都按照路段聚类算法以速度为基础进行划分,把每一个路段划分成若干个子路段,同一路段的相邻子路段的平均速度不相同。循环使用聚类算法,直至所有路段都被划分。待所有的路段完成划分以后,合并相邻路段中平均速度相同的相邻子路段。
当开车行驶时,遇到GPS无信号,系统启动这个聚类算法就会对该路径进行聚类,同时根据系统记录最后一次定位的数据,根据定位的信息确定当前在该路段所属的子路段时,系统会推荐一个速度,该速度就是这个子路段的平均速度,同时手机会记录行驶的路程,并把路程的数据回传到服务器中,若汽车驶过该子路段,进入下一个子路段,则系统会自动推送该下一个子路段的平均速度,汽车可以参照系统推荐的速度行驶,这样在没有GPS信号定位的情况下也能继续行驶,不会错过重要的路口。当子路段的车流量变化很大时每隔一段时间路径就会更新重新划分,或者当路段添加车辆的平均速度与实时平均速度差值较大,该路径也会重新分段。具体请参考图8。其中,查询对象定位即获取当前最新的查询对象位置信息。按照时间更新各路段的子路段,包括对路段的重新划分以及各子路段的移动对象的更新。距离更新即按照平均行驶距离更新查询对象位置信息。
基于上述技术方案,本发明实施例的固定线路导航方法,基于道路网中的移动对象速度对路线进行划分,把固定路线依据不同移动对象的速度划分成不同的路段,能快速更新移动对象的位置,减少处理器的更新消耗;利用kNN查询,能够快速返回查询对象的k个精确最近邻对象,保证用户在无GPS信号时手机导航也能工作,同时减少计算量。
下面对本发明实施例提供的固定线路导航装置、终端及计算机可读存储介质进行介绍,下文描述的固定线路导航装置、终端及计算机可读存储介质与上文描述的固定线路导航方法可相互对应参照。
请参考图9,图9为本发明实施例所提供的固定线路导航装置的结构框图该装置可以包括:
触发模块100,用于当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
导航模块200,用于根据查询对象位置信息导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,导航模块200可以包括:
kNN算法单元,用于根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段并向终端发送子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
需要说明的是,基于上述任意实施例,所述装置可以是基于可编程逻辑器件实现的,可编程逻辑器件包括FPGA,CPLD,单片机等。
本发明实施例还提供一种固定线路导航设备,设备包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述实施例所述的固定线路导航方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述实施例所述的固定线路导航方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的一种固定线路导航装置、终端及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种固定线路导航方法,其特征在于,所述方法包括:
当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
根据所述查询对象位置信息所述导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息,包括:
根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送所述子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
2.根据权利要求1所述的方法,其特征在于,所述子路段及对应的所述驾驶速度的计算方式,包括:
将所述导航路线信息中的路口位置作为路节点,利用所述路节点将所述导航路线信息划分为路段的集合;
所述路段中根据不同移动对象的行驶速度将所述路段划分为具有不同行驶速度的若干子路段,并将每个子路段对应的行驶速度作为驾驶速度。
3.根据权利要求2所述的方法,其特征在于,所述路段中根据不同移动对象的行驶速度将所述路段划分为具有不同行驶速度的若干子路段,包括:
获取子路段内前r个移动对象的初始平均速度,同时将对应路段内的移动对象的速度与所述初始平均速度进行聚类迭代对比,并计算移动对象的速度与所述初始平均速度绝对差值,若所述绝对差值大于所述初始平均速度的预设倍数的移动对象的个数超过预设阈值则停止迭代;其中,所述预设倍数的为大于0小于1的数值;
若停止聚类迭代形成一个子路段,需要将所述子路段中最后一个移动对象的位置作为对应路段的一个子路节点,并把得到的所述子路段的移动对象集合存储到所述子路段中。
4.根据权利要求3所述的方法,其特征在于,获取子路段内前r个移动对象的初始平均速度,包括:
计算对应路段中各移动对象到右节点的距离,并将所述距离按照升序排序;
选取前r个对象,计算前r个对象的平均速度;其中,r为正整数;
计算前r个对象中最大速度与平均速度的第一绝对差值,并计算前r个对象中最小速度与平均速度的第二绝对差值;
判断第一绝对差值与第二绝对差值的第三绝对差值是否大于平均速度的预设倍数;
若不大于,则返回平均速度作为初始平均速度;
若大于,则判断第一绝对差值是否大于第二绝对差值;若大于则删除所述最大速度对应的移动对象,若不大于则删除所述最小速度对应的移动对象,迭代执行直到所有移动对象的速度满足预设范围,并计算得到的移动对象的平均速度作为初始平均速度。
5.根据权利要求1所述的方法,其特征在于,还包括:
当存在新的移动对象进入所述路段时,将所述新的移动对象存储到最后一个子路段的对象表中;
当所述新加入移动对象的平均速度与所述最后一个子路段对应的平均速度的绝对差值大于平均速度的预设倍数时,所述路段重新进行子路段划分。
6.根据权利要求5所述的方法,其特征在于,还包括:
当存在移动对象进入其他子路段时,将所述移动对象从原子路段的对象表中删除。
7.根据权利要求1-6任一项所述的方法,其特征在于,查询距离所述终端最近的预设数量的移动对象,包括:
依次比较所述终端到所在子路段的两侧对应的子路段的距离,并选择距离较小的子路段作为候选子路段,直到找到候选子路段中的移动对象的数量大于或等于预设数量时,在对应的候选子路段中找出所述终端的预设数量的最近邻;
比较所述终端与所述两侧对应的非候选子路段的距离,若小于或等于所述最近邻中最远距离,则更新最远的对象,若大于则停止。
8.一种固定线路导航装置,其特征在于,所述装置包括:
触发模块,用于当导航过程中检测不到GPS信号时,获取当前最新的查询对象位置信息,以及保存当前的导航路线信息;
导航模块,用于根据所述查询对象位置信息所述导航路线信息,循环利用kNN算法计算当前路面的驾驶速度以及更新当前查询对象位置信息;
其中,所述导航模块,包括:
kNN算法单元,用于根据当前查询对象位置信息,利用基于固定路线划分的kNN算法确定查询对象所处的子路段,并向终端发送所述子路段对应的驾驶速度;同时查询距离查询对象最近k个移动对象,计算k个移动对象的平均行驶路程作为查询对象的行驶路程,并利用平均行驶路程更新当前查询对象位置信息。
9.一种固定线路导航设备,其特征在于,所述设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1-7任一项所述的固定线路导航方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的固定线路导航方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810002107.8A CN107917716B (zh) | 2018-01-02 | 2018-01-02 | 固定线路导航方法、装置、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810002107.8A CN107917716B (zh) | 2018-01-02 | 2018-01-02 | 固定线路导航方法、装置、终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107917716A true CN107917716A (zh) | 2018-04-17 |
CN107917716B CN107917716B (zh) | 2021-07-06 |
Family
ID=61894677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810002107.8A Expired - Fee Related CN107917716B (zh) | 2018-01-02 | 2018-01-02 | 固定线路导航方法、装置、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107917716B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110536247A (zh) * | 2019-07-22 | 2019-12-03 | 深圳壹账通智能科技有限公司 | 查勘员位置同步方法、装置、计算机设备及存储介质 |
CN111486857A (zh) * | 2019-01-28 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 一种路网预测树构建方法、装置、电子设备及存储介质 |
CN113865590A (zh) * | 2021-09-03 | 2021-12-31 | 北京中交兴路信息科技有限公司 | 一种基于厂区运单绑定固定路线的导航方法、装置及介质 |
CN116972870A (zh) * | 2023-09-21 | 2023-10-31 | 南京遇简信息科技有限公司 | 基于计算机图像识别的道路导航增强方法、系统及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230021813A1 (en) * | 2021-07-21 | 2023-01-26 | Wejo Limited | Data product generation and production based on resegmenting and/or merging road segments |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101298989A (zh) * | 2008-06-25 | 2008-11-05 | 嘉兴闻泰通讯科技有限公司 | 一种弥补gps系统无法定位、跟踪和导航的方法和系统 |
CN102023305A (zh) * | 2010-08-05 | 2011-04-20 | 深圳市赛格导航科技股份有限公司 | 一种定位方法、装置及车载终端 |
CN103162689A (zh) * | 2011-12-16 | 2013-06-19 | 希姆通信息技术(上海)有限公司 | 辅助车载定位系统及车辆的辅助定位方法 |
CN103235831A (zh) * | 2013-05-15 | 2013-08-07 | 西南大学 | 基于路网的移动对象位置索引结构及索引方法 |
CN103473248A (zh) * | 2012-12-17 | 2013-12-25 | 东北大学 | 一种路网环境下的连续移动k近邻查询方法 |
CN103544291A (zh) * | 2013-10-29 | 2014-01-29 | 东北林业大学 | 道路网络中基于RRN-Tree的移动对象CKNN查询方法 |
CN107239488A (zh) * | 2017-04-21 | 2017-10-10 | 广东工业大学 | 一种在DSI索引结构中基于移动对象的k‑NN连续查询方法 |
CN107291963A (zh) * | 2017-08-14 | 2017-10-24 | 海南师范大学 | 一种路网移动环境下的knn查询方法及系统 |
CN107341193A (zh) * | 2017-06-14 | 2017-11-10 | 中国神华能源股份有限公司 | 路网中移动对象查询方法 |
-
2018
- 2018-01-02 CN CN201810002107.8A patent/CN107917716B/zh not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101298989A (zh) * | 2008-06-25 | 2008-11-05 | 嘉兴闻泰通讯科技有限公司 | 一种弥补gps系统无法定位、跟踪和导航的方法和系统 |
CN102023305A (zh) * | 2010-08-05 | 2011-04-20 | 深圳市赛格导航科技股份有限公司 | 一种定位方法、装置及车载终端 |
CN103162689A (zh) * | 2011-12-16 | 2013-06-19 | 希姆通信息技术(上海)有限公司 | 辅助车载定位系统及车辆的辅助定位方法 |
CN103473248A (zh) * | 2012-12-17 | 2013-12-25 | 东北大学 | 一种路网环境下的连续移动k近邻查询方法 |
CN103235831A (zh) * | 2013-05-15 | 2013-08-07 | 西南大学 | 基于路网的移动对象位置索引结构及索引方法 |
CN103544291A (zh) * | 2013-10-29 | 2014-01-29 | 东北林业大学 | 道路网络中基于RRN-Tree的移动对象CKNN查询方法 |
CN107239488A (zh) * | 2017-04-21 | 2017-10-10 | 广东工业大学 | 一种在DSI索引结构中基于移动对象的k‑NN连续查询方法 |
CN107341193A (zh) * | 2017-06-14 | 2017-11-10 | 中国神华能源股份有限公司 | 路网中移动对象查询方法 |
CN107291963A (zh) * | 2017-08-14 | 2017-10-24 | 海南师范大学 | 一种路网移动环境下的knn查询方法及系统 |
Non-Patent Citations (2)
Title |
---|
周长利等: "路网环境下保护LBS位置隐私的连续KNN查询方法", 《计算机研究与发展》 * |
赵亮等: "道路网中的移动对象连续K近邻查询", 《计算机学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111486857A (zh) * | 2019-01-28 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 一种路网预测树构建方法、装置、电子设备及存储介质 |
CN111486857B (zh) * | 2019-01-28 | 2024-04-09 | 阿里巴巴集团控股有限公司 | 一种路网预测树构建方法、装置、电子设备及存储介质 |
CN110536247A (zh) * | 2019-07-22 | 2019-12-03 | 深圳壹账通智能科技有限公司 | 查勘员位置同步方法、装置、计算机设备及存储介质 |
CN113865590A (zh) * | 2021-09-03 | 2021-12-31 | 北京中交兴路信息科技有限公司 | 一种基于厂区运单绑定固定路线的导航方法、装置及介质 |
CN116972870A (zh) * | 2023-09-21 | 2023-10-31 | 南京遇简信息科技有限公司 | 基于计算机图像识别的道路导航增强方法、系统及介质 |
CN116972870B (zh) * | 2023-09-21 | 2023-12-15 | 南京遇简信息科技有限公司 | 基于计算机图像识别的道路导航增强方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107917716B (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107917716A (zh) | 固定线路导航方法、装置、终端及计算机可读存储介质 | |
JP3987877B2 (ja) | 地図情報更新装置および地図情報更新方法 | |
CN104677364B (zh) | 创建包含交叉点的通行时间的地图数据的方法 | |
JP5291935B2 (ja) | オブジェクトの将来の動きを予測するための装置および方法 | |
CN102810118B (zh) | 一种变权网k近邻搜索方法 | |
US6216088B1 (en) | Method for determining itinerary data | |
JP4045303B2 (ja) | 地図情報更新装置および地図情報更新方法 | |
CN102243811B (zh) | 车辆导航系统及推荐路径检索方法 | |
EP2491345A1 (en) | Incremental map generation, refinement and extension with gps traces | |
CN107270925B (zh) | 一种用户车辆导航系统、装置及方法 | |
CN105091890A (zh) | 用于推荐候选路径的方法和装置 | |
CN103542858A (zh) | 车辆到达目标能力评估方法,数据库生成方法、导航系统 | |
CN101358856A (zh) | 导航装置、导航方法及导航系统 | |
CN206961119U (zh) | 一种智能驾驶汽车运营系统和高精度地图的分布式存储系统 | |
CN109523781B (zh) | 一种基于卫星定位的路口预测方法 | |
JPH11272983A (ja) | 経路計画装置,到着時間予測装置,走行記録保存装置および経路計画/到着時間予測システム | |
CN112927513A (zh) | 一种实时在线交通仿真方法及系统 | |
CN111862590A (zh) | 路况预测方法、装置及存储介质 | |
CN114485706A (zh) | 一种路线规划方法、装置、存储介质及电子设备 | |
JP6912859B2 (ja) | 地図更新装置、地図更新方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体 | |
JP6379943B2 (ja) | 移動経路統合方法、装置、及びプログラム | |
CN116194935B (zh) | 用于确定地理区域中的车辆的导航简档的方法和设备 | |
CN112766606B (zh) | 交通路线的规划方法、装置、设备及计算机可读存储介质 | |
CN105701555A (zh) | 用于划分路网的方法和系统 | |
León et al. | Improvements of a topological map-matching algorithm in post-processing mode |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210706 Termination date: 20220102 |
|
CF01 | Termination of patent right due to non-payment of annual fee |