一种基于海量轨迹数据检索经验路线的方法及系统与流程

文档序号:14714524发布日期:2018-06-16 01:04阅读:211来源:国知局
本发明涉及一种大数据
技术领域
:,尤其是涉及一种基于海量轨迹数据检索经验路线的方法,按地理位置快速检索车辆的一段行驶轨迹。
背景技术
::随着互联网科技技术的飞速发展,基于地理位置的服务与产品也越来越多,各类政企单位、特别是有大量车辆资源的物流行业为提升自身管理水平与工作效率,都有利用基于位置数据的信息化系统对车辆资源进行管理的需求,而车辆的运行轨迹数据的应用又是其中必不可少的部分。车辆的运行轨迹数据是指车辆实际运行过程中由车载智能终端采集并上传的GPS地理位置数据,同时也包含了车辆的瞬时状态信息数据。通常车载终端采集上传GPS数据的频率都是秒级的,假设每秒采集上传一条GPS数据,每辆车一个小时就有3600条数据,一天按8小时计算就有28800条数据。基于车辆车机上报的海量历史轨迹数据,目前技术人员通过单车时间维度检索,可以检索出一辆车一段时间行驶轨迹线路,却无法按地理位置检索出的多个车辆从同一地理位置行驶到另一个地理位置,并且上述行驶过程中存在不同线路的轨迹,也是无法检索出来的;另一个问题是车辆上报的轨迹点具有偏移道路的特性,无法平滑的与实际地图道路吻合相匹配。如图1所示,车辆的行驶实际轨迹是沿着立交桥盘桥下高速公路,然而在上报的轨迹路线可以看出,其没有与实际道路吻合,存在计算误差。技术实现要素:为解决以上问题,本发明基于起始地地理位置和目的地地理位置,基于车辆车机上报的海量历史轨迹数据,快速检索出具有多个车辆从起始地地理位置行驶到目的地地理位置行驶轨迹;同时解决车辆行驶道路平滑度,车机上报的经纬度具有偏移道路的特性,无法与实际地图道路数据吻合相匹配的问题。具体的,根据本发明的一个方面,提供了一种基于海量轨迹数据检索经验路线的方法,包括:一种基于海量轨迹数据检索经验路线的方法,其特征在于,包括:基于货车海量历史行驶轨迹数据创建检索,构建服务内存缓存索引数据;根据输入的起始地理位置和目的地理位置,结合上述索引数据检索车辆行驶轨迹。优选的,所述基于海量轨迹数据构建索引,包括如下5个具体步骤:基于货车海量历史行驶轨迹数据进行去燥、道路匹配;基于车辆道路匹配数据构建服务内存缓存索引数据关系;基于车辆道路匹配数据构建单辆车加网格与地图数据link和时间索引关系;基于车辆道路匹配数据构建单车加时间与linkid索引关系;基于地图道路数据构建linkid与link所有经纬度索引关系。优选的,所述基于货车海量历史行驶轨迹数据进行去燥、道路匹配的步骤进一步包括如下子步骤:从车辆车机上报轨迹数据中选取一段范围历史轨迹;对历史轨迹数据进行去燥操作,将错误的历史轨迹数据易除;将所述历史轨迹数据与地图路网道路匹配,将所述历史轨迹数据以路网link来表示,按时间顺序维度标记每时间点上行驶的link;构建车辆时间顺序维度与link关系。优选的,所述基于车辆道路匹配数据构建服务内存缓存索引数据关系的步骤包括如下子步骤:基于道路匹配数据,按每辆车时间顺序维度数据,以10公里边长网格划分link上所有经纬度;记录每辆车所行驶过的网格,如果多次经过相同网格,只记录一次;基于每辆车与网格对应关系,构建网格与多辆车索引关系;以本地文件提供索引数据,为检索服务初始化时加载内存。优选的,所述基于车辆道路匹配数据构建单辆车加网格与地图数据link和时间索引关系的步骤包括如下子步骤:基于道路匹配数据,按每辆车时间顺序维度数据,以1公里边长网格划分link上所有经纬度;以每辆车为单位,记录时间点经过link所对应的所有网格ID;以单车单位及网格唯一ID,聚合车辆行驶时间点上link数据;将所述车辆行驶时间点上link数据存储在HBase海量数据存储系统,使用检索服务索引数据。优选的,所述基于车辆道路匹配数据构建单车加时间与linkid索引关系的步骤包括如下子步骤:基于道路匹配数据,按每辆车时间顺序维度,构建单车加时间与linkid关系索引数据;将所述索引数据存储在HBase海量数据存储系统,使用检索服务索引数据。优选的,所述根据输入的起始地理位置和目的地理位置,结合上述索引数据检索车辆行驶轨迹,包括如下步骤:输入起始地理位置和目的地理位置;以10公里边长网格,划分起始地理位置和目的地理位置,在检索服务以内存缓存的多辆车与网格对应关系索引数据中,找出包括起始地理位置车辆和目的地理位置车辆,对起始地理位置车辆和目的地理位置车辆求交集,找出在起始地理位置车辆和目的地理位置车辆中同时包含的车辆;再以1公里边长网格划分起始地理位置和目的地理位置,以单车辆加1公里边长网格唯一ID,从HBase中的单辆车加网格与地图数据link和时间关系索引数据,查找linkID和时间数据,分别查找起始地理位置车辆加网格唯一ID和目的地理位置车辆加网格唯一ID;对起始点和结束点的时间分别排序,找出起始点中时间最大的时间点,和结束点中时间最小的时间点,以这两个时间点作为该车辆起始位置检索的时间点和目的地位置检索的时间点;根据找到的起始时间和目的时间加车辆,查找单车加起始时间和目的时间之间所有linkid对应关系,在HBase中的单车加时间与linkid关系索引数据查找;通过所有linkid,在HBase中的link与每个link所有经纬度关系索引数据,检索出linkid上对应的经纬度,就检索出该车辆从起始地理位置到目的地理位置行驶的轨迹。优选的,所述根据输入的起始地理位置和目的地理位置,结合上述索引数据检索车辆行驶轨迹,进一步包括如下步骤:依次检索以10公里交集后的车辆,检索出经过起始地理位置和目的地理位置的所有辆车数据。根据本发明的另一个方面,还提供了一种基于海量轨迹数据检索经验路线的系统,包括顺序连接的如下模块:索引构建模块,基于货车海量历史行驶轨迹数据创建检索,构建服务内存缓存索引数据;轨迹检索模块,根据输入的起始地理位置和目的地理位置,结合上述索引数据检索车辆行驶轨迹。本发明基于起始地地理位置和目的地地理位置,基于海量车辆历史轨迹数据,能够快速检索出从起始地地理位置行驶到目的地地理位置所有辆车辆的行驶轨迹,并且检索出的轨迹与实际道路相吻合。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为现有技术中车辆上报的轨迹路线图;图2为本发明基于海量轨迹数据检索经验路线的方法的总体流程图;图3为基于车辆车机上报海量轨迹数据去燥、道路匹配图;图4为基于车辆道路匹配数据构建服务内存缓存索引数据关系图;图5为基于车辆道路匹配数据构建单辆车加网格与地图数据link和时间索引关系图;图6为基于车辆道路匹配数据构建单车加时间与linkid索引关系图;图7为基于地图道路数据构建linkid与link所有经纬度索引关系图;图8为检索起始地址位置到目的地地理位置部署图;图9为检索起始地址位置到目的地地理位置时序图;图10为根据本发明的方法检索后行驶轨迹示例图;图11为根据本发明的方法按起始地理位置和目的地理位置检索出多条线路示意图;图12为本发明基于海量轨迹数据检索经验路线的系统结构图。具体实施方式下面将参照附图更详细地描述本发明的示例性实施方式。虽然附图中显示了本发明的示例性实施方式,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。本发明重点解决如何在海量轨迹数据中检索出从相同起始位置到目的位置,存在的所有车辆行驶轨迹信息。如图2所示,本发明提供一种基于海量轨迹数据检索经验路线的方法,基于车辆车机上报的海量历史轨迹数据,检索从起始地理位置到目的地理位置所有行驶过的车辆轨迹,包括如下两个阶段过程:S1、基于货车海量历史行驶轨迹数据创建检索,构建服务内存缓存索引数据。以10公里边长网格划分所有车辆经纬度,构建多辆车与网格对应关系;以1公里边长网格划分每辆车经纬度,构建单辆车加网格与地图数据link和时间之间存储关系;以单车加时间与linkid构建存储关系;以linkid与每个link所有经纬度构建存储关系。将单辆车加网格与数据link和时间关系、单车加时间与linkid关系索引数据、link与每个link所有经纬度关系存储HBase,以用于第二阶段检索。HBase是一个分布式的、面向列的开源数据库,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。具体的,步骤S1包括如下5个具体步骤:S11、如图3所示,基于货车海量历史行驶轨迹数据进行去燥、道路匹配。该步骤进一步包括如下子步骤:S111、从车辆车机上报轨迹数据中选取一段范围历史轨迹。此步骤可根据车辆轨迹数据情况和海量存储系统性能所定,选取不同范围内历史轨迹数据。S112、对历史轨迹数据进行去燥操作,将错误的历史轨迹数据易除。S113、轨迹数据与地图路网道路匹配,将车辆行驶轨迹数据以路网link来表示,按时间顺序维度标记每时间点上行驶的link,遇到相邻时间点相同link,则保留一个时间点上的link数据,此做法为减少后续数据处理量,增快后续构建索引性能;同时为后续关联到地图道路数据准备。S114、构建车辆时间顺序维度与link关系,时间以秒为精度,utc时间格式输出,排列顺序,link信息包括linkid、link上所有的经纬度信息。输出utc时间格式为在HBase中按单车+时间维度,检索时间区间范围内行驶轨迹数据准备。S12、如图4所示,基于车辆道路匹配数据构建服务内存缓存索引数据关系。其具体步骤如下详细说明:S121、基于道路匹配数据,按每辆车时间顺序维度数据,以10公里边长网格划分link上所有经纬度。此步骤为将车辆行驶轨迹,以经过多少个10公里边长网格表示,每个网格都有唯一的表示ID。S122、记录每辆车所行驶过的网格,如果多次经过相同网格,只记录一次。记录结果为:车辆1:网格1、网格2、网格3车辆2:网格1、网格3S123、基于每辆车与网格对应关系,构建网格与多辆车索引关系。通过该步骤构建出地理位置经纬度与车辆之间,能够快速检索出地理位置10公里附近行驶过的车辆,能缩小检索服务第二步检索车辆的范围,为第二步提供有效车辆的快速检索,同时提供了地理位置检索功能。记录结果为:网格1:车辆1、车辆2网格2:车辆1、车辆2网格3:车辆1S124、以本地文件提供索引数据,为检索服务初始化时加载内存,提高检索性能。S13、如图5所示,基于车辆道路匹配数据构建单辆车加网格与地图数据link和时间索引关系。其具体步骤如下详细说明:S131、基于道路匹配数据,按每辆车时间顺序维度数据,以1公里边长网格划分link上所有经纬度。此步骤为将车辆行驶轨迹,以经过多少个1公里边长网格表示,每个网格都有唯一的表示ID。S132、以每辆车为单位,记录时间点经过link所对应的所有网格ID。此步骤为提供以单车为单位,1公里边长划分车辆行驶轨迹。S133、以单车单位及网格唯一ID,聚合车辆行驶时间点上link数据。聚合后数据记录如下:车辆1_网格ID1:时间1_link1,时间2_link2,时间3_link3车辆1_网格ID2:时间4_link5,时间5_link6,时间6_link7车辆2_网格ID2:时间4_link5,时间5_link6,时间6_link7车辆2_网格ID1:时间1_link1,时间2_link2,时间3_link3此步骤的目的是为检索到以1公里边长网格时,在此网格中经过了哪些时间点的link,为找到1公里边长地理位置附近有效的时间点。S134、将第三步数据存储在HBase海量数据存储系统,使用检索服务索引数据。S14、如图6所示,基于车辆道路匹配数据构建单车加时间与linkid索引关系。其具体步骤如下详细说明:S141、基于道路匹配数据,按每辆车时间顺序维度,构建单车加时间与linkid关系索引数据。S142、构建索引数据如下。因为每个link上都有唯一表示linkid,记录中的link均为linkid信息例如:车辆1_时间1:link1车辆1_时间2:link2车辆1_时间3:link3车辆2_时间1:link5S143、将第2步数据存储在HBase海量数据存储系统,使用检索服务索引数据。HBase具有按key顺序检索范围之间的数据,因此以车辆为key前缀部分,后缀为时间,就可以检索同一辆车时间范围内的所有行驶过的link数据。S15、如图7所示,基于地图道路数据构建linkid与link所有经纬度索引关系。因为已有完整的地图道路数据,因此仅从地图道路数据获取linkid与linkid对应的所有经纬度关系数据,创建此索引为检索服务最终查询获取地图道路数据准备,使车辆行驶轨迹能够吻合平滑在地图上显示。最终存储在HBase海量数据存储系统提供检索,存储记录如下:linked:114.1493922.64548;114.1455422.65563S2、根据输入的起始地理位置和目的地理位置,检索车辆行驶轨迹。第二阶段包括三方面:检索服务、检索服务本地内存索引数据、HBase存储系统。其中,检索服务提供客户端访问接口,首先以10公里边长网格,划分起始地理位置和目的地址位置,找出包括起始地理位置车辆和目的地理位置车辆,对起始地理位置车辆和目的地理位置车辆求交集,找出在起始地理位置车辆和目的地理位置车辆同时包含的车辆,表示这些车辆同时经过起始地理位置、目的地理位置;再以1公里边长网格划分起始地理位置和目的地理位置,以单车辆加1公里边长网格从HBase查找与link和时间的关系,分别查找起始地理位置车辆加网格唯一ID和目的地理位置车辆加网格唯一ID,如果起始地理位置和目的地理位置都能找到对应关系,则在起始地理位置和目的地理位置附近能找到车辆行驶,根据找到的起始时间和目的时间加车辆,查找单车加起始时间和目的时间之间所有linkid对应关系,最后通过所有linkid在检索linkid上对应的经纬度,就检索出本车辆从起始地理位置到目的地理位置行驶的轨迹,依次检索以10公里交集后的车辆,此检索出从起始地理位置到目的地理位置多辆车行驶的轨迹数据。如图8所示,检索起始地址位置到目的地地理位置部署图中包括三个组件,检索服务,提供检索接口;HBase海量数据存储系统,用于存储单辆车加网格与地图数据link和时间关系索引数据、单车加时间与linkid关系索引数据、link与每个link所有经纬度关系索引数据;本地文件索引数据,多辆车与网格对应关系索引数据,以提供检索服务初始化加载一次。如图9所示,步骤S2具体详细步骤如下:S21、客户端输入起始地理位置和目的地理位置。S22、以10公里边长网格,划分起始地理位置和目的地理位置,在检索服务以内存缓存的多辆车与网格对应关系索引数据中,找出包括起始地理位置车辆和目的地理位置车辆,对起始地理位置车辆和目的地理位置车辆求交集,找出在起始地理位置车辆和目的地理位置车辆中同时包含的车辆,表示这些车辆同时经过起始地理位置、目的地理位置。S23、再以1公里边长网格划分起始地理位置和目的地理位置,以单车辆加1公里边长网格唯一ID,从HBase中的单辆车加网格与地图数据link和时间关系索引数据,查找linkID和时间数据,分别查找起始地理位置车辆加网格唯一ID和目的地理位置车辆加网格唯一ID,如果起始地理位置和目的地理位置都能找到对应关系,则在起始地理位置和目的地理位置附近能找到该车辆行驶。在起始点网格中检索出多个时间点link数据,同时在结束点网格中也检索出多个时间点link数据,对起始点和结束点的时间分别排序,找出起始点中时间最大的时间点,和结束点中时间最小的时间点,以这两个时间点作为该车辆起始位置检索的时间点和目的地位置检索的时间点。S24、根据找到的起始时间和目的时间加车辆,查找单车加起始时间和目的时间之间所有linkid对应关系,在HBase中的单车加时间与linkid关系索引数据查找。S25、最后通过所有linkid,在HBase中的link与每个link所有经纬度关系索引数据,检索出linkid上对应的经纬度,就检索出本车辆从起始地理位置到目的地理位置行驶的轨迹。图10为根据本发明的方法检索后行驶轨迹示例图。如图所示,检索后行驶轨迹示例图与原始轨迹展示轨迹图(图1)对比,使用本发明的方法检索后的行驶轨迹更加与地图道路吻合平滑。S26、依次检索以10公里交集后的车辆,从第二步到第5步检索出所有辆车数据。此通过起始地理位置和目的地理位置,在海量数据中检索出经过起始地理位置和目的地理位置的所有辆车。图11为根据本发明的方法按起始地理位置和目的地理位置检索出多条线路示意图。分别代表两辆车的行驶轨迹路线。如图12所述,本发明还提供了一种基于海量轨迹数据检索经验路线的系统100,包括顺序连接的如下模块:索引构建模块110,基于货车海量历史行驶轨迹数据创建检索,构建服务内存缓存索引数据;轨迹检索模块120,根据输入的起始地理位置和目的地理位置,结合上述索引数据检索车辆行驶轨迹。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1