CN111770432A - 停留点的识别方法、装置、电子设备及存储介质 - Google Patents
停留点的识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111770432A CN111770432A CN201910263234.8A CN201910263234A CN111770432A CN 111770432 A CN111770432 A CN 111770432A CN 201910263234 A CN201910263234 A CN 201910263234A CN 111770432 A CN111770432 A CN 111770432A
- Authority
- CN
- China
- Prior art keywords
- point
- track
- stop
- current
- current track
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Navigation (AREA)
Abstract
本申请公开了一种停留点的识别方法、装置、电子设备及存储介质,属于信息处理技术领域。所述方法包括:获取当前轨迹点的轨迹信息,该轨迹信息中包括当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻,然后根据当前轨迹点的轨迹信息,确定当前轨迹点的速度,如果当前轨迹点的速度小于速度阈值,确定当前轨迹点为停留点。在本申请中,直接通过当前轨迹点的速度和速度阈值来确定当前轨迹点是否为停留点,并没有依赖于其他的轨迹点,也没有在确定当前轨迹点是否为停留点的同时来确定其他的轨迹点是否为停留点,这样,就不会存在时间滞后性的问题以及鲁棒性较差的问题。
Description
技术领域
本申请涉及信息处理技术领域,特别涉及一种停留点的识别方法、装置、电子设备及存储介质。
背景技术
目前,通过GPS(Global Positioning System,全球定位系统)技术可以获取移动对象在不同位置的位置信息,并根据获取的位置信息确定移动对象的移动轨迹。其中,移动轨迹上可以包括多个轨迹点,每个轨迹点用于指示移动对象所处的位置。为了最大限度地发挥移动轨迹的作用,可以从移动轨迹包括的多个轨迹点中识别出停留点。
相关技术提供了一种停留点的识别方法,包括:从移动轨迹上选择与当前轨迹点之间的直线距离小于距离阈值的轨迹点,确定选择的轨迹点中到达时刻最早的轨迹点与到达时刻最晚的轨迹点之间的到达时间差。如果该到达时间差大于或等于时间阈值,则将当前轨迹点确定为停留点,并将选择的轨迹点均确定为停留点。
然而,通过上述方法选择出的轨迹点中,有的轨迹点的到达时刻早于当前轨迹点的到达时刻,而有的轨迹点的到达时刻晚于当前轨迹点的到达时刻,这样,对于当前轨迹点是否为停留点的识别就会存在一定的时间滞后性。而且,对于同一轨迹点,这个轨迹点可能与两个不同的轨迹点之间的直线距离均小于距离阈值,这样,这个轨迹点可能既被确定为停留点又被确定为非停留点,导致上述方法的鲁棒性较差。
发明内容
本申请提供了一种停留点的识别方法、装置、电子设备及存储介质,可以解决相关技术的鲁棒性较差且存在时间滞后性的问题。所述技术方案如下:
第一方面,提供了一种停留点的识别方法,所述方法包括:
获取当前轨迹点的轨迹信息,所述轨迹信息中包括所述当前轨迹点的位置信息,以及移动对象到达所述当前轨迹点的到达速度和到达时刻;
根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度;
如果所述当前轨迹点的速度小于速度阈值,确定所述当前轨迹点为停留点。
可选地,所述根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度,包括:
根据所述当前轨迹点的位置信息和所述移动对象到达所述当前轨迹点的到达时刻,确定所述当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差;
根据所述当前轨迹点与所述上一轨迹点之间的距离以及所述到达时间差,确定所述移动对象到达所述当前轨迹点的平均速度;
将所述到达速度和所述平均速度中的最小值确定为所述当前轨迹点的速度。
可选地,所述确定所述当前轨迹点为停留点之后,还包括:
获取与所述当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点;
如果所述多个历史轨迹点中存在停留点,从所述多个历史轨迹点中确定首个停留点;
根据所述首个停留点,确定所述当前轨迹点的停留时长。
可选地,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点相邻,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中不存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,确定非停留参数;
根据所述非停留参数,确定所述当前轨迹点的停留时长。
可选地,所述非停留参数包括非停留距离,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留距离大于停留距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述非停留参数包括非停留时长,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留时长大于停留时长阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述非停留参数包括非停留距离和非停留时长,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留距离小于或等于所述停留距离阈值,且所述非停留时长小于或等于所述停留时长阈值,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述获取与所述当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点之后,还包括:
如果所述多个历史轨迹点中不存在停留点,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长,包括:
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点与所述停留起点之间的直线距离;
如果所述当前轨迹点与所述停留起点之间的直线距离小于或等于所述距离阈值,将所述移动对象到达所述当前轨迹点的到达时刻与所述移动对象到达所述停留起点的到达时刻之间的到达时间差确定所述当前轨迹点的停留时长。
可选地,所述根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点与所述停留起点之间的直线距离之后,还包括:
如果所述当前轨迹点与所述停留起点之间的直线距离大于所述距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述从所述多个历史轨迹点中确定首个停留点,包括:
如果所述多个历史轨迹点中存在一个停留点,将所述一个停留点确定为所述首个停留点;
如果所述多个历史轨迹点中存在至少两个停留点,将所述至少两个停留点中,与所述当前轨迹点之间的轨迹距离最小的停留点确定为所述首个停留点,或者,将所述至少两个停留点中,与所述当前轨迹点之间的到达时间差最小的停留点确定为所述首个停留点。
可选地,所述确定非停留参数,包括:
确定所述首个停留点所在的历史轨迹段的轨迹起点,所述首个停留点为所述历史轨迹段的轨迹终点,所述历史轨迹段中存在与所述当前轨迹点之间的直线距离小于或等于所述距离阈值的M个历史轨迹点,所述历史轨迹段中除所述M个历史轨迹点和所述首个停留点之外的历史轨迹点与所述当前轨迹点之间的距离均大于所述距离阈值,所述M个历史轨迹点是指从所述轨迹起点开始的连续M个轨迹点,所述M为大于或等于1的整数;
根据所述轨迹起点的轨迹信息和所述历史轨迹段上与所述首个停留点相邻的历史轨迹点的轨迹信息,确定所述非停留参数。
第二方面,提供了一种停留点识别装置,所述装置包括:
第一获取模块,用于获取当前轨迹点的轨迹信息,所述轨迹信息中包括所述当前轨迹点的位置信息,以及移动对象到达所述当前轨迹点的到达速度和到达时刻;
第一确定模块,用于根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度;
第二确定模块,用于如果所述当前轨迹点的速度小于速度阈值,确定所述当前轨迹点为停留点。
可选地,所述第一确定模块包括:
第一确定子模块,用于根据所述当前轨迹点的位置信息和所述移动对象到达所述当前轨迹点的到达时刻,确定所述当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差;
第二确定子模块,用于根据所述当前轨迹点与所述上一轨迹点之间的距离以及所述到达时间差,确定所述移动对象到达所述当前轨迹点的平均速度;
第三确定子模块,用于将所述到达速度和所述平均速度中的最小值确定为所述当前轨迹点的速度。
可选地,所述装置还包括:
第二获取模块,用于获取与所述当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点;
第三确定模块,用于如果所述多个历史轨迹点中存在停留点,从所述多个历史轨迹点中确定首个停留点;
第四确定模块,用于根据所述首个停留点,确定所述当前轨迹点的停留时长。
可选地,所述第四确定模块包括:
第一获取子模块,用于如果所述当前轨迹点与所述首个停留点相邻,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
第四确定子模块,用于根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述第四确定模块包括:
第二获取子模块,用于如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中不存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
第四确定子模块,用于根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述第四确定模块包括:
第五确定子模块,用于如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,确定非停留参数;
第四确定子模块,用于根据所述非停留参数,确定所述当前轨迹点的停留时长。
可选地,所述非停留参数包括非停留距离,所述第四确定子模块主要用于:
如果所述非停留距离大于停留距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述非停留参数包括非停留时长,所述第四确定子模块主要用于:
如果所述非停留时长大于停留时长阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述非停留参数包括非停留距离和非停留时长,所述第四确定子模块主要用于:
如果所述非停留距离小于或等于所述停留距离阈值,且所述非停留时长小于或等于所述停留时长阈值,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
可选地,所述装置还包括:
第五确定模块,用于如果所述多个历史轨迹点中不存在停留点,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述第四确定子模块包括:
第一确定单元,用于根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点与所述停留起点之间的直线距离;
第二确定单元,用于如果所述当前轨迹点与所述停留起点之间的直线距离小于或等于所述距离阈值,将所述移动对象到达所述当前轨迹点的到达时刻与所述移动对象到达所述停留起点的到达时刻之间的到达时间差确定所述当前轨迹点的停留时长。
可选地,所述第四确定子模块还包括:
第三确定单元,用于如果所述当前轨迹点与所述停留起点之间的直线距离大于所述距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
可选地,所述第三确定模块主要用于:
如果所述多个历史轨迹点中存在一个停留点,将所述一个停留点确定为所述首个停留点;
如果所述多个历史轨迹点中存在至少两个停留点,将所述至少两个停留点中,与所述当前轨迹点之间的轨迹距离最小的停留点确定为所述首个停留点,或者,将所述至少两个停留点中,与所述当前轨迹点之间的到达时间差最小的停留点确定为所述首个停留点。
可选地,所述第五确定子模块主要用于:
确定所述首个停留点所在的历史轨迹段的轨迹起点,所述首个停留点为所述历史轨迹段的轨迹终点,所述历史轨迹段中存在与所述当前轨迹点之间的直线距离小于或等于所述距离阈值的M个历史轨迹点,所述历史轨迹段中除所述M个历史轨迹点和所述首个停留点之外的历史轨迹点与所述当前轨迹点之间的距离均大于所述距离阈值,所述M个历史轨迹点是指从所述轨迹起点开始的连续M个轨迹点,所述M为大于或等于1的整数;
根据所述轨迹起点的轨迹信息和所述历史轨迹段上与所述首个停留点相邻的历史轨迹点的轨迹信息,确定所述非停留参数。
第三方面,提供了一种电子设备,所述电子设备包括:
处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上述第一方面任一所述的停留点识别方法。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的停留点识别方法。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的停留点识别方法。
本申请提供的技术方案至少可以带来以下有益效果:
在本申请实施例中,在获取到当前轨迹点的轨迹信息之后,可以根据当前轨迹点的轨迹信息确定当前轨迹点的速度。如果当前轨迹点的速度小于速度阈值,那么可以确定当前轨迹点为停留点。也即是,本申请实施例直接通过当前轨迹点的速度和速度阈值来确定当前轨迹点是否为停留点,并没有依赖于其他的轨迹点,也没有在确定当前轨迹点是否为停留点的同时来确定其他的轨迹点是否为停留点,这样,就不会存在时间滞后性的问题以及鲁棒性较差的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种停留点识别的实施环境示意图;
图2是根据一示例性实施例示出的一种停留点识别方法的流程图;
图3是根据另一示例性实施例示出的一种停留点识别方法的流程图;
图4是根据一示例性实施例示出的第一种轨迹段的示意图;
图5是根据一示例性实施例示出的第二种轨迹段的示意图;
图6是根据一示例性实施例示出的第三种轨迹段的示意图;
图7是根据一示例性实施例示出的第四种轨迹段的示意图;
图8是根据一示例性实施例示出的第五种轨迹段的示意图;
图9是根据一示例性实施例示出的一种停留点识别装置的结构示意图;
图10是根据另一示例性实施例示出的一种停留点识别装置的结构示意图;
图11是根据又一示例性实施例示出的一种停留点识别装置的结构示意图;
图12是根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例中的应用场景和实施环境予以说明。
本申请实施例提供的停留点识别方法不仅可以识别移动轨迹中的停留点,还可以计算出停留点的停留时长,可以应用在很多场景中。例如,送外卖时可以确定配送路径上的停留点,并计算停留点的停留时长,进而按照骑手的速度和配送距离可以预计配送时长。又例如,可以确定出租车在行驶过程中的停留点,并计算停留点的停留时长,进而按照停留点的停留时长来确定乘客的乘车点,从而便于出租车司机能载到更多的乘客。本申请实施例提供的停留点识别方法还可以应用在其他场景中,本申请实施例对此不再一一列举。
图1是根据一示例性实施例示出的一种停留点识别的实施环境示意图。参见图1,该实施环境包括移动终端101和服务器102。移动终端101可以与服务器102通过有线网络或者无线网络进行通信。
移动终端101用于采集移动对象的位置,以及移动对象在每个位置的到达速度和到达时刻,并将采集的信息上报给服务器102。作为一种示例,移动终端101可以为手机、笔记本电脑、平板电脑等,本申请实施例对此不做限定。
服务器102用于根据移动终端101上报的信息确定移动对象的移动轨迹,并对移动轨迹上的每个轨迹点是否为停留点进行识别,而且服务器102在确定某个轨迹点为停留点之后,还可以确定这个轨迹点的停留时长。作为一种示例,服务器102可以为一台服务器,也可以为由多台服务器组成的服务器集群,本申请实施例对此不作限定。
图2是根据一示例性实施例示出的一种停留点识别方法的流程图,该方法应用于上述图1所示的服务器102中,参见图2,该方法包括:
步骤201:获取当前轨迹点的轨迹信息,该轨迹信息中包括当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻。
步骤202:根据当前轨迹点的轨迹信息,确定当前轨迹点的速度。
步骤203:如果当前轨迹点的速度小于速度阈值,确定当前轨迹点为停留点。
在本申请实施例中,在获取到当前轨迹点的轨迹信息之后,可以根据当前轨迹点的轨迹信息确定当前轨迹点的速度。如果当前轨迹点的速度小于速度阈值,那么可以确定当前轨迹点为停留点。也即是,本申请实施例直接通过当前轨迹点的速度和速度阈值来确定当前轨迹点是否为停留点,并没有依赖于其他的轨迹点,也没有在确定当前轨迹点是否为停留点的同时来确定其他的轨迹点是否为停留点,这样,就不会存在时间滞后性的问题以及鲁棒性较差的问题。
可选地,根据当前轨迹点的轨迹信息,确定当前轨迹点的速度,包括:
根据当前轨迹点的位置信息和移动对象到达当前轨迹点的到达时刻,确定当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差;
根据当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差,确定移动对象到达当前轨迹点的平均速度;
将到达速度和平均速度中的最小值确定为当前轨迹点的速度。
可选地,确定当前轨迹点为停留点之后,还包括:
获取与当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点;
如果该多个历史轨迹点中存在停留点,从该多个历史轨迹点中确定首个停留点;
根据首个停留点,确定当前轨迹点的停留时长。
可选地,根据首个停留点,确定当前轨迹点的停留时长,包括:
如果当前轨迹点与首个停留点相邻,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,根据首个停留点,确定当前轨迹点的停留时长,包括:
如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中不存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,根据首个停留点,确定当前轨迹点的停留时长,包括:
如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,确定非停留参数;
根据非停留参数,确定当前轨迹点的停留时长。
可选地,非停留参数包括非停留距离,根据非停留参数,确定当前轨迹点的停留时长,包括:
如果非停留距离大于停留距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,非停留参数包括非停留时长,根据非停留参数,确定当前轨迹点的停留时长,包括:
如果非停留时长大于停留时长阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,非停留参数包括非停留距离和非停留时长,根据非停留参数,确定当前轨迹点的停留时长,包括:
如果非停留距离小于或等于停留距离阈值,且非停留时长小于或等于停留时长阈值,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,获取与当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点之后,还包括:
如果该多个历史轨迹点中不存在停留点,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长,包括:
根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点与首个停留点所属停留点集合中的停留起点之间的直线距离;
如果当前轨迹点与首个停留点所属停留点集合中的停留起点之间的直线距离小于或等于距离阈值,将移动对象到达当前轨迹点的到达时刻与移动对象到达首个停留点所属停留点集合中的停留起点的到达时刻之间的到达时间差确定为当前轨迹点的停留时长。
可选地,根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点与首个停留点所属停留点集合中的停留起点之间的直线距离之后,还包括:
如果当前轨迹点与首个停留点所属停留点集合中的停留起点之间的直线距离大于距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,从该多个历史轨迹点中确定首个停留点,包括:
如果该多个历史轨迹点中存在一个停留点,将该一个停留点确定为首个停留点;
如果该多个历史轨迹点中存在至少两个停留点,将该至少两个停留点中,与当前轨迹点之间的轨迹距离最小的停留点确定为首个停留点,或者,将该至少两个停留点中,与当前轨迹点之间的到达时间差最小的停留点确定为首个停留点。
可选地,确定非停留参数,包括:
确定首个停留点所在的历史轨迹段的轨迹起点,首个停留点为历史轨迹段的轨迹终点,历史轨迹段中存在与当前轨迹点之间的直线距离小于或等于距离阈值的M个历史轨迹点,历史轨迹段中除M个历史轨迹点和首个停留点之外的历史轨迹点与当前轨迹点之间的距离均大于距离阈值,M个历史轨迹点是指从轨迹起点开始的连续M个轨迹点,M为大于或等于1的整数;
根据轨迹起点的轨迹信息和历史轨迹段上与首个停留点相邻的历史轨迹点的轨迹信息,确定非停留参数。
上述所有可选技术方案,均可按照任意结合形成本申请的可选实施例,本申请实施例对此不再一一赘述。
图3是根据另一示例性实施例示出的一种停留点识别方法的流程图,该方法应用于上述图1所示的服务器102中,参见图3,该方法包括:
步骤301:获取当前轨迹点的轨迹信息,该轨迹信息中包括当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻。
需要说明的是,当前轨迹点的位置信息可以为当前轨迹点所在位置的经纬度信息。当前轨迹点为移动对象的移动轨迹上的任一轨迹点。移动对象到达当前轨迹点的到达速度是指移动对象到达当前轨迹点的速度,示例地,可以为移动对象经过当前轨迹点的瞬时速度。
在一些实施例中,移动终端具有定位功能,这样,移动对象携带移动终端在移动的过程中,移动终端可以确定移动对象在每个位置的位置信息,以及在每个位置的到达速度和到达时刻,并将每个位置的位置信息、到达速度和到达时刻上报给服务器。这样,在服务器确定当前轨迹点是否为停留点时,可以从接收到的信息中获取当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻。
值得注意的是,服务器可能会接收到多个移动终端上报的信息,因此,为了便于区分,每个移动终端除了上报移动对象在每个位置的位置信息,以及在每个位置的到达速度和到达时刻之外,还可以上报移动终端中登录的用户账号。这样,服务器可以按照不同的用户账号来区分不同的移动对象在每个位置的位置信息,以及在每个位置的到达速度和到达时刻。
例如,若移动对象是骑手,移动终端为骑手的手机,那么在骑手携带手机移动的过程中,手机可以确定骑手在每个位置的位置信息,以及在每个位置的到达速度和到达时刻,并将每个位置的位置信息、到达速度和到达时刻上报给服务器。这样,在服务器确定当前轨迹点是否为停留点时,可以从手机上报的信息中获取当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻。
再例如,若移动对象是司机,移动终端为司机驾驶的车辆上安装的车载终端,那么在司机驾驶车辆移动的过程中,车载终端可以确定司机在每个位置的位置信息,以及在每个位置的到达速度和到达时刻,并将每个位置的位置信息、到达速度和到达时刻上报给服务器。这样,在服务器确定当前轨迹点是否为停留点时,可以从车载终端上报的信息中获取当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻。
需要说明的是,本申请中涉及的停留点识别方法,对于移动对象是骑手或者司机时都可以应用,为了方便起见,在后续的步骤中,将以移动对象是骑手对本申请实施例进行举例说明。
步骤302:根据当前轨迹点的轨迹信息,确定当前轨迹点的速度。
在一些实施例中,服务器可以通过如下步骤(1)-(3)来确定当前轨迹点的速度,包括:
(1)根据当前轨迹点的位置信息和移动对象到达当前轨迹点的到达时刻,确定当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差。
服务器可以获取与当前轨迹点相邻的上一轨迹点的位置信息,以及移动对象到达上一轨迹点的到达时刻。根据当前轨迹点的位置信息与相邻的上一轨迹点的位置信息确定当前轨迹点与相邻的上一轨迹点之间的距离,确定移动对象到达当前轨迹点的到达时刻与移动对象到达相邻的上一轨迹点的到达时刻之间的时间差,并将确定的时间差作为当前轨迹点与相邻的上一轨迹点之间的到达时间差。
例如,若当前轨迹点的位置信息为纬度41.285°,经度116.598°,相邻的上一轨迹点的位置信息为纬度41.285°,经度116.568°。对于两个位置而言,纬度相同的情况下,每隔0.01度,距离相差约1000米,那么即可确定当前轨迹点与相邻的上一轨迹点之间的距离为(116.598°-116.568°)÷0.01×1000=3000(米)。若骑手到达当前轨迹点的到达时刻为9:05,到达相邻的上一轨迹点的到达时刻为9:00,那么可以确定骑手到达当前轨迹点与相邻的上一轨迹点之间的到达时间差为5分钟。
(2)根据当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差,确定移动对象到达当前轨迹点的平均速度。
服务器可以将当前轨迹点与相邻的上一轨迹点之间的距离除以到达时间差,得到移动对象到达当前轨迹点的平均速度。
例如,若当前轨迹点与相邻的上一轨迹点之间的距离为3000米,骑手到达当前轨迹点与上一轨迹点之间的到达时间差为5分钟,则骑手到达当前轨迹点的平均速度为3000÷5=600米/分钟=10米/秒。
(3)将到达速度和平均速度中的最小值确定为当前轨迹点的速度。
将移动对象到达当前轨迹点的到达速度与移动对象到达当前轨迹点的平均速度进行比较,根据比较结果,将到达速度和平均速度中的最小值确定为当前轨迹点的速度。
继续上述举例,骑手到达当前轨迹点的平均速度为10米/秒,而服务器获取到的骑手到达当前轨迹点的到达速度为50米/秒,则将10米/秒确定为当前轨迹点的速度。
服务器不仅可以通过上述方法来确定当前轨迹点的速度,还可以通过其他的方式来确定当前轨迹点的速度。比如,在另一些实施例中,服务器可以直接将移动对象到达当前轨迹点的到达速度确定为当前轨迹点的速度。也可以在确定出移动对象到达当前轨迹点的平均速度之后,将移动对象到达当前轨迹点的平均速度确定为当前轨迹点的速度。
需要说明的是,对于移动对象的移动轨迹中的第一个轨迹点,由于不存在第一个轨迹点相邻的上一轨迹点,因此,无法计算移动对象到达第一个轨迹点的平均速度。在这种情况下,可以将移动对象到达第一个轨迹点的到达速度直接确定为第一个轨迹点的速度。
步骤303:如果当前轨迹点的速度小于速度阈值,确定当前轨迹点为停留点。
应当理解的是,速度阈值可以事先设置并固化在服务器中,也可以在进行停留点的识别时进行设置,且速度阈值可以根据经验或大数据等来确定。
进一步地,如果当前轨迹点的速度大于或等于速度阈值,那么可以确定当前轨迹点为非停留点。
例如,若当前轨迹点的速度为10米/秒,速度阈值为12米/秒,当前轨迹点的速度小于速度阈值,则确定当前轨迹点为停留点;若当前轨迹点的速度为15米/秒,速度阈值为12米/秒,当前轨迹点的速度大于或等于速度阈值,则确定当前轨迹点为非停留点;若当前轨迹点的速度为12米/秒,速度阈值为12米/秒,当前轨迹点的速度等于速度阈值,则仍然确定当前轨迹点为非停留点。
在确定当前轨迹点为停留点之后,还可以通过下述步骤304-307来确定当前轨迹点的停留时长。
步骤304:获取与当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点。
应当理解的是,距离阈值可以事先设置并固化在服务器中,也可以在确定停留点的停留时长时进行设置,且距离阈值可以根据经验或大数据等来确定。
在一些实施例中,服务器可以从移动对象的移动轨迹上获取到达时刻早于当前轨迹点的到达时刻的轨迹点,计算获取的每个轨迹点与当前轨迹点之间的直线距离,并按照计算的直线距离,从获取的轨迹点中选择与当前轨迹点之间的直线距离小于或等于距离阈值的多个轨迹点作为获取的多个历史轨迹点。
例如,若移动对象到达当前轨迹点的到达时刻为2点10分5秒,此时,服务器可以从移动对象的移动轨迹上获取到达时刻早于2点10分5秒的轨迹点。假设,距离阈值为100米,获取到的轨迹点分别为轨迹点1、轨迹点2、轨迹点3、轨迹点4和轨迹点5。轨迹点1与当前轨迹点之间的直线距离为300米,轨迹点2与当前轨迹点之间的直线距离为280米,轨迹点3与当前轨迹点之间的直线距离为180米,轨迹点4与当前轨迹点之间的直线距离为90米,轨迹点5与当前轨迹点之间的直线距离为40米。那么,获取到的多个历史轨迹点即为轨迹点4和轨迹点5。
在另一些实施例中,服务器在绘制出移动对象的移动轨迹之后,在绘制的移动轨迹上,以当前轨迹点为圆心,以距离阈值为半径绘制一个圆形区域。从绘制的移动轨迹中获取位于该圆形区域内部以及位于该圆形区域的圆弧上的轨迹点,从获取的轨迹点中选择到达时刻早于当前轨迹点的到达时刻的轨迹点作为获取的多个历史轨迹点。
通常情况下,移动轨迹可以按照移动对象到达每个位置的先后顺序绘制,因此,服务器在获取的轨迹点中选择到达时刻早于当前轨迹点的到达时刻的轨迹点时,可以从获取的轨迹点中选择位于当前轨迹点之前的轨迹点。
例如,参见图4,在移动对象的移动轨迹上,当前轨迹点为轨迹点6,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括轨迹点2、轨迹点3、轨迹点4、轨迹点5、轨迹点7、轨迹点8和轨迹点9。此时,服务器可以将轨迹点2、轨迹点3、轨迹点4和轨迹点5确定为与当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点。
步骤305:如果多个历史轨迹点中不存在停留点,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
通常情况下,可以将距离较近的多个停留点组成一个停留点集合,也即是,停留点集合内的停留点在一个较小的区域内。而且该多个历史轨迹点与当前轨迹点之间的直线距离小于或等于距离阈值,也即是,该多个历史轨迹点与当前轨迹点之间的距离不是很远。在这种情况下,如果该多个历史轨迹点中不存在停留点,那么就表示移动对象是在移动一段距离之后在当前轨迹点进行了停留,也即是,移动对象在附近的区域内没有进行停留,此时,可以将当前轨迹点加入一个新的停留点集合,也即是,作为一个停留点集合的停留起点,并设置当前轨迹点的停留时长为时长初值。
应当理解的是,时长初值可以事先设置并固化在服务器中,也可以在确定停留时长时进行设置,示例性地,时长初值可以为0、1、2等等。
在一些实施例中,服务器会从移动轨迹的第一个轨迹点开始进行停留点的识别,也即是,当对当前轨迹点进行停留点的识别时,该多个历史轨迹点已经进行了停留点的识别。换句话说,已经确定出该多个历史轨迹点中哪些历史轨迹点为停留点,哪些历史轨迹点不是停留点,而且在进行识别之后还可以对每个历史轨迹点进行标记。这样,服务器在获取到多个历史轨迹点之后,即可按照该多个历史轨迹点的标记来确定该多个历史轨迹点中是否存在停留点。
作为一种示例,服务器对该多个历史轨迹点进行停留点的识别之后,可以采用第一数值和第二数值对每个历史轨迹点进行标记。第一数值代表历史轨迹点为停留点,第二数值代表历史轨迹点不为停留点。比如,确定的历史轨迹点为轨迹点2、轨迹点3和轨迹点4,第一数值为0,第二数值为1。假设,轨迹点2和轨迹点4不是停留点,轨迹点3是停留点,那么可以将轨迹点2和轨迹点4都标记为1,将轨迹点3标记为0。
在另一些实施例中,服务器可能并没有从移动轨迹的第一个轨迹点开始进行停留点的识别,也即是,当对当前轨迹点进行停留点的识别时,该多个历史轨迹点中可能有的历史轨迹点进行了停留点的识别,而有的历史轨迹点并没有进行停留点的识别。此时,对于没有进行停留点识别的历史轨迹点而言,可以根据上述步骤301-303来确定这些历史轨迹点是否为停留点。之后,即可确定该多个历史轨迹点中是否存在停留点。
步骤306:如果多个历史轨迹点中存在停留点,从多个历史轨迹点中确定首个停留点。
需要说明的是,在本示例性实施例中,停留点的停留时长是指停留点在所属的停留点集合中的累计停留时长,也即是,从所属的停留点集合中的停留起点开始累计的停留时长。换句话说,对于停留点集合中的停留起点来说,停留起点的停留时长为时长初值,对于停留点集合中的非停留起点来说,非停留起点的停留时长为移动对象到达非停留起点的到达时刻与到达停留起点的到达时刻之间的到达时间差。比如,假设时长初值为0,移动对象到达停留点集合中的停留起点的到达时刻为2点30分10秒,移动对象到达停留点集合中的某个非停留起点的到达时刻为2点30分50秒。那么,停留点集合中的停留起点的停留时长为0,停留点集合中的非停留起点的停留时长为40秒。
在一些实施例中,如果多个历史轨迹点中存在停留点,那么可以确定移动对象可能在附近的区域停留,此时,为了进一步确定移动对象是否在附近的区域停留,就需要从多个历史轨迹点中确定首个停留点。示例性地,如果多个历史轨迹点中存在一个停留点,将这一个停留点确定为首个停留点。如果多个历史轨迹点中存在至少两个停留点,在该至少两个停留点中确定首个停留点。
作为一种示例,如果多个历史轨迹点中存在至少两个停留点,那么服务器可以将该至少两个停留点中与当前轨迹点之间的轨迹距离最小的停留点确定为首个停留点,或者,将该至少两个停留点中与当前轨迹点之间的到达时间差最小的停留点确定为首个停留点。
基于上述描述,移动轨迹通常是按照移动对象到达每个位置的先后顺序绘制,这样,与当前轨迹点之间的轨迹距离较近的停留点即为与当前轨迹点之间的到达时间差较小的停留点,与当前轨迹点之间的轨迹距离较远的停留点即为与当前轨迹点之间的到达时间差较大的停留点。因此,不仅可以按照与当前轨迹点之间的轨迹距离,从至少两个停留点中确定首个停留点,也可以按照与当前轨迹点之间的到达时间差,从至少两个停留点中确定首个停留点。
需要说明的是,轨迹距离是指在移动轨迹上两个轨迹点之间的距离,到达时间差是指移动对象到达两个轨迹点的到达时刻之间的差值。
例如,参见图4,在移动对象的移动轨迹上,当前轨迹点为轨迹点6,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括与当前轨迹点之间的直线距离小于或等于距离阈值的轨迹点为轨迹点5、轨迹点4、轨迹点3和轨迹点2。假设轨迹点5、轨迹点3和轨迹点2为停留点,轨迹点4为非停留点,那么可以根据轨迹点5、轨迹点3和轨迹点2的位置信息和当前轨迹点6的位置信息及轨迹点4的位置信息,分别计算出当前轨迹点6与轨迹点5、轨迹点3和轨迹点2之间的轨迹距离,进而确定与当前轨迹点6之间的轨迹距离最小的停留点为轨迹点5,此时,服务器可以确定轨迹点5为首个停留点。或者,根据移动对象分别到达轨迹点5、轨迹点3和轨迹点2的到达时刻及移动对象到达当前轨迹点6的到达时刻,分别计算出移动对象到达当前轨迹点6与移动对象到达轨迹点5、轨迹点3和轨迹点2之间的到达时间差,进而确定与当前轨迹点6之间的到达时间差最小的停留点为轨迹点5,此时,服务器可以确定轨迹点5为首个停留点。
步骤307:根据首个停留点,确定当前轨迹点的停留时长。
在一些实施例中,根据首个停留点,确定当前轨迹点的停留时长,可以分为如下三种情况来实现:
第一种情况:如果当前轨迹点与首个停留点相邻,获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长。
由于首个停留点对于当前轨迹点来说是历史轨迹点,而且首个停留点与当前轨迹点之间的直线距离小于或等于距离阈值,因此,可以确定移动对象在首个停留点附近的区域停留,此时,为了确定当前轨迹点是否可以加入首个停留点所属的停留点集合,需要获取首个停留点所属停留点集合中的停留起点的轨迹信息。
作为一种示例,可以将移动轨迹上位于首个停留点之前且与首个停留点之间的轨迹距离最近的一个停留时长为时长初值的停留点确定为首个停留点所属停留点集合中的停留起点,进而获取首个停留点所属停留点集合中的停留起点的轨迹信息。
作为另一种示例,可以将移动轨迹上位于首个停留点之前且与首个停留点之间的到达时间差为首个停留点的停留时长的轨迹点确定为首个停留点所属停留点集合中的停留起点,进而获取首个停留点所属停留点集合中的停留起点的轨迹信息。
例如,参见图5,在移动对象的移动轨迹上,当前轨迹点为轨迹点6,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括轨迹点5、轨迹点4、轨迹点3和轨迹点2,假设轨迹点5、轨迹点3和轨迹点2为停留点且轨迹点5为首个停留点,由图可知,首个停留点与当前轨迹点相邻。假设移动对象到达轨迹点5的到达时刻为2点30分50秒,轨迹点5的停留时长为5分钟,则移动对象到达轨迹点5所属停留点集合中的停留起点的到达时刻为2点25分50秒,再从移动对象的移动轨迹上寻找移动对象的到达时刻为2点25分50秒的轨迹点,假设寻找到该轨迹点为轨迹点2,那么服务器可以确定轨迹点2为首个停留点所属停留点集合中的停留起点,进而获取轨迹点2的轨迹信息。
在一些实施例中,根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点的停留时长,包括:根据当前轨迹点的轨迹信息和首个停留点所属停留点集合中的停留起点的轨迹信息,确定当前轨迹点与停留起点之间的直线距离,如果当前轨迹点与停留起点之间的直线距离小于或等于距离阈值,将移动对象到达当前轨迹点的到达时刻与移动对象到达停留起点的到达时刻之间的到达时间差确定为当前轨迹点的停留时长。如果当前轨迹点与停留起点之间的直线距离大于距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
由于当前轨迹点的轨迹信息中包括当前轨迹点的位置信息,停留起点的轨迹信息中包括停留起点的位置信息,因此,可以根据当前轨迹点的位置信息和停留起点的位置信息计算出当前轨迹点与停留起点之间的直线距离。具体计算方法可以参考步骤302相关描述,本申请实施例在此不再赘述。
需要说明的是,上述通过确定当前轨迹点与停留起点之间的直线距离,进而判断当前轨迹点与停留起点之间的直线距离是否小于或等于距离阈值仅仅是一种实现方式。在一些实施例中,还可以以当前轨迹点为圆心,以距离阈值为半径绘制一个圆形区域,然后判断停留起点是否位于该圆形区域内,进而可以判断出停留起点与当前轨迹点之间的直线距离是否小于或等于距离阈值。
值得注意的是,如果当前轨迹点与停留起点之间的直线距离小于或等于距离阈值,说明当前轨迹点与停留起点之间的距离较近,当前轨迹点可以与停留起点属于同一个停留点集合,此时,可以直接将移动对象到达当前轨迹点的到达时刻与移动对象到达停留起点的到达时刻之间的到达时间差确定为当前轨迹点的停留时长。反之,如果当前轨迹点与停留起点之间的直线距离大于距离阈值,说明当前轨迹点与停留起点之间的距离较远,当前轨迹点不能与停留起点属于同一个停留点集合,此时,可以将当前轨迹点作为一个新的停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
例如,参见图5,在移动对象的移动轨迹上,当前轨迹点为轨迹点6,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括轨迹点5、轨迹点4、轨迹点3和轨迹点2,假设首个停留点为轨迹点5,停留起点为轨迹点2,且轨迹点2与当前轨迹点之间的直线距离小于或等于距离阈值,此时,假设移动对象到达当前轨迹点6的到达时刻为2点25分50秒,移动对象到达停留起点的到达时刻为2点15分50秒,那么,服务器可以确定当前轨迹点6的停留时长为10分钟。
再例如,参见图6,在移动对象的移动轨迹上,当前轨迹点为轨迹点5,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括轨迹点4、轨迹点3和轨迹点2,假设首个停留点为轨迹点3,停留起点为轨迹点1,但由图可知,轨迹点1在圆形区域外,即轨迹点1与当前轨迹点5之间的直线距离大于距离阈值,说明轨迹点1与当前轨迹点5不属于同一个停留点集合,此时,服务器可以将当前轨迹点5确定为另一个停留点集合的停留起点,确定当前轨迹点5的停留时长为时长初值。
第二种情况:如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中不存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
如果当前轨迹点与首个停留点不相邻,表明当前轨迹点与首个停留点之间存在非停留点,此时,需要确定这些非停留点与当前轨迹点之间的直线距离是否大于距离阈值,也即是,确定当前轨迹点与首个停留点之间的历史轨迹点中是否存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点。如果不存在,那么表明移动对象目前基本都在附近的区域停留,此时,为了确定当前轨迹点是否可以加入首个停留点所属的停留点集合,需要获取首个停留点所属停留点集合中的停留起点的轨迹信息。
需要说明的是,在第二种情况中,服务器获取首个停留点所属停留点集合中的停留起点的轨迹信息的操作,以及根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长的操作,均可以参考第一种情况中的相关描述,本申请实施例在此不再赘述。
第三种情况:如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,确定非停留参数;根据非停留参数,确定当前轨迹点的停留时长。
基于上述第二种情况的描述,如果当前轨迹点与首个停留点之间的历史轨迹点中存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,就表明移动对象可能并没有在首个停留点的附近停留,也即是,移动对象在首个停留点停留之后可能移动的距离比较远,此时,需要确定非停留参数。
例如,参见图7,在移动对象的移动轨迹上,当前轨迹点为轨迹点8,以当前轨迹点为圆心,以距离阈值为半径的圆形区域内包括轨迹点7、轨迹点6、轨迹点4和轨迹点3,假设首个停留点为轨迹点4,由图可知,首个停留点与当前轨迹点不相邻,且在当前轨迹点8与首个停留点4之间存在与当前轨迹点8之间的直线距离大于距离阈值的轨迹点5,这时需确定非停留参数。
作为一种示例,服务器可以先确定首个停留点所在的历史轨迹段的轨迹起点,首个停留点为该历史轨迹段的轨迹终点,该历史轨迹段中存在与当前轨迹点之间的直线距离小于或等于距离阈值的M个历史轨迹点,该历史轨迹段中除M个历史轨迹点和首个停留点之外的历史轨迹点与当前轨迹点之间的距离均大于距离阈值,M个历史轨迹点是指从轨迹起点开始的连续M个轨迹点,M为大于或等于1的整数。然后,根据轨迹起点的轨迹信息和历史轨迹段上与首个停留点相邻的历史轨迹点的轨迹信息来确定非停留参数。
也即是,从当前轨迹点开始,逐个确定每个历史轨迹点与当前轨迹点之间的直线距离,一旦某个历史轨迹点与当前轨迹点之间的直线距离大于距离阈值之后,又出现另一个历史轨迹点与当前轨迹点之间的直线距离小于或等于距离阈值的情况,并且与当前轨迹点之间的直线距离小于或等于距离阈值的这个历史轨迹点为首个停留点,此时,可以当前轨迹点作为首个停留点所在的历史轨迹段的轨迹起点,将当前遍历的这些历史轨迹点以及当前轨迹点组成的轨迹段称为首个停留点所在的历史轨迹段。但是,如果与当前轨迹点之间的直线距离小于或等于距离阈值的这个历史轨迹点为非停留点,那么,可以从这个历史轨迹点开始,按照上述方法继续遍历历史轨迹点,直至遍历至首个停留点为止,从而确定得到首个停留点所在的历史轨迹段,进而可以确定得到历史轨迹段的轨迹起点。
例如,参见图8,在移动对象的移动轨迹上,假设轨迹点9是当前轨迹点,如果轨迹点5是首个停留点,那么首个停留点所在的历史轨迹段为轨迹点9-轨迹点5这段轨迹,此时,首个停留点所在的历史轨迹段的轨迹起点为轨迹点9。如果轨迹点5是一个非停留点,轨迹点2是首个停留点,那么,首个停留点所在的历史轨迹段为轨迹点5-轨迹点2这段轨迹,此时,首个停留点所在的历史轨迹段的轨迹起点为轨迹点5。
示例地,非停留参数可以包括非停留距离和非停留时长中的至少一个。对于非停留距离,服务器可以确定轨迹起点是否为停留点,如果轨迹起点是停留点,则根据轨迹起点的位置信息确定历史轨迹段上与轨迹起点相邻的一个历史轨迹点的位置信息,然后根据历史轨迹段上与轨迹起点相邻的一个历史轨迹点的位置信息和历史轨迹段上与首个停留点相邻的历史轨迹点的位置信息及位于二者之间的轨迹点的位置信息,确定历史轨迹段上与轨迹起点相邻的一个历史轨迹点和历史轨迹段上与首个停留点相邻的历史轨迹点之间的轨迹距离,将该轨迹距离确定为非停留距离。如果轨迹起点是非停留点,则根据轨迹起点的位置信息和历史轨迹段上与首个停留点相邻的历史轨迹点的位置信息及位于二者之间的轨迹点的位置信息,确定轨迹起点和历史轨迹段上与首个停留点相邻的历史轨迹点之间的轨迹距离,将该轨迹距离确定为非停留距离。对于非停留时长,服务器可以直接根据移动对象到达轨迹起点的到达时刻和移动对象到达历史轨迹段上与首个停留点相邻的历史轨迹点的到达时刻,确定移动对象到达轨迹起点和移动对象到达历史轨迹段上与首个停留点相邻的历史轨迹点之间的到达时间差,将该到达时间差确定为非停留时长。
例如,参见图8,在移动对象的移动轨迹上,假设轨迹点9是当前轨迹点,对于非停留距离,如果轨迹点5是首个停留点,首个停留点所在的历史轨迹段的轨迹起点为轨迹点9,且轨迹点9是停留点,那么根据历史轨迹段上与轨迹起点相邻的轨迹点8的位置信息和历史轨迹段上与首个停留点相邻的轨迹点6的位置信息及位于二者之间的轨迹点7的位置信息,确定轨迹点8与轨迹点6之间的轨迹距离,将该轨迹距离确定为非停留距离。如果轨迹点2是首个停留点,首个停留点所在的历史轨迹段的轨迹起点为轨迹点5,且轨迹点5为非停留点,那么根据轨迹点5的位置信息和历史轨迹段上与首个停留点相邻的轨迹点3的位置信息及位于二者之间的轨迹点4的位置信息,确定轨迹点5和轨迹点3之间的轨迹距离,将该轨迹距离确定为非停留距离。
继续上述举例,对于非停留时长,如果轨迹点5是首个停留点,首个停留点所在的历史轨迹段的轨迹起点为轨迹点9,那么可以根据移动对象到达轨迹点9的到达时刻和移动对象到达历史轨迹段上与首个停留点相邻的轨迹点6的到达时刻,确定移动对象到达轨迹点9和移动对象到达轨迹点6之间的到达时间差,将该到达时间差确定为非停留时长。如果轨迹点2是首个停留点,首个停留点所在的历史轨迹段的轨迹起点为轨迹点5,同理,只需确定移动对象到达轨迹点5和移动对象到达历史轨迹段上与首个停留点相邻的轨迹点3之间的到达时间差,将该到达时间差确定为非停留时长。
由于非停留参数包括非停留距离和非停留时长中的至少一个,因此,作为一种示例,根据非停留参数,确定当前轨迹点的停留时长可以包括如下三种实现方式:
第一种实现方式:非停留参数包括非停留距离,如果非停留距离大于停留距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
应当理解的是,停留距离阈值可以事先设置并固化在服务器中,也可以在确定停留时长时进行设置,且停留距离阈值可以根据经验或大数据等来确定。
示例地,非停留参数包括非停留距离,将计算得到的非停留距离与停留距离阈值相比,若非停留距离大于停留距离阈值,说明首个停留点与当前轨迹点之间的轨迹距离比较远,所以将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
进一步地,若非停留距离小于或等于停留距离阈值,说明首个停留点与当前轨迹点之间的轨迹距离比较近,此时,可以直接获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。当然,轨迹距离比较近的情况下,移动对象有可能也在一直移动的过程中,此时,还可以获取非停留时长,如果非停留时长小于或等于停留时长阈值,说明移动对象基本没有移动,此时,可以获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
第二种实现方式:非停留参数包括非停留时长,如果非停留时长大于停留时长阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
应当理解的是,停留时长阈值可以事先设置并固化在服务器中,也可以在确定停留时长时进行设置,且停留时长阈值可以根据经验或大数据等来确定。
示例地,非停留参数包括非停留时长,将计算得到的非停留时长与停留时长阈值相比,若非停留时长大于停留时长阈值,说明移动对象移动的时间比较长,在这个时间段内,首个停留点与当前轨迹点之间的轨迹距离比较远,所以将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
进一步地,若非停留时长小于或等于停留时长阈值,说明移动对象移动的时间比较短,此时,可以直接获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。当然,移动时间比较短的情况下,移动对象有可能也在一直移动的过程中,此时,还可以获取非停留距离,如果非停留距离小于或等于停留距离阈值,说明移动对象基本没有移动,此时,可以获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
第三种实现方式:非停留参数包括非停留距离和非停留时长,如果非停留距离小于或等于停留距离阈值,且非停留时长小于或等于停留时长阈值,获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
示例地,非停留参数包括非停留距离和非停留时长,将计算得到的非停留距离与停留距离阈值相比,以及将非停留时长与停留时长阈值相比,当非停留距离小于或等于停留距离阈值,且非停留时长小于或等于停留时长阈值时,获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。否则,其他条件下,均将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值
也就是说,如果非停留距离小于或等于停留距离阈值,且非停留时长小于或等于停留时长阈值,获取首个停留点所属停留点集合中的停留起点的轨迹信息,根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。如果非停留距离小于或等于停留距离阈值,但非停留时长大于停留时长阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。如果非停留时长小于或等于停留时长阈值,但非停留距离大于停留距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
需要说明的是,获取首个停留点所属停留点集合中的停留起点的轨迹信息,并且根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长的操作与上述第一种情况的操作同理,具体实现过程可以参考上述第一种情况的相关描述,本申请实施例在此不再赘述。
在本申请实施例中,在获取到当前轨迹点的轨迹信息之后,可以根据当前轨迹点的轨迹信息确定当前轨迹点的速度。如果当前轨迹点的速度小于速度阈值,那么可以确定当前轨迹点为停留点。也即是,本申请实施例直接通过当前轨迹点的速度和速度阈值来确定当前轨迹点是否为停留点,并没有依赖于其他的轨迹点,也没有在确定当前轨迹点是否为停留点的同时来确定其他的轨迹点是否为停留点,这样,就不会存在时间滞后性的问题以及鲁棒性较差的问题。
图9是本申请实施例提供的一种停留点识别装置的结构示意图,该装置可以由软件、硬件或者两者的结合实现。参见图9,该装置包括:第一获取模块901、第一确定模块902和第二确定模块903。
第一获取模块901,用于获取当前轨迹点的轨迹信息,该轨迹信息中包括当前轨迹点的位置信息,以及移动对象到达当前轨迹点的到达速度和到达时刻;
第一确定模块902,用于根据当前轨迹点的轨迹信息,确定当前轨迹点的速度;
第二确定模块903,用于如果当前轨迹点的速度小于速度阈值,确定当前轨迹点为停留点。
可选地,第一确定模块902包括:
第一确定子模块,用于根据当前轨迹点的位置信息和移动对象到达当前轨迹点的到达时刻,确定当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差;
第二确定子模块,用于根据当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差,确定移动对象到达当前轨迹点的平均速度;
第三确定子模块,用于将到达速度和平均速度中的最小值确定为当前轨迹点的速度。
可选地,参见图10,该装置还包括:
第二获取模块904,用于获取与当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点;
第三确定模块905,用于如果多个历史轨迹点中存在停留点,从多个历史轨迹点中确定首个停留点;
第四确定模块906,用于根据首个停留点,确定当前轨迹点的停留时长。
可选地,第四确定模块906包括:
第一获取子模块,用于如果当前轨迹点与首个停留点相邻,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
第四确定子模块,用于根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,第四确定模块906包括:
第二获取子模块,用于如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中不存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
第四确定子模块,用于根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,第四确定模块906包括:
第五确定子模块,用于如果当前轨迹点与首个停留点不相邻,且当前轨迹点与首个停留点之间的历史轨迹点中存在与当前轨迹点之间的直线距离大于距离阈值的历史轨迹点,确定非停留参数;
第四确定子模块,用于根据非停留参数,确定当前轨迹点的停留时长。
可选地,非停留参数包括非停留距离,第四确定子模块主要用于:
如果非停留距离大于停留距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,非停留参数包括非停留时长,第四确定子模块主要用于:
如果非停留时长大于停留时长阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,非停留参数包括非停留距离和非停留时长,第四确定子模块主要用于:
如果非停留距离小于或等于停留距离阈值,且非停留时长小于或等于停留时长阈值,获取首个停留点所属停留点集合中的停留起点的轨迹信息;
根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点的停留时长。
可选地,参见图11,该装置还包括:
第五确定模块907,用于如果多个历史轨迹点中不存在停留点,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,第四确定子模块包括:
第一确定单元,用于根据当前轨迹点的轨迹信息和停留起点的轨迹信息,确定当前轨迹点与停留起点之间的直线距离;
第二确定单元,用于如果当前轨迹点与停留起点之间的直线距离小于或等于距离阈值,将移动对象到达当前轨迹点的到达时刻与移动对象到达停留起点的到达时刻之间的到达时间差确定为当前轨迹点的停留时长。
可选地,第四确定子模块还包括:
第三确定单元,用于如果当前轨迹点与停留起点之间的直线距离大于距离阈值,将当前轨迹点作为一个停留点集合的停留起点,确定当前轨迹点的停留时长为时长初值。
可选地,第三确定模块905主要用于:
如果多个历史轨迹点中存在一个停留点,将一个停留点确定为首个停留点;
如果多个历史轨迹点中存在至少两个停留点,将至少两个停留点中,与当前轨迹点之间的轨迹距离最小的停留点确定为首个停留点,或者,将至少两个停留点中,与当前轨迹点之间的到达时间差最小的停留点确定为首个停留点。
可选地,第五确定子模块主要用于:
确定首个停留点所在的历史轨迹段的轨迹起点,首个停留点为历史轨迹段的轨迹终点,历史轨迹段中存在与当前轨迹点之间的直线距离小于或等于距离阈值的M个历史轨迹点,历史轨迹段中除M个历史轨迹点和首个停留点之外的历史轨迹点与当前轨迹点之间的距离均大于距离阈值,M个历史轨迹点是指从轨迹起点开始的连续M个轨迹点,M为大于或等于1的整数;
根据轨迹起点的轨迹信息和历史轨迹段上与首个停留点相邻的历史轨迹点的轨迹信息,确定非停留参数。
在本申请实施例中,在获取到当前轨迹点的轨迹信息之后,可以根据当前轨迹点的轨迹信息确定当前轨迹点的速度。如果当前轨迹点的速度小于速度阈值,那么可以确定当前轨迹点为停留点。也即是,本申请实施例直接通过当前轨迹点的速度和速度阈值来确定当前轨迹点是否为停留点,并没有依赖于其他的轨迹点,也没有在确定当前轨迹点是否为停留点的同时来确定其他的轨迹点是否为停留点,这样,就不会存在时间滞后性的问题以及鲁棒性较差的问题。
需要说明的是:上述实施例提供的停留点识别装置在进行停留点识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的停留点识别装置与停留点识别方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图12是根据一示例性实施例示出的一种电子设备的结构示意图,该电子设备可以为移动终端101,也可以为服务器102。该电子设备1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)1201和一个或一个以上的存储器1202,其中,所述存储器1202中存储有至少一条指令,所述至少一条指令由该处理器1201加载并执行,以实现上述实施例中的停留点识别方法。当然,该电子设备1200还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该电子设备1200还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由电子设备中的处理器执行以完成上述实施例中的停留点识别方法。例如,所述计算机可读存储介质可以是ROM(read-only memory,只读存储器)、RAM(random accessmemory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。
值得注意的是,本申请提到的计算机可读存储介质可以为非易失性存储介质,换句话说,是非瞬时性存储介质。
应当理解的是,实现上述实施例的全部或部分步骤可以通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。所述计算机指令可以存储在上述计算机可读存储介质中。
在示例性实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例的停留点识别方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (17)
1.一种停留点的识别方法,其特征在于,所述方法包括:
获取当前轨迹点的轨迹信息,所述轨迹信息中包括所述当前轨迹点的位置信息,以及移动对象到达所述当前轨迹点的到达速度和到达时刻;
根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度;
如果所述当前轨迹点的速度小于速度阈值,确定所述当前轨迹点为停留点。
2.如权利要求1所述的方法,其特征在于,所述根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度,包括:
根据所述当前轨迹点的位置信息和所述移动对象到达所述当前轨迹点的到达时刻,确定所述当前轨迹点与相邻的上一轨迹点之间的距离以及到达时间差;
根据所述当前轨迹点与所述上一轨迹点之间的距离以及所述到达时间差,确定所述移动对象到达所述当前轨迹点的平均速度;
将所述到达速度和所述平均速度中的最小值确定为所述当前轨迹点的速度。
3.如权利要求1或2所述的方法,其特征在于,所述确定所述当前轨迹点为停留点之后,还包括:
获取与所述当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点;
如果所述多个历史轨迹点中存在停留点,从所述多个历史轨迹点中确定首个停留点;
根据所述首个停留点,确定所述当前轨迹点的停留时长。
4.如权利要求3所述的方法,其特征在于,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点相邻,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
5.如权利要求3所述的方法,其特征在于,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中不存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
6.如权利要求3所述的方法,其特征在于,所述根据所述首个停留点,确定所述当前轨迹点的停留时长,包括:
如果所述当前轨迹点与所述首个停留点不相邻,且所述当前轨迹点与所述首个停留点之间的历史轨迹点中存在与所述当前轨迹点之间的直线距离大于所述距离阈值的历史轨迹点,确定非停留参数;
根据所述非停留参数,确定所述当前轨迹点的停留时长。
7.如权利要求6所述的方法,其特征在于,所述非停留参数包括非停留距离,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留距离大于停留距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
8.如权利要求6所述的方法,其特征在于,所述非停留参数包括非停留时长,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留时长大于停留时长阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
9.如权利要求6所述的方法,其特征在于,所述非停留参数包括非停留距离和非停留时长,所述根据所述非停留参数,确定所述当前轨迹点的停留时长,包括:
如果所述非停留距离小于或等于所述停留距离阈值,且所述非停留时长小于或等于所述停留时长阈值,获取所述首个停留点所属停留点集合中的停留起点的轨迹信息;
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长。
10.如权利要求3所述的方法,其特征在于,所述获取与所述当前轨迹点之间的直线距离小于或等于距离阈值的多个历史轨迹点之后,还包括:
如果所述多个历史轨迹点中不存在停留点,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
11.如权利要求4、5或9所述的方法,其特征在于,所述根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点的停留时长,包括:
根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点与所述停留起点之间的直线距离;
如果所述当前轨迹点与所述停留起点之间的直线距离小于或等于所述距离阈值,将所述移动对象到达所述当前轨迹点的到达时刻与所述移动对象到达所述停留起点的到达时刻之间的到达时间差确定所述当前轨迹点的停留时长。
12.如权利要求11所述的方法,其特征在于,所述根据所述当前轨迹点的轨迹信息和所述停留起点的轨迹信息,确定所述当前轨迹点与所述停留起点之间的直线距离之后,还包括:
如果所述当前轨迹点与所述停留起点之间的直线距离大于所述距离阈值,将所述当前轨迹点作为一个停留点集合的停留起点,确定所述当前轨迹点的停留时长为时长初值。
13.如权利要求3所述的方法,其特征在于,所述从所述多个历史轨迹点中确定首个停留点,包括:
如果所述多个历史轨迹点中存在一个停留点,将所述一个停留点确定为所述首个停留点;
如果所述多个历史轨迹点中存在至少两个停留点,将所述至少两个停留点中,与所述当前轨迹点之间的轨迹距离最小的停留点确定为所述首个停留点,或者,将所述至少两个停留点中,与所述当前轨迹点之间的到达时间差最小的停留点确定为所述首个停留点。
14.如权利要求6所述的方法,其特征在于,所述确定非停留参数,包括:
确定所述首个停留点所在的历史轨迹段的轨迹起点,所述首个停留点为所述历史轨迹段的轨迹终点,所述历史轨迹段中存在与所述当前轨迹点之间的直线距离小于或等于所述距离阈值的M个历史轨迹点,所述历史轨迹段中除所述M个历史轨迹点和所述首个停留点之外的历史轨迹点与所述当前轨迹点之间的距离均大于所述距离阈值,所述M个历史轨迹点是指从所述轨迹起点开始的连续M个轨迹点,所述M为大于或等于1的整数;
根据所述轨迹起点的轨迹信息和所述历史轨迹段上与所述首个停留点相邻的历史轨迹点的轨迹信息,确定所述非停留参数。
15.一种停留点的识别装置,其特征在于,所述装置包括:
第一获取模块,用于获取当前轨迹点的轨迹信息,所述轨迹信息中包括所述当前轨迹点的位置信息,以及移动对象到达所述当前轨迹点的到达速度和到达时刻;
第一确定模块,用于根据所述当前轨迹点的轨迹信息,确定所述当前轨迹点的速度;
第二确定模块,用于如果所述当前轨迹点的速度小于速度阈值,确定所述当前轨迹点为停留点。
16.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1-14中任一所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1-14任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910263234.8A CN111770432B (zh) | 2019-04-02 | 2019-04-02 | 停留点的识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910263234.8A CN111770432B (zh) | 2019-04-02 | 2019-04-02 | 停留点的识别方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111770432A true CN111770432A (zh) | 2020-10-13 |
CN111770432B CN111770432B (zh) | 2022-07-15 |
Family
ID=72718826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910263234.8A Active CN111770432B (zh) | 2019-04-02 | 2019-04-02 | 停留点的识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111770432B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112346095A (zh) * | 2020-10-29 | 2021-02-09 | 广东小天才科技有限公司 | 判断用户处于快速移动状态的方法及装置、智能穿戴设备 |
CN112989222A (zh) * | 2021-03-04 | 2021-06-18 | 北京嘀嘀无限科技发展有限公司 | 一种位置确定方法、装置及电子设备 |
CN114509076A (zh) * | 2022-02-16 | 2022-05-17 | 平安科技(深圳)有限公司 | 移动轨迹数据处理方法、装置、设备及存储介质 |
US20220164723A1 (en) * | 2021-04-19 | 2022-05-26 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for determining boarding information, electronic device, and storage medium |
CN116027367A (zh) * | 2022-08-31 | 2023-04-28 | 荣耀终端有限公司 | 停留点识别方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102607553A (zh) * | 2012-03-06 | 2012-07-25 | 北京建筑工程学院 | 一种基于出行轨迹数据的行程识别方法 |
-
2019
- 2019-04-02 CN CN201910263234.8A patent/CN111770432B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102607553A (zh) * | 2012-03-06 | 2012-07-25 | 北京建筑工程学院 | 一种基于出行轨迹数据的行程识别方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112346095A (zh) * | 2020-10-29 | 2021-02-09 | 广东小天才科技有限公司 | 判断用户处于快速移动状态的方法及装置、智能穿戴设备 |
CN112989222A (zh) * | 2021-03-04 | 2021-06-18 | 北京嘀嘀无限科技发展有限公司 | 一种位置确定方法、装置及电子设备 |
CN112989222B (zh) * | 2021-03-04 | 2024-06-04 | 北京嘀嘀无限科技发展有限公司 | 一种位置确定方法、装置及电子设备 |
US20220164723A1 (en) * | 2021-04-19 | 2022-05-26 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for determining boarding information, electronic device, and storage medium |
CN114509076A (zh) * | 2022-02-16 | 2022-05-17 | 平安科技(深圳)有限公司 | 移动轨迹数据处理方法、装置、设备及存储介质 |
CN114509076B (zh) * | 2022-02-16 | 2023-10-20 | 平安科技(深圳)有限公司 | 移动轨迹数据处理方法、装置、设备及存储介质 |
CN116027367A (zh) * | 2022-08-31 | 2023-04-28 | 荣耀终端有限公司 | 停留点识别方法、装置、设备及存储介质 |
CN116027367B (zh) * | 2022-08-31 | 2023-10-20 | 荣耀终端有限公司 | 停留点识别方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111770432B (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111770432B (zh) | 停留点的识别方法、装置、电子设备及存储介质 | |
EP3756367B1 (en) | Peer to peer location updates | |
AU2018282316B2 (en) | Systems and methods for displaying movement of vehicle on map | |
US20120296885A1 (en) | Transportation Information Systems and Methods | |
CN109166337B (zh) | 公交到站时间生成方法、装置及公交乘客出行od获取方法 | |
CN109841078B (zh) | 导航数据处理方法及其装置、存储介质 | |
CN111368014A (zh) | 一种运动轨迹的生成方法、终端设备及存储介质 | |
CN113135178A (zh) | 泊车路线共享方法、装置、设备以及存储介质 | |
CN111737377B (zh) | 一种漂移轨迹的识别方法、装置及计算设备、存储介质 | |
CN113587944B (zh) | 准实时的车辆行驶路线生成方法、系统及设备 | |
CN111405483B (zh) | 行程轨迹生成方法、装置、电子设备及存储介质 | |
CN109789878B (zh) | 车载电子控制装置 | |
CN109308806B (zh) | 一种交通工具的行驶检测方法及服务器 | |
CN110349428B (zh) | 识别用户是否正在前往公交站点的方法及装置 | |
CN113741415A (zh) | 路径规划方法、装置、终端设备及计算机可读存储介质 | |
KR20160049688A (ko) | 교통정보 예측 방법 및 그 장치 | |
CN110672086B (zh) | 场景识别方法、装置、设备及计算机可读介质 | |
CN111506777A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
US20220406076A1 (en) | Warning control apparatus, moving object, warning control method, and computer-readable storage medium | |
CN113243100A (zh) | 用于车辆的用于外包计算过程的装置 | |
WO2017058150A1 (en) | Vehicle usage pattern evaluation | |
CN111754770B (zh) | 一种交通控制方法、装置及电子设备 | |
CN116027367B (zh) | 停留点识别方法、装置、设备及存储介质 | |
CN113936453B (zh) | 一种基于车头时距的信息识别方法及系统 | |
CN116086475A (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 |