CN115168527A - 实时轨迹数据处理方法、装置、系统及电子设备 - Google Patents
实时轨迹数据处理方法、装置、系统及电子设备 Download PDFInfo
- Publication number
- CN115168527A CN115168527A CN202210911140.9A CN202210911140A CN115168527A CN 115168527 A CN115168527 A CN 115168527A CN 202210911140 A CN202210911140 A CN 202210911140A CN 115168527 A CN115168527 A CN 115168527A
- Authority
- CN
- China
- Prior art keywords
- road network
- point
- candidate road
- track
- points
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Computational Linguistics (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请提供一种实时轨迹数据处理方法、装置及系统。其中,该方法包括:获取移动对象的轨迹数据,并对该轨迹数据进行去噪处理以获得有效轨迹点数据;获取该有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,M为正整数;确定与该当前轨迹点对应的可变滑动窗口;其中,可变滑动窗口的长度为K,该可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个该第一转移概率下对应的第一候选路网点组合,每个该第一候选路网点组合包括K个历史候选路网点,N和K分别为正整数;基于该可变滑动窗口对该M个候选路网点进行地图匹配处理,获得该当前轨迹点的路网点。从而实现对轨迹数据的高精度及低延时的实时地图匹配。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种实时轨迹数据处理方法、装置、系统、电子设备及存储介质。
背景技术
相关技术中,获取到移动对象新的轨迹点时,通常将该轨迹点添加到该移动对象之前缓存在内存里的轨迹点集合中,然后基于离线地图匹配隐马尔可夫模型计算当前时间下缓存的轨迹点集合中所有点的概率模型,并将地图匹配后的所有可能的候选轨迹输出。此技术方案缺点在于所需计算量较大,导致高延迟且实时性较差。
发明内容
本申请提供了一种实时轨迹数据处理方法、装置、系统、电子设备及存储介质。可以对获取到的移动对象的轨迹进行处理,实现高精度低延时的实时地图匹配。
第一方面,本申请实施例提供一种实时轨迹数据处理方法,包括:获取移动对象的轨迹数据,并对所述轨迹数据进行去噪处理以获得有效轨迹点数据;获取所述有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,所述M为正整数;确定与所述当前轨迹点对应的可变滑动窗口;其中,所述可变滑动窗口的长度为K,所述可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个所述第一转移概率下对应的第一候选路网点组合,每个所述第一候选路网点组合包括K个历史候选路网点,所述N和K分别为正整数;基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
通过本技术方案,可以基于当前轨迹点及对应的滑动窗口获取当前轨迹点的路网点,减少所需计算量,从而实现对移动对象的轨迹数据的高精度低延时的实时地图匹配。
在一种实现方式中,所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点,包括:基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
在一种可选地实现方式中,所述基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点,包括:将所述M个候选路网点,分别插入每个所述第一候选路网点组合的尾部,得到每个所述候选路网点对应的N个第二候选路网点组合;确定每个所述候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从所述N个第二候选路网点组合中选取所述第二转移概率最大的第二候选路网点组合;将每个所述候选路网点对应的N个第二候选路网点组合中所述第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合;将每个所述第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点;基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点。
通过本技术方案,在地图匹配过程中,在基于隐马尔可夫模型的基础上引用了维特比算法,可以大幅减少算法复杂度。
可选地,所述基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点,包括:从所述M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为所述当前轨迹点的路网点。
可选地,所述方法还包括:将移出所述首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;将所述下一个轨迹点作为新的当前轨迹点,执行所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点的步骤,直至所述有效轨迹点数据中所有轨迹点全部完成地图匹配。
在一种实现方式中,所述方法还包括:采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。
在一种可选地实现方式中,所述方法还包括:响应于对所述移动对象的轨迹查询请求,基于所述轨迹查询请求从所述缓存数据库中查询所述移动对象的路网信息;和/或,响应于对所述移动对象的路网信息显示请求,将所述移动对象的路网信息进行可视化处理。
通过本技术方案,可以将获得的轨迹点的路网点存储至缓存数据库,以供进行轨迹查询及可视化处理,从而实现对移动对象轨迹的实时查询与展示。
在一种实现方式中,所述方法还包括:获取所述有效轨迹数据中各轨迹点的路网点,并将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中。
在一种可选地实现方式中,所述将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中,包括:按照预设的轨迹截断条件对所述有效轨迹数据中各轨迹点进行轨迹截断处理,将截断后的路网点存储至所述储存数据库。
通过本技术方案,可以将各轨迹点的路网点存储至储存数据库中,减少对缓存数据库及系统内存的存储空间占用,节省存储资源。
第二方面,本申请实施例提供一种实时轨迹数据处理装置,所述装置包括:第一处理模块,用于获取移动对象的轨迹数据,并对所述轨迹数据进行去噪处理以获得有效轨迹点数据;获取模块,用于获取所述有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,所述M为正整数;第二处理模块,用于确定与所述当前轨迹点对应的可变滑动窗口;其中,所述可变滑动窗口的长度为K,所述可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个所述第一转移概率下对应的第一候选路网点组合,每个所述第一候选路网点组合包括K个历史候选路网点,所述N和K分别为正整数;第三处理模块,用于基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
在一种实现方式中,所述第三处理模块具体用于:基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
在一种可选地实现方式中,所述第三处理模块具体用于:将所述M个候选路网点,分别插入每个所述第一候选路网点组合的尾部,得到每个所述候选路网点对应的N个第二候选路网点组合;确定每个所述候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从所述N个第二候选路网点组合中选取所述第二转移概率最大的第二候选路网点组合;将每个所述候选路网点对应的N个第二候选路网点组合中所述第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合;将每个所述第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点;基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点。
可选地,所述第三处理模块具体用于:从所述M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为所述当前轨迹点的路网点。
可选地,所述装置还包括:第四处理模块,用于将移出所述首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;第五处理模块,用于将所述下一个轨迹点作为新的当前轨迹点,执行所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点的步骤,直至所述有效轨迹点数据中所有轨迹点全部完成地图匹配。
在一种实现方式中,所述装置还包括:存储模块,用于采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。
在一种可选地实现方式中,所述装置还包括:查询模块,用于响应于对所述移动对象的轨迹查询请求,基于所述轨迹查询请求从所述缓存数据库中查询所述移动对象的路网信息;和/或,可视化模块,用于响应于对所述移动对象的路网信息显示请求,将所述移动对象的路网信息进行可视化处理。
在一种实现方式中,所述装置还包括:第四处理模块,用于获取所述有效轨迹数据中各轨迹点的路网点,并将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中。
在一种可选地实现方式中,所述第四处理模块具体用于:按照预设的轨迹截断条件对所述有效轨迹数据中各轨迹点进行轨迹截断处理,将截断后的路网点存储至所述储存数据库。
第三方面,本申请实施例提供一种实时轨迹数据处理系统,包括:分布式流处理引擎,所述分布式流处理引擎包括多个键控流分区;其中,所述多个键控流分区采用如第一方面所述的方法对不同移动对象的轨迹数据进行实时处理
第四方面,本申请实施例提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的实时轨迹数据处理方法。
第五方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,用于存储有指令,当所述指令被执行时,使如第一方面所述的方法被实现。
第六方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如第一方面所述的实时轨迹数据处理方法的步骤。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1为本申请实施例提供的一种实时轨迹数据处理方法的流程图;
图2为本申请实施例提供的一种实时轨迹数据处理方法示意图;
图3为本申请实施例提供的另一种实时轨迹数据处理方法的流程图;
图4为本申请实施例提供的又一种实时轨迹数据处理方法的流程图;
图5为本申请实施例提供的又一种实时轨迹数据处理方法的流程图;
图6为本申请实施例提供的一种实时轨迹数据处理装置的结构示意图;
图7为本申请实施例提供的另一种实时轨迹数据处理装置的结构示意图;
图8为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图;
图9为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图;
图10为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图;
图11为本申请实施例提供的一种实时轨迹数据处理系统示意图;
图12为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
其中,在本申请的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请中涉及的第一、第二等各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围,也不表示先后顺序。
随着城市的规模扩大和物联网技术的飞速发展,车载导航、共享汽车和物流派送等应用已经深入人们日常生活之中,越来越多的轨迹数据在连续不断地产生。而这些应用都不可避免地需要使用GPS(Global Positioning System,全球定位系统)、北斗等定位系统所记录的轨迹数据。然而,普通民用GPS定位系统存在米级别的误差、信号接收不稳定等缺陷。同时,轨迹点采样频率又在数据传输和存储的条件限制下不能过高,以上因素导致采集到的移动对象位置与其真实所在道路之间有一定距离偏差。因此,为了使接收到的位置数据可以真实反应移动对象的运行轨迹,同时使轨迹数据能够实时地在地图上展示来让用户更直观感知车辆位置和行驶路线,需要实时地进行各种轨迹的预处理工作,其中最重要也最为耗时的就是实时地图匹配。
请参见图1,图1为本申请实施例提供的一种实时轨迹数据处理方法的流程图。如图1所示,该实时轨迹数据处理方法可以包括但不限于以下步骤:
步骤S101,获取移动对象的轨迹数据,并对该轨迹数据进行去噪处理以获得有效轨迹点数据。
其中,在本申请的实施例中,移动对象可理解为带有定位装置的可移动对象,例如:携带有GPS装置的汽车,或者还可以是其他带有定位功能的可移动对象,在此不做具体限定。
举例而言,可以获取移动对象发送的带有该移动对象定位信息(例如,GPS数据、北斗定位数据等)的轨迹数据,使用预设的去噪条件,对该轨迹数据进行去噪处理。
其中,在本申请的实施例中,预设的去噪条件可以包括但不限于以下1)项-5)项:1)轨迹数据的坐标在预设的空间范围内;2)轨迹数据的生成时间在获取的上一个轨迹数据的生成时间之后;3)移动对象在当前轨迹数据和上一个轨迹数据间的速度小于预设的第一速度阈值;4)当前轨迹数据和上一个轨迹数据间的欧氏距离,小于预设的欧氏距离阈值;5)轨迹数据的坐标附近的预设范围内存在真实路段。
也就是说,在获得移动对象的轨迹数据之后,可以先对轨迹数据进行去噪处理,该去噪逻辑有以下几点:判断该轨迹点是否在预设的空间范围之内,如果不在,则去除该轨迹点;判断该轨迹数据的生成时间是否在在获取的上一个轨迹数据的生成时间之后,如果不在,则去除该轨迹点数据;判断移动对象在该轨迹点数据与获取的上一个轨迹点数据间的速度是否小于预设的第一速度阈值,如果大于或等于预设的速度阈值,则去除该轨迹点数据;判断当前轨迹点数据和上一个轨迹点数据间的欧氏距离是否小于预设的欧氏距离阈值,如果大于或等于预设的欧氏距离阈值,则去除该轨迹点数据;判断轨迹点数据的坐标附近的预设范围内是否存在真实路段,如果不存在,则去除该轨迹点数据。基于上述去噪逻辑对轨迹数据进行去噪处理后,可以获得有效轨迹点数据。
步骤S102,获取有效轨迹点数据之中当前轨迹点的M个候选路网点。
其中,在本申请的实施例中,M为正整数。
举例而言,假设当t时刻获得当前轨迹点zt,可以以当前轨迹点zt的位置坐标为基准,在预设的空间范围内(例如:50米)进行空间范围查询,得到该空间范围内的所有路网点,比如查询得到距离该当前轨迹点当前轨迹点不大于50米的路网点作为该当前轨迹点zt的候选路网点。
其中,在本申请的实施例中,路网点指实际道路网络中的点。
步骤S103,确定与当前轨迹点对应的可变滑动窗口。
其中,在本申请的实施例中,可变滑动窗口的长度为K;该可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个第一转移概率下对应的第一候选路网点组合,每个第一候选路网点组合包括K个历史候选路网点,N和K分别为正整数。第一转移概率为第一候选路网点组合中从首个历史候选路网点到达对应的上一个轨迹点的最大转移概率。
需要说明的是,在本申请的实施例中,可变滑动窗口的长度K的值可预先设定,且K的数值越大,最终的地图匹配效果也越准确。在一种可选的实现方式中,该K的取值范围推荐在10~20之间。可以理解的是,由于K的数值较小,因进行前K个轨迹点的路网点计算而引发的延迟基本可以忽略。
作为一种示例,请参见图2,图2为本申请实施例提供的一种实时轨迹数据处理方法示意图。如图2所示,设当前轨迹点数据对应的时间为T,P1A、P1C、…、P1D为T-K时刻获取的轨迹点数据对应的N个不同历史候选路网点,P2A、P2B、…、P2C为T-(K-1)时刻获取的轨迹点数据对应的N个不同历史候选路网点,P3A、P3B、…、P3C为T-(K-2)时刻获取的轨迹点数据对应的N个不同历史候选路网点,依此类推,[PK1、PK2、…、PKN]为T-1时刻获取的轨迹点数据对应的N个历史候选路网点。[P1A、P2B、P3A、…、PK1],[P1C、P2C、P3B、…、PK2]…[P1D、P2A、P3A、…、PKN]分别为到达历史候选路网点PK1、PK2…PKN的K个不同时刻的转移概率最大的历史候选路网点的集合。
步骤S104,基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
可选的,可以基于隐马尔可夫模型,采用可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
在一种可能的实现方式中,可以基于隐马尔可夫模型和维特比算法,采用可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
根据本申请实施例的实时轨迹数据处理方法,可以基于当前轨迹点及对应的滑动窗口获取当前轨迹点的路网点,减少所需计算量,从而实现对移动对象的轨迹数据的高精度低延时的实时地图匹配。
为了进一步降低算法复杂度,在地图匹配过程中,可以在基于隐马尔可夫模型的基础上引用维特比算法。其中,维特比算法其实就是多步骤每步多选择模型的最优选择问题,其在每一步的所有选择都保存了前续所有步骤到当前步骤当前选择的最小总代价(或者最大价值)以及当前代价的情况下前继步骤的选择。依次计算完所有步骤后,通过回溯的方法找到最优选择路径。符合这个模型的都可以用维特比算法解决。通过维特比算法,最终的轨迹点组合数等于最后一个轨迹原始点的候选路网点的数量。下面将结合图3对地图匹配处理进行详细描述。
图3为本申请的实施例提供的一种基于隐马尔可夫模型和维特比算法的地图匹配方法的流程图。如图3所示,所述可以基于隐马尔可夫模型和维特比算法,采用可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点的具体实现方式可包括以下步骤:
步骤S301,将M个候选路网点,分别插入每个第一候选路网点组合的尾部,得到每个候选路网点对应的N个第二候选路网点组合。
步骤S302,确定每个候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从N个第二候选路网点组合中选取第二转移概率最大的第二候选路网点组合。
步骤S303,将每个候选路网点对应的N个第二候选路网点组合中第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合。
步骤S304,将每个第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点。
步骤S305,基于M个第三候选路网点组合各自的转移概率,从M个首部候选路网点中确定出当前轨迹点的路网点。
可选地,所述基于M个第三候选路网点组合各自的转移概率,从M个首部候选路网点中确定出当前轨迹点的路网点的实现过程可包括以下步骤:从M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为当前轨迹点的路网点。
作为一种示例,请参见图2。如图2所示,P1、P2…PM为当前时刻获取的当前轨迹点对应的M个候选路网点,分别将P1、P2…PM插入每个第一候选路网点组合的尾部,得到每个候选路网点对应的N个第二候选路网点组合,假设从P1对应的N个第二候选路网点组合中选取转移概率最大的一个,为[P1A、P2B、P3A…PK1、P1],假设从P2对应的N个第二候选路网点组合中选取转移概率最大的一个,为[P1C、P2C、P3B…PK2、P2],假设从PM对应的N个第二候选路网点组合中选取转移概率最大的一个,为[P1D、P2A、P3A…PKN、PM],从而得到M个第三候选路网点组合。将每个第三候选路网点组合中首部候选路网点移出,得到M个首部候选路网点为[P1A、P1C、…P1D],其中假设P1C对应的第三候选路网点组合[P1C、P2C、P3B…PK2、P2]的转移概率最大,则P1C即为当前轨迹点的路网点。
需要说明的是,计算第二候选路网点组合[P1A、P2B、P3A…PK1、P1]、[P1C、P2C、P3B…PK2、P2]、…、[P1D、P2A、P3A…PKN、PM]的转移概率时,由于第一候选路网点组合[P1A、P2B、P3A…Pk1]、[P1C、P2C、P3B…PK2]、…、[P1D、P2A、P3A…PKN]的第一转移概率是已知的,因此只需分别计算[PK1、P1]、[PK2、P2]及[PKN、PM]的转移概率,将所得的转移概率与对应的第一转移概率相加,即可得到各个第二候选路网点组合的转移概率,上述计算方法即为维特比算法。由此,在基于隐马尔可夫模型的基础上引用维特比算法,可以进一步降低算法复杂度。
可选地,该实时轨迹数据处理方法还包括:将移出首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;将下一个轨迹点作为新的当前轨迹点,执行基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点的步骤,直至有效轨迹点数据中所有轨迹点全部完成地图匹配。
举例而言,将移出首部候选路网点后的M个第三候选路网点组合作为与下一个轨迹点对应的可变滑动窗口,比如如图2所示,将首部候选路网点[P1A、P1C、…P1D]分别从对应第三候选路网点组合中移出后,得到新的M个候选路网点组合,该新的M个候选路网点组合作为下一个轨迹点的可变滑动窗口,将获取的下一个轨迹点作为新的当前轨迹点,重复上述基于可变滑动窗口对M个候选路网点进行地图匹配处理的步骤,直至获取到的移动对象的所有有效轨迹点数据中所有轨迹点全部完成地图匹配。
通过实施本申请实施例,可以基于隐马尔可夫模型和维特比算法,得到转移概率最大的当前轨迹点的候选路网点组合,从而确定出当前轨迹点的路网点,实现对移动对象的轨迹数据的高精度低延时的实时地图匹配。
请参加图4,图4为本申请实施例提供的另一种实时轨迹数据处理方法流程图。该实时轨迹数据处理方法可将获得的轨迹点的路网点存储至缓存数据库。如图4所示,该实时轨迹数据处理方法可以包括但不限于以下步骤:
步骤S401,获取移动对象的轨迹数据,并对轨迹数据进行去噪处理以获得有效轨迹点数据。
在本申请的实施例中,步骤S401可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S402,获取有效轨迹点数据之中当前轨迹点的M个候选路网点。
其中,在本申请的实施例中,M为正整数。
在本申请的实施例中,步骤S402可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S403,确定与当前轨迹点对应的可变滑动窗口。
在本申请的实施例中,步骤S403可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
其中,可变滑动窗口的长度为K,可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个第一转移概率下对应的第一候选路网点组合,每个第一候选路网点组合包括K个历史候选路网点,N和K分别为正整数
步骤S404,基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
在本申请的实施例中,步骤S404可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S405,采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。
举例而言,当移动对象的路网点为首次存储至缓存数据库时,使用Insert(插入)语句,在该缓存数据库中创建该移动对象对应的路网点集合,并将该路网点存入该路网点集合;或者,当移动对象的路网点非首次存储至缓存数据库时,使用Update(更新)语句,将该路网点写入该移动对象对应的路网点集合。
需要说明的是,由于对缓存数据库频繁的I/O(input/output,输入/输出)操作会浪费大量的资源,因此将轨迹点的路网点存储至缓存数据库频率也很重要,本申请实施例提供的实时轨迹数据处理方法,可以根据实际需求自定义操作频率。
作为一种示例,可以设定为每5秒进行一次将获得的轨迹点的路网点存储至缓存数据库的操作。
在一种实现方式中,该实时轨迹数据处理方法还包括:响应于对移动对象的轨迹查询请求,基于轨迹查询请求从缓存数据库中查询移动对象的路网信息;和/或,响应于对移动对象的路网信息显示请求,将移动对象的路网信息进行可视化处理。
举例而言,响应于对移动对象的轨迹查询请求,基于轨迹查询请求从缓存数据库中获取该移动对象的路网点集合,将该路网点集合作为轨迹查询请求的路网信息结果进行反馈;和/或,响应于请求显示移动对象的路网信息,则基于该移动对象的路网点集合,在预设的地图上连接该移动对象的路网点集合中的各个路网点,实现对该移动对象的路网信息进行可视化处理。
需要说明的是,可以预先设置缓存数据库中移动对象的路网点集合中的路网点个数阈值,当该路网点集合长度达到阈值后,自动移出位于该路网点集合队列首部的路网点,以腾出存储空间,便于在集合中添加新的路网点。
通过实施本申请实施例,可以将获得的轨迹点的路网点存储至缓存数据库,以供进行轨迹查询及可视化处理,从而实现对移动对象轨迹的实时查询与展示。
请参见图5,图为本申请实施例提供的又一种实时轨迹数据处理方法流程图。该实时轨迹数据处理方法可以将轨迹点的路网点存储至存储数据库。如图5所示,该实时轨迹数据处理方法可以包括但不限于以下步骤:
步骤S501,获取移动对象的轨迹数据,并对轨迹数据进行去噪处理以获得有效轨迹点数据。
在本申请的实施例中,步骤S501可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述
步骤S502,获取有效轨迹点数据之中当前轨迹点的M个候选路网点。
其中,在本申请的实施例中,M为正整数。
在本申请的实施例中,步骤S502可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S503,确定与当前轨迹点对应的可变滑动窗口。
其中,可变滑动窗口的长度为K,可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个第一转移概率下对应的第一候选路网点组合,每个第一候选路网点组合包括K个历史候选路网点,N和K分别为正整数。
在本申请的实施例中,步骤S503可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S504,基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
在本申请的实施例中,步骤S504可分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤S505,获取有效轨迹数据中各轨迹点的路网点,并将有效轨迹数据中各轨迹点的路网点存储至储存数据库中。
举例而言,获取移动对象的有效轨迹数据中各轨迹点的路网点,将该路网点存储至储存数据库中该移动对象对应的路网点集合中。
在一种实现方式中,该实时轨迹数据处理方法还包括:按照预设的轨迹截断条件对有效轨迹数据中各轨迹点进行轨迹截断处理,将截断后的路网点存储至储存数据库。
举例而言,当内存中的有效轨迹数据中任一轨迹点满足预设的轨迹截断条件时,将该轨迹点之前的历史轨迹点移除,并存储至储存数据库。
其中,在本申请实施例中,预设的轨迹截断条件可以包括但不限于:移动对象在轨迹点与上一个轨迹点之间的速度大于预设的第二速度阈值;和/或,轨迹点的生产时间与上一个轨迹点获取时间之间的时刻间隔大与预设的时间阈值;和/或,轨迹点与上一个轨迹点之间无能够联通的路网;和/或,轨迹点的获取时间与轨迹点序列中的队首的轨迹点的获取时间之间的时刻间隔大于预设的第三时间阈值;和/或,轨迹序列中历史轨迹点的个数大于预设数量阈值。
也就是说,在将移动对象有效的轨迹点添加到内存中该移动对象的轨迹点集合中后,可以对轨迹点进行以下处理:判断移动对象在轨迹点与上一个轨迹点之间的速度是否大于预设的第二速度阈值,如果大于预设的第二速度阈值,则将该轨迹点之前的历史轨迹点移除并存储至储存数据库;和/或,判断该轨迹点的获取时间与上一个轨迹点获取时间之间的时刻间隔是否大于预设的时间阈值,如果大于预设的时间阈值,则将该轨迹点之前的历史轨迹点移除并存储至储存数据库;和/或,判断该轨迹点与上一个轨迹点之间是否有能够联通的路网,如果不存在你能够联通的路网,则将该轨迹点之前的历史轨迹点移除并存储至储存数据库;和/或,判断该轨迹点的获取时间与轨迹点序列中的队首的轨迹点的获取时间之间的时刻间隔是否大于预设的第三时间阈值,如果大于预设的第三时间阈值,则将该轨迹点之前的历史轨迹点移除并存储至储存数据库;和/或,判断轨迹序列中历史轨迹点的个数是否大于预设数量阈值,如果大于预设数量阈值,则将该轨迹点之前的历史轨迹点移除并存储至储存数据库;基于上述条件对移动对象的轨迹点进行处理后,从内存中移除的轨迹点存储至储存数据库,以节约内存空间。
通过实施本申请实施例,可以将各轨迹点的路网点存储至储存数据库中,并对内存中的轨迹点进行阶段处理,以减少对缓存数据库及内存的存储空间占用,节省存储资源。
请参见图6,图6为本申请提供的一种实时轨迹数据处理装置的结构示意图。如图6所示,该实时轨迹数据处理装置600包括:第一处理模块601、获取模块602、第二处理模块603及第三处理模块604。
其中,第一处理模块601用于:获取移动对象的轨迹数据,并对轨迹数据进行去噪处理以获得有效轨迹点数据;获取模块602用于:获取有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,M为正整数;第二处理模块603用于:确定与当前轨迹点对应的可变滑动窗口;其中,可变滑动窗口的长度为K,可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个第一转移概率下对应的第一候选路网点组合,每个第一候选路网点组合包括K个历史候选路网点,N和K分别为正整数;第三处理模块604用于:基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
在一种实现方式中,第三处理模块604具体用于:基于隐马尔可夫模型和维特比算法,采用可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点。
在一种可选地实现方式中,第三处理模块604具体用于:将M个候选路网点,分别插入每个第一候选路网点组合的尾部,得到每个候选路网点对应的N个第二候选路网点组合;确定每个候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从N个第二候选路网点组合中选取第二转移概率最大的第二候选路网点组合;将每个候选路网点对应的N个第二候选路网点组合中第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合;将每个第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点;基于M个第三候选路网点组合各自的转移概率,从M个首部候选路网点中确定出当前轨迹点的路网点。
可选地,第三处理模块604具体用于:从M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为当前轨迹点的路网点。
作为一种示例,请参见图7,图7为本申请实施例提供的另一种实时轨迹数据处理装置的结构示意图。如图7所示,该实时轨迹数据处理装置700还包括第四处理模块705,用于将移出首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;第五处理模块706,用于将下一个轨迹点作为新的当前轨迹点,执行基于可变滑动窗口对M个候选路网点进行地图匹配处理,获得当前轨迹点的路网点的步骤,直至有效轨迹点数据中所有轨迹点全部完成地图匹配。其中,图7中的模块701-704与图6中的模块601-604具有相同的结构和功能。
作为一种示例,请参见图8,图8为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图。如图8所示,该实时轨迹数据处理装置800还包括:存储模块805,用于采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。其中,图8中的模块801-804与图6中的模块601-604具有相同的结构和功能。
作为一种示例,请参见图9,图9为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图。如图9所示,该实时轨迹数据处理装置还包括查询模块905,用于响应于对移动对象的轨迹查询请求,基于轨迹查询请求从缓存数据库中查询移动对象的路网信息;和/或,可视化模块906,用于响应于对移动对象的路网信息显示请求,将移动对象的路网信息进行可视化处理。其中,图9中的模块901-904与图6中的模块01-5604具有相同的结构和功能。
作为一种示例,请参见图10,图10为本申请实施例提供的又一种实时轨迹数据处理装置的结构示意图。如图10所示,该实时轨迹数据处理装置还包括第四处理模块1005,用于获取有效轨迹数据中各轨迹点的路网点,并将有效轨迹数据中各轨迹点的路网点存储至储存数据库中。其中,图10中的模块1001-1004与图6中的模块601-506具有相同的结构和功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本申请实施例的实时轨迹数据处理装置,可以基于当前轨迹点及对应的滑动窗口获取当前轨迹点的路网点,减少所需计算量,从而实现对移动对象的轨迹数据的高精度低延时的实时地图匹配
基于本申请的实施例,本申请还提供了一种实时轨迹数据处理系统,该系统包括:分布式流处理引擎,所述分布式流处理引擎包括多个键控流分区;其中,所述多个键控流分区采用本申请任一实施例描述的方法对不同移动对象的轨迹数据进行实时处理。
作为一种示例,分布式流处理引擎可以是Apache Flink分布式流数据流引擎。
请参见图11,图11为本申请实施例提供的一种实时轨迹数据处理系统示意图。如图11所示,可通过消息中间件(例如:分布式消息中间件Kafka)获取多个移动对象的轨迹数据并实时接入进Apache Flink之后,通过每个移动对象的识别信息(例如:车牌号)将多个移动对象的轨迹数据分成多个键控流分区。同时,实时地图匹配需要的路网数据通过广播流分发到各个键控流分区当中,以避免路网数据重复读取构建。对于每个键控流分区进行实时的预处理(例如:去噪)、地图匹配后,在预先设置的频率下通过Apache Flink侧输出将匹配后的轨迹实时存储到缓存数据库中以供后续的轨迹查询以及可视化展示。而主输出则是将多个移动对象地图匹配后的轨迹点累加,在到达一定的阈值后输出到储存数据库中。
基于本申请的实施例,本申请还提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行前述任一实施例的实时轨迹数据处理方法。
基于本申请的实施例,本申请还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行根据本申请实施例提供的前述任一实施例的实时轨迹数据处理方法。
请参见图12,如图12所示,为可以用来实施本申请的实施例的示例电子设备的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图12所示,设备1200包括计算单元1201,其可以根据存储在只读存储器(Read-Only Memory,ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(Random Access Memory,RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM1203中,还可存储设备1200操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(Central Processing Unit,CPU)、图形处理单元(Graphics Processing Unit,GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(Digital Signal Process,DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如实时轨迹数据处理方法。例如,在一些实施例中,实时轨迹数据处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1202和/或通信单元1209而被载入和/或安装到设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的实时轨迹数据处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行实时轨迹数据处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(Field Programmable GateArray,FPGA)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、专用标准产品(ApplicationSpecific Standard Parts,ASSP)、芯片上系统的系统(System On Chip,SOC)、负载可编程逻辑设备(Complex Programmable Logic Device,CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器((Erasable Programmable Read-Only Memory,EPROM)或快闪存储器)、光纤、便捷式紧凑盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,阴极射线管(Cathode Ray Tube,CRT)或者LCD(Liquid Crystal Display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS(VirtualPrivate Server虚拟专用服务器)服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (22)
1.一种实时轨迹数据处理方法,其特征在于,包括:
获取移动对象的轨迹数据,并对所述轨迹数据进行去噪处理以获得有效轨迹点数据;
获取所述有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,所述M为正整数;
确定与所述当前轨迹点对应的可变滑动窗口;其中,所述可变滑动窗口的长度为K,所述可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个所述第一转移概率下对应的第一候选路网点组合,每个所述第一候选路网点组合包括K个历史候选路网点,所述N和K分别为正整数;
基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
2.根据权利要求1所述的方法,其特征在于,所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点,包括:
基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
3.根据权利要求2所述的方法,其特征在于,所述基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点,包括:
将所述M个候选路网点,分别插入每个所述第一候选路网点组合的尾部,得到每个所述候选路网点对应的N个第二候选路网点组合;
确定每个所述候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从所述N个第二候选路网点组合中选取所述第二转移概率最大的第二候选路网点组合;
将每个所述候选路网点对应的N个第二候选路网点组合中所述第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合;
将每个所述第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点;
基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点。
4.根据权利要求3所述的方法,其特征在于,所述基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点,包括:
从所述M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为所述当前轨迹点的路网点。
5.根据权利要求3或4所述的方法,其特征在于,还包括:
将移出所述首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;
将所述下一个轨迹点作为新的当前轨迹点,执行所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点的步骤,直至所述有效轨迹点数据中所有轨迹点全部完成地图匹配。
6.根据权利要求1所述的方法,其特征在于,还包括:
采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。
7.根据权利要求6所述的方法,其特征在于,还包括:
响应于对所述移动对象的轨迹查询请求,基于所述轨迹查询请求从所述缓存数据库中查询所述移动对象的路网信息;
和/或,响应于对所述移动对象的路网信息显示请求,将所述移动对象的路网信息进行可视化处理。
8.根据权利要求1所述的方法,其特征在于,还包括:
获取所述有效轨迹数据中各轨迹点的路网点,并将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中。
9.根据权利要求8所述的方法,其特征在于,所述将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中,包括:
按照预设的轨迹截断条件对所述有效轨迹数据中各轨迹点进行轨迹截断处理,将截断后的路网点存储至所述储存数据库。
10.一种实时轨迹数据处理装置,其特征在于,所述装置包括:
第一处理模块,用于获取移动对象的轨迹数据,并对所述轨迹数据进行去噪处理以获得有效轨迹点数据;
获取模块,用于获取所述有效轨迹点数据之中当前轨迹点的M个候选路网点;其中,所述M为正整数;
第二处理模块,用于确定与所述当前轨迹点对应的可变滑动窗口;其中,所述可变滑动窗口的长度为K,所述可变滑动窗口包括上一个轨迹点的N个第一转移概率和每个所述第一转移概率下对应的第一候选路网点组合,每个所述第一候选路网点组合包括K个历史候选路网点,所述N和K分别为正整数;
第三处理模块,用于基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
11.根据权利要求10所述的装置,其特征在于,所述第三处理模块具体用于:
基于隐马尔可夫模型和维特比算法,采用所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点。
12.根据权利要求11所述的装置,其特征在于,所述第三处理模块具体用于:
将所述M个候选路网点,分别插入每个所述第一候选路网点组合的尾部,得到每个所述候选路网点对应的N个第二候选路网点组合;
确定每个所述候选路网点对应的N个第二候选路网点组合的N个第二转移概率,从所述N个第二候选路网点组合中选取所述第二转移概率最大的第二候选路网点组合;
将每个所述候选路网点对应的N个第二候选路网点组合中所述第二转移概率最大的第二候选路网点组合确定为第三候选路网点组合,以获得M个第三候选路网点组合;
将每个所述第三候选路网点组合中首部候选路网点移出,以得到M个首部候选路网点;
基于所述M个第三候选路网点组合各自的转移概率,从所述M个首部候选路网点中确定出所述当前轨迹点的路网点。
13.根据权利要求12所述的装置,其特征在于,所述第三处理模块具体用于:
从所述M个首部候选路网点中,选取从转移概率最大的第三候选路网点组合中所移出的首部候选路网点,确定为所述当前轨迹点的路网点。
14.根据权利要求12或13所述的装置,其特征在于,所述装置还包括:
第四处理模块,用于将移出所述首部候选路网点后的M个第三候选路网点组合确定为与下一个轨迹点对应的可变滑动窗口;
第五处理模块,用于将所述下一个轨迹点作为新的当前轨迹点,执行所述基于所述可变滑动窗口对所述M个候选路网点进行地图匹配处理,获得所述当前轨迹点的路网点的步骤,直至所述有效轨迹点数据中所有轨迹点全部完成地图匹配。
15.根据权利要求10所述的装置,其特征在于,所述装置还包括:
存储模块,用于采用更新插入Upsert语句将获得的轨迹点的路网点存储至缓存数据库。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括:
查询模块,用于响应于对所述移动对象的轨迹查询请求,基于所述轨迹查询请求从所述缓存数据库中查询所述移动对象的路网信息;
和/或,可视化模块,用于响应于对所述移动对象的路网信息显示请求,将所述移动对象的路网信息进行可视化处理。
17.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第四处理模块,用于获取所述有效轨迹数据中各轨迹点的路网点,并将所述有效轨迹数据中各轨迹点的路网点存储至储存数据库中。
18.根据权利要求17所述的装置,其特征在于,所述第四处理模块具体用于:
按照预设的轨迹截断条件对所述有效轨迹数据中各轨迹点进行轨迹截断处理,将截断后的路网点存储至所述储存数据库。
19.一种实时轨迹数据处理系统,其特征在于,包括:
分布式流处理引擎,所述分布式流处理引擎包括多个键控流分区;其中,所述多个键控流分区采用如权利要求1至9中任一项所述的方法对不同移动对象的轨迹数据进行实时处理。
20.一种电子设备,其特征在于,包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至9中任一项所述的实时轨迹数据处理方法。
21.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行如权利要求1至9中任一项所述的实时轨迹数据处理方法。
22.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序在被处理器执行时实现如权利要求1至9中任一项所述的实时轨迹数据处理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210911140.9A CN115168527A (zh) | 2022-07-29 | 2022-07-29 | 实时轨迹数据处理方法、装置、系统及电子设备 |
PCT/CN2023/081970 WO2024021632A1 (zh) | 2022-07-29 | 2023-03-16 | 实时轨迹数据处理方法、装置、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210911140.9A CN115168527A (zh) | 2022-07-29 | 2022-07-29 | 实时轨迹数据处理方法、装置、系统及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115168527A true CN115168527A (zh) | 2022-10-11 |
Family
ID=83476670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210911140.9A Pending CN115168527A (zh) | 2022-07-29 | 2022-07-29 | 实时轨迹数据处理方法、装置、系统及电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115168527A (zh) |
WO (1) | WO2024021632A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024021632A1 (zh) * | 2022-07-29 | 2024-02-01 | 京东城市(北京)数字科技有限公司 | 实时轨迹数据处理方法、装置、系统及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108645421A (zh) * | 2018-05-15 | 2018-10-12 | 天津大学 | 基于隐马尔科夫模型的自适应在线地图匹配方法 |
US10533862B1 (en) * | 2018-11-28 | 2020-01-14 | Uber Technologies, Inc. | Biasing map matched trajectories based on planned route information |
CN110260870B (zh) * | 2019-07-18 | 2021-03-12 | 北京百度网讯科技有限公司 | 基于隐马尔可夫模型的地图匹配方法、装置、设备和介质 |
CN112632202B (zh) * | 2020-12-18 | 2022-11-18 | 东南大学 | 一种基于高阶隐马尔可夫模型的动态地图匹配方法 |
CN114440900A (zh) * | 2022-01-07 | 2022-05-06 | 中国地质大学(武汉) | 改进的隐马尔科夫模型地图匹配方法及装置 |
CN115168527A (zh) * | 2022-07-29 | 2022-10-11 | 京东城市(北京)数字科技有限公司 | 实时轨迹数据处理方法、装置、系统及电子设备 |
-
2022
- 2022-07-29 CN CN202210911140.9A patent/CN115168527A/zh active Pending
-
2023
- 2023-03-16 WO PCT/CN2023/081970 patent/WO2024021632A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024021632A1 (zh) * | 2022-07-29 | 2024-02-01 | 京东城市(北京)数字科技有限公司 | 实时轨迹数据处理方法、装置、系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2024021632A1 (zh) | 2024-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113327344B (zh) | 融合定位方法、装置、设备、存储介质及程序产品 | |
CN114036253B (zh) | 高精地图数据处理方法、装置、电子设备和介质 | |
CN113971723B (zh) | 高精地图中三维地图的构建方法、装置、设备和存储介质 | |
CN113223113A (zh) | 车道线处理方法、装置、电子设备和云控平台 | |
CN114003613A (zh) | 高精地图车道线更新方法、装置、电子设备以及存储介质 | |
CN112884837A (zh) | 道路定位方法、装置、设备及存储介质 | |
CN115168527A (zh) | 实时轨迹数据处理方法、装置、系统及电子设备 | |
CN115410410A (zh) | 车位推荐方法、装置、设备以及存储介质 | |
CN113219505B (zh) | 用于车路协同隧道场景的采集gps坐标的方法、装置和设备 | |
CN114111813A (zh) | 高精地图元素更新方法、装置、电子设备及存储介质 | |
CN112862017A (zh) | 点云数据的标注方法、装置、设备和介质 | |
CN113190766A (zh) | 路径规划方法、装置、电子设备及存储介质 | |
CN113591709B (zh) | 动作识别方法、装置、设备、介质和产品 | |
CN115206102A (zh) | 确定交通路径的方法、装置、电子设备和介质 | |
CN114659537A (zh) | 导航起点道路确定方法、装置、设备及存储介质 | |
CN114625822A (zh) | 高精地图的更新方法、装置及电子设备 | |
CN114330807A (zh) | 路线的确定方法、装置和电子设备 | |
CN114383600B (zh) | 用于地图的处理方法、装置、电子设备和存储介质 | |
CN113313049A (zh) | 超参数的确定方法、装置、设备、存储介质以及计算机程序产品 | |
CN112419728B (zh) | 确定路况信息的方法、装置、设备和存储介质 | |
CN115080677A (zh) | 用于规划路线的方法、装置、设备、介质和产品 | |
CN114822066B (zh) | 车辆定位方法、装置、电子设备和存储介质 | |
CN112925867B (zh) | 定位真值的获取方法、装置及电子设备 | |
US20230213353A1 (en) | Method of updating road information, electronic device, and storage medium | |
CN113868532B (zh) | 一种地点推荐方法、装置、电子设备及存储介质 |
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 |