CN107122461B - 一种出行轨迹聚类方法、装置及设备 - Google Patents

一种出行轨迹聚类方法、装置及设备 Download PDF

Info

Publication number
CN107122461B
CN107122461B CN201710288748.XA CN201710288748A CN107122461B CN 107122461 B CN107122461 B CN 107122461B CN 201710288748 A CN201710288748 A CN 201710288748A CN 107122461 B CN107122461 B CN 107122461B
Authority
CN
China
Prior art keywords
track
trip track
trip
intermediate point
point
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.)
Active
Application number
CN201710288748.XA
Other languages
English (en)
Other versions
CN107122461A (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.)
Neusoft Corp
Original Assignee
Neusoft Corp
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 Neusoft Corp filed Critical Neusoft Corp
Priority to CN201710288748.XA priority Critical patent/CN107122461B/zh
Publication of CN107122461A publication Critical patent/CN107122461A/zh
Application granted granted Critical
Publication of CN107122461B publication Critical patent/CN107122461B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Train Traffic Observation, Control, And Security (AREA)

Abstract

本申请实施例公开了一种出行轨迹聚类方法、装置及设备,减少出行轨迹聚类的计算量,提高出行轨迹的聚类效率。所述方法包括:获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。

Description

一种出行轨迹聚类方法、装置及设备
技术领域
本申请涉及大数据领域,尤其涉及一种出行轨迹聚类方法、装置及设备。
背景技术
用户的出行轨迹是用户行为的重要组成部分,通过对用户出行轨迹进行分析,可以得到很多重要的信息。用户的出行轨迹通常是根据用户在一段时间内的位置信息(例如GPS信息)得到,通过对位置信息进行分析,可以得到用户经常走的路线,以便预先为用户推送关于该路线的路况,以帮助用户规避拥堵风险,或者可以为用户推送经常走的路线的周边美食、商家信息等。此外,还可以为路线相同的用户进行好友推荐、推送拼车等服务。那么就涉及到如何从大量的用户出行轨迹中找到相同的出行轨迹的问题,所谓相同出行轨迹的含义是指两条及以上出行轨迹的起点、终点以及中间点均分别相匹配,而且出行轨迹的方向相同。
现有技术通过密度聚类的方法将相同的出行轨迹聚为一类。具体步骤如下:首先,将每条出行轨迹分别看作是一个具有方向和长度的2n维向量,n为出行轨迹中位置信息采样点的个数。然后,计算两两向量之间的欧式距离和夹角,若两个向量之间的欧式距离满足距离条件,且二者之间的夹角满足夹角条件,则认为这两条出行轨迹相同,并将这两条出行轨迹聚为一类。
现有技术的这种聚类方法计算量大,效率较低,尤其是出行轨迹中采样点的个数较多的时候。所以目前需要一种计算量较小、效率较高的出行轨迹聚类方法。
发明内容
本申请实施例提供一种出行轨迹聚类方法、装置及设备,减少出行轨迹聚类的计算量,提高出行轨迹的聚类效率。
本申请实施例提供了一种出行轨迹聚类方法,所述方法包括:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
可选的,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
可选的,所述方法还包括:
从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合;
所述利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类包括:
利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类。
可选的,所述方法还包括:
若所述第三出行轨迹集合中出行轨迹的条数大于或等于第二阈值,则执行利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类的步骤。
可选的,所述分别利用所述多条出行轨迹的起点和终点,对所述多条出行轨迹进行聚类包括:
对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合;
对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合;
根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
可选的,所述对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合包括:
从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;
从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;
将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到所述第四出行轨迹集合。
可选的,所述方法还包括:
若所述第六出行轨迹集合中出行轨迹的条数大于或等于第三阈值,则执行将所述第六出行轨迹集合与所述第一出行轨迹聚为一类的步骤;
若所述第六出行轨迹集合中出行轨迹的条数小于所述第三阈值,则从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。
可选的,所述对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合包括:
从未被进行终点聚类的出行轨迹中选取第二出行轨迹;
从除所述第二出行轨迹之外的所述未被进行终点聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;
将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到第五出行轨迹集合。
可选的,所述方法还包括:
若所述第七出行轨迹集合中出行轨迹的条数大于或等于第四阈值,则执行将所述第七出行轨迹集合与所述第二出行轨迹聚为一类的步骤;
若所述第七出行轨迹集合中出行轨迹的条数小于所述第四阈值,则从未被进行终点聚类的出行轨迹中删除所述第二出行轨迹。
可选的,所述距离为路网距离。
可选的,所述利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合包括:
从所述第一出行轨迹集合的未被进行中间点聚类的出行轨迹中确定第三出行轨迹,并确定所述第三出行轨迹的中间点相对于参考点之间的距离和方向,所述参考点为路网空间中的任意一点;
根据所述第三出行轨迹的中间点相对于参考点之间的距离和方向,从所述第一出行轨迹集合中,确定与所述第三出行轨迹匹配的出行轨迹,形成所述第二出行轨迹集合。
本申请实施例提供了一种出行轨迹聚类方法,其特征在于,所述方法包括:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八轨迹集合中出行轨迹的中间点的个数相同;
若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
可选的,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
可选的,所述方法还包括:
利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹;
所述利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合包括:
利用所述第十轨迹集合中出行轨迹的中间点,对所述第十轨迹集合中的出行轨迹进行聚类,得到所述第九轨迹集合,所述第九轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
可选的,所述方法还包括:
利用所述第九轨迹集合中出行轨迹的起点和/或终点,对所述第九轨迹集合中的出行轨迹进行聚类,得到第十一轨迹集合,所述第十一轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
本申请实施例还提供了一种出行轨迹聚类装置,所述装置包括:第一轨迹获取单元、第一聚类单元和第二聚类单元;
其中,所述第一轨迹获取单元,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第一聚类单元,用于分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
所述第二聚类单元,用于利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
可选的,所述装置还包括:
第一确定单元,用于从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合;
所述第二聚类单元,具体用于利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类,得到所述第二出行轨迹集合。
可选的,所述装置还包括:
第一判断单元,用于判断所述第三出行轨迹集合中出行轨迹的条数是否大于或等于第二阈值,若是,则激活所述第二聚类单元。
可选的,所述第一聚类单元包括:
第一聚类子单元、第二聚类子单元和交集单元;
其中,所述第一聚类子单元,用于对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合;
所述第二聚类子单元,用于对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合;
所述交集单元,用于根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
可选的,所述第一聚类子单元包括:
第一选取单元、第六出行轨迹集合获取单元和第四出行轨迹集合获取单元;
其中,所述第一选取单元,用于从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;
所述第六出行轨迹集合获取单元,用于从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;
所述第四出行轨迹集合获取单元,用于将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到所述第四出行轨迹集合。
可选的,所述装置还包括:
第二判断单元和第一删除单元;
其中,所述第二判断单元,用于判断所述第六出行轨迹集合中出行轨迹的条数是否大于或等于第三阈值,如果是,则激活所述第四出行轨迹集合获取单元;如果否,则激活所述删除单元;
所述第一删除单元,用于从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。
可选的,所述第二聚类子单元包括:
第二选取单元、第七出行轨迹集合获取单元和第五出行轨迹集合获取单元;
其中,所述第二选取单元,用于从未被进行终点聚类的出行轨迹中选取第二出行轨迹;
所述第七出行轨迹集合获取单元,用于从除所述第二出行轨迹之外的所述未被进行终点聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;
所述第五出行轨迹集合获取单元,用于将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到第五出行轨迹集合。
可选的,所述装置还包括:
第三判断单元和第二删除单元;
所述第三判断单元,用于判断所述第七出行轨迹集合中出行轨迹的条数是否大于或等于第四阈值,若是,则激活所述第五出行轨迹集合获取单元;若否,则激活所述第二删除单元;
所述第二删除单元,用于从未被进行终点聚类的出行轨迹中删除所述第二出行轨迹。
本申请实施例还提供了一种出行轨迹聚类装置,所述装置包括:
第二轨迹获取单元、第三聚类单元和第四聚类单元;
其中,所述第二轨迹获取单元,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第三聚类单元,用于按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八轨迹集合中出行轨迹的中间点的个数相同;
所述第四聚类单元,用于若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
可选的,所述装置还包括:
第五聚类单元,用于利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹;
所述第四聚类单元,具体用于利用所述第十轨迹集合中出行轨迹的中间点,对所述第十轨迹集合中的出行轨迹进行聚类,得到所述第九轨迹集合,所述第九轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
可选的,所述装置还包括:
第六聚类单元,用于利用所述第九轨迹集合中出行轨迹的起点和/或终点,对所述第九轨迹集合中的出行轨迹进行聚类,得到第十一轨迹集合,所述第十一轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
本申请实施例还提供了一种出行轨迹聚类设备,所述设备包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
本申请实施例还提供了一种出行轨迹聚类设备,所述设备包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八轨迹集合中出行轨迹的中间点的个数相同;
若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
在本申请提供的实施例中,只有满足起点和/或终点相匹配且出行轨迹的条数足够多(大于或等于第一阈值)的出行轨迹集合,才能根据中间点进行聚类;若出行轨迹的条数较少,则没有必要进行中间点聚类,因为条数较少表明用户很少或很少用户从该起点出发,和/或,到达该终点,而这种情况不属于本申请的目的所在,所以无需进行下一步中间点聚类。相比于现有技术,通过本申请的这种方式能够减少中间点聚类的计算量,从而减少了整个出行轨迹聚类的计算量,提高了聚类效率。
在本申请提供的另外一个实施例中,按照中间点的个数对用户的多条出行轨迹进行聚类,得到由中间点个数相同的若干条出行轨迹形成的第八出行轨迹集合。只有所述第八出行轨迹集合中出行轨迹的条数足够多(大于或等于第四阈值)的情况下,才进行中间点的聚类,因为其中匹配的出行轨迹的条数可能也比较多;而如果所述第八出行轨迹集合中出行轨迹的条数较少,则其中匹配的出行轨迹的条数一定较少,所以就不利用中间点进行聚类了,减少利用中间点聚类的计算量,提高聚类效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例一提供的一种出行轨迹聚类方法的流程图;
图2为本申请实施例二提供的一种出行轨迹聚类方法的流程图;
图3为本申请实施例三提供的利用起点对出行轨迹进行聚类的方法的流程图;
图4为本申请实施例三提供的利用终点对出行轨迹进行聚类的方法的流程图;
图5为本申请实施例四提供的利用中间点对第一出行轨迹集合中的出行轨迹进行聚类的方法的流程图;
图6为本申请实施例五提供的一种出行轨迹聚类方法的流程图;
图7为本申请实施例六提供的一种出行轨迹聚类装置的结构框图;
图8为本申请实施例七提供的一种出行轨迹聚类装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一:
参见图1,该图为本申请实施例一提供的一种出行轨迹聚类方法的流程图。
本实施例提供的出行轨迹聚类方法包括如下步骤:
步骤S101:获取用户的多条出行轨迹。
在本实施例中,轨迹为用户在一段时间(例如一天)内的位置信息的集合。轨迹包括出行轨迹,出行轨迹可以定义为用户持续行进的一段轨迹,如果用户停留在一个区域较长的时间,虽然在该段时间内也存在由位置信息集合形成的轨迹,但是该段轨迹不为出行轨迹。本实施例中的出行轨迹包括起点、终点和中间点。所述中间点是指在出行轨迹中位于起点和终点之间的点,用户先从起点到达中间点,然后从中间点到达终点。
一个轨迹T,可以由n个在采样时间上连续的点{p1,p2,...,pi,...,pi+k,...,pn}连成的线来表示。所述点是指根据GPS(Global Positioning System,全球定位***)等位置定位设备获取的表示用户位置信息的数据。本实施例可以通过如下步骤从轨迹中确定出行轨迹:
步骤S1011:判断点pi对应的采样时间与点pi+1对应的采样时间之差是否大于或等于时间阈值δ,若是,则执行步骤S1017;若否,则执行步骤S1012。
步骤S1012:判断点pi与点pi+k之间的距离是否小于或等于距离阈值ε,若是,则执行步骤S1013;若否,则执行步骤S1015。其中k大于或等于1
步骤S1013:判断点pi与点pi+k+1之间的距离是否大于距离阈值ε,若是,则执行步骤S1014;若否,则执行步骤S1018。
步骤S1014:将点pi作为当前轨迹的终点,将点pi+k+1作为下一个轨迹的起点。
步骤S1015:判断i+k是否等于n,若否,则执行步骤S1016;若是,则执行步骤S1017。
步骤S1016:将k+1赋值给k,返回执行步骤S1012。
步骤S1017:将点pi作为当前轨迹的终点,将点pi+1作为下一个轨迹的起点。
步骤S1018:将i+1赋值给i,返回执行步骤S1011。
一般情况下,在从轨迹中确定出出行轨迹的起点和终点后,就可以确定该出行轨迹的中间点。在本实施例中,所述中间点可以是在起点和终点之间采集到的全部采样数据,也可以是部分的、关键的采样数据,例如POI(Point of Interest,兴趣点)。后者可以减少出行轨迹聚类的计算量。所述兴趣点可以包括基于地图数据的特殊地点,例如餐馆、加油站、商场、公园、交通灯等,也可以包括不基于地图数据的特殊地点,例如转弯点等。所述转弯点定义为与前第n个点的连线和与后第n个点的连线之间的夹角在预设夹角范围(例如[45°,135°])内的中间点,所述n为大于或等于1的整数。转弯点的提取可以利用现有技术提供的提取方法,例如累计中间点的方位角变化量,当累积到某个中间点的方位角变化量在某个区间时,认为该中间点是转弯点等,此处不再赘述。不基于地图数据的点仅利用出行轨迹本身就可以得到,无需向地图数据提供商购买,所以节约成本。
步骤S102:分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合。
所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所谓匹配的含义包括重叠,也可以包括临近。重叠是指起点(或终点)的位置信息完全相同,临近是指起点(或终点)之间的距离在一定范围内,该范围通常较小,例如在50米范围内。
在本实施例中,在执行步骤S103,即利用出行轨迹的中间点对出行轨迹进行聚类之前,可以仅根据所述多条轨迹的起点对所述多条轨迹进行聚类,也可以仅根据所述多条轨迹的终点对所述多条轨迹进行聚类,还可以既根据所述多条轨迹的起点对所述多条轨迹进行聚类,又根据所述多条轨迹的终点对所述多条轨迹进行聚类。
如果是仅根据所述多条轨迹的起点对所述多条轨迹进行聚类,那么聚类得到的第一出行轨迹集合包括的是起点相匹配的出行轨迹。只有在起点相匹配的出行轨迹的条数大于或等于第一阈值的前提下,才执行步骤S103利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类;否则就不执行步骤S103。
如果是仅根据所述多条轨迹的终点对所述多条轨迹进行聚类,那么聚类得到的第一出行轨迹集合包括的是终点相匹配的出行轨迹。只有在终点相匹配的出行轨迹的条数大于或等于第一阈值的前提下,才执行步骤S103利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类;否则就不执行步骤S103。
如果是既根据所述多条轨迹的起点对所述多条轨迹进行聚类,又根据所述多条轨迹的终点对所述多条轨迹进行聚类,那么聚类得到的第一出行轨迹集合包括的是起点和终点均分别相匹配的出行轨迹。只有在起点和终点均分别相匹配的出行轨迹的条数大于或等于第一阈值的前提下,才执行步骤S103利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类;否则就不执行步骤S103。
也就是说,只有满足起点和/或终点相匹配且出行轨迹的条数足够多(大于或等于第一阈值)的出行轨迹集合,才能根据中间点进行聚类;若出行轨迹的条数较少,则没有必要进行中间点聚类,因为条数较少表明用户很少或很少用户从该起点出发,和/或,到达该终点,而这种情况不属于本申请的目的所在,所以无需进行下一步中间点聚类。相比于现有技术,通过本申请的这种方式能够减少中间点聚类的计算量,从而减少了整个出行轨迹聚类的计算量,提高了聚类效率。
对于上述第三种情况,具体的,在本实施例中,可以通过对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合。通过对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合。然后根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
假设经过对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合{trip1,trip2,trip3},其中,trip1为出行轨迹1的轨迹标识,trip2为出行轨迹2的轨迹标识,trip3为出行轨迹3的轨迹标识。假设经过对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合{trip1,trip2,trip4},其中,trip4为出行轨迹4的轨迹标识。那么根据第四出行轨迹集合{trip1,trip2,trip3}和第五出行轨迹集合{trip1,trip2,trip4}的交集形成的第一出行轨迹集合为{trip1,trip2}。也就是说,出行轨迹1和出行轨迹2的起点相同,终点也相同。
步骤S103:利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
在本实施例中,若第一出行轨迹集合包括的是起点相匹配的出行轨迹,那么第二出行轨迹集合为起点和中间点均分别相匹配的出行轨迹。为了得到起点、终点和中间点均分别相匹配的出行轨迹,在实际应用中还可以利用第二出行轨迹集合中出行轨迹的终点对该集合中的出行轨迹进行聚类。
若第一出行轨迹集合包括的是终点相匹配的出行轨迹,那么第二出行轨迹集合为终点和中间点均分别相匹配的出行轨迹。为了得到起点、终点和中间点均分别相匹配的出行轨迹,在实际应用中还可以利用第二出行轨迹集合中出行轨迹的起点对该集合中的出行轨迹进行聚类。
若第一出行轨迹集合包括的是起点和终点均分别相匹配的出行轨迹,那么第二出行轨迹集合为起点、终点以及中间点均分别相匹配的出行轨迹。
此外,在实际应用中,所述出行轨迹中还可以携带有用户标识,当得到聚为同一类的相匹配的出行轨迹后,可以从中挑选出同一个用户标识对应的相匹配的出行轨迹,并向该用户标识对应的用户设备推送与所述相匹配的出行轨迹对应的周边美食、商家信息等。或者,还可以向聚为同一类的相匹配的出行轨迹对应的所有用户标识对应的用户设备推送好友推荐、推送拼车等服务。
实施例二
参见图2,该图为本申请实施例二提供的一种出行轨迹聚类方法的流程图。
本实施例提供的出行轨迹聚类方法包括如下步骤:
步骤S201:获取用户的多条出行轨迹。
所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点。
步骤S202:分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合。
所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值。
步骤S203:从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合。
在本实施例中,按照中间点的个数对所述第一出行轨迹集合中的出行轨迹进行分类,因为中间点的个数相同的出行轨迹有很大的可能性相匹配。这样在进行中间点聚类的时候能够减少计算量,提高聚类效率。
步骤S204:若所述第三出行轨迹集合中出行轨迹的条数大于或等于第二阈值,则利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均相匹配的出行轨迹。
在本实施例中,只有满足起点和/或终点相匹配、中间点的个数相同且出行轨迹的条数足够多(大于或等于第二阈值)的第三出行轨迹集合,才能利用中间点进行聚类;若出行轨迹的条数较少,则认为用户较少或较少用户采用该出行轨迹对应的路线,该种情况也不属于本申请的目的所在,所以无需进行下一步中间点聚类。通过这种方式减少了利用中间点对出行轨迹进行聚类的计算量,提高聚类效率。
实施例三
利用多条出行轨迹的起点和终点对出行轨迹进行聚类本质上属于对点的聚类。本实施例提供利用多条出行轨迹的起点和终点对出行轨迹进行聚类的方法。
首先介绍利用起点进行聚类的方法。参见图3,该方法包括如下步骤:
步骤S301:从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹。
步骤S302:从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合。
步骤S303:将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到第四出行轨迹集合。
在本实施例中,可以按照一定的顺序逐个对多个出行轨迹进行聚类。为了提高聚类效率,每当一个出行轨迹被利用起点进行聚类,则该出行轨迹可以被剔除,不参与下一次起点聚类。所以,每次利用起点进行聚类,选择的都是从未被利用起点进行聚类的出行轨迹。也就是说,所述从未被利用起点进行聚类的出行轨迹是指从未参与过步骤S301至步骤S303的计算,即,如果任意一个出行轨迹被聚为A类,则该出行轨迹就不会同时被聚为B类。
另外,在实际应用中,起点的位置信息通常采用经纬度坐标表示,因此步骤S302在计算其他出行轨迹的起点与第一出行轨迹的起点之间的距离时,可以基于经纬度坐标进行计算,即所述距离为路网距离。具体可以采用如下公式:
其中,d为两个起点之间的路网距离,Radius表示地球半径。elng表示其中一个起点的经度坐标,elat表示该起点的纬度坐标;slng表示另外一个起点的经度坐标,slat表示该起点的纬度坐标。本实施例中的经纬度坐标均采用弧度制。
除了采用路网距离,还可以将路网距离转变为欧式距离、马氏距离等在几何空间中的距离进行计算,但是前者的计算量相对较小。
本实施例首先从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;然后,除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;最后,将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,该类中的所有出行轨迹的起点均相匹配,从而实现了利用起点对出行轨迹进行聚类的目的。
可选的,为了进一步减少后续进行中间点聚类的计算量,可以在所述第六出行轨迹集合中出行轨迹的条数大于或等于第三阈值的情况下,执行所述步骤S303。而在所述第六出行轨迹集合中出行轨迹的条数小于所述第三阈值的情况下,从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。也就是说,本实施例可以利用第三阈值过滤出一部分起点较为孤立的出行轨迹,起点孤立表明用户不经常采用从该起点出发,因此对应的出行轨迹也不符合本申请的目的,不需要参与到中间点的聚类过程。
利用终点进行聚类的方法和利用起点进行聚类的方法类似,参见图4,该方法包括如下步骤:
步骤S401:从未被利用终点进行聚类的出行轨迹中选取第二出行轨迹。
步骤S402:从除所述第二出行轨迹之外的所述未被利用终点进行聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合。
步骤S403:将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到所述第五出行轨迹集合。
本实施例首先从未被利用终点进行聚类的出行轨迹中选取第二出行轨迹;然后,从除所述第二出行轨迹之外的所述未被利用终点进行聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;最后,将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,该类中的所有出行轨迹的终点均相匹配,从而实现了利用终点对出行轨迹进行聚类的目的。
另外,在实际应用中,终点的位置信息通常也采用经纬度坐标表示,因此步骤S402在计算其他出行轨迹的起点与第一出行轨迹的起点之间的距离时,也可以基于路网距离进行计算,具体公式可以参考上文,此处不再赘述。或者,还可以将路网距离转变为欧式距离、马氏距离等在几何空间中的距离进行计算。
可选的,为了进一步减少后续进行中间点聚类的计算量,可以在所述第七出行轨迹集合中出行轨迹的条数大于或等于第四阈值的情况下,执行将所述步骤S403。而在所述第七出行轨迹集合中出行轨迹的条数小于所述第四阈值的情况下,从未被利用终点进行聚类的出行轨迹中删除所述第二出行轨迹。也就是说,本实施例可以利用第四阈值过滤出一部分终点较为孤立的出行轨迹,终点孤立表明用户不经常到达该终点,因此对应的出行轨迹也不符合本申请的目的,不需要参与到利用中间点进行聚类过程。
实施例四
本实施例提供利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合的方法。
参见图5,该方法包括如下步骤:
步骤S501:从所述第一出行轨迹集合的未被利用中间点进行聚类的出行轨迹中确定第三出行轨迹,并确定所述第三出行轨迹的中间点相对于参考点之间的距离和方向。
步骤S502:根据所述第三出行轨迹的中间点相对于参考点之间的距离和方向,从所述第一出行轨迹集合中,确定与所述第三出行轨迹匹配的出行轨迹,形成所述第二出行轨迹集合。
确定其距离集合与所述第三出行轨迹的距离集合之间的欧氏距离小于或等于第四领域半径,且其方向集合与所述第三出行轨迹的方向集合之间的欧氏距离小于或等于第五领域半径的出行轨迹,形成所述第二出行轨迹集合。
本实施例提供的中间点聚类方法,通过分别计算所述第三出行轨迹中各个中间点相对于参考点之间的距离和方向,达到将所述第三出行轨迹从路网空间映射到欧式空间的目的,其中路网空间内两点之间的距离为路网距离;欧式空间中两点之间的距离为欧式距离。
所述第三出行轨迹中的中间点和所述参考点均采用经纬度表示,即属于路网空间。所述参考点可以为路网空间中的任意一点。所述中间点与参考点之间的距离,也就是中间点的欧式距离。所述欧式距离Fd可以通过如下公式进行计算:
其中,Radius表示地球半径,elng'表示中间点的经度坐标,elat'表示中间点的纬度坐标;slng'表示参考点的经度坐标,slat'表示参考点的纬度坐标。其中,经度坐标和纬度坐标为弧度制。
所述中间点相对于参考点的方向,即为所述中间点在欧式空间中的方向。所述中间点在欧式空间中的方向Fb可以通过如下公式进行计算:
其中,α1为中间变量。
为了计算简便,可以令所述参考点的经纬度坐标为(0,0),即slng'=0,slat'=0。
在本实施例中,可以通过如下方式根据所述第三出行轨迹的中间点相对于参考点之间的距离和方向,从所述第一出行轨迹集合中,确定与所述第三出行轨迹匹配的出行轨迹:
方式一:
将所述第一出行集合中的每个出行轨迹均分别看成是一个由中间点欧式空间的距离和方向构成的向量,即该向量为[距离1,方向1,距离2,方向2,距离3,方向3,…,距离n,方向n]。其中,距离1为第一个中间点的欧式距离,方向1为第一个中间点在欧式空间中的方向;距离2为第二个中间点的欧式距离,方向2为第二个中间点在欧式空间中的方向;以此类推。n为该出行轨迹的中间点的个数。
在利用中间点对出行轨迹进行聚类时,可以计算第三出行轨迹对应的向量与所述第一出行轨迹中其他出行轨迹对应的向量之间的欧式距离,该欧式距离表示所述第一出行轨迹与其他出行轨迹之间的匹配程度,欧式距离越短表示匹配程度越高,欧式距离越长表示匹配程度越低。因此,若欧式距离小于或等于某个预设的领域半径时,认为两个出行轨迹是匹配的。
计算两个向量之间的欧式距离是本领域技术人员都知晓的技术,此处不再详细阐述。另外需要注意的是,由于距离和方向是两个不同的量纲,所以在计算欧式距离之前,需要对这两个参数进行无量纲化处理。
方式二:
该方式与方式一的区别在于,方式一是将距离和方向整合在一个向量中,而方式二可以将二者分开,即每个出行轨迹都分别具有两个向量,一个是由中间点在欧式空间的距离构成的距离向量[距离1,距离2,距离3,…,距离n],另外一个是由中间点在欧式空间的方向构成的方向向量[方向1,方向2,方向3,…,方向n]。
在计算所述第一出行轨迹与其他出行轨迹之间的匹配程度时,需要分别计算距离向量之间的欧式距离和方向向量之间的欧式距离,当这两个欧式距离均分别满足匹配的条件(例如距离向量之间的欧式距离小于或等于某个领域半径,方向向量之间的欧式距离小于或等于另外一个领域半径)时,才能认为两个出行轨迹匹配。
方式三:
本方式将所述第一出行轨迹集合中的出行轨迹表示为由一个中间点构成,因此出行轨迹之间的聚类就可以看做是中间点之间的聚类。也就是说,可以将每个中间点看做是由在欧式空间中的欧式距离和方向构成的向量,例如第三出行轨迹的第一个中间点表示为[距离1,方向1],通过将第三出行轨迹的第一个中间点与其他出行轨迹的第一个中间点进行聚类,得到与所述第三出行轨迹的第一个中间点匹配的出行轨迹,然后再利用所述第三出行轨迹的第二个中间点与其他出行轨迹的第二个中间点进行聚类,等等,直到找到与所述第三个出行轨迹的每个中间点均匹配的出行轨迹,将这些轨迹形成所述第二出行轨迹集合。
当然,可以理解的是,上述三种方式并不构成对本发明的限定,本领域技术人员可以根据具体需求自行设计。例如,还可以直接在路网空间中对中间点进行聚类,而不是转换到欧式空间中,聚类的方式参考利用起点或终点聚类的方式,此处不再赘述。
实施例五
基于减少中间点聚类的工作量的目的,本实施例提供一种出行轨迹聚类方法,参见图6,该方法包括如下步骤:
步骤S601:获取用户的多条出行轨迹。
所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点。关于出行轨迹的具体描述,请参见实施例一,此处不再赘述。
步骤S602:按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合。
所述第八轨迹集合中出行轨迹的中间点的个数相同。
步骤S603:若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
若两条出行轨迹匹配,那么这两条出行轨迹的中间点的个数一定相同。若两条出行轨迹的中间点的个数相同,则这两条出行轨迹在很大程度上是匹配的。依据该原理,在本实施例中,按照中间点的个数对用户的多条出行轨迹进行聚类,得到由中间点个数相同的若干条出行轨迹形成的第八出行轨迹集合,所述第八出行轨迹集合中一定包含相匹配的出行轨迹。通过利用第八出行轨迹集合中出行轨迹的中间点对这些出行轨迹进行聚类,得到中间点相匹配的出行轨迹。
但是,只有所述第八出行轨迹集合中出行轨迹的条数足够多(大于或等于第四阈值)的情况下,才进行中间点的聚类,因为其中匹配的出行轨迹的条数可能也比较多;而如果所述第八出行轨迹集合中出行轨迹的条数较少,则其中匹配的出行轨迹的条数一定较少,所以就不利用中间点进行聚类了,减少利用中间点聚类的计算量,提高聚类效率。
由于中间点匹配的出行轨迹,起点和/或终点不一定也匹配,所以为了进一步获取到更加匹配的出行轨迹,可以利用起点和/或终点对出行轨迹也进行聚类。按照聚类执行顺序的先后,可以分为两种实现方式,一种实现方式是先利用起点和/或终点进行聚类,后利用中间点进行聚类;另外一种实现方式是先利用中间点进行聚类,后利用起点和/或终点进行聚类。
第一种情况具体为:
在步骤S603之前,所述方法还包括:
利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹。
那么,所述步骤S603变为:
利用所述第十轨迹集合中出行轨迹的中间点,对所述第十轨迹集合中的出行轨迹进行聚类,得到所述第九轨迹集合,所述第九轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
第二种情况具体为:
在所述步骤S603之后,所述方法还包括如下步骤:利用所述第九轨迹集合中出行轨迹的起点和/或终点,对所述第九轨迹集合中的出行轨迹进行聚类,得到第十一轨迹集合,所述第十一轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
本实施例利用出行轨迹的起点、终点以及中间点对出行轨迹进行聚类的方法可以参照上述实施例,这里不再赘述。
基于所述实施例一至四提供的一种出行轨迹聚类方法,本申请实施例还提供了一种出行轨迹聚类装置,下面结合附图来详细说明其工作原理。
实施例六
参见图7,该图为本申请实施例六提供的一种出行轨迹聚类装置的结构框图。
本实施例提供的出行轨迹聚类装置包括:第一轨迹获取单元101、第一聚类单元102和第二聚类单元103;
其中,所述第一轨迹获取单元101,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第一聚类单元102,用于分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
所述第二聚类单元103,用于利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
在本实施例中,只有满足起点和/或终点相匹配且出行轨迹的条数足够多(大于或等于第一阈值)的出行轨迹集合,才能根据中间点进行聚类;若出行轨迹的条数较少,则没有必要进行中间点聚类,因为条数较少表明用户很少或很少用户从该起点出发,和/或,到达该终点,而这种情况不属于本申请的目的所在,所以无需进行下一步中间点聚类。相比于现有技术,通过本申请的这种方式能够减少中间点聚类的计算量,从而减少了整个出行轨迹聚类的计算量,提高了聚类效率。
可选的,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
可选的,所述装置还包括:
第一确定单元,用于从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合;
所述第二聚类单元,具体用于利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类,得到所述第二出行轨迹集合。
可选的,所述装置还包括:
第一判断单元,用于判断所述第三出行轨迹集合中出行轨迹的条数是否大于或等于第二阈值,若是,则激活所述第二聚类单元。
可选的,所述第一聚类单元包括:
第一聚类子单元、第二聚类子单元和交集单元;
其中,所述第一聚类子单元,用于对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合;
所述第二聚类子单元,用于对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合;
所述交集单元,用于根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
可选的,所述第一聚类子单元包括:
第一选取单元、第六出行轨迹集合获取单元和第四出行轨迹集合获取单元;
其中,所述第一选取单元,用于从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;
所述第六出行轨迹集合获取单元,用于从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;
所述第四出行轨迹集合获取单元,用于将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到所述第四出行轨迹集合。
可选的,所述装置还包括:
第二判断单元和第一删除单元;
其中,所述第二判断单元,用于判断所述第六出行轨迹集合中出行轨迹的条数是否大于或等于第三阈值,如果是,则激活所述第四出行轨迹集合获取单元;如果否,则激活所述删除单元;
所述第一删除单元,用于从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。
可选的,所述第二聚类子单元包括:
第二选取单元、第七出行轨迹集合获取单元和第五出行轨迹集合获取单元;
其中,所述第二选取单元,用于从未被进行终点聚类的出行轨迹中选取第二出行轨迹;
所述第七出行轨迹集合获取单元,用于从除所述第二出行轨迹之外的所述未被进行终点聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;
所述第五出行轨迹集合获取单元,用于将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到第五出行轨迹集合。
可选的,所述装置还包括:
第三判断单元和第二删除单元;
所述第三判断单元,用于判断所述第七出行轨迹集合中出行轨迹的条数是否大于或等于第四阈值,若是,则激活所述第五出行轨迹集合获取单元;若否,则激活所述第二删除单元;
所述第二删除单元,用于从未被进行终点聚类的出行轨迹中删除所述第二出行轨迹。
可选的,所述距离为路网距离。
可选的,所述第二聚类单元,具体用于:
从所述第一出行轨迹集合的未被进行中间点聚类的出行轨迹中确定第三出行轨迹,并确定所述第三出行轨迹的中间点相对于参考点之间的距离和方向,所述参考点为路网空间中的任意一点;
根据所述第三出行轨迹的中间点相对于参考点之间的距离和方向,从所述第一出行轨迹集合中,确定与所述第三出行轨迹匹配的出行轨迹,形成所述第二出行轨迹集合。
所述实施例五提供的出行轨迹聚类装置可以应用在任何具有处理器的电子设备上,所述电子设备可以是现有的、正在研发的或将来研发的任何电子设备,包括但不限于:现有的、正在研发的或将来研发的台式计算机、膝上型计算机、移动终端(包括智能手机、非智能手机、各种平板电脑)等。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在带有处理器的电子设备的处理器将存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,为本申请出行轨迹聚类装置所在带有处理器的电子设备的一种硬件结构图,除了处理器、内存、网络接口、以及存储器之外,实施例中装置所在的带有处理器的电子设备通常根据该设备的实际功能,还可以包括其他硬件,例如显示器,对此不再赘述。
其中,存储器中可以存储有出行轨迹聚类方法对应的逻辑指令,该存储器例如可以是非易失性存储器(non-volatile memory),处理器可以调用执行存储器中的保存的逻辑指令,以执行上述的出行轨迹聚类方法。
出行轨迹聚类方法对应的逻辑指令的功能,如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
基于所述实施例五提供的一种出行轨迹聚类方法,本申请实施例还提供了一种出行轨迹聚类装置,下面结合附图来详细说明其工作原理。
实施例七
参见图8,该图为本申请实施例七提供的一种出行轨迹聚类装置的结构框图。
本实施例提供的出行轨迹聚类装置包括:
第二轨迹获取单元201、第三聚类单元202和第四聚类单元203;
其中,所述第二轨迹获取单元201,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第三聚类单元202,用于按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八轨迹集合中出行轨迹的中间点的个数相同;
所述第四聚类单元203,用于若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
在本实施例中,按照中间点的个数对用户的多条出行轨迹进行聚类,得到由中间点个数相同的若干条出行轨迹形成的第八出行轨迹集合。只有所述第八出行轨迹集合中出行轨迹的条数足够多(大于或等于第四阈值)的情况下,才进行中间点的聚类,因为其中匹配的出行轨迹的条数可能也比较多;而如果所述第八出行轨迹集合中出行轨迹的条数较少,则其中匹配的出行轨迹的条数一定较少,所以就不利用中间点进行聚类了,减少利用中间点聚类的计算量,提高聚类效率。
可选的,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
可选的,所述装置还包括:
第五聚类单元,用于利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹;
所述第四聚类单元,具体用于利用所述第十轨迹集合中出行轨迹的中间点,对所述第十轨迹集合中的出行轨迹进行聚类,得到所述第九轨迹集合,所述第九轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
可选的,所述装置还包括:
第六聚类单元,用于利用所述第九轨迹集合中出行轨迹的起点和/或终点,对所述第九轨迹集合中的出行轨迹进行聚类,得到第十一轨迹集合,所述第十一轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
所述实施例六提供的出行轨迹聚类装置可以应用在任何具有处理器的电子设备上,所述电子设备可以是现有的、正在研发的或将来研发的任何电子设备,包括但不限于:现有的、正在研发的或将来研发的台式计算机、膝上型计算机、移动终端(包括智能手机、非智能手机、各种平板电脑)等。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在带有处理器的电子设备的处理器将存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,为本申请出行轨迹聚类装置所在带有处理器的电子设备的一种硬件结构图,除了处理器、内存、网络接口、以及存储器之外,实施例中装置所在的带有处理器的电子设备通常根据该设备的实际功能,还可以包括其他硬件,例如显示器,对此不再赘述。
其中,存储器中可以存储有出行轨迹聚类方法对应的逻辑指令,该存储器例如可以是非易失性存储器(non-volatile memory),处理器可以调用执行存储器中的保存的逻辑指令,以执行上述的出行轨迹聚类方法。
出行轨迹聚类方法对应的逻辑指令的功能,如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
基于实施例一至四和实施例六提供的一种出行轨迹聚类方法和装置,本发明实施例还提供了一种出行轨迹聚类设备,下面结合附图来详细说明其工作原理。
实施例八
本实施例提供的一种出行轨迹聚类设包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
基于实施例一五和实施例七提供的一种出行轨迹聚类方法和装置,本发明实施例还提供了一种出行轨迹聚类设备,下面结合附图来详细说明其工作原理。
实施例九
本实施例提供的一种出行轨迹聚类设包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八轨迹集合中出行轨迹的中间点的个数相同;
若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
当介绍本申请的各种实施例的元件时,冠词“一”、“一个”、“这个”和“所述”都意图表示有一个或多个元件。词语“包括”、“包含”和“具有”都是包括性的并意味着除了列出的元件之外,还可以有其它元件。
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (28)

