CN111444294A - 一种轨迹补全方法、装置及电子设备 - Google Patents

一种轨迹补全方法、装置及电子设备 Download PDF

Info

Publication number
CN111444294A
CN111444294A CN201910044845.3A CN201910044845A CN111444294A CN 111444294 A CN111444294 A CN 111444294A CN 201910044845 A CN201910044845 A CN 201910044845A CN 111444294 A CN111444294 A CN 111444294A
Authority
CN
China
Prior art keywords
track
point
monitoring
monitoring point
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.)
Granted
Application number
CN201910044845.3A
Other languages
English (en)
Other versions
CN111444294B (zh
Inventor
龚安邦
胡通海
朱琼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision System Technology Co Ltd
Original Assignee
Hangzhou Hikvision System Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision System Technology Co Ltd filed Critical Hangzhou Hikvision System Technology Co Ltd
Priority to CN201910044845.3A priority Critical patent/CN111444294B/zh
Publication of CN111444294A publication Critical patent/CN111444294A/zh
Application granted granted Critical
Publication of CN111444294B publication Critical patent/CN111444294B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Train Traffic Observation, Control, And Security (AREA)

Abstract

本发明实施例提供了一种轨迹补全方法、装置及电子设备。方法包括:查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点;针对每个目的监控点,生成子轨迹;将源监控点所对应的目的监控点中未做过源监控点的监控点,作为新的源监控点,并返回执行所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;基于所得到的子轨迹,确定参考轨迹;根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹。可以降低因参考轨迹不够全面导致的轨迹补全的不准确性。

Description

一种轨迹补全方法、装置及电子设备
技术领域
本发明涉及物联网技术领域,特别是涉及一种轨迹补全方法、装置及电子设备。
背景技术
可以在多个预设的监控点设置相应的采集设备(如网络摄像机、基站),在监控目标在该监控点出现后,采集监控目标的数据,以对监控目标进行监控。根据采集到监控目标的数据的监控点,以及这些监控点采集到监控目标的数据的时间,可以确定出监控目标的轨迹。
在一些特殊情况下,如采集设备故障、没有开启等,采集设备可能没有正常采集到监控目标的数据,导致得到的监控目标的轨迹存在缺失。例如,监控目标先后经过监控点1、监控点2、监控点3,监控点2的采集设备由于出现故障没有采集到监控目标的数据,则得到的轨迹中,监控点1到监控点3之间的轨迹缺失。相关技术中,可以查找监控目标历史上从监控点1移动至监控点3的轨迹,作为参考轨迹,并基于参考轨迹补全监控点1到监控点3之间的轨迹。
但是,历史数据往往有限,难以包括所有从监控点1到监控点3之间可能的轨迹,因此参考轨迹不够全面,可能导致轨迹补全不准确。
发明内容
本发明实施例的目的在于提供一种轨迹补全方法、装置及电子设备,以实现降低因参考轨迹不够全面导致的轨迹补全的不准确性。具体技术方案如下:
在本发明实施例的第一方面,提供了一种轨迹补全方法,所述方法包括:
查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
将源监控点所对应的目的监控点中未做过源监控点的监控点,作为新的源监控点,并返回执行所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
基于所得到的子轨迹,确定以所述起始轨迹点为起点,所述待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹。
结合第一方面,在第一种可能的实现方式中,在所述查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点之前,所述方法还包括:
根据历史轨迹,以监控点为顶点,建立图模型,所述图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
所述查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点,包括:
在所述图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据历史轨迹,以监控点为顶点,建立图模型,包括:
针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,在所述根据历史轨迹,以监控点为顶点,建立图模型之后,所述方法还包括:
从待补全轨迹的终点开始,按照时间顺序,依次确定所述待补全轨迹所包括的监控点是否与所述待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为所述待补全轨迹的终点,将所确定的监控点作为起始轨迹点,所述待补全轨迹的终点作为终止轨迹点。
结合第一方面的第一种可能的实现方式,在第四种可能的实现方式中,在所述根据历史轨迹,以监控点为顶点,建立图模型之后,所述方法还包括:
将待补全轨迹中时域相邻,并且在所述图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
结合第一方面,在第五种可能的实现方式中,所述参考轨迹为多个轨迹;
所述根据所述参考轨迹,补全所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹,包括:
基于以所述起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在所述起始轨迹点和所述终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从所述起始轨迹点开始至所述终止轨迹点之间的补全轨迹,得到第一轨迹。
结合第一方面,在第六种可能的实现方式中,在所述根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹之后,所述方法还包括:
确定所述第一轨迹与第二轨迹之间的重合监控点,所述重合监控点为属于所述第一轨迹,并且属于所述第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,所述经过时间差为所述第一轨迹中监控目标经过该重合监控点的时间,与所述第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度;
如果所述相似度高于预设相似度阈值,合并所述第一轨迹与所述第二轨迹。
结合第一方面的第六种可能的实现方式,在第七种可能的实现方式中,所述基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度,包括:
按照下式计算所述第一轨迹与所述第二轨迹之间的相似度:
Figure BDA0001948795270000041
其中,P为所述相似度,C′为所述重合监控点的个数,C为所述第一轨迹与所述第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
在本发明实施例的第二方面,提供了一种轨迹补全装置,所述装置包括:
邻点检索模块,用于查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
子轨迹生成模块,针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
所述邻点检索模块,还用于将源监控点所对应的目的监控点中未做过源监控点的监控点,作为新的源监控点,并返回执行所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
轨迹确定模块,用于基于所得到的子轨迹,确定以所述起始轨迹点为起点,所述待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
补全模块,根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹。
结合第二方面,在第一种可能的实现方式中,所述装置还包括图模型建立模块,用于在所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点所对应的目的监控点之前,根据历史轨迹,以监控点为顶点,建立图模型,所述图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
所述邻点检索模块,具体用于在所述图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述图模型建立模块,具体用于针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
结合第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述装置还包括第一异常轨迹检测模块,用于在所述根据历史轨迹,以监控点为顶点,建立图模型之后,从待补全轨迹的终点开始,按照时间顺序,依次确定所述待补全轨迹所包括的监控点是否与所述待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为所述待补全轨迹的终点,将所确定的监控点作为起始轨迹点,所述待补全轨迹的终点作为终止轨迹点。
结合第二方面的第一种可能的实现方式,在第四种可能的实现方式中,所述装置还包括第二异常轨迹检测模块,用于在所述根据历史轨迹,以监控点为顶点,建立图模型之后,将待补全轨迹中时域相邻,并且在所述图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
结合第二方面,在第五种可能的实现方式中,所述参考轨迹为多个轨迹;
所述补全模块,具体用于基于以所述起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在所述起始轨迹点和所述终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从所述起始轨迹点开始至所述终止轨迹点之间的补全轨迹。
结合第二方面,在第六种可能的实现方式中,所述装置还包括并轨分析模块,用于在所述根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹之后,确定所述第一轨迹与第二轨迹之间的重合监控点,所述重合监控点为属于所述第一轨迹,并且属于所述第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,所述经过时间差为所述第一轨迹中监控目标经过该重合监控点的时间,与所述第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度;
如果所述相似度高于预设相似度阈值,合并所述第一轨迹与所述第二轨迹。
结合第二方面的第六种可能的实现方式,在第七种可能的实现方式中,所述并轨分析模块,具体用于按照下式计算所述第一轨迹与所述第二轨迹之间的相似度:
Figure BDA0001948795270000061
其中,P为所述相似度,C′为所述重合监控点的个数,C为所述第一轨迹与所述第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
在本发明实施例的第三方面,提供了一种电子设备,包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的轨迹补全方法。
在本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现实现上述第一方面任一所述的轨迹补全方法。
本发明实施例提供的一种估计补全方法、装置及电子设备,可以基于历史轨迹,拆解得到可能的子轨迹,并基于子轨迹进行,确定以起始轨迹点为起点,终止轨迹点为终点的参考轨迹。一方面,由于参考轨迹所包括的子轨迹均为历史轨迹拆解得到的可能的子轨迹,因此可以认为参考轨迹为从起始轨迹点移动至终止轨迹点的可能的轨迹。另一方面,本发明实施例可以结合多个不同的历史轨迹拆解得到的子轨迹确定参考轨迹,因此确定得到的参考轨迹更加全面,可以降低因参考轨迹不够全面导致的轨迹补全的不准确性。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的轨迹补全方法的一种流程示意图;
图2a为本发明实施例提供的图模型的一种结构示意图;
图2b为本发明实施例提供的图模型的另一种结构示意图;
图3为本发明实施例提供的轨迹补全方法的另一种流程示意图;
图4为本发明实施例提供的轨迹补全方法的另一种流程示意图;
图5为本发明实施例提供的图模型建立方法的一种流程示意图;
图6为本发明实施例提供的异常轨迹检测方法的一种流程示意图;
图7为本发明实施例提供的轨迹并轨方法的一种流程示意图;
图8为本发明实施例提供的轨迹补全装置的一种结构示意图;
图9为本发明实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1所示为本发明实施例提供的轨迹补全方法的一种流程示意图,可以包括:
S101,查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为起始轨迹点。
其中,起始轨迹点为待补全轨迹中缺失的轨迹的起点,缺失的轨迹的终点下文称终止轨迹点,示例性的,假设待补全轨迹中丢失的轨迹为以监控点1为起点,以监控点3为终点的轨迹,则起始轨迹点为监控点A,终止轨迹点为监控点3。
本实施例中,所查找的历史轨迹,可以是与待补全轨迹具有相同特征的历史轨迹,示例性的,假设待补全轨迹为监控目标1(根据实际需求,监控目标可以是人、车辆等),则所查找的历史轨迹可以是监控目标1的历史轨迹,也可以是多个与监控目标1的特征匹配的监控目标的历史轨迹。
两个监控点在一个轨迹中时域相邻,表示将该轨迹所包括的监控点按照监控目标经过的时间顺序排序得到的监控点序列中,这两个监控点相邻。示例性的,假设一个历史轨迹包括监控点1、监控点2、监控点3、监控点4,并且监控目标经过监控点1的时间为10:00,经过监控点2的时间为11:00,经过监控点3的时间为10:30,经过监控点4的时间为11:30,则将该历史轨迹所包括的监控点按照监控目标经过的时间顺序排序得到的监控点序列为{1,3,2,4},因此在该历史轨迹中,监控点1和监控点3时域相邻,而监控点1与监控点2时域不相邻。
S102,针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹。
在不考虑历史轨迹存在误差的情况下,如果两个监控点在历史轨迹中时域相邻,则表示监控目标曾经从这两个监控点中的一个监控点移动至另一个监控点,因此可以认为以这两个监控点中的一个监控点为起点,另一个监控点为终点的子轨迹是监控目标可能使用的子轨迹。
本实施例中,所生成的子轨迹为从该目的监控点所对应的源监控点直接移动至该目的监控点的轨迹,即所生成的轨迹中不包括除该目的监控点,以及该目的监控点所对应的源监控点以外的其他监控点。
S103,将源监控点所对应的目的监控点中不为源监控点的监控点,作为新的源监控点,并返回执行S101,直至已经返回执行的次数达到预设次数阈值,或不存在新的源监控点。
预设次数阈值可以根据实际需求进行设备,示例性的,假设起始轨迹点与终止轨迹点之间的距离较近,可以认为从起始轨迹点移动至终止轨迹点需要经过的监控点个数较少,则可以将预设次数阈值设置的较低。假设起始轨迹点与终止轨迹点之间的距离较远,可以认为从起始轨迹点移动至终止轨迹点需要经过的监控点个数较多,则可以将预设次数阈值设置的较高
S104,基于所得到的子轨迹,确定以起始轨迹点为起点,终止轨迹点为终点的轨迹,作为参考轨迹。
本实施例中,确定得到的每个参考轨迹包括一个或多个所得到的子轨迹,并且不包括所得到的子轨迹以外的其他子轨迹。为讨论方便,下文将以(1,2)的形式表示以监控点1为起点,监控点2为终点的子轨迹,[1,2,3]表示以监控点1为起点,经过监控点2,到达监控点3的轨迹。
假设所得到子轨迹分别为(1,2)、(1,3)、(1,4)、(2,4)、(3,4),则在不限定起始轨迹点以及终止轨迹点的情况下,能够确定得到的以起始轨迹点Wie起点,以终止轨迹点为终点的轨迹有[1,2]、[1,2,4]、[1,3]、[1,3,4]、[1,4]、[2,4]、[3,4]。如果起始轨迹点为监控点1,终止监控点为监控点4,则参考轨迹为[1,2,4]、[1,3,4]、[1,4]。
S105,根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹。
如果只有一个参考轨迹,可以直接将该参考轨迹作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。如果有多个参考轨迹,则可以是按照预设规则从多个参考轨迹中选择出一个参考轨迹,并将该参考轨迹作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。也可以是对多个参考轨迹进行加权平均,得到综合参考轨迹,并将该综合参考轨迹作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。还可以是按照预设规则从多个参考轨迹中筛选出部分参考轨迹(部分参考轨迹的数目大于1个),对该部分参考轨迹进行加权平均,得到综合参考轨迹,并将该综合参考轨迹作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。
例如,可以是基于以起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在起始轨迹点和终止轨迹点采集到的监控目标特征,分别计算各个参考轨迹的置信度。将置信度最高的参考轨迹,作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。示例性的,假设起始轨迹点为监控点1,终止轨迹点为监控点4,则可以是查找历史轨迹中,以监控点1为起点,监控点4为终点的轨迹,并提取这些轨迹中的在监控点1和监控点4采集到的监控目标特征(如监控目标的速度、方向、颜色、外形等),基于这些历史轨迹,以及这些采集到的监控目标特征进行机器学习,得到多分类器(如softmax函数),将本次待补全轨迹中监控点1和监控点4采集到的监控目标特征,输入该多分类器,得到各个参考轨迹的置信度。
选用该实施例,可以基于历史轨迹,拆解得到可能的子轨迹,并基于子轨迹确定得到的,以得到以起始轨迹点为起点,终止轨迹点为终点的参考轨迹。一方面,由于参考轨迹所包括的子轨迹均为历史轨迹拆解得到的可能的子轨迹,因此可以认为参考轨迹为从起始轨迹点移动至终止轨迹点的可能的轨迹。另一方面,本发明实施例可以结合多个不同的历史轨迹拆解得到的子轨迹确定得到参考轨迹,因此得到的参考轨迹更加全面,可以降低因参考轨迹不够全面导致的轨迹补全的不准确性。
示例性的,假设起始轨迹点为监控点1,终止监控点为监控点3,历史轨迹包括[1,3]、[1,2,4]、[2,3,4],则如果将历史轨迹中以起始轨迹点为起点,终止监控点为终点的轨迹作为参考轨迹,则参考轨迹只包括[1,3],而本发明实施例中,假设预设次数阈值为1:
以起始轨迹点(即监控点1)为初始的源监控点,查找历史轨迹,可以发现监控点2、监控点3在历史轨迹中与监控点1时域相邻,因此将监控点2、监控点3作为目的监控点,并生成子轨迹(1,2)、(1,3)。
将监控点2、监控点3作为新的源监控点,对于监控点2,时域相邻的监控点为监控点1、监控点3、监控点4,由于监控点1为历史源监控点,因此对于监控点2,目的监控点为监控点3、监控点4。同理,对于监控点3,目的监控点为监控点2、监控点4,可以生成子轨迹(2,3)、(2,4)、(3,2)、(3,4),此时已经达到预设次数阈值,不再返回执行。
因此所得到的子轨迹合计为:(1,2)、(1,3)、(2,3)、(2,4)、(3,2)、(3,4),以监控点1为起始轨迹点,监控点3为终止轨迹点,可以确定得到轨迹:[1,2,3]、[1,3]。可见,相比于将历史轨迹中以起始轨迹点为起点,终止监控点为终点的轨迹作为参考轨迹,本发明实施例得到的参考轨迹中还包括[1,2,3],并且由于子轨迹(1,2)、(2,3)均为可能的子轨迹,因此轨迹[1,2,3]是一个合理的参考轨迹。
在一些可选的实施例中,本发明实施例提供的轨迹补全方法,可以是基于图模型实现的。图模型中的顶点为监控点,边用于表示该边所连接的两个监控点在历史轨迹中时域相邻,边长可以用于表示所连接的两个监控点之间的距离。并且图模型中的边可以是不带有方向的,如图2a所示,也可以是带有方向的,如图2b所示,其中,边的方向表示在所连接的两个监控点,在历史轨迹中时域上的先后顺序,例如,图中监控点1与监控点3之间的边,用于表示监控点1与监控点3在至少一个历史轨迹中时域相邻,并且在该至少一个历史轨迹中,经过监控点1的时间先于经过监控点3的时间。在这些实施例中,本发明实施例提供的轨迹补全方法可以参见图3,包括:
S301,在图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为起始轨迹点。
以源监控点为图2b中的监控点1为例,与监控点1相邻的监控点包括监控点2、监控点3、监控点4。
S302,针对每个目的监控点,生产以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹。
该步骤与S102相同,可以参见前述关于S102的相关描述,在此不再赘述。
S303,将源监控点所对应的目的监控点中中不为源监控点的监控点,作为新的源监控点,并返回执行S301,直至已经返回执行的次数达到预设次数阈值。
该步骤与S103相同,可以参见前述关于S103的相关描述,在此不再赘述。
S304,基于所得到的子轨迹,确定以起始轨迹点为起点,终止轨迹点为终点的轨迹,作为参考轨迹。
该步骤与S104相同,可以参见前述关于S104的相关描述,在此不再赘述。
S305,根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹。
该步骤与S105相同,可以参见前述关于S105的相关描述,在此不再赘述。
图模型中的顶点为监控点,因此该图模型可以表示监控点之间在空间域的关系,而边表示了监控点之间时域上的关联,因此选用该实施例,可以通过图模型简洁、清楚地表示出监控点之间在时域和空间域的关系。
在一些应用场景中,为了方便对各个监控点进行管理,可以针对每个监控点设置相应的监控点属性,在一种可选的实施例中,监控点属性可以包括:该监控点是否为历史源监控点(以下称第一属性)、该监控点是否将成为新的源监控点(以下称第二属性)、生成的子轨迹中以该监控点为终点的子轨迹(以下称第三属性),示例性的,可以用一个bool(布尔)型数据记录该监控点是否为历史源监控点,如果该bool型数据的值为True,则表示该监控点为历史源监控点,如果该bool型数据的值为False,则表示该监控点不为历史源监控点,利用一个double(双字节)型数据记录该监控点是否为目的监控点,如果该double型数据的值为0,则表示该监控点将成为新的源监控点,如果该double型数据的值不为0,则表示该监控点目不将成为新的源监控点。以监控点2为例,监控点属性可以为{True,0,(1,2)},表示监控点2为历史源监控点,并且将成为新的源监控点,生成的子轨迹中子轨迹(1,2)以监控点2为终点。
下面将结合该具体的应用场景,对本发明实施例提供的轨迹补全方法进行说明,可以参见图4,图4为本发明实施例提供的轨迹补全方法的另一种流程示意图,可以包括:
S401,初始化所有监控点的监控点属性初始化为{False,maxValue,null}。
其中,maxValue为预设的非零值,null表示生成的子轨迹中尚不存在以该监控点为终点的子轨迹。
S402,将起始轨迹点的监控点的第二属性更新为0。
S403,在图模型中查找第一属性为False并且第二属性为0的监控点,作为源监控点。
第一属性为True的监控点为历史源监控点,即该监控点已经作为过源监控点,因此以该监控点为起点的可能的子轨迹已经生成,没有必要再次将该监控点作为源监控点,导致计算资源的浪费。
S404,在图模型中查找源监控点相邻并且第一属性为False的监控点,作为目的监控点。
S405,针对每个目的监控点,将该目的监控点的第二属性更新为0,生成以该目的监控点所对应的源监控为起点,该目的监控点为终点的子轨迹,并将该子轨迹记录在该目的监控点的第三属性。
S406,将源监控点的第一属性修改为True,返回执行S403,直至返回次数达到预设次数阈值,或者,不存在第一属性为False并且第二属性为0的监控点。
S407,获取所有第一属性为True的监控点的第三属性中的子轨迹,得到子轨迹集合。
S408,基于该子轨迹序列集合,确定以起始轨迹点为起点,终止轨迹点为终点的轨迹,作为参考轨迹。
关于确定的过程,可以参见前述S104中的相关描述,在此不再赘述。
S409,根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹。
该步骤与S105相同,可以参见S105的相关描述,在此不再赘述。
以图2b所示的图模型为例,假设起始轨迹点为监控点1,终止轨迹点为监控点4。则可以是将监控点1-4的监控点属性初始化为{False,maxValue,null},并将监控点1的第二属性更新为0。此时第一属性为False并且第二属性为0的监控点为监控点1,将监控点1作为源监控点,与监控点1相邻并且第一属性为False的监控点为监控点2、监控点3、监控点4,分别将监控点2、监控点3、监控点4的第二属性更新为0,生成子轨迹(1,2)、(1,3)、(1,4),并分别记录至这三个监控点的第三属性中,此时监控点2的监控点属性为{False,0,(1,2)},监控点3的监控点属性为{False,0,(1,3)},监控点4的监控点属性为{False,0,(1,4)},将监控点1的第一属性更新为Ture。此时第一属性为False并且第二属性为0的监控点为监控点2、监控点3,因此将监控点2、监控点3、监控点4作为新的源监控点。
对于监控点2,相邻并且第一属性为False的监控点为监控点4,因此目的监控点为监控点4。同理,对于监控点3,目的监控点同为监控点4。对于监控点4,由于监控点4为终止轨迹点,在本实施例中,可以不考虑监控目标从起始轨迹点移动至终止轨迹点,再离开终止轨迹点,并再次移动至终止轨迹点的可能(在其他实施例中也可以考虑这种可能),示例性的,本实施例中可以认为轨迹[1,2,4,3,4]是一种不可能的轨迹,因此可以不生成以监控点4为起点的子轨迹。
可以生成子轨迹(2,4)、(3,4),并记录在监控点4的第三属性中,并将监控点2、监控点3、监控点4的第一属性更新为True,此时不存在第一属性为True并且第二属性为0的监控点,并且各个监控点的监控点属性分别为:
监控点1:{True,0,null}
监控点2:{True,0,(1,2)}
监控点3:{True,0,(1,3)}
监控点4:{True,0,(1,4)、(2,4)、(3,4)}
因此,获取所有第一属性为True的监控点的第三属性中的子轨迹,可以得到子轨迹集合{(1,2)、(1,3)、(1,4)、(2,4)、(3,4)}。关于参考轨迹的确定,可以参见前述S104中的相关描述,在一些可选的实施例中,为了降低确定参考轨迹过程中,遗漏可能的轨迹的情况的出现概率,可以对得到子轨迹集合按照生成的时间先后顺序进行排序,得到子轨迹序列,并从子轨迹序列中的最后一个子轨迹开始,利用预设的递归算法,递归得到各个以起始轨迹点为起点,终止轨迹点为终点的轨迹,作为参考轨迹。在该实施例中,为了便于对子轨迹进行排序,可以记录每个子轨迹的生成顺序,示例性的,子轨迹(1,2)是在第一次返回执行之前生成的,则可以是将该子轨迹记为(1,2,1),子轨迹(2,3)是在第一次返回执行之后第二次返回执行之前生成的,则可以是将该子轨迹记为(2,3,2)。因此,得到的子轨迹序列可以记为{(1,2,1)、(1,3,1)、(1,4,1)、(2,4,2)、(3,4,2)},以子轨迹(3,4,2)为例,遍历所有子轨迹,查找终点为监控点3的子轨迹,得到子轨迹(1,3,1),将子轨迹(3,4,2)与轨迹(1,3,1)拼接,得到轨迹(1,3,4),依次类推,对各个子轨迹进行逐个递归,可以依次得到轨迹(1,3,4)、(1,2,4)、(1,4),作为参考轨迹。
可以理解的是,本发明实施例提供的基于图模型的轨迹补全方法的准确性,依赖于图模型的准确性,有鉴于此,本发明实施例提供了一种图模型建立方法,可以参见图5,图5所示为本发明实施例提供的图模型建立方法的一种流程示意图,可以包括:
S501,针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列。
关于监控点序列,可以参见前述S101中的相关描述,在此不再赘述。
S502,针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对。
示例性的,假设监控点序列为{1,3,2,4},则监控点对包括监控点1-监控点3、监控点3-监控点2、监控点2-监控点4。
S503,将所得到的监控对中所包括的监控点为顶点,在每个监控点对所包括的两个监控点之间建立边,生成图模型。
监控点对包括:监控点1-监控点2、监控点1-监控点3、监控点1-监控点4、监控点2-监控点4、监控点3-监控点4,则生成的图模型可以如图2a或图2b所示。关于边的方向可以参见前述相关描述,在此不再赘述。
在一些应用场景中,监控目标可能在一定范围内活动,历史监控目标为人时,由于人在监控时段内的活动范围往往有限,因此可以根据监控点是否处于该范围,对监控点进行筛选。示例性的,可以是针对每个监控点,做一条直线(例如可以过监控点做经度线或者纬度线的平行线),如果该直线与该范围的边界存在奇数个交点,则确定该监控点位于该范围之外,如果该直线与该范围的边界存在偶数个交点,则确定该监控点位于该范围之内。
但是,在一些应用场景中,历史轨迹可能存在一定误差,因此得到的监控点对中可能存在异常的监控点对。示例性的,假设监控目标实际的轨迹为[12,3,4,5],而监控点3由于特殊原因,没有正常采集数据,导致记录的历史轨迹为[1,2,4,5],因此得到的监控点对中包括监控点2-监控点4,而实际上监控目标可能并没有曾经从监控点2直接移动至监控点4,即监控点2和监控点4可能在历史轨迹中时间不相邻,如果图模型中监控点2与监控点4之间存在边,则可能导致图模型不准确。
有鉴于此,可以对得到的监控点对进行筛选,示例性的,可以按照监控点对的出现次数,将出现次数大于预设筛选阈值的监控点对,作为正常监控点对。并以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,以生成图模型。对于并非正常监控点对的监控点对,不在该监控点对的两个监控点之间建立边。可以理解理解的是,轨迹出现异常是相对于轨迹不存在异常可以认为是小概率事件,因此如果分别根据多个轨迹均可以得到相同的监控点对,可以认为这多个轨迹均出现异常的概率近似为0,进而认为该监控点对不存在异常,即该监控点对为正常监控点对。
本发明实施例提供的轨迹补全方法中的起始轨迹点和终止轨迹点,在一些可选的实施例中,可以是用户根据实际需求或者经验指定的监控点。在另一些可选的实施例中,也可以是基于图模型的轨迹异常检测确定得到的。示例性的,可以如图6所示,图6为本发明实施例提供的轨迹异常检测方法,可以包括:
S601,从待补全轨迹的终点开始,按照时间顺序,依次确定待补全轨迹所包括的监控点是否与待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点。
其中,两个监控点是否属于同一社区,可以是通过预设的社区发现算法确定。本发明实施例中,根据实际需求,可以选用不同的社区发现算法,如本实施例中可以是根据图模型中的强连通分量特性进行社区发现,如果两个监控点属于同一个强连通分量,则确定这两个监控点属于同一个社区,如果两个监控点不属于同一个强连通分量,则确定这两个监控点不属于同一个社区。
示例性的,假设待补全轨迹所包括的监控点,按照时间顺序排序得到的监控点序列为{1,2,3,4,5},待补全轨迹的起点为监控点1,终点为监控点5,则从监控点5开始,确定是否与监控点1属于同一社区,直至确定存在与监控点1属于同一社区的监控点。
S602,如果所确定的监控点不为待补全轨迹的终点,将所确定的监控点作为起始轨迹点,待补全轨迹点的终点作为轨迹点。
仍以待补全轨迹所包括的监控点,按照时间顺序排序得到的监控点序列为{1,2,3,4,5}为例,假设监控点5与监控点1不属于同一社区,而监控点4与监控点1属于同一社区,则确定得到的监控点为监控点4,可以将监控点4作为起始轨迹点,监控点5作为终止轨迹点。
可以理解的是,图模型中社区内部的边,往往多余社区之间的边,因此如果两个监控点不属于同一个社区,则可以认为监控目标从其中一个监控点移动至另外一个监控点是正常的,反之,如果两个监控点不属于同一个社区,从其中一个监控点移动至另外一个监控点是异常的。示例性的,以根据强连通分量进行社区发现为例,如果两个监控点属于同一个强连通分量,则表示这两个监控点之间是互通的,因此监控目标从其中一个监控点移动至另外一个监控点是正常的,反之,如果两个监控点不属于同一个强连通分量,则表示这两个监控点之间是无法互通的,因此从其中一个监控点移动至另外一个监控点是异常的。
进一步的,即使监控目标从其中一个监控点移动至另外一个监控点是正常的,但是待补全轨迹中监控目标从其中一个监控点移动至另一个监控点的轨迹可能仍然是异常的。仍以待补全轨迹所包括的监控点,按照时间顺序排序得到的监控点序列为{1,2,3,4,5}为例,假设监控点1与监控点4属于相同的强连通分量,表示监控点1和监控点4之间是互通的,但是监控点1和监控点2之间、或者监控点2和监控点3、或者监控点3和监控点4之间可能是不连通的,因此在一种可选的实施例中,可以将待补全轨迹中时域相邻,并且在图模型中不想领的两个监控点中,时间顺序在前的监控点作为起始轨迹点,实际顺序在后的监控点作为终止轨迹点。
根据实际需求的不同,可以对得到的第一轨迹进行不同的后续处理,参见图7,图7所示为本发明实施例提供的轨迹并轨方法的一种流程示意图,可以包括:
S701,确定第一轨迹与第二轨迹之间的重合监控点。
其中,重合监控点为既属于第一轨迹,又属于第二轨迹的监控点。示例性的,假设第一轨迹为[1,2,3,4,5],第二轨迹为[1,5,8,9],则重合监控点为监控点1、监控点5。
S702,针对每个重合监控点,计算该重合监控点的经过时间差。
其中,经过时间差为第一轨迹中监控目标经过该重合监控点,与第二轨迹中监控目标经过该重合监控点的时间之间的时间差。以监控点为1为例,假设在第一轨迹中,监控目标经过监控点1的时间为9:45,在第二轨迹中,监控目标经过监控点1的时间为9:30,则监控点1的经过时间差为15分钟。
S703,基于重合监控点的个数,以及每个重合监控点的经过时间差,计算第一轨迹与第二轨迹之间的相似度。
根据实际需求,可以选用不同的相似度计算公式,示例性的,可以是按照下式计算得到第一轨迹与第二轨迹之间的相似度:
Figure BDA0001948795270000181
其中,P为相似度,C′为重合监控点的个数,C为第一轨迹与第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。例如,假设第一轨迹为[1,2,3,4],第二轨迹为[1,5,4],并且第一轨迹中,监控目标经过监控点1的时间为7:36,经过监控点4的时间为9:40,第二轨迹中,监控目标经过监控点1的时间为7:30,经过监控点4的时间为9:39。则
C′=2;
C=(7+3)/2=3.5;
E=[(7:36-7:30)+(9:40-9:39)]/2=3.5
并假设T=3,可以计算得到P=0.3。
S704,如果相似度高于预设相似度阈值,合并第一轨迹与第二轨迹。
如果两个轨迹相似度高于预设相似度阈值,可以认为这两个轨迹近似相等,因此可以合并为一个轨迹。
参见图8,图8所示为本发明实施例提供的轨迹补全装置的一种结构示意图,可以包括:
邻点检索模块801,用于查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
子轨迹生成模块802,针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
邻点检索模块801,还用于将源监控点所对应的目的监控点中未做过源监控点的监控点,作为新的源监控点,并返回执行查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
轨迹确定模块803,用于基于所得到的子轨迹,确定以起始轨迹点为起点,待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
补全模块804,根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹。
在一种可选的实施例中,装置还包括图模型建立模块,用于在查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点所对应的目的监控点之前,根据历史轨迹,以监控点为顶点,建立图模型,图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
邻点检索模块801,具体用于在图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
在一种可选的实施例中,图模型建立模块,具体用于针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
在一种可选的实施例中,装置还包括第一异常轨迹检测模块,用于在根据历史轨迹,以监控点为顶点,建立图模型之后,从待补全轨迹的终点开始,按照时间顺序,依次确定待补全轨迹所包括的监控点是否与待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为待补全轨迹的终点,将所确定的监控点作为起始轨迹点,待补全轨迹的终点作为终止轨迹点。
在一种可选的实施例中,装置还包括第二异常轨迹检测模块,用于在根据历史轨迹,以监控点为顶点,建立图模型之后,将待补全轨迹中时域相邻,并且在图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
在一种可选的实施例中,参考轨迹为多个轨迹;
补全模块804,具体用于基于以起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在起始轨迹点和终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从起始轨迹点开始至终止轨迹点之间的补全轨迹。
在一种可选的实施例中,装置还包括并轨分析模块,用于在根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹之后,确定第一轨迹与第二轨迹之间的重合监控点,重合监控点为属于第一轨迹,并且属于第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,经过时间差为第一轨迹中监控目标经过该重合监控点的时间,与第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算第一轨迹与第二轨迹之间的相似度;
如果相似度高于预设相似度阈值,合并第一轨迹与第二轨迹。
在一种可选的实施例中,并轨分析模块,具体用于按照下式计算第一轨迹与第二轨迹之间的相似度:
Figure BDA0001948795270000211
其中,P为相似度,C′为重合监控点的个数,C为第一轨迹与第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
本发明实施例还提供了一种电子设备,如图9所示,包括:
存储器901,用于存放计算机程序;
处理器902,用于执行存储器901上所存放的程序时,实现如下步骤:
查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
将源监控点所对应的目的监控点中未做过源监控点的监控点,作为新的源监控点,并返回执行查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
基于所得到的子轨迹,确定以起始轨迹点为起点,待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹。
在一种可选的实施例中,在查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点之前,方法还包括:
根据历史轨迹,以监控点为顶点,建立图模型,图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点,包括:
在图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
在一种可选的实施例中,根据历史轨迹,以监控点为顶点,建立图模型,包括:
针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
在一种可选的实施例中,在根据历史轨迹,以监控点为顶点,建立图模型之后,方法还包括:
从待补全轨迹的终点开始,按照时间顺序,依次确定待补全轨迹所包括的监控点是否与待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为待补全轨迹的终点,将所确定的监控点作为起始轨迹点,待补全轨迹的终点作为终止轨迹点。
在一种可选的实施例中,在根据历史轨迹,以监控点为顶点,建立图模型之后,方法还包括:
将待补全轨迹中时域相邻,并且在图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
在一种可选的实施例中,参考轨迹为多个轨迹;
根据参考轨迹,补全起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹,包括:
基于以起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在起始轨迹点和终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从起始轨迹点开始至终止轨迹点之间的补全轨迹,得到第一轨迹。
在一种可选的实施例中,在根据参考轨迹,补全从起始轨迹点开始至终止轨迹点之间的轨迹,得到第一轨迹之后,方法还包括:
确定第一轨迹与第二轨迹之间的重合监控点,重合监控点为属于第一轨迹,并且属于第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,经过时间差为第一轨迹中监控目标经过该重合监控点的时间,与第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算第一轨迹与第二轨迹之间的相似度;
如果相似度高于预设相似度阈值,合并第一轨迹与第二轨迹。
在一种可选的实施例中,基于重合监控点的个数,以及每个重合监控点的经过时间差,计算第一轨迹与第二轨迹之间的相似度,包括:
按照下式计算第一轨迹与第二轨迹之间的相似度:
Figure BDA0001948795270000231
其中,P为相似度,C′为重合监控点的个数,C为第一轨迹与第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
上述电子设备提到的存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一轨迹补全方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一轨迹补全方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质、计算机程序产品的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (18)

1.一种轨迹补全方法,其特征在于,所述方法包括:
查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
将源监控点所对应的目的监控点中不为源监控点的监控点,作为新的源监控点,并返回执行所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
基于所得到的子轨迹,确定以所述起始轨迹点为起点,所述待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹。
2.根据权利要求1所述的方法,其特征在于,在所述查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点之前,所述方法还包括:
根据历史轨迹,以监控点为顶点,建立图模型,所述图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
所述查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点,包括:
在所述图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
3.根据权利2所述的方法,其特征在于,所述根据历史轨迹,以监控点为顶点,建立图模型,包括:
针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
4.根据权利要求2所述的方法,其特征在于,在所述根据历史轨迹,以监控点为顶点,建立图模型之后,所述方法还包括:
从待补全轨迹的终点开始,按照时间顺序,依次确定所述待补全轨迹所包括的监控点是否与所述待补全轨迹的起点属于同一社区,直至确定存在与所述待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为所述待补全轨迹的终点,将所确定的监控点作为起始轨迹点,所述待补全轨迹的终点作为终止轨迹点。
5.根据权利要求2所述的方法,其特征在于,在所述根据历史轨迹,以监控点为顶点,建立图模型之后,所述方法还包括:
将待补全轨迹中时域相邻,并且在所述图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
6.根据权利要求1所述的方法,其特征在于,所述参考轨迹为多个轨迹;
所述根据所述参考轨迹,补全所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹,包括:
基于以所述起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在所述起始轨迹点和所述终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从所述起始轨迹点开始至所述终止轨迹点之间的补全轨迹,得到第一轨迹。
7.根据权利要求1所述的方法,其特征在于,在所述根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹之后,所述方法还包括:
确定所述第一轨迹与第二轨迹之间的重合监控点,所述重合监控点为属于所述第一轨迹,并且属于所述第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,所述经过时间差为所述第一轨迹中监控目标经过该重合监控点的时间,与所述第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度;
如果所述相似度高于预设相似度阈值,合并所述第一轨迹与所述第二轨迹。
8.根据权利要求7所述的方法,其特征在于,所述基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度,包括:
按照下式计算所述第一轨迹与所述第二轨迹之间的相似度:
Figure FDA0001948795260000031
其中,P为所述相似度,C′为所述重合监控点的个数,C为所述第一轨迹与所述第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
9.一种轨迹补全装置,其特征在于,所述装置包括:
邻点检索模块,用于查找历史轨迹中与源监控点时域相邻并且不为历史源监控点的监控点,作为该源监控点所对应的目的监控点,初始的源监控点为待补全轨迹的起始轨迹点;
子轨迹生成模块,针对每个目的监控点,生成以该目的监控点所对应的源监控点为起点,该目的监控点为终点的子轨迹;
所述邻点检索模块,还用于将源监控点所对应的目的监控点中不为源监控点的监控点,作为新的源监控点,并返回执行所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点的目的监控点的步骤,直至已经返回执行的次数达到预设次数阈值或不存在新的源监控点;
轨迹确定模块,用于基于所得到的子轨迹,确定以所述起始轨迹点为起点,所述待补全轨迹的终止轨迹点为终点的轨迹,作为参考轨迹;
补全模块,根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括图模型建立模块,用于在所述查找历史轨迹中与源监控点时域相邻的监控点,作为该源监控点所对应的目的监控点之前,根据历史轨迹,以监控点为顶点,建立图模型,所述图模型中的边表示所连接的两个监控点在历史轨迹中时域相邻;
所述邻点检索模块,具体用于在所述图模型中查找与源监控点相邻并且不为历史源监控点的监控点的监控点,作为该源监控点所对应的目的监控点。
11.根据权利要求10所述的装置,其特征在于,所述图模型建立模块,具体用于针对每个历史轨迹,对该历史轨迹所包括的监控点,按照时间顺序进行排序,得到监控点序列;
针对每个监控点序列,将该监控点序列中每两个相邻的监控点,作为监控点对;
将所得到的监控点对中,出现次数多余预设筛选阈值的监控点对,作为正常监控点对;
以正常监控点对所包括的监控点为顶点,在每个正常监控点对的两个监控点之间建立边,生成图模型。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括第一异常轨迹检测模块,用于在所述根据历史轨迹,以监控点为顶点,建立图模型之后,从待补全轨迹的终点开始,按照时间顺序,依次确定所述待补全轨迹所包括的监控点是否与所述待补全轨迹的起点属于同一社区,直至确定存在与待补全轨迹的起点属于同一社区的监控点;
如果所确定的监控点不为所述待补全轨迹的终点,将所确定的监控点作为起始轨迹点,所述待补全轨迹的终点作为终止轨迹点。
13.根据权利要求10所述的装置,其特征在于,所述装置还包括第二异常轨迹检测模块,用于在所述根据历史轨迹,以监控点为顶点,建立图模型之后,将待补全轨迹中时域相邻,并且在所述图模型中不相邻的两个监控点中,时间顺序在前的监控点作为起始轨迹点,时间顺序在后的监控点作为终止轨迹点。
14.根据权利要求9所述的装置,其特征在于,所述参考轨迹为多个轨迹;
所述补全模块,具体用于基于以所述起始轨迹点为起点,终止轨迹点为终点的历史轨迹中,在所述起始轨迹点和所述终止轨迹点采集得到的监控目标特征,分别计算各个参考轨迹的置信度;
将置信度最高的参考轨迹,作为从所述起始轨迹点开始至所述终止轨迹点之间的补全轨迹。
15.根据权利要求9所述的装置,其特征在于,所述装置还包括并轨分析模块,用于在所述根据所述参考轨迹,补全从所述起始轨迹点开始至所述终止轨迹点之间的轨迹,得到第一轨迹之后,确定所述第一轨迹与第二轨迹之间的重合监控点,所述重合监控点为属于所述第一轨迹,并且属于所述第二轨迹的监控点;
针对每个重合监控点,计算该重合监控点的经过时间差,所述经过时间差为所述第一轨迹中监控目标经过该重合监控点的时间,与所述第二轨迹中监控目标经过该重合监控点的时间之间的时间差;
基于重合监控点的个数,以及每个重合监控点的经过时间差,计算所述第一轨迹与所述第二轨迹之间的相似度;
如果所述相似度高于预设相似度阈值,合并所述第一轨迹与所述第二轨迹。
16.根据权利要求15所述的装置,其特征在于,所述并轨分析模块,具体用于按照下式计算所述第一轨迹与所述第二轨迹之间的相似度:
Figure FDA0001948795260000051
其中,P为所述相似度,C′为所述重合监控点的个数,C为所述第一轨迹与所述第二轨迹所包括的监控点的平均数,E为所有重合监控点的经过时间差的平均值,T为预设时间阈值。
17.一种电子设备,其特征在于,包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-8任一所述的方法步骤。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-8任一所述的方法步骤。
CN201910044845.3A 2019-01-17 2019-01-17 一种轨迹补全方法、装置及电子设备 Active CN111444294B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910044845.3A CN111444294B (zh) 2019-01-17 2019-01-17 一种轨迹补全方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910044845.3A CN111444294B (zh) 2019-01-17 2019-01-17 一种轨迹补全方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111444294A true CN111444294A (zh) 2020-07-24
CN111444294B CN111444294B (zh) 2023-10-10

Family

ID=71648633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910044845.3A Active CN111444294B (zh) 2019-01-17 2019-01-17 一种轨迹补全方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111444294B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111862659A (zh) * 2020-06-30 2020-10-30 中冶智诚(武汉)工程技术有限公司 一种gps轨迹数据匹配和补全的方法
CN111932038A (zh) * 2020-09-24 2020-11-13 浙江口碑网络技术有限公司 轨迹生成方法、装置、计算机设备及计算机可读存储介质
CN113326877A (zh) * 2021-05-28 2021-08-31 深圳前海微众银行股份有限公司 模型训练、数据处理方法、装置、设备、存储介质及程序
CN113436356A (zh) * 2021-06-25 2021-09-24 科大讯飞股份有限公司 一种车辆轨迹还原方法、高速通行费确定方法及装置
CN114170807A (zh) * 2020-09-11 2022-03-11 北京聚利科技有限公司 车辆轨迹信息获取方法、装置、设备和存储介质
CN114550449A (zh) * 2022-02-16 2022-05-27 腾讯云计算(北京)有限责任公司 车辆轨迹补全方法、装置、计算机可读介质及电子设备

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090143873A1 (en) * 2007-11-30 2009-06-04 Roman Navratil Batch process monitoring using local multivariate trajectories
US20140164390A1 (en) * 2012-12-07 2014-06-12 International Business Machines Corporation Mining trajectory for spatial temporal analytics
US8825265B1 (en) * 2012-03-16 2014-09-02 Google Inc. Approach for consolidating observed vehicle trajectories into a single representative trajectory
CN104050832A (zh) * 2014-05-23 2014-09-17 北京中交兴路信息科技有限公司 位置信息的补全方法和装置
CN104112282A (zh) * 2014-07-14 2014-10-22 华中科技大学 一种基于在线学习跟踪监控视频中多个运动目标的方法
CN104778245A (zh) * 2015-04-09 2015-07-15 北方工业大学 基于海量车牌识别数据的相似轨迹挖掘方法及装置
US20150205003A1 (en) * 2012-08-06 2015-07-23 Total Sa Method of determining channelway trajectories
US20160377441A1 (en) * 2015-06-23 2016-12-29 International Business Machines Corporation Quantifying anomalous behavior by identifying anomalies at subtrajectories
US20170286781A1 (en) * 2016-04-05 2017-10-05 Omni Al, Inc. Trajectory cluster model for learning trajectory patterns in videos data
CN107643085A (zh) * 2017-09-18 2018-01-30 苏州大学 一种路径推荐方法与装置
CN107665289A (zh) * 2017-11-17 2018-02-06 广州汇智通信技术有限公司 一种运营商数据的处理方法及系统
CN108133611A (zh) * 2016-12-01 2018-06-08 中兴通讯股份有限公司 车辆行驶轨迹监测方法及系统
CN108257386A (zh) * 2016-12-29 2018-07-06 杭州海康威视数字技术股份有限公司 行驶轨迹获取方法和装置
CN108508465A (zh) * 2018-03-30 2018-09-07 吉旗(成都)科技有限公司 一种基于时间上的gps轨迹相似度匹配算法
CN108629000A (zh) * 2018-05-02 2018-10-09 深圳市数字城市工程研究中心 一种手机轨迹数据聚类的群体行为特征提取方法及系统
CN109034181A (zh) * 2018-06-05 2018-12-18 广州杰赛科技股份有限公司 移动轨迹的分类方法和装置、设备、存储介质

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090143873A1 (en) * 2007-11-30 2009-06-04 Roman Navratil Batch process monitoring using local multivariate trajectories
US8825265B1 (en) * 2012-03-16 2014-09-02 Google Inc. Approach for consolidating observed vehicle trajectories into a single representative trajectory
US20150205003A1 (en) * 2012-08-06 2015-07-23 Total Sa Method of determining channelway trajectories
US20140164390A1 (en) * 2012-12-07 2014-06-12 International Business Machines Corporation Mining trajectory for spatial temporal analytics
CN104050832A (zh) * 2014-05-23 2014-09-17 北京中交兴路信息科技有限公司 位置信息的补全方法和装置
CN104112282A (zh) * 2014-07-14 2014-10-22 华中科技大学 一种基于在线学习跟踪监控视频中多个运动目标的方法
CN104778245A (zh) * 2015-04-09 2015-07-15 北方工业大学 基于海量车牌识别数据的相似轨迹挖掘方法及装置
US20160377441A1 (en) * 2015-06-23 2016-12-29 International Business Machines Corporation Quantifying anomalous behavior by identifying anomalies at subtrajectories
US20170286781A1 (en) * 2016-04-05 2017-10-05 Omni Al, Inc. Trajectory cluster model for learning trajectory patterns in videos data
CN108133611A (zh) * 2016-12-01 2018-06-08 中兴通讯股份有限公司 车辆行驶轨迹监测方法及系统
CN108257386A (zh) * 2016-12-29 2018-07-06 杭州海康威视数字技术股份有限公司 行驶轨迹获取方法和装置
CN107643085A (zh) * 2017-09-18 2018-01-30 苏州大学 一种路径推荐方法与装置
CN107665289A (zh) * 2017-11-17 2018-02-06 广州汇智通信技术有限公司 一种运营商数据的处理方法及系统
CN108508465A (zh) * 2018-03-30 2018-09-07 吉旗(成都)科技有限公司 一种基于时间上的gps轨迹相似度匹配算法
CN108629000A (zh) * 2018-05-02 2018-10-09 深圳市数字城市工程研究中心 一种手机轨迹数据聚类的群体行为特征提取方法及系统
CN109034181A (zh) * 2018-06-05 2018-12-18 广州杰赛科技股份有限公司 移动轨迹的分类方法和装置、设备、存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111862659A (zh) * 2020-06-30 2020-10-30 中冶智诚(武汉)工程技术有限公司 一种gps轨迹数据匹配和补全的方法
CN114170807A (zh) * 2020-09-11 2022-03-11 北京聚利科技有限公司 车辆轨迹信息获取方法、装置、设备和存储介质
CN111932038A (zh) * 2020-09-24 2020-11-13 浙江口碑网络技术有限公司 轨迹生成方法、装置、计算机设备及计算机可读存储介质
CN111932038B (zh) * 2020-09-24 2020-12-29 浙江口碑网络技术有限公司 轨迹生成方法、装置、计算机设备及计算机可读存储介质
CN113326877A (zh) * 2021-05-28 2021-08-31 深圳前海微众银行股份有限公司 模型训练、数据处理方法、装置、设备、存储介质及程序
CN113436356A (zh) * 2021-06-25 2021-09-24 科大讯飞股份有限公司 一种车辆轨迹还原方法、高速通行费确定方法及装置
CN114550449A (zh) * 2022-02-16 2022-05-27 腾讯云计算(北京)有限责任公司 车辆轨迹补全方法、装置、计算机可读介质及电子设备
CN114550449B (zh) * 2022-02-16 2023-03-14 腾讯云计算(北京)有限责任公司 车辆轨迹补全方法、装置、计算机可读介质及电子设备

Also Published As

Publication number Publication date
CN111444294B (zh) 2023-10-10

Similar Documents

Publication Publication Date Title
CN111444294A (zh) 一种轨迹补全方法、装置及电子设备
CN109859054B (zh) 网络社团挖掘方法、装置、计算机设备及存储介质
CN111125268B (zh) 网络告警分析模型创建方法、告警分析方法及装置
US7644079B2 (en) System and method for temporal data mining
CN111325338B (zh) 神经网络结构评价模型构建和神经网络结构搜索方法
CN108376129A (zh) 一种纠错方法及装置
CN111193627B (zh) 信息处理方法、装置、设备及存储介质
CN110909868A (zh) 基于图神经网络模型的节点表示方法和装置
CN116484036A (zh) 图像推荐方法、装置、电子设备及计算机可读存储介质
CN111540202B (zh) 一种相似卡口确定方法、装置、电子设备及可读存储介质
CN115118621A (zh) 一种基于依赖关系图的微服务性能诊断方法及系统
CN117290719B (zh) 基于数据分析的巡检管理方法、装置及存储介质
CN113108806A (zh) 路径规划方法、装置、设备及介质
CN111325255B (zh) 特定人群圈定方法、装置、电子设备及存储介质
Kardeş et al. Structural graph indexing for mining complex networks
CN110995587B (zh) 一种路由不稳定事件源定位方法及装置
CN115953434B (zh) 轨迹匹配方法、装置、电子设备和存储介质
CN114666577B (zh) 一种基于视频行为距离的设备异常检测方法和装置
CN111177190B (zh) 数据处理方法、装置、电子设备及可读存储介质
CN109218184B (zh) 基于端口和结构信息的路由器归属as识别方法
CN116303600A (zh) 一种基础测绘数据整合方法及系统
WO2022252482A1 (zh) 机器人及其环境地图构建方法和装置
Chandio et al. Towards adaptable and tunable cloud-based map-matching strategy for GPS trajectories
CN113434769A (zh) 数字化与人工智能结合的互动行为画像分析方法及系统
CN112884190A (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
GR01 Patent grant
GR01 Patent grant