CN117349688B - 一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 - Google Patents
一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117349688B CN117349688B CN202311636437.XA CN202311636437A CN117349688B CN 117349688 B CN117349688 B CN 117349688B CN 202311636437 A CN202311636437 A CN 202311636437A CN 117349688 B CN117349688 B CN 117349688B
- Authority
- CN
- China
- Prior art keywords
- track
- tracks
- distance
- clusters
- cluster
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000008859 change Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 7
- 238000009795 derivation Methods 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 23
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本申请适用于轨迹聚类技术领域,提供了一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质。该轨迹聚类方法包括:获取轨迹的距离分布特征曲线,并确定轨迹的k邻域;获取每个k邻域中的峰值轨迹,并将峰值轨迹作为轨迹簇;将仅在峰值k邻域中的所有轨迹分配到轨迹簇中;对于同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配;对于不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声;将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。本申请的轨迹聚类方法能够很好地应用于复杂场景的轨迹聚类。
Description
技术领域
本申请涉及轨迹聚类技术领域,特别涉及一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质。
背景技术
物联网、传感器、导航定位等技术的发展和各类智能终端设备的普及积累了海量的轨迹数据,如车辆轨迹数据、行人轨迹数据和船舶自动识别系统(AIS,Automaticidentification System)轨迹数。轨迹数据挖掘指从海量轨迹数据中提取具有重要潜在加载的知识,其中,轨迹聚类是数据挖掘领域的重要代表性技术之一,对于人类活动模式探测、路网结构提取与更新、航线提取等具有重要的应用价值。
目前,轨迹聚类方法主要是在点聚类方法的基础上通过度量轨迹间的距离相似性扩展而来,主要包括轨迹相似性度量和轨迹划分成簇两个过程。轨迹相似性度量常用的距离包括欧式距离、豪斯道夫距离、弗雷歇距离和最长公共序列等;轨迹划分成簇的方法主要包括基于密度的聚类轨迹聚类算法、基于划分的轨迹聚类算法、基于层次的轨迹聚类算法、基于模型的轨迹聚类算法、基于图的轨迹聚类算法等。在轨迹具体划分成簇的过程中,如何确定轨迹簇的数量、识别噪声轨迹、适用于复杂的场景(如包含不同密度的轨迹簇和含有颈连接)是三个需要解决的核心问题。传统的基于划分、层次的聚类算法需要人为指定聚类数量或者根据不同层次的聚类结果借助轮廓系数、肘函数等辅助聚类簇的确定,并且这两类算法难以识别噪声,在复杂场景中聚类不佳。基于密度的轨迹聚类算法如基于密度的聚类方法(DBSCAN,Density-Based Spatial Clustering of Applications with Noise)、层次基于密度的聚类方法(HDBSCAN,Hierarchical Density-Based Spatial Clustering ofApplications with Noise)等能够自动确定簇的数量和识别噪声,但是对于复杂场景如包含不同密度的轨迹簇、包含颈连接的聚类效果难以保证。密度峰值聚类算法通过寻找峰值轨迹确定轨迹簇的数量,但其在轨迹局部密度的计算上依赖于确定的k值或者截断距离,在峰值轨迹的确定上依赖于决策图,而且对应复杂场景下的峰值轨迹的确定效果不佳。而基于图和基于模型的聚类算法和基于划分、层次的聚类算法在簇的数量确定上具有同样的问题。
总体而言,目前轨迹聚类算法在自动确定簇的数量、识别噪声轨迹以及适用于不同的复杂场景仍然有待进一步提高,主要体现在:缺少适用于轨迹数据复杂特征的针对性的轨迹聚类算法;现有部分轨迹聚类算法虽然能够自动确定轨迹簇数量、识别噪声,但是对复杂场景下的轨迹聚类效果不佳;轨迹k邻域的估计依赖于指定的k值或者截断距离,如何根据轨迹距离特征自适应估计轨迹k邻域的研究较为缺失,存在轨迹聚类算法不适用于复杂场景的问题。
发明内容
本申请提供了一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质,可以解决轨迹聚类算法不适用于复杂场景的问题。
第一方面,本申请实施例提供了一种基于峰值轨迹的轨迹聚类方法,该轨迹聚类方法包括:
分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域;距离分布特征曲线用于描述轨迹与其他轨迹之间的距离,k邻域包含轨迹以及与轨迹相邻的k条轨迹;
获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇;
分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中;峰值k邻域为轨迹簇对应的峰值轨迹的k邻域;
对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配;
对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声;
分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。
可选的,根据轨迹的距离分布特征曲线,确定轨迹的k邻域,包括:
对轨迹的距离分布特征曲线进行一阶求导,得到分布曲线;
通过变化值计算公式计算分布曲线上第个点的变化值;变化值计算公式为:
其中,表示分布曲线上第个点的纵坐标取值,表示分布曲线上第个点的纵坐标取值;
若分布曲线第一次满足,则将第个点对应的距离取值作为目标取值;其中,为预设变化值;
若不满足,则将第个点作为第个点,并返回通过变化值计算公式计算分布曲线上第个点的变化值的步骤;
确定目标取值对应的轨迹数量,将轨迹数量作为轨迹的k值;
基于轨迹与其他所有轨迹之间的距离,以轨迹为中心,依次取k条其他轨迹,将轨迹和k条其他轨迹作为轨迹的k邻域。
可选的,获取每个k邻域中的峰值轨迹,包括:
通过公式:
计算第个轨迹的轨迹密度;
其中,表示第个轨迹与第个轨迹之间的距离,,表示第个轨迹所在的k邻域中轨迹的总数,;
得到第个轨迹所在的k邻域中所有轨迹的轨迹密度:
其中,表示第1个轨迹的轨迹密度,表示第个轨迹的轨迹密度;
将所有轨迹的轨迹密度中数值最大的轨迹密度对应的轨迹作为峰值轨迹。
可选的,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配,包括:
通过公式:
计算第个重叠轨迹与轨迹簇之间的相对距离;
其中,轨迹簇为第个重叠轨迹所在的第个轨迹簇,,表示目标区域中重叠轨迹的数量,,表示第个重叠轨迹所在的轨迹簇的总数,表示第个重叠轨迹与轨迹簇对应的峰值轨迹之间的距离,表示轨迹簇中的所有轨迹与轨迹簇对应的峰值轨迹之间的平均距离;
获取第个重叠轨迹与第个重叠轨迹所在的所有轨迹簇之间的相对距离:
其中,表示第个重叠轨迹与轨迹簇之间的相对距离,表示第个重叠轨迹与轨迹簇之间的相对距离;
选择第个重叠轨迹与第个重叠轨迹所在的所有轨迹簇之间的相对距离中数值最小的元素,将第个重叠轨迹分配到数值最小的元素对应的轨迹簇中。
可选的,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声,包括:
通过公式:
计算第个单独轨迹与第个轨迹簇之间的相对距离;
其中,表示第个轨迹簇,,表示目标区域中轨迹簇的总数,,表示目标区域中单独轨迹的总数,表示第个单独轨迹与第个轨迹簇对应的峰值轨迹之间的距离,表示第个轨迹簇中的所有轨迹与第个轨迹簇对应的峰值轨迹之间的平均距离;
获取第个单独轨迹与所有轨迹簇之间的相对距离:
其中,表示第个单独轨迹与第1个轨迹簇之间的相对距离,表示第个单独轨迹与第个轨迹簇之间的相对距离;
选择第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将数值最小的元素对应的轨迹簇作为候选轨迹簇;
通过公式:
计算候选轨迹簇的标准差;
其中,表示第个轨迹与候选轨迹簇对应的峰值轨迹之间的距离,,表示候选轨迹簇中轨迹的总数,表示候选轨迹簇中的所有轨迹与候选轨迹簇对应的峰值轨迹之间的平均距离;
通过公式:
计算第个单独轨迹加入候选轨迹簇之后候选轨迹簇的标准差;
其中,表示第个单独轨迹与候选轨迹簇对应的峰值轨迹之间的距离;
判断候选轨迹簇是否满足;
其中,表示第一标准差预设倍数;
若是,则将第个单独轨迹分配到候选轨迹簇中;
否则,从第个单独轨迹与所有轨迹簇之间的相对距离中移除候选轨迹簇对应的元素,判断第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量是否大于0,若第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量大于0,则返回选择第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将数值最小的元素对应的轨迹簇作为候选轨迹簇的步骤,若第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量等于0,则标记第个单独轨迹为噪声轨迹。
可选的,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果,包括:
通过聚类距离公式计算第个轨迹簇和第个轨迹簇之间的聚类距离;聚类距离公式为:
其中,表示第个轨迹簇,,表示轨迹簇的总数,,
表示第个轨迹簇中轨迹的总数,表示第个轨迹簇中轨迹的总数,表示第个轨迹簇对应的峰值轨迹与第个轨迹簇对应的峰值轨迹之间的距离。
获取第个轨迹簇与其他所有轨迹簇之间的聚类距离:
其中,表示第个轨迹簇与第1个轨迹簇之间的聚类距离,表示第个轨迹簇与第个轨迹簇之间的聚类距离;
选择第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将数值最小的元素对应的轨迹簇作为待合并轨迹簇;
将第个轨迹簇与待合并轨迹簇合并,得到合并轨迹簇,并将合并轨迹簇中轨迹密度最大的轨迹作为合并轨迹簇对应的峰值轨迹;
通过公式:
计算统计特征增加值;
其中,表示合并轨迹簇中所有轨迹与合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示第个轨迹簇中所有轨迹与第个轨迹簇对应的峰值轨迹之间的距离的平均值,表示待合并轨迹簇中所有轨迹与待合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示合并轨迹簇的标准差,表示第个轨迹簇的标准差,表示待合并轨迹簇的标准差,表示平均距离预设倍数,表示第二标准差预设倍数;
若统计特征增加值,则从第个轨迹簇与其他所有轨迹簇之间的聚类距离中移除数值最小的元素,并判断第个轨迹簇与其他所有轨迹簇之间的聚类距离中元素数量是否大于0,若是,则返回上述选择第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将数值最小的元素对应的轨迹簇作为待合并轨迹簇的步骤,否则,将第个轨迹簇作为轨迹聚类结果中的一个轨迹簇;
若统计特征增加值,则将合并轨迹簇作为第个轨迹簇,从其他所有轨迹簇中移除待合并轨迹簇,并返回通过聚类距离公式计算第个轨迹簇和第个轨迹簇之间的聚类距离的步骤。
可选的,获取轨迹的距离分布特征曲线,包括:
获取轨迹与目标区域中所有其他轨迹之间的距离;
将轨迹与目标区域中所有其他轨迹之间的距离由小到大依次进行排序,得到轨迹的距离分布特征曲线;
其中,距离分布特征曲线的横坐标为距离取值,纵坐标为轨迹数量。
第二方面,本申请实施例提供了一种基于峰值轨迹的轨迹聚类装置,包括:
确定模块,用于分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域;距离分布特征曲线用于描述轨迹与其他轨迹之间的距离,k邻域包含轨迹以及与轨迹相邻的k条轨迹;
获取模块,用于获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇;
第一分配模块,用于分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中;峰值k邻域为轨迹簇对应的峰值轨迹的k邻域;
第二分配模块,对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配;
单独轨迹处理模块,对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声;
合并模块,用于分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,该处理器执行上述计算机程序时实现上述的基于峰值轨迹的轨迹聚类方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述的基于峰值轨迹的轨迹聚类方法。
本申请的上述方案有如下的有益效果:
在本申请的实施例中,通过分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域,然后获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇,再分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中,然后对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配,再对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声,最后分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。其中,根据轨迹的距离分布特征曲线,能够基于轨迹之间的距离自适应地确定轨迹的k邻域,将每个峰值轨迹作为一轨迹簇,并将轨迹簇和其他轨迹簇进行合并,能够进一步对轨迹进行聚类,准确确定出目标区域中轨迹簇的数量,重新对已分配轨迹进行分配,能够提高轨迹聚类的准确性,将单独轨迹分配给轨迹簇或标记为噪声,使得目标区域中的噪声被识别。
同时由于本申请的基于峰值轨迹的轨迹聚类方法中仅考虑轨迹之间的距离,而不受轨迹数量、轨迹分布方式等因素的影响,因此该轨迹聚类方法适用于简单场景、复杂场景等多种场景下的轨迹聚类。
本申请的其它有益效果将在随后的具体实施方式部分予以详细说明。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的基于峰值轨迹的轨迹聚类方法的流程图;
图2为本申请一实施例提供的目标区域的轨迹的示意图;
图3为本申请一实施例提供的峰值轨迹的示意图;
图4为本申请一实施例提供的目标区域的轨迹聚类结果的示意图;
图5为本申请一实施例提供的基于峰值轨迹的轨迹聚类装置的结构示意图;
图6为本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
针对现有的轨迹聚类算法不适用于复杂场景的问题,本申请实施例提供了一种基于峰值轨迹的轨迹聚类方法,该轨迹聚类方法通过分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域,然后获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇,再分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中,然后对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配,再对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声,最后分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。其中,根据轨迹的距离分布特征曲线,能够基于轨迹之间的距离自适应地确定轨迹的k邻域,将每个峰值轨迹作为一轨迹簇,并将轨迹簇和其他轨迹簇进行合并,能够进一步对轨迹进行聚类,准确确定出目标区域中轨迹簇的数量,重新对已分配轨迹进行分配,能够提高轨迹聚类的准确性,将单独轨迹分配给轨迹簇或标记为噪声,使得目标区域中的噪声被识别。
同时由于本申请的基于峰值轨迹的轨迹聚类方法中仅考虑轨迹之间的距离,而不受轨迹数量、轨迹分布方式等因素的影响,因此该轨迹聚类方法适用于简单场景、复杂场景等多种场景下的轨迹聚类。
接下来对本申请提供的基于峰值轨迹的轨迹聚类方法做示例性说明。
如图1所示,本申请提供的基于峰值轨迹的轨迹聚类方法包括如下步骤:
步骤11,分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域。
上述距离分布特征曲线用于描述轨迹与其他轨迹之间的距离,上述k邻域包含轨迹以及与轨迹相邻的k条轨迹,上述目标区域为需要进行轨迹聚类的区域。
在本申请的一些实施例中,上述获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域的步骤具体为:
第一步,获取轨迹与目标区域中所有其他轨迹之间的距离。
第二步,将轨迹与目标区域中所有其他轨迹之间的距离由小到大依次进行排序,得到轨迹的距离分布特征曲线。
其中,距离分布特征曲线的横坐标为距离取值,纵坐标为轨迹数量。
第三步,对轨迹的距离分布特征曲线进行一阶求导,得到分布曲线。
第四步,通过变化值计算公式计算分布曲线上第个点的变化值;变化值计算公式为:
其中,表示分布曲线上第个点的纵坐标取值,表示分布曲线上第个点的纵坐标取值。
若分布曲线第一次满足,则将第个点对应的距离取值作为目标取值;其中,为预设变化值。
若不满足,则将第个点作为第个点,并返回通过变化值计算公式计算分布曲线上第个点的变化值的步骤。
第五步,确定目标取值对应的轨迹数量,将轨迹数量作为轨迹的k值。
基于轨迹与其他所有轨迹之间的距离,以轨迹为中心,依次取k条其他轨迹,将轨迹和k条其他轨迹作为轨迹的k邻域。
需要说明的是,在获取轨迹与目标区域中所有其他轨迹之间的距离的步骤前,需要对目标区域的轨迹进行预处理,包括异常轨迹数据删除、重复轨迹数据删除,并进行轨迹簇和噪声轨迹初步标记等。
示例性的,上述轨迹可以为车辆的运动轨迹、船只的运动轨迹、无人机的运动轨迹等。可以将分段路径距离(SSPD,Symmetrized Segment Path Distance)作为轨迹相似性度量指标,计算轨迹间的相似性,得到距离相似性矩阵,该矩阵中的元素即为轨迹之间的距离。获取轨迹与其他所有轨迹之间的距离后,将这些距离以小到大的顺序进行排列,得到距离分布特征曲线,并进行求导得到分布曲线。若分布曲线上第2个点的纵坐标值为3,第3个点的纵坐标值为9.6,则第2个点的变化值为3.2,大于预设变化值3,且在第2个点之前的点均未满足变化值大于预设变化值,则将第2个点对应的距离取值作为目标取值,若在第2个点之前,第1个点的变化值大于预设变化值,则将第1个点对应的距离取值作为目标取值,则在距离分布特征曲线上获取与距离分布特征曲线对应的轨迹之间的距离小于等于目标取值的其他轨迹的数量,若该数量为8条,则以轨迹为中心,依次选取与该轨迹距离最近的8条其他轨迹,将这8条其他轨迹以及该轨迹作为该轨迹的k邻域。
值得一提的是,当轨迹发生改变时,轨迹之间的距离也会发生改变,同时轨迹的距离分布特征曲线会自适应地调整,根据轨迹的距离分布特征曲线,确定轨迹的k邻域,并不受轨迹之间距离变化的影响,能够随着轨迹的变化,自适应地确定轨迹的k邻域。
下面结合一具体实例对上述轨迹进行示例性说明。
如图2所示,目标区域中存在多条轨迹,图中每条实线表示一条轨迹,这些轨迹存在多种走向。
步骤12,获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇。
在本申请的一些实施例中,上述获取每个k邻域中的峰值轨迹具体为:
第一步,通过公式:
计算第个轨迹的轨迹密度。
其中,表示第个轨迹与第个轨迹之间的距离,,表示第个轨迹所在的k邻域中轨迹的总数,。
得到第个轨迹所在的k邻域中所有轨迹的轨迹密度:
其中,表示第1个轨迹的轨迹密度,表示第个轨迹的轨迹密度。
第二步,将所有轨迹的轨迹密度中数值最大的轨迹密度对应的轨迹作为峰值轨迹。
需要说明的是,若轨迹为峰值轨迹,则不对该轨迹的k邻域进行获取k邻域中的峰值轨迹的步骤。每个峰值轨迹作为只有一个轨迹(即峰值轨迹自身)的轨迹簇,且该轨迹簇以峰值轨迹为中心。
示例性的,k邻域中有5条轨迹,这5条轨迹的轨迹密度分别为1.1、1.4、2.3、2.1、1.2,则选择轨迹密度2.3对应的轨迹作为峰值轨迹,将该峰值轨迹作为一个轨迹簇。
值得一提的是,将每个峰值轨迹作为一轨迹簇,能够确定目标区域中轨迹簇的数量,且这种方式是针对具体的轨迹进行处理,不受轨迹数量、分布规律等的影响,在复杂场景下应用时也能确定轨迹簇的数量。
下面结合一具体实例对上述步骤进行示例性解释。
如图3所示,图中带点虚线为获取的多条峰值轨迹,将这些峰值轨迹均作为轨迹簇,图中实线为轨迹。
步骤13,分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中。
上述峰值k邻域为轨迹簇对应的峰值轨迹的k邻域。
需要说明的是,可以使用自动化统计产品和服务软件(SPSSAU,StatisticalProduct and Service Software Automatically)、Matlab等计算机软件将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中。
示例性的,若峰值k邻域中有8条轨迹,这8条轨迹中有6条仅在该峰值k邻域,其他2条不仅在该峰值k邻域,同时还在其他峰值k邻域中,将上述的6条轨迹分配到该峰值k邻域对应的轨迹簇中,此时该轨迹簇中包括峰值轨迹在内有7条轨迹。
值得一提的是,通过上述步骤,可以对轨迹进行初步聚类,将仅在一个峰值k邻域中的轨迹全部分配到对应的轨迹簇中。
步骤14,对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配。
在本申请的一些实施例中,上述对重叠轨迹进行分配的步骤具体为:
第一步,通过公式:
计算第个重叠轨迹与轨迹簇之间的相对距离。
其中,轨迹簇为第个重叠轨迹所在的第个轨迹簇,,表示目标区域中重叠轨迹的数量,,表示第个重叠轨迹所在的轨迹簇的总数,表示第个重叠轨迹与轨迹簇对应的峰值轨迹之间的距离,表示轨迹簇中的所有轨迹与轨迹簇对应的峰值轨迹之间的平均距离。
第二步,获取第个重叠轨迹与第个重叠轨迹所在的所有轨迹簇之间的相对距离:
其中,表示第个重叠轨迹与轨迹簇之间的相对距离,表示第个重叠轨迹与轨迹簇之间的相对距离。
第三步,选择第个重叠轨迹与第个重叠轨迹所在的所有轨迹簇之间的相对距离中数值最小的元素,将第个重叠轨迹分配到数值最小的元素对应的轨迹簇中。
示例性的,在目标区域中共有9条重叠轨迹,其中第6条重叠轨迹同时处于3个峰值k邻域中,通过计算后得到第6条重叠轨迹与3个峰值k邻域的相对距离分别为2.3、1.4、2.5,则选择相对距离1.4的对应的轨迹簇,将第6条重叠轨迹分配到该轨迹簇中。
值得一提的是,上述步骤考虑到了峰值k邻域之间重叠的情况,并实现了对重叠轨迹的分配,且影响对重叠轨迹进行分配的元素仅为重叠轨迹与峰值k邻域之间的距离,适用于各种轨迹聚类的场景。
步骤15,对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声。
在本申请的一些实施例中,上述将单独轨迹分配给轨迹簇或标记为噪声的步骤具体为:
第一步,通过公式:
计算第个单独轨迹与第个轨迹簇之间的相对距离;
其中,表示第个轨迹簇,,表示目标区域中轨迹簇的总数,,表示目标区域中单独轨迹的总数,表示第个单独轨迹与第个轨迹簇对应的峰值轨迹之间的距离,表示第个轨迹簇中的所有轨迹与第个轨迹簇对应的峰值轨迹之间的平均距离。
获取第个单独轨迹与所有轨迹簇之间的相对距离:
其中,表示第个单独轨迹与第1个轨迹簇之间的相对距离,表示第个单独轨迹与第个轨迹簇之间的相对距离。
第二步,选择第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将数值最小的元素对应的轨迹簇作为候选轨迹簇。
通过公式:
计算候选轨迹簇的标准差。
其中,表示第个轨迹与候选轨迹簇对应的峰值轨迹之间的距离,,表示候选轨迹簇中轨迹的总数,表示候选轨迹簇中的所有轨迹与候选轨迹簇对应的峰值轨迹之间的平均距离。
通过公式:
计算第个单独轨迹加入候选轨迹簇之后候选轨迹簇的标准差。
其中,表示第个单独轨迹与候选轨迹簇对应的峰值轨迹之间的距离。
第三步,判断候选轨迹簇是否满足。
其中,表示第一标准差预设倍数。
若是,则将第个单独轨迹分配到候选轨迹簇中。
否则,从第个单独轨迹与所有轨迹簇之间的相对距离中移除候选轨迹簇对应的元素,判断第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量是否大于0,若第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量大于0,则返回选择第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将数值最小的元素对应的轨迹簇作为候选轨迹簇的步骤,若第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量等于0,则标记第个单独轨迹为噪声轨迹。
示例性的,对于目标区域中第1条单独轨迹,通过计算得到第1条单独轨迹与目标区域中所有轨迹簇之间的相对距离,其中与第1条单独轨迹之间的相对距离最小的是第3个轨迹簇,将第3个轨迹簇作为候选轨迹簇,计算候选轨迹簇的标准差,候选轨迹簇的标准差为0.3,若第1条单独轨迹加入候选轨迹簇,加入后候选轨迹簇的标准差为0.5,若第一标准差预设倍数为3,满足0.5<3×0.3,说明将第1条单独轨迹加入候选轨迹簇不会导致候选轨迹簇内发生显著变化,则将第1条单独轨迹分配给候选轨迹簇,若加入后候选轨迹簇的标准差为1,1>3×0.3,不满足,则将该候选轨迹簇对应的相对距离移除,若移除后中没有元素,说明第1条单独轨迹加入任何轨迹簇均会引起轨迹簇内发生显著变化,则将第1条单独轨迹标记为噪声轨迹,若移除后中有元素,则从中选择数值最小的元素,若数值最小的元素对应的是第7个轨迹簇,则将第7个轨迹簇作为候选轨迹簇,返回计算候选轨迹簇的标准差的步骤。
需要说明的是,第一标准差预设倍数是根据轨迹簇内标准差的大小设置的,不同的轨迹簇可以设置不同的第一标准差预设倍数。
值得一提的是,上述步骤考虑了目标区域中单独轨迹,通过将单独轨迹分配给轨迹簇或标记为噪声,实现了对单独轨迹进行处理的同时,分辨出目标区域内的噪声轨迹,且影响单独轨迹的处理的因素仅为轨迹之间的距离,与目标区域中轨迹的数量、分布方式等因素无关,说明这种方式对复杂情况下的轨迹聚类同样适用。
步骤16,分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。
在本申请的一些实施例中,上述将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果的步骤具体为:
第一步,通过聚类距离公式计算第个轨迹簇和第个轨迹簇之间的聚类距离;聚类距离公式为:
其中,表示第个轨迹簇,,表示轨迹簇的总数,,表示第个轨迹簇中轨迹的总数,表示第个轨迹簇中轨迹的总数,表示第个轨迹簇对应的峰值轨迹与第个轨迹簇对应的峰值轨迹之间的距离;
获取第个轨迹簇与其他所有轨迹簇之间的聚类距离:
其中,表示第个轨迹簇与第1个轨迹簇之间的聚类距离,表示第个轨迹簇与第个轨迹簇之间的聚类距离。
第二步,选择第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将数值最小的元素对应的轨迹簇作为待合并轨迹簇。
将第个轨迹簇与待合并轨迹簇合并,得到合并轨迹簇,并将合并轨迹簇中轨迹密度最大的轨迹作为合并轨迹簇对应的峰值轨迹。
第三步,通过公式:
计算统计特征增加值。
其中,表示合并轨迹簇中所有轨迹与合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示第个轨迹簇中所有轨迹与第个轨迹簇对应的峰值轨迹之间的距离的平均值,表示待合并轨迹簇中所有轨迹与待合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示合并轨迹簇的标准差,表示第个轨迹簇的标准差,表示待合并轨迹簇的标准差,表示平均距离预设倍数,表示第二标准差预设倍数。
若统计特征增加值,则从第个轨迹簇与其他所有轨迹簇之间的聚类距离中移除数值最小的元素,并判断第个轨迹簇与其他所有轨迹簇之间的聚类距离中元素数量是否大于0,若是,则返回上述选择第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将数值最小的元素对应的轨迹簇作为待合并轨迹簇的步骤,否则,将第个轨迹簇作为轨迹聚类结果中的一个轨迹簇。
若统计特征增加值,则将合并轨迹簇作为第个轨迹簇,从其他所有轨迹簇中移除待合并轨迹簇,并返回通过聚类距离公式计算第个轨迹簇和第个轨迹簇之间的聚类距离的步骤。
示例性的,对于目标区域中的第1个轨迹簇,计算得到第1个轨迹簇与其他所有轨迹簇之间的聚类距离,与第1个轨迹簇之间聚类距离最小的轨迹簇为第2个轨迹簇,则将第1个轨迹簇和第2个轨迹簇合并,得到合并轨迹簇,若此时统计特征增加值,说明合并第1个轨迹簇和第2个轨迹簇会导致簇内发生显著变化,则不合并第1个轨迹簇和第2个轨迹簇,若移除第2个轨迹簇对应的聚类距离后,仍有其他轨迹簇与第1个轨迹簇之间的聚类距离存在,则获取除了第2个轨迹簇之外与第1个轨迹簇之间的聚类距离最小的轨迹簇,若该轨迹簇为第7个轨迹簇,则合并第1个轨迹簇和第7个轨迹簇,得到合并轨迹簇,此时统计特征增加值,则将合并轨迹簇作为第1个轨迹簇,并从中移除第7个轨迹簇对应的聚类距离,若移除后中没有元素,则将第1个轨迹簇作为聚类结果中的一个轨迹簇,此时的第1个轨迹簇是由原本的第1个轨迹簇与第7个轨迹簇合并得到的。
需要说明的是,上述聚类距离来自于聚类方法中的最小离差平方和法(ward聚类法),该方法使类内各轨迹的离差平方和最小,类间的离差平方和尽可能大。判断是否导致簇内发生显著变化,与上文中的平均距离预设倍数,第二标准差预设倍数有关,这两个参数的设置与目标区域中轨迹的数量相关。
值得一提的是,上述步骤能够针对每个轨迹簇,将轨迹簇与目标区域中不会导致簇内发生显著变化的其他轨迹簇全部合并,进一步对轨迹进行聚类,同时确定轨迹聚类结果中轨迹簇的数量。
下面结合一具体实例对上述步骤进行示例性说明。
如图4所示,图中带点实线为轨迹,实线上点的形状不同表示轨迹处于目标区域的轨迹聚类结果中不同的轨迹簇,多条轨迹为相同线条表示轨迹属于同一轨迹簇。
以轮廓系数(SIC,Silhouette Coefficient)、调整兰德指数(ARI,adjustedRandindex)、调整互信息分数(AMI,Adjusted mutual information)定量评价所提出的聚类算法在数据集上的聚类效果。
通过公式:
计算轨迹簇的轮廓系数。
其中,,表示轨迹簇中轨迹的总数,表示轨迹簇中第条轨迹与其他轨迹簇中轨迹之间的距离的平均值,表示轨迹簇中第条轨迹与距离最近的其他轨迹簇中轨迹之间的距离的平均值,距离最近的其他轨迹簇为相对目标区域中所有其他轨迹簇而言,与轨迹簇距离最近的其他轨迹簇。
通过公式:
计算轨迹簇的调整兰德指数。
其中,表示兰德指数,表示兰德指数的均值计算。
通过公式:
计算轨迹簇的调整互信息分数。
其中,表示互信息分数,表示轨迹聚类结果的标签,表示轨迹簇的真实标签。
本申请提供的基于峰值轨迹的轨迹聚类方法得到的轨迹聚类结果的,以同样的目标区域,DBSCAN算法得到的轨迹聚类结果的,HDBSCAN算法得到的轨迹聚类结果的,,,K均值(K-means++)算法得到的轨迹聚类结果的,,。
由此可见,本申请提供的基于峰值轨迹的轨迹聚类方法效果好,有效性高。
下面对本申请提供的基于峰值轨迹的轨迹聚类装置进行示例性说明。
如图5所示,本申请实施例提供了一种基于峰值轨迹的轨迹聚类装置,该基于峰值轨迹的轨迹聚类装置500包括:
确定模块501,用于分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域;距离分布特征曲线用于描述轨迹与其他轨迹之间的距离,k邻域包含轨迹以及与轨迹相邻的k条轨迹;
获取模块502,用于获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇;
第一分配模块503,用于分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中;峰值k邻域为轨迹簇对应的峰值轨迹的k邻域;
第二分配模块504,对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配;
单独轨迹处理模块505,对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声;
合并模块506,用于分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
如图6所示,本申请的实施例提供了一种终端设备,该实施例的终端设备D10包括:至少一个处理器D100(图6中仅示出一个处理器)、存储器D101以及存储在存储器D101中并可在至少一个处理器D100上运行的计算机程序D102,处理器D100执行计算机程序D102时实现上述任意各个方法实施例中的步骤。
具体的,处理器D100执行计算机程序D102时,通过分别针对目标区域中的每条轨迹,获取轨迹的距离分布特征曲线,并根据轨迹的距离分布特征曲线,确定轨迹的k邻域,然后获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇,再分别针对每个轨迹簇,将轨迹簇对应的峰值k邻域中仅在峰值k邻域中的所有轨迹分配到轨迹簇中,然后对于目标区域中同时在多个峰值k邻域中的重叠轨迹,基于重叠轨迹与重叠轨迹所在的每个峰值k邻域之间的距离,对重叠轨迹进行分配,再对于目标区域中不在任何峰值k邻域内的单独轨迹,根据单独轨迹与每个轨迹簇之间的距离,将单独轨迹分配给轨迹簇或标记为噪声,最后分别针对每个轨迹簇,基于轨迹簇和其他每个轨迹簇之间的距离,将轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果。其中,根据轨迹的距离分布特征曲线,能够基于轨迹之间的距离自适应地确定轨迹的k邻域,将每个峰值轨迹作为一轨迹簇,并将轨迹簇和其他轨迹簇进行合并,能够进一步对轨迹进行聚类,准确确定出目标区域中轨迹簇的数量,重新对已分配轨迹进行分配,能够提高轨迹聚类的准确性,将单独轨迹分配给轨迹簇或标记为噪声,使得目标区域中的噪声被识别。
同时由于本申请的基于峰值轨迹的轨迹聚类方法中仅考虑轨迹之间的距离,而不受轨迹数量、轨迹分布方式等因素的影响,因此该轨迹聚类方法适用于简单场景、复杂场景等多种场景下的轨迹聚类。
所称处理器D100可以是中央处理单元(CPU,Central Processing Unit),该处理器D100还可以是其他通用处理器、数字信号处理器 (DSP,Digital Signal Processor)、专用集成电路 (ASIC,Application Specific Integrated Circuit)、现成可编程门阵列(FPGA,Field-Programmable Gate Array) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器D101在一些实施例中可以是终端设备D10的内部存储单元,例如终端设备D10的硬盘或内存。存储器D101在另一些实施例中也可以是终端设备D10的外部存储设备,例如终端设备D10上配备的插接式硬盘,智能存储卡(SMC,Smart Media Card ),安全数字(SD,Secure Digital)卡,闪存卡(Flash Card)等。进一步地,存储器D101还可以既包括终端设备D10的内部存储单元也包括外部存储设备。存储器D101用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器D101还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够将计算机程序代码携带到基于峰值轨迹的轨迹聚类方法装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (7)
1.一种基于峰值轨迹的轨迹聚类方法,其特征在于,包括:
分别针对目标区域中的每条轨迹,获取所述轨迹的距离分布特征曲线,并根据所述轨迹的距离分布特征曲线,确定所述轨迹的k邻域;所述距离分布特征曲线用于描述所述轨迹与其他轨迹之间的距离,所述k邻域包含所述轨迹以及与所述轨迹相邻的k条轨迹;
获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇;
分别针对每个轨迹簇,将所述轨迹簇对应的峰值k邻域中仅在所述峰值k邻域中的所有轨迹分配到所述轨迹簇中;所述峰值k邻域为所述轨迹簇对应的峰值轨迹的k邻域;
对于所述目标区域中同时在多个峰值k邻域中的重叠轨迹,基于所述重叠轨迹与所述重叠轨迹所在的每个峰值k邻域之间的距离,对所述重叠轨迹进行分配;
对于所述目标区域中不在任何峰值k邻域内的单独轨迹,根据所述单独轨迹与每个轨迹簇之间的距离,将所述单独轨迹分配给轨迹簇或标记为噪声;
分别针对每个轨迹簇,基于所述轨迹簇和其他每个轨迹簇之间的距离,将所述轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果;
其中,所述分别针对目标区域中的每条轨迹,获取所述轨迹的距离分布特征曲线,并根据所述轨迹的距离分布特征曲线,确定所述轨迹的k邻域的步骤包括:
获取所述轨迹与所述目标区域中所有其他轨迹之间的距离;
将所述轨迹与所述目标区域中所有其他轨迹之间的距离由小到大依次进行排序,得到所述轨迹的距离分布特征曲线;
其中,所述距离分布特征曲线的横坐标为距离取值,纵坐标为轨迹数量;
对所述轨迹的距离分布特征曲线进行一阶求导,得到分布曲线;
通过变化值计算公式计算所述分布曲线上第个点的变化值;所述变化值计算公式为:
其中,表示所述分布曲线上第个点的纵坐标取值,表示所述分布曲线上第个点的纵坐标取值;
若所述分布曲线第一次满足,则将所述第个点对应的距离取值作为目标取值;其中,为预设变化值;
若不满足,则将第个点作为第个点,并返回通过变化值计算公式计算所述分布曲线上第个点的变化值的步骤;
确定所述目标取值对应的轨迹数量,将所述轨迹数量作为所述轨迹的k值;
基于所述轨迹与其他所有轨迹之间的距离,以所述轨迹为中心,依次取k条其他轨迹,将所述轨迹和所述k条其他轨迹作为所述轨迹的k邻域;
所述获取每个k邻域中的峰值轨迹,包括:
通过公式:
计算第个轨迹的轨迹密度;
其中,表示所述第个轨迹与所述第个轨迹之间的距离,,表示所述第个轨迹所在的k邻域中轨迹的总数,;
得到所述第个轨迹所在的k邻域中所有轨迹的轨迹密度:
其中,表示第1个轨迹的轨迹密度,表示第个轨迹的轨迹密度;
将所述所有轨迹的轨迹密度中数值最大的轨迹密度对应的轨迹作为峰值轨迹。
2.根据权利要求1所述的轨迹聚类方法,其特征在于,所述基于所述重叠轨迹与所述重叠轨迹所在的每个峰值k邻域之间的距离,对所述重叠轨迹进行分配,包括:
通过公式:
计算第个重叠轨迹与轨迹簇之间的相对距离;
其中,轨迹簇为所述第个重叠轨迹所在的第个轨迹簇,,表示所述目标区域中重叠轨迹的数量,,表示所述第个重叠轨迹所在的轨迹簇的总数,表示所述第个重叠轨迹与轨迹簇对应的峰值轨迹之间的距离,表示所述轨迹簇中的所有轨迹与所述轨迹簇对应的峰值轨迹之间的平均距离;
获取所述第个重叠轨迹与所述第个重叠轨迹所在的所有轨迹簇之间的相对距离:
其中,表示所述第个重叠轨迹与轨迹簇之间的相对距离,表示所述第个重叠轨迹与轨迹簇之间的相对距离;
选择所述第个重叠轨迹与所述第个重叠轨迹所在的所有轨迹簇之间的相对距离中数值最小的元素,将所述第个重叠轨迹分配到所述数值最小的元素对应的轨迹簇中。
3.根据权利要求1所述的轨迹聚类方法,其特征在于,所述根据所述单独轨迹与每个轨迹簇之间的距离,将所述单独轨迹分配给轨迹簇或标记为噪声,包括:
通过公式:
计算第个单独轨迹与第个轨迹簇之间的相对距离;
其中,表示第个轨迹簇,,表示所述目标区域中轨迹簇的总数,,表示所述目标区域中单独轨迹的总数,表示所述第个单独轨迹与所述第个轨迹簇对应的峰值轨迹之间的距离,表示所述第个轨迹簇中的所有轨迹与所述第个轨迹簇对应的峰值轨迹之间的平均距离;
获取所述第个单独轨迹与所有轨迹簇之间的相对距离:
其中,表示所述第个单独轨迹与第1个轨迹簇之间的相对距离,表示所述第个单独轨迹与第个轨迹簇之间的相对距离;
选择所述第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将所述数值最小的元素对应的轨迹簇作为候选轨迹簇;
通过公式:
计算所述候选轨迹簇的标准差;
其中,表示第个轨迹与所述候选轨迹簇对应的峰值轨迹之间的距离,,表示所述候选轨迹簇中轨迹的总数,表示所述候选轨迹簇中的所有轨迹与所述候选轨迹簇对应的峰值轨迹之间的平均距离;
通过公式:
计算所述第个单独轨迹加入所述候选轨迹簇之后所述候选轨迹簇的标准差;
其中,表示所述第个单独轨迹与所述候选轨迹簇对应的峰值轨迹之间的距离;
判断所述候选轨迹簇是否满足;
其中,表示第一标准差预设倍数;
若是,则将所述第个单独轨迹分配到所述候选轨迹簇中;
否则,从所述第个单独轨迹与所有轨迹簇之间的相对距离中移除所述候选轨迹簇对应的元素,判断所述第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量是否大于0,若所述第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量大于0,则返回选择所述第个单独轨迹与所有轨迹簇之间的相对距离中数值最小的元素,并将所述数值最小的元素对应的轨迹簇作为候选轨迹簇的步骤,若所述第个单独轨迹与所有轨迹簇之间的相对距离中的元素数量等于0,则标记所述第个单独轨迹为噪声轨迹。
4.根据权利要求1所述的轨迹聚类方法,其特征在于,所述基于所述轨迹簇和其他每个轨迹簇之间的距离,将所述轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果,包括:
通过聚类距离公式计算第个轨迹簇和第个轨迹簇之间的聚类距离;所述聚类距离公式为:
其中,表示第个轨迹簇,,表示所述轨迹簇的总数,,表示所述第个轨迹簇中轨迹的总数,表示所述第个轨迹簇中轨迹的总数,表示所述第个轨迹簇对应的峰值轨迹与所述第个轨迹簇对应的峰值轨迹之间的距离;
获取所述第个轨迹簇与其他所有轨迹簇之间的聚类距离:
其中,表示所述第个轨迹簇与第1个轨迹簇之间的聚类距离,表示所述第个轨迹簇与第个轨迹簇之间的聚类距离;
选择所述第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将所述数值最小的元素对应的轨迹簇作为待合并轨迹簇;
将所述第个轨迹簇与所述待合并轨迹簇合并,得到合并轨迹簇,并将所述合并轨迹簇中轨迹密度最大的轨迹作为所述合并轨迹簇对应的峰值轨迹;
通过公式:
计算统计特征增加值;
其中,表示所述合并轨迹簇中所有轨迹与所述合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示所述第个轨迹簇中所有轨迹与所述第个轨迹簇对应的峰值轨迹之间的距离的平均值,表示所述待合并轨迹簇中所有轨迹与所述待合并轨迹簇对应的峰值轨迹之间的距离的平均值,表示所述合并轨迹簇的标准差,表示所述第个轨迹簇的标准差,表示所述待合并轨迹簇的标准差,表示平均距离预设倍数,表示第二标准差预设倍数;
若统计特征增加值,则从所述第个轨迹簇与其他所有轨迹簇之间的聚类距离中移除所述数值最小的元素,并判断所述第个轨迹簇与其他所有轨迹簇之间的聚类距离中元素数量是否大于0,若是,则返回上述选择所述第个轨迹簇与其他所有轨迹簇之间的聚类距离中数值最小的元素,将所述数值最小的元素对应的轨迹簇作为待合并轨迹簇的步骤,否则,将所述第个轨迹簇作为所述轨迹聚类结果中的一个轨迹簇;
若统计特征增加值,则将所述合并轨迹簇作为所述第个轨迹簇,从其他所有轨迹簇中移除所述待合并轨迹簇,并返回所述通过聚类距离公式计算所述第个轨迹簇和第个轨迹簇之间的聚类距离的步骤。
5.一种基于峰值轨迹的轨迹聚类装置,其特征在于,包括:
确定模块,用于分别针对目标区域中的每条轨迹,获取所述轨迹的距离分布特征曲线,并根据所述轨迹的距离分布特征曲线,确定所述轨迹的k邻域;所述距离分布特征曲线用于描述所述轨迹与其他轨迹之间的距离,所述k邻域包含所述轨迹以及与所述轨迹相邻的k条轨迹;
获取模块,用于获取每个k邻域中的峰值轨迹,并将获取到的峰值轨迹作为一轨迹簇;
第一分配模块,用于分别针对每个轨迹簇,将所述轨迹簇对应的峰值k邻域中仅在所述峰值k邻域中的所有轨迹分配到所述轨迹簇中;所述峰值k邻域为所述轨迹簇对应的峰值轨迹的k邻域;
第二分配模块,对于所述目标区域中同时在多个峰值k邻域中的重叠轨迹,基于所述重叠轨迹与所述重叠轨迹所在的每个峰值k邻域之间的距离,对所述重叠轨迹进行分配;
单独轨迹处理模块,对于所述目标区域中不在任何峰值k邻域内的单独轨迹,根据所述单独轨迹与每个轨迹簇之间的距离,将所述单独轨迹分配给轨迹簇或标记为噪声;
合并模块,用于分别针对每个轨迹簇,基于所述轨迹簇和其他每个轨迹簇之间的距离,将所述轨迹簇和其他轨迹簇进行合并,得到轨迹聚类结果;
所述确定模块,具体用于获取所述轨迹与所述目标区域中所有其他轨迹之间的距离;
将所述轨迹与所述目标区域中所有其他轨迹之间的距离由小到大依次进行排序,得到所述轨迹的距离分布特征曲线;
其中,所述距离分布特征曲线的横坐标为距离取值,纵坐标为轨迹数量;
对所述轨迹的距离分布特征曲线进行一阶求导,得到分布曲线;
通过变化值计算公式计算所述分布曲线上第个点的变化值;所述变化值计算公式为:
其中,表示所述分布曲线上第个点的纵坐标取值,表示所述分布曲线上第个点的纵坐标取值;
若所述分布曲线第一次满足,则将所述第个点对应的距离取值作为目标取值;其中,为预设变化值;
若不满足,则将第个点作为第个点,并返回通过变化值计算公式计算所述分布曲线上第个点的变化值的步骤;
确定所述目标取值对应的轨迹数量,将所述轨迹数量作为所述轨迹的k值;
基于所述轨迹与其他所有轨迹之间的距离,以所述轨迹为中心,依次取k条其他轨迹,将所述轨迹和所述k条其他轨迹作为所述轨迹的k邻域;
所述获取每个k邻域中的峰值轨迹,包括:
通过公式:
计算第个轨迹的轨迹密度;
其中,表示所述第个轨迹与所述第个轨迹之间的距离,,表示所述第个轨迹所在的k邻域中轨迹的总数,;
得到所述第个轨迹所在的k邻域中所有轨迹的轨迹密度:
其中,表示第1个轨迹的轨迹密度,表示第个轨迹的轨迹密度;
将所述所有轨迹的轨迹密度中数值最大的轨迹密度对应的轨迹作为峰值轨迹。
6.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述的基于峰值轨迹的轨迹聚类方法。
7.一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,其特征在于,计算机程序被处理器执行时实现如权利要求1至4任一项所述的基于峰值轨迹的轨迹聚类方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311636437.XA CN117349688B (zh) | 2023-12-01 | 2023-12-01 | 一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311636437.XA CN117349688B (zh) | 2023-12-01 | 2023-12-01 | 一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117349688A CN117349688A (zh) | 2024-01-05 |
CN117349688B true CN117349688B (zh) | 2024-03-19 |
Family
ID=89371335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311636437.XA Active CN117349688B (zh) | 2023-12-01 | 2023-12-01 | 一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117349688B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112543419A (zh) * | 2019-09-20 | 2021-03-23 | 中国移动通信集团吉林有限公司 | 一种基于密度聚类的用户轨迹预测方法及装置 |
WO2021052185A1 (zh) * | 2019-09-19 | 2021-03-25 | 北京三快在线科技有限公司 | 确定智能驾驶车辆的行驶轨迹 |
WO2021077761A1 (zh) * | 2019-10-23 | 2021-04-29 | 江苏智通交通科技有限公司 | 基于层次聚类的路口异常车辆轨迹识别分析方法 |
CN112906812A (zh) * | 2021-03-09 | 2021-06-04 | 西安电子科技大学 | 基于带离群点去除的车辆轨迹聚类方法 |
CN113298195A (zh) * | 2021-07-27 | 2021-08-24 | 中国电子科技集团公司第十五研究所 | 海上目标经典轨迹的生成方法、装置及存储介质 |
WO2023029461A1 (zh) * | 2021-08-31 | 2023-03-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 海量高维ais轨迹数据聚类方法 |
CN116010838A (zh) * | 2023-01-10 | 2023-04-25 | 吉林大学 | 一种融合密度值和K-means算法的车辆轨迹聚类方法 |
CN116467615A (zh) * | 2023-04-14 | 2023-07-21 | 北京万集科技股份有限公司 | 车辆轨迹的聚类方法和装置、存储介质和电子装置 |
-
2023
- 2023-12-01 CN CN202311636437.XA patent/CN117349688B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021052185A1 (zh) * | 2019-09-19 | 2021-03-25 | 北京三快在线科技有限公司 | 确定智能驾驶车辆的行驶轨迹 |
CN112543419A (zh) * | 2019-09-20 | 2021-03-23 | 中国移动通信集团吉林有限公司 | 一种基于密度聚类的用户轨迹预测方法及装置 |
WO2021077761A1 (zh) * | 2019-10-23 | 2021-04-29 | 江苏智通交通科技有限公司 | 基于层次聚类的路口异常车辆轨迹识别分析方法 |
CN112906812A (zh) * | 2021-03-09 | 2021-06-04 | 西安电子科技大学 | 基于带离群点去除的车辆轨迹聚类方法 |
CN113298195A (zh) * | 2021-07-27 | 2021-08-24 | 中国电子科技集团公司第十五研究所 | 海上目标经典轨迹的生成方法、装置及存储介质 |
WO2023029461A1 (zh) * | 2021-08-31 | 2023-03-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 海量高维ais轨迹数据聚类方法 |
CN116010838A (zh) * | 2023-01-10 | 2023-04-25 | 吉林大学 | 一种融合密度值和K-means算法的车辆轨迹聚类方法 |
CN116467615A (zh) * | 2023-04-14 | 2023-07-21 | 北京万集科技股份有限公司 | 车辆轨迹的聚类方法和装置、存储介质和电子装置 |
Non-Patent Citations (2)
Title |
---|
基于时空轨迹的热点区域提取;王侃等;电子科技大学学报(06);全文 * |
融合多特征的轨迹数据自适应聚类方法;刘敬一等;地球信息科学学报;第25卷(第7期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117349688A (zh) | 2024-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177505A (zh) | 指标异常检测模型的训练方法、推荐的方法及装置 | |
CN111652230B (zh) | 车牌识别方法、电子设备及存储介质 | |
CN110444011B (zh) | 交通流高峰识别方法、装置、电子设备及存储介质 | |
CN108268823A (zh) | 目标再识别方法和装置 | |
CN112529918B (zh) | 一种脑部ct图像中脑室区域分割的方法、装置及设备 | |
CN117291936B (zh) | 点云分割方法、装置、设备和介质 | |
CN113987243A (zh) | 一种图像聚档方法、图像聚档装置和计算机可读存储介质 | |
CN113869230A (zh) | 足球进球类型识别方法、装置、系统及存储介质 | |
CN116186611A (zh) | 一种不平衡数据的分类方法、装置、终端设备及介质 | |
CN111461905A (zh) | 车险骗赔规避方法、装置、计算机设备及存储介质 | |
CN108182444A (zh) | 基于场景分类的视频质量诊断的方法及装置 | |
CN117495891B (zh) | 点云边缘检测方法、装置和电子设备 | |
CN117349688B (zh) | 一种基于峰值轨迹的轨迹聚类方法、装置、设备及介质 | |
CN111199228B (zh) | 一种车牌定位的方法及装置 | |
CN111179218B (zh) | 传送带物料检测方法、装置、存储介质及终端设备 | |
CN111369790B (zh) | 过车记录校正方法、装置、设备及存储介质 | |
CN117115117A (zh) | 基于小样本下的病理图像识别方法、电子设备及存储介质 | |
CN113642455B (zh) | 行人数量确定方法、装置以及计算机可读存储介质 | |
CN116071569A (zh) | 图像选择方法、计算机设备及存储装置 | |
CN112015960B (zh) | 车载雷达测量数据的聚类方法、存储介质和电子装置 | |
CN116152127A (zh) | 一种3d点云处理方法、装置、设备和介质 | |
CN109272020B (zh) | 一种肌电数据中离群点的处理方法和系统 | |
CN111753723A (zh) | 一种基于密度校准的指纹识别方法及装置 | |
CN118628779B (zh) | 一种基于最小外接矩形自适应聚类的目标识别方法 | |
CN110728278A (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 |