1.一种出行轨迹聚类方法,其特征在于,所述方法包括:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
2.根据权利要求1所述的方法,其特征在于,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合;
所述利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类包括:
利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述第三出行轨迹集合中出行轨迹的条数大于或等于第二阈值,则执行利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类的步骤。
5.根据权利要求1所述的方法,其特征在于,所述分别利用所述多条出行轨迹的起点和终点,对所述多条出行轨迹进行聚类包括:
对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合;
对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合;
根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
6.根据权利要求5所述的方法,其特征在于,所述对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合包括:
从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;
从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;
将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到所述第四出行轨迹集合。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述第六出行轨迹集合中出行轨迹的条数大于或等于第三阈值,则执行将所述第六出行轨迹集合与所述第一出行轨迹聚为一类的步骤;
若所述第六出行轨迹集合中出行轨迹的条数小于所述第三阈值,则从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。
8.根据权利要求5所述的方法,其特征在于,所述对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合包括:
从未被进行终点聚类的出行轨迹中选取第二出行轨迹;
从除所述第二出行轨迹之外的所述未被进行终点聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;
将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到第五出行轨迹集合。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述第七出行轨迹集合中出行轨迹的条数大于或等于第四阈值,则执行将所述第七出行轨迹集合与所述第二出行轨迹聚为一类的步骤;
若所述第七出行轨迹集合中出行轨迹的条数小于所述第四阈值,则从未被进行终点聚类的出行轨迹中删除所述第二出行轨迹。
10.根据权利要求6至9任意一项所述的方法,其特征在于,所述距离为路网距离。
11.根据权利要求1所述的方法,其特征在于,所述利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合包括:
从所述第一出行轨迹集合的未被进行中间点聚类的出行轨迹中确定第三出行轨迹,并确定所述第三出行轨迹的中间点相对于参考点之间的距离和方向,所述参考点为路网空间中的任意一点;
根据所述第三出行轨迹的中间点相对于参考点之间的距离和方向,从所述第一出行轨迹集合中,确定与所述第三出行轨迹匹配的出行轨迹,形成所述第二出行轨迹集合。
12.一种出行轨迹聚类方法,其特征在于,所述方法包括:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八出行轨迹集合中出行轨迹的中间点的个数相同;
若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
13.根据权利要求12所述的方法,其特征在于,所述中间点包括转弯点,所述转弯点与前第n个点的连线和所述转弯点与后第n个点的连线之间的夹角在预设夹角范围内,所述n为大于或等于1的整数。
14.根据权利要求12所述的方法,其特征在于,所述方法还包括:
利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹;
所述利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合包括:
利用所述第十出行轨迹集合中出行轨迹的中间点,对所述第十出行轨迹集合中的出行轨迹进行聚类,得到所述第九出行轨迹集合,所述第九出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
15.根据权利要求12所述的方法,其特征在于,所述方法还包括:
利用所述第九出行轨迹集合中出行轨迹的起点和/或终点,对所述第九出行轨迹集合中的出行轨迹进行聚类,得到第十一出行轨迹集合,所述第十一出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
16.一种出行轨迹聚类装置,其特征在于,所述装置包括:第一轨迹获取单元、第一聚类单元和第二聚类单元;
其中,所述第一轨迹获取单元,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第一聚类单元,用于分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
所述第二聚类单元,用于利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括:
第一确定单元,用于从所述第一出行轨迹集合中确定由具有相同个数的中间点的出行轨迹形成的第三出行轨迹集合;
所述第二聚类单元,具体用于利用各条出行轨迹中的中间点,对所述第三出行轨迹集合中的出行轨迹进行聚类,得到所述第二出行轨迹集合。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
第一判断单元,用于判断所述第三出行轨迹集合中出行轨迹的条数是否大于或等于第二阈值,若是,则激活所述第二聚类单元。
19.根据权利要求16所述的装置,其特征在于,所述第一聚类单元包括:
第一聚类子单元、第二聚类子单元和交集单元;
其中,所述第一聚类子单元,用于对所述多条出行轨迹的起点进行聚类,得到第四出行轨迹集合;
所述第二聚类子单元,用于对所述多条出行轨迹的终点进行聚类,得到第五出行轨迹集合;
所述交集单元,用于根据所述第四出行轨迹集合和所述第五出行轨迹集合的交集形成所述第一出行轨迹集合。
20.根据权利要求19所述的装置,其特征在于,所述第一聚类子单元包括:
第一选取单元、第六出行轨迹集合获取单元和第四出行轨迹集合获取单元;
其中,所述第一选取单元,用于从未被利用起点进行聚类的出行轨迹中选取第一出行轨迹;
所述第六出行轨迹集合获取单元,用于从除所述第一出行轨迹之外的所述未被利用起点进行聚类的出行轨迹中,确定其起点与所述第一出行轨迹的起点之间的距离小于或等于第一领域半径的出行轨迹,形成第六出行轨迹集合;
所述第四出行轨迹集合获取单元,用于将所述第六出行轨迹集合与所述第一出行轨迹聚为一类,得到所述第四出行轨迹集合。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
第二判断单元和第一删除单元;
其中,所述第二判断单元,用于判断所述第六出行轨迹集合中出行轨迹的条数是否大于或等于第三阈值,如果是,则激活所述第四出行轨迹集合获取单元;如果否,则激活所述删除单元;
所述第一删除单元,用于从未被利用起点进行聚类的出行轨迹中删除所述第一出行轨迹。
22.根据权利要求19所述的装置,其特征在于,所述第二聚类子单元包括:
第二选取单元、第七出行轨迹集合获取单元和第五出行轨迹集合获取单元;
其中,所述第二选取单元,用于从未被进行终点聚类的出行轨迹中选取第二出行轨迹;
所述第七出行轨迹集合获取单元,用于从除所述第二出行轨迹之外的所述未被进行终点聚类的出行轨迹中,确定其终点与所述第二出行轨迹的终点之间的距离小于或等于第二领域半径的出行轨迹,形成第七出行轨迹集合;
所述第五出行轨迹集合获取单元,用于将所述第七出行轨迹集合与所述第二出行轨迹聚为一类,得到第五出行轨迹集合。
23.根据权利要求22所述的装置,其特征在于,所述装置还包括:
第三判断单元和第二删除单元;
所述第三判断单元,用于判断所述第七出行轨迹集合中出行轨迹的条数是否大于或等于第四阈值,若是,则激活所述第五出行轨迹集合获取单元;若否,则激活所述第二删除单元;
所述第二删除单元,用于从未被进行终点聚类的出行轨迹中删除所述第二出行轨迹。
24.一种出行轨迹聚类装置,其特征在于,所述装置包括:
第二轨迹获取单元、第三聚类单元和第四聚类单元;
其中,所述第二轨迹获取单元,用于获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
所述第三聚类单元,用于按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八出行轨迹集合中出行轨迹的中间点的个数相同;
所述第四聚类单元,用于若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
25.根据权利要求24所述的装置,其特征在于,所述装置还包括:
第五聚类单元,用于利用所述第八出行轨迹集合中出行轨迹的起点和/或终点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第十出行轨迹集合,所述第十出行轨迹集合包括起点和/或终点相匹配的出行轨迹;
所述第四聚类单元,具体用于利用所述第十出行轨迹集合中出行轨迹的中间点,对所述第十出行轨迹集合中的出行轨迹进行聚类,得到所述第九出行轨迹集合,所述第九出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
26.根据权利要求24所述的装置,其特征在于,所述装置还包括:
第六聚类单元,用于利用所述第九出行轨迹集合中出行轨迹的起点和/或终点,对所述第九出行轨迹集合中的出行轨迹进行聚类,得到第十一出行轨迹集合,所述第十一出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
27.一种出行轨迹聚类设备,其特征在于,所述设备包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
分别利用所述多条出行轨迹的起点和/或终点,对所述多条出行轨迹进行聚类,得到第一出行轨迹集合,所述第一出行轨迹集合包括起点和/或终点相匹配的出行轨迹,所述第一出行轨迹集合中出行轨迹的条数大于或等于第一阈值;
利用各条出行轨迹中的中间点,对所述第一出行轨迹集合中的出行轨迹进行聚类,得到第二出行轨迹集合,所述第二出行轨迹集合包括起点和中间点均分别相匹配的出行轨迹,和/或,终点和中间点均分别相匹配的出行轨迹。
28.一种出行轨迹聚类设备,其特征在于,所述设备包括:处理器和用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取用户的多条出行轨迹,所述多条出行轨迹均分别包括起点、终点以及位于二者之间的中间点;
按照所述中间点的个数对所述多条出行轨迹进行聚类,得到第八出行轨迹集合,所述第八出行轨迹集合中出行轨迹的中间点的个数相同;
若所述第八出行轨迹集合中出行轨迹的条数大于或等于第五阈值,则利用所述第八出行轨迹集合中出行轨迹的中间点,对所述第八出行轨迹集合中的出行轨迹进行聚类,得到第九出行轨迹集合,所述第九出行轨迹集合包括中间点相匹配的出行轨迹。
CN201710288748.XA 2017-04-27 2017-04-27 一种出行轨迹聚类方法、装置及设备 Active CN107122461B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710288748.XA CN107122461B (zh) 2017-04-27 2017-04-27 一种出行轨迹聚类方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710288748.XA CN107122461B (zh) 2017-04-27 2017-04-27 一种出行轨迹聚类方法、装置及设备

