一种基于公交车数据的路况检测方法及装置与流程

文档序号:12473765阅读:178来源:国知局
一种基于公交车数据的路况检测方法及装置与流程
本发明涉及交通
技术领域
,尤其涉及一种基于公交车数据的路况检测方法及装置。
背景技术
:随着经济的发展和社会的进步,城市规模日益扩大,城镇居民的出行需求也进一步增加,使得困扰各大城市的交通拥堵问题变得更加严峻。交通拥堵不仅使道路通行能力降低、行车速度下降、交通延误增大,还会造成巨大的经济损失。因此,如何及时、准确地获取和发布实时路况,对于交通管理者和出行者都显得非常重要。传统的方式是采用人工上报的方法来确定交通道路中的路况信息,具体过程为:在固定地方安排专门工作人员来实时上报所在道路的路况信息,这种方式成本较高,效率低,而且受人的主观因素影响较大,所以使得上报的数据不太可靠。为了避免上述受人的主观因素影响较大,现有技术中是以地感线圈数据为依据对交通道路中的路况进行检测的,该具体的检测过程如下:在地面上先造出一个圆形的沟槽,直径大概1米,或是面积相当的矩形沟槽,在沟槽中埋入两到三匝导线,这就构成了一个埋于地表的电感线圈。这个线圈是振荡电路的一部分,由它和电容组成振荡电路。振荡信号通过变换送到单片机组成的频率测量电路,便可以测量这个振荡器的频率。当有大的金属物如汽车经过时,由于空间介质发生变化引起了振荡频率的变化(有金属物体时振荡频率升高),单片机便可以测出变化的频率值,也即可以感知有汽车经过。同时这个信号的开始和结束之间的时间间隔又可以用来测量汽车的移动速度,通过检测出来的车辆速度及车流量来进行路况的确定。然而,上述的方法不但成本高,而且也有很大的局限性,例如在一条拥堵的道路上,一段时间内车辆都在以缓慢的速度移动或者车辆停在原地不动,这种情况产生的感应电动势很弱或者没有产生感应电动势,就会造成系统误认为这条路上几乎没有车辆经过,从而导致检测出的当前道路的路况信息不太准确。为了解决上述的技术问题,现有技术中提出了基于浮动车数据的处理方法,该方法包括的步骤是:通过安装在车上的GPS定位装置定期回传GPS数据,处理系统将每个GPS点与电子地图进行匹配推测,根据距离时间计算平均速度,然后将多辆车在同一路段的速度进行融合,得出融合后的速度,最后根据各道路等级设置的不同的拥堵区间进行判断,确定当前路段的拥堵情况。但是,发明人发现,由于上述的方法中是基于浮动车的数据来进行判断路况信息,因此使得上述的方法中的电子地图中必须包含所有道路的信息,这样使得每个GPS点与该电子地图中的所有道路分别进行一一配对,所花费的时间较长,从而导致确定出的路况信息的速度较慢。技术实现要素:本发明的实施例提供一种基于公交车数据的路况检测方法及装置,旨在快速的确定出当前时间段内的路况信息。为达到上述目的,本发明的实施例采用如下技术方案:第一方面,提供一种基于公交车数据的路况检测方法,包括:接收一时间段内公交车的GPS数据,所述公交车的GPS数据包括:公交车的标识以及在所述时间段内所述公交车周期上传的位置信息;根据所述时间段内公交车的GPS数据,确定所述公交车的公交路线、所述公交车的行驶方向、以及所述公交车在电子地图中所经过的网格,所述电子地图被划分为阵列排布的多个矩形的网格;从网格与路段对应关系中,查询所述网格对应的所述公交路线在所述行驶方向上的N个路段,N大于或等于1;根据所述公交车的GPS数据求取所述公交车在所述时间段内的平均速度,作为所述公交车经过的所述N个路段上的速度;将每个路段上的所有公交车的平均速度进行融合得到融合后的速度,将所述融合后的速度作为所述每个路段上的行驶速度;根据所述每个路段上的行驶速度生成所述每个路段上的路况信息。第二方面,提供一种基于公交车数据的路况检测装置,包括:接收模块,用于接收一时间段内公交车的GPS数据,所述公交车的GPS数据包括:公交车的标识以及在所述时间段内所述公交车周期上传的位置信息;第一确定模块,用于根据所述时间段内公交车的GPS数据,确定所述公交车的公交路线、所述公交车的行驶方向、以及所述公交车在电子地图中所经过的网格,所述电子地图被划分为阵列排布的多个矩形的网格;查询模块,用于从网格与路段对应关系中,查询所述网格对应的所述公交路线在所述行驶方向上的N个路段,N大于或等于1;计算模块,用于根据所述公交车的GPS数据求取所述公交车在所述时间段内的平均速度,作为所述公交车经过的所述N个路段上的速度;融合模块,用于将每个路段上的所有公交车的平均速度进行融合得到融合后的速度,将所述融合后的速度作为所述每个路段上的行驶速度;生成模块,用于根据所述每个路段上的行驶速度生成所述每个路段上的路况信息。本发明实施例提供的基于公交车数据的路况检测方法及装置,相比于现有技术,本方案通过根据时间段内公交车的GPS数据来确定公交车的公交路线、公交车的行驶方向以及公交车在电子地图中所经过的网格,然后从网格与路段的对应关系中,查询网格对应的公交路线在行驶方向上的N个路段,由于该电子地图被划分为阵列排布的多个矩形的网格,通过查找公交车所经过的网格来匹配公交车所经过的路段,而无需将该网格与所有道路进行匹配,使得匹配所花费的时间较短,匹配效率较高,从而提高了确定出该路段的路况信息的速度;此外,本方案中采用的是公交车的GPS数据,由于公交车线路固定的特点使得匹配出的路段较为准确,进而使得计算出的路段的路况信息是准确的,进一步的,该某一路段上的行驶速度是将该路段上的所有公交车的平均速度进行融合所得到的,使得该路段上的行驶速度较为准确,从而根据该路段上的行驶速度所确定出的路况信息也较为准确。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种基于公交车数据的路况检测方法的方法流程图;图2为本发明实施例提供的一种确定当前公交车的行驶方向的流程图;图3为本发明实施例提供的一种公交车的运行路线图;图4为本发明实施例提供的一种处理架构图;图5为本发明实施例提供的基于图4中匹配推测过程的流程图;图6为本发明实施例提供的一种基于公交车数据的路况检测装置的结构示意图;图7为本发明实施例提供的另一种基于公交车数据的路况检测装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供一种基于公交车数据的路况检测方法,如图1所示,该方法包括:101、接收一时间段内公交车的GPS数据。本发明实施例中的公交车的GPS数据包括:公交车的标识以及在一时间段内公交车周期上传的位置信息。其中,上述的时间段是路况检测的时间周期,例如,本实施例可以按照每10分钟接收到的GPS数据检测一次路况信息。相应的,上述的位置信息为以10min为间隔,获取的公交车的所在位置。示例性的,上述采用的公交车的GPS数据,由于公交车线路固定的特点使得基于公交车的GPS数据所匹配出的路段是固定的,不会存在所配出的路段不准确。具体的,下表1给出了公交车数据与浮动车数据的不同特点。表1由上述的表1可以得知,相比于采用浮动车的数据,本方案中采用公交车的GPS数据使得所确定出的路段信息较为准确。102、根据时间段内公交车的GPS数据,确定公交车的公交路线、公交车的行驶方向、以及公交车在电子地图中所经过的网格。其中,上述的电子地图被划分为阵列排布的多个矩形的网格。示例性的,可以参照图2所示的确定公交车行驶方向的流程图,上述根据时间段内的公交车的GPS数据确定公交车的行驶方向具体包括:102a、获取当前时间段内公交车所在当前点以及当前点的前一个点的位置信息。102b、根据当前点与当前点的前一个点的位置信息确定两点间的连线角度,并根据两点间连线角度确定公交车的行驶方向。由图2所示的流程图可以得到,当该当前时间段内车辆的缓存点的个数大于2时,才能够根据两点的连线角度确定出该公交车的行驶方向。进一步的,当公交在所在当前点与当前点的前一个点的距离较远时(大于设定的阈值时),采用上述的连线角度可能会使得无法确定或确定出的公交车的行驶方向不准确。这时需要重新选取公交车所经过的至少两个缓存点,即使得两点的距离及连线角度均满足预设阈值时,确定出公交车的行驶方向。103、从网格与路段对应关系中,查询网格对应的公交路线在行驶方向上的N个路段,N大于或等于1。示例性的,这里以电子地图中的网格个数为9个为例进行说明上述的网格与路段的对应关系。当上述电子地图的网格个数为9个时,该网格与路段的对应关系可以以下表2形式进行存储,这里并不进行限定,仅以示例进行说明,对于网格与路段的对应关系还可以是其他的形式。表2需要说明的是,上述的表2在实际中的应用中是个上千或上万的数量级,这里仅仅是以9个为例进行说明,而并非限定,具体的网格个数需要根据实际的情况进行确定。需要说明的是,对应上述表2中的linkID为预先将公交路线划分为多个link所对应的link标号,而这里由于不同的公交路线以及该线路所经过的网格所对应的link不同,因此这里用linkID进行统一表示,在实际中对于网格1而言,对应的link可以为多个或一个,具体的由公交车的路线决定。示例性的,参照图3所示的公交车的运行路线图,可以得知:现在在道路中出现1号车和2号车,该1号车所经过的网格包括:网格7、网格4、网格5以及网格2,而2号车所经过的网格包括:网格7、网格8、网格5以及网格2。根据两辆公交车的GPS数据可以判断出该车为上行方向(起点-终点),然后根据上述的表2中查找得到,1号车所经过的路段(简称:link),以及2号车所对应的路段,从而匹配出1号和2号公交车在电子地图上对应的N个link。104、根据公交车的GPS数据求取公交车在时间段内的平均速度,作为公交车经过的N个路段上的速度。示例性的,上述将公交车在时间段内的平均速度作为该公交车所经过的N个路段的速度,例如:在10min内公交车所经过三个路段,该三个路段中的每个路段上速度均为该公交车在10min内的平均速度。示例性的,上述的根据公交车的GPS数据求取公交车在时间段内的平均速度具体包括以下内容:104a1、根据公交车的GPS数据计算公交车在所述时间段内对应的路段上的距离。104a2、根据公交车在时间段内对应的路段上的距离计算出公交车的平均速度。示例性的,上述的步骤104a1中根据公交车的GPS数据求取公交车在时间段内对应的路段上的距离具体包含以下内容:找到公交车当前点所在路段上垂足点所对应的路段上的位置,以及公交车当前点的下一个点或前一个点所在路段上的垂足点对应的路段上的位置;然后根据该公交车当前点在路段上垂足点到当前点的下一个点或前一个点在路段上的垂足点的距离。105、将每个路段上的所有公交车的平均速度进行融合得到融合后的速度,将融合后的速度作为每个路段上的行驶速度。示例性的,这里以三辆公交车为例进行说明上述确定路段上的行驶速度的过程,具体的,参照下面的表3。表3车辆号LinkID平均速度1LinkaV12Linka、Linkb、LinkcV23Linkb、LinkcV3由上述的表3可以得知,1号车经过linka,对应的该linka的速度为1号车的平均速度V1,2号车经过Linka、Linkb、Linkc,对应的该Linka、Linkb、Linkc的速度均为2号车的平均速度V2,3号车经过Linkb、Linkc,对应的该Linkb和Linkc的速度均为3号车的平均速度V3。示例性的,该Linka、Linkb、Linkc三个路段上的行驶速度为分别经过该三个路段上的所有公交车的平均速度,具体包括以下内容:参照上述的表3,Linka上的行驶速度为将1号公交车和2号公交车分别对应的平均速度V1和V2进行融合得到的,Linkb上的行驶速度为将2号公交车和3号公交车分别对应的平均速度V2和V3进行融合得到的,而Linkc上的行驶速度为将2号公交车和3号公交车分别对应的平均速度V2和V3进行融合得到的,而这里的融合速度可以取两个速度的平均速度。将上述经过某一link的所有公交车的平均速度融合后,得到每个link上的行驶速度,具体的参照下面的表4。表4LinkIDLinkID上的行驶速度LinkaVa=(V1+V2)/2LinkbVb=(V2+V3)/2LinkcVc=(V2+V3)/2由上述的表4中,可以得知,Linka上的行驶速度为Va=(V1+V2)/2;Linkb上的行驶速度为Vb=(V2+V3)/2;Linkc上的行驶速度为Vc=(V2+V3)/2。106、根据在每个路段上行驶速度生成每个路段上的路况信息。示例性的,上述的步骤106具体包括以下内容:106b1、获取路段的道路等级。106b2、根据每个路段上的行驶速度以及每个路段的道路等级,从道路状态信息表中查找与路段上的行驶速度以及路段的道路等级相匹配的路况信息。其中,上述的道路状态信息表为道路等级与速度区间范围以及路况信息间的映射关系表。优选的,这里给出了一种道路状态信息表,具体的可以参照下表5中的内容。表5道路等级畅通缓慢拥堵0[60,+∞)[40,60)(0,40)1[40,+∞)[20,40)(0,20)2[25,+∞)[15,25)(0,15)3[25,+∞)[15,25)(0,15)4[25,+∞)[15,25)(0,15)5[20,+∞)[10,20)(0,10)需要说明的是,上述的表5中的内容仅仅是以示例进行说明,并不进行限定。具体的,上述的表5中的道路等级中0对应为高速路,1对应为城市快速路,2对应为国道,3对应为省道,4对应为县道以及5对应为乡村道路。示例性的,基于上述的步骤101-步骤106确定出某一个城市或区域的所有的路段的路况信息,从而得到该城市或区域内的路况信息,进而用户根据该路况信息决定出行路线或进行其他安排。本发明实施例提供的基于公交车数据的路况检测方法,相比于现有技术,本方案通过根据时间段内公交车的GPS数据来确定公交车的公交路线、公交车的行驶方向以及公交车在电子地图中所经过的网格,然后从网格与路段的对应关系中,查询网格对应的公交路线在行驶方向上的N个路段,由于该电子地图被划分为阵列排布的多个矩形的网格,通过查找公交车所经过的网格来匹配公交车所经过的路段,而无需将该网格与所有道路进行匹配,使得匹配所花费的时间较短,匹配效率较高,从而提高了确定出该道路的路况信息的速度;此外,本方案中采用的是公交车的GPS数据,由于公交车线路固定的特点使得匹配出的路段较为准确,进而使得计算出的路段的路况信息是准确的,进一步的,该某一路段上的行驶速度是将该路段上的所有公交车的平均速度进行融合所得到的,使得该路段上的行驶速度较为准确,从而根据该路段上的行驶速度所确定出的路况信息也较为准确。可选的,为了使得确定出的路段上的速度较为准确,这里需要对该道路上的速度进行补偿,具体的,步骤104中根据至少一辆公交车在每个路段上的速度生成路段上的路况信息之前,该方法还包括以下内容:A1、根据每个路段上的行驶速度确定预设速度区间。A2、根据预设速度区间修正每个路段上的行驶速度。示例性的,上述的预设速度区间是在计算机或终端设备中预先进行存储的,而该预设速度区间是经过大量的实验以后所确定的一个区间范围值,从而根据该预设速度区间进行修正对应的路段上的行驶速度。例如,参考下面的表6,根据表6中的预设速度区间,从而修正该路段上的行驶速度。表6预设速度区间修正后的行驶速度S<10km/h不进行修正(或S*1)10km/h≤S<20km/hS*1.520km/h≤S≤30km/hS*1.25S>30km/hS*1.1示例性的,由上述的表6可以得知:当确定出的路段上的行驶速度为S=12km/h时,修正后的行驶速度为S=S*1.5;而当确定出的路段上的行驶速度为S=25km/h时,修正后的行驶速度为S=S*1.25。可选的,由于公交车具有到站停车的特点,因此使得需要对该站点所在路段进行特殊的处理才能够保证该站点所在的路段的路况信息较为准确,该方法还包括:B1、判断路段中是否包含公交站点或公交专用车道。当确定路段中包括公交站点或公交专用车道时,该方法还包括:B2、根据路段上的路况信息、路段的前一个路段上的路况信息以及路段的后一个路段上的路况信息更新路段上的路况信息。示例性的,当确定的路段中包括公交站点或公交专用车道时,更新该路段上的路况信息可以参照下表7中的内容。表7需要说明的是,上述表7中的1代表该路段道路畅通,2代表该路段道路缓慢,3代表该路段道路拥堵。由上表7中的内容可知,当包含公交站点或公交专用车道的路段的路况为1或2或3时,且该路段的前一个路段的路况为1,该路段的后一个路段的路况为1时,则将该包含公交站点或公交专用车道的路段的路况更新为1;而当上述的路段的前一个路段的路况为1,且上述的路段的前一个路段的路况为2,则该包含公交站点或公交专用车道的路段的路况保持不变;当上述的路段的前一个路段的路况为2,该路段的后一个路段的路况为3时,且若该包含公交站点或公交专用车道的路段的路况为1时,则更新为2;且若该包含公交站点或公交专用车道的路段的路况为2或3时,则保持不变。示例性的,参考图4所示的公交车数据处理架构图,具体的包括以下内容:i.数据接入Spout:负责从kafka中接收公交车GPS数据。ii.解析Bolt:负责将公交车GPS数据进行解析,形成内部流转的统一规格数据STL数据,然后按照车辆标识进行分组发射,发射至匹配推测Bolt中。iii.匹配推测Bolt:参照图5给出的流程图,由图5可知,首先计算出当前公交车辆点的行驶在公交线路的上下行哪个方向上,通过数据本身识别出当前车辆为哪路往哪个方向行驶的车辆,便于后续的匹配推测。或者通过程序来识别,当该车辆未确定为哪个方向的车辆时,通过多点匹配推测(往两个方向上进行计算),判断出该车辆为哪个方向的车辆,后续计算按照公交标准匹配推测方式进行。确定之后进行精确的匹配推测,公交车对应的每个缓存点均参与匹配,匹配以[路线号_上下行标识_网格号]为Key,进行查找候选Link,从而确定匹配的link。推测预处理路径以[路线号_上下行标识]为Key,进行查找路线,然后根据匹配link进行推测,计算平均速度,以及每根link上的瞬时速度,然后整理成内部统一格式Jlink发送给融合Bolt。下面将基于图1对应的基于公交车数据的路况检测装置方法的实施例中的相关描述对本发明实施例提供的一种基于公交车数据的路况检测装置进行介绍。以下实施例中与上述实施例相关的技术术语、概念等的说明可以参照上述的实施例,这里不再赘述。本发明实施例提供一种基于公交车数据的路况检测装置,如图6所示,该装置2包括:接收模块21、第一确定模块22、查询模块23、计算模块24、融合模块25以及生成模块26,其中:接收模块21,用于接收一时间段内公交车的GPS数据,公交车的GPS数据包括:公交车的标识以及在时间段内公交车周期上传的位置信息。第一确定模块22,用于根据时间段内公交车的GPS数据,确定公交车的公交路线、公交车的行驶方向、以及公交车在电子地图中所经过的网格,电子地图被划分为阵列排布的多个矩形的网格。查询模块23,用于从网格与路段对应关系中,查询网格对应的公交路线在行驶方向上的N个路段,N大于或等于1。计算模块24,用于根据公交车的GPS数据求取公交车在时间段内的平均速度,作为公交车经过的N个路段上的速度。融合模块25,用于将每个路段上的所有公交车的平均速度进行融合得到融合后的速度,将融合后的速度作为每个路段上的行驶速度。生成模块26,用于根据每个路段上的行驶速度生成每个路段上的路况信息。示例性的,上述的生成模块26在根据每个路段上的行驶速度生成每个路段上的路况信息时,具体用于:获取每个路段的道路等级。根据每个路段上的行驶速度以及每个路段的道路等级,从道路状态信息表中查找与路段上的行驶速度以及路段的道路等级相匹配的路况信息;道路状态信息表为道路等级与速度区间范围以及路况信息间的映射关系表。示例性的,上述的计算模块24在根据公交车的GPS数据求取公交车在时间段内的平均速度时,具体用于:根据公交车的GPS数据计算公交车在时间段内对应的路段上的距离。根据公交车在时间段内对应的路段上的距离计算出公交车的平均速度。可选的,如图6所示,该装置2还包括:第二确定模块27以及修正模块28,其中:第二确定模块27,用于根据路段上的速度确定预设速度区间;修正模块28,用于根据预设速度区间修正路段上的速度。可选的,如图7所示,该装置2还包括:判断模块29,其中:判断模块29,用于判断路段中是否包含公交站点或公交专用车道。当判断模块29确定出路段中包括公交站点或公交专用车道时,如图7所示,该装置2还包括:更新模块30,其中:更新模块30,用于根据路段上的路况信息、路段的前一个路段上的路况信息以及路段的后一个路段上的路况信息更新路段上的路况信息。本发明实施例提供的基于公交车数据的路况检测装置,相比于现有技术,本方案通过根据时间段内公交车的GPS数据来确定公交车的公交路线、公交车的行驶方向以及公交车在电子地图中所经过的网格,然后从网格与路段的对应关系中,查询网格对应的公交路线在行驶方向上的N个路段,由于该电子地图被划分为阵列排布的多个矩形的网格,通过查找公交车所经过的网格来匹配公交车所经过的路段,而无需将该网格与所有道路进行匹配,使得匹配所花费的时间较短,匹配效率较高,从而提高了确定出该路段的路况信息的速度;此外,本方案中采用的是公交车的GPS数据,由于公交车线路固定的特点使得匹配出的路段较为准确,进而使得计算出的路段的路况信息是准确的,进一步的,该某一路段上的行驶速度是将该路段上的所有公交车的平均速度进行融合所得到的,使得该路段上的行驶速度较为准确,从而根据该路段上的行驶速度所确定出的路况信息也较为准确。在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可以通过其它的方式实现。例如,以上所描述的基于公交车数据的路况检测装置的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,基站或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理包括,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,简称ROM)、随机存取存储器(RandomAccessMemory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1