Publications (2)

Publication Number Publication Date
CN107122461A CN107122461A (zh) 2017-09-01
CN107122461B true CN107122461B (zh) 2019-08-13

Family

ID=59726038

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710288748.XA Active CN107122461B (zh) 2017-04-27 2017-04-27 一种出行轨迹聚类方法、装置及设备

Country Status (1)

Country Link
CN (1) CN107122461B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109063727B (zh) * 2018-06-19 2021-02-05 东软集团股份有限公司 计算轨迹频繁度的方法、装置、存储介质及电子设备
CN109033395A (zh) * 2018-08-01 2018-12-18 安徽华米信息科技有限公司 确定路段的方法及装置
CN111380541B (zh) * 2018-12-29 2022-09-13 沈阳美行科技股份有限公司 兴趣点确定方法、装置、计算机设备和存储介质
CN110457413B (zh) * 2019-07-17 2022-05-10 中国第一汽车股份有限公司 行驶方向的确定方法、装置、设备及存储介质
CN110503032B (zh) * 2019-08-21 2021-08-31 中南大学 基于监控摄像头轨迹数据的个体重要场所探测方法
CN111046303A (zh) * 2019-11-20 2020-04-21 北京文安智能技术股份有限公司 一种热点区域的自动检测方法、装置及***
CN112991804B (zh) * 2019-12-18 2022-06-07 浙江大华技术股份有限公司 停留区域确定方法以及相关装置
CN111461077B (zh) * 2020-05-12 2024-01-12 北京爱笔科技有限公司 一种移动轨迹事件识别方法及装置
CN111507810A (zh) * 2020-05-27 2020-08-07 海南太美航空股份有限公司 基于聚类分析的航班服务方法及***
CN112613673B (zh) * 2020-12-29 2024-05-14 北京梧桐车联科技有限责任公司 出行轨迹确定方法、装置及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101799301A (zh) * 2010-03-29 2010-08-11 东软集团股份有限公司 利用路线轨迹点信息进行路线规划的方法及装置
CN104850604A (zh) * 2015-05-04 2015-08-19 华中科技大学 一种基于张量的用户轨迹挖掘方法
CN105117737A (zh) * 2015-10-08 2015-12-02 北京邮电大学 一种基于车辆轨迹向量确定车辆实际方向的方法及装置
CN105792134A (zh) * 2016-05-12 2016-07-20 中国联合网络通信集团有限公司 一种拼车方法及装置
CN105989062A (zh) * 2015-02-04 2016-10-05 南京乐行天下智能科技有限公司 一种基于电动车出行轨迹特征的定义方法和数据挖掘技术
CN106600502A (zh) * 2016-08-16 2017-04-26 南京航空航天大学 多机场终端区航线网络拓扑建模方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101799301A (zh) * 2010-03-29 2010-08-11 东软集团股份有限公司 利用路线轨迹点信息进行路线规划的方法及装置
CN105989062A (zh) * 2015-02-04 2016-10-05 南京乐行天下智能科技有限公司 一种基于电动车出行轨迹特征的定义方法和数据挖掘技术
CN104850604A (zh) * 2015-05-04 2015-08-19 华中科技大学 一种基于张量的用户轨迹挖掘方法
CN105117737A (zh) * 2015-10-08 2015-12-02 北京邮电大学 一种基于车辆轨迹向量确定车辆实际方向的方法及装置
CN105792134A (zh) * 2016-05-12 2016-07-20 中国联合网络通信集团有限公司 一种拼车方法及装置
CN106600502A (zh) * 2016-08-16 2017-04-26 南京航空航天大学 多机场终端区航线网络拓扑建模方法

Also Published As

Publication number Publication date
CN107122461A (zh) 2017-09-01

Similar Documents

Publication Publication Date Title
CN107122461B (zh) 一种出行轨迹聚类方法、装置及设备
Zhao et al. A trajectory clustering approach based on decision graph and data field for detecting hotspots
US20240077324A1 (en) Identifying, Processing And Displaying Data Point Clusters
CN104123398B (zh) 一种信息推送方法及装置
US20120102034A1 (en) System and method for recommending location-based keyword
US9165311B1 (en) Navigation-based AD units in street view
CN105528359B (zh) 用于存储行进轨迹的方法和***
CN104252489B (zh) 一种根据经纬度数据快速获得位置文字描述信息的方法
Bermingham et al. Spatio-temporal sequential pattern mining for tourism sciences
CN103914498A (zh) 一种地图搜索的搜索建议方法和装置
US9971775B2 (en) Method of and system for parameter-free discovery and recommendation of areas-of-interest
CN112612957A (zh) 兴趣点的推荐方法、兴趣点推荐模型的训练方法、装置
CN104320848B (zh) 基于云计算实现室内定位的***及方法
CN107820209A (zh) 兴趣推荐方法、装置及服务器
US20150371430A1 (en) Identifying Imagery Views Using Geolocated Text
CN104520848A (zh) 按照出席者搜索事件
CN103039036B (zh) 用户数量计算方法及***
CN107395680A (zh) 店铺群信息推送和输出方法及装置、设备
CN103257962A (zh) 信息提供方法以及装置
US8862995B1 (en) Automatically creating a movie from geo located content using earth
CN112236764A (zh) 数字制图的视口外位置指示
CN115423555A (zh) 一种商品推荐方法、装置、电子设备及存储介质
CN107995375A (zh) 一种信息推送方法、移动终端及存储介质
CN108427710A (zh) 企业数据可视化处理方法、服务器和存储介质
CN104121917A (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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Xu Li Li

Inventor before: Xu Lili

Inventor before: Gao Rui