CN111475596B - 一种基于多层级轨迹编码树的子段相似性匹配方法 - Google Patents

一种基于多层级轨迹编码树的子段相似性匹配方法 Download PDF

Info

Publication number
CN111475596B
CN111475596B CN202010261821.6A CN202010261821A CN111475596B CN 111475596 B CN111475596 B CN 111475596B CN 202010261821 A CN202010261821 A CN 202010261821A CN 111475596 B CN111475596 B CN 111475596B
Authority
CN
China
Prior art keywords
track
segment
sub
similarity
coding
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
CN202010261821.6A
Other languages
English (en)
Other versions
CN111475596A (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010261821.6A priority Critical patent/CN111475596B/zh
Publication of CN111475596A publication Critical patent/CN111475596A/zh
Application granted granted Critical
Publication of CN111475596B publication Critical patent/CN111475596B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A30/00Adapting or protecting infrastructure or their operation
    • Y02A30/60Planning or developing urban green infrastructure

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)
  • Computational Linguistics (AREA)
  • Remote Sensing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种基于多层级轨迹编码树的子段相似性匹配方法,先对待判断的两条轨迹进行轨迹分段,得到各自对应的轨迹子段。对待判断的两条轨迹的轨迹全段、轨迹子段以及轨迹片段进行自适应空间剖分网格编码,根据片段的相邻关系和从属关系构建两条轨迹各自对应的三层级轨迹编码树。基于轨迹编码树各层级结点对应的编码寻找候选相似子段对。对得到的候选相似子段对进行排序、合并操作,最后进行显著性检验,得到相似轨迹子段结果。本发明实现了从轨迹粗粒度到细粒度的统一表达形式,并在此多层级编码树的基础上分析轨迹的不同粒度分段的相似性,设计了轨迹相似子段的快速匹配方法,为挖掘分析多层次精细化轨迹模式、扩展多样化轨迹应用场景提供了新的依据。

Description

一种基于多层级轨迹编码树的子段相似性匹配方法
技术领域
本发明属于地理信息分析处理技术领域,涉及一种基于轨迹多层级编码树的轨迹子段相似性匹配方法。
背景技术
时空轨迹,即记录移动对象随着时间推移而发生的位置变化情况的数据。时空轨迹作为最为典型的时空数据类型,近年随着各种传感器、定位芯片的广泛安装,数据量不断积累,数据内容不断丰富,其中蕴含的信息和知识反映出移动对象的不同的运动规律和行为模式,具有可观的挖掘价值。针对轨迹数据的处理与分析也成为地理信息和数据挖掘领域的热点。其中,轨迹相似性是轨迹间最基本的模式,如何综合考虑轨迹形态特征,衡量轨迹间以及轨迹子段间的相似度,是众多轨迹数据挖掘应用首先要明确和解决的问题。
真实世界中的移动对象移动速度不一,移动方式多样,产生的轨迹形态以及在不同的采样策略下得到的离散有序轨迹点的分布也复杂多变。传统的轨迹相似性度量和计算一般直接采用时间翘曲或拉伸的方式匹配采样点,本质上属于形状整体相似性度量和计算,而轨迹时空形态中蕴含的时空共现、时空聚集等模式往往只存在于轨迹的部分片段,衡量整体轨迹的粗粒度相似性难以发现这些子段模式。所以需要从轨迹子段的相似性入手,研究轨迹相似子段的匹配方法,分析与挖掘出轨迹间的局部相似模式。
轨迹的子段匹配是轨迹模式挖掘领域的经典问题,也是轨迹子段聚类的主要手段。轨迹的子段匹配包含两个方面的问题,一是轨迹距离度量的选择,二是轨迹分段以及寻找相似分段的算法。轨迹数据的前后点之间有严格的次序关系,存在多种距离度量方案,包括最大距离、最小距离、平均距离、Hausdorff距离、Fréchet距离、动态时间规整(DynamicTime Warping,DTW)、最长公共子序列(Longest Common Subsequence LCSS)、时间翘曲编辑距离(Time Warp Edit Distance,TWED)等,可以根据不同的应用场景的需求选择。轨迹的分段情况直接影响子段匹配的结果,传统做法是遍历两条轨迹中的所有可能的子段,再采用特定的距离或相似性度量筛选出最接近的子段对,效率低耗时长,不具有实用性。
多年来领域内学者提出了众多不同的提高子段匹配效率和准确率的方法。韩国顺天大学的Lim等人在2007年基于DTW距离提出一种使用有限时间翘曲的子轨迹匹配算法,减小了子段过滤的候选集,实现了高效的子轨迹相似查询。荷兰埃因霍温工业大学的Buchin等人在2011年发表于计算几何期刊中的论文采用Fréchet距离寻找轨迹相似子段,分析了原始问题复杂度,证明了寻找最长相似子段是NP-complete问题,并利用自由空间图提出了近似计算方法,降低了计算复杂度。因为传统轨迹相似性度量专注于形状层面的计算,较少考虑时间的量化,更适用于等距离间隔采样轨迹,而如果两个移动对象的速度不同,在实际数据为等时间间隔采样时,即使轨迹形状很接近,也可能产生对应时间的采样点距离差距很大的情况。为了在非等间隔采样的轨迹中寻找相似子轨迹,Buchin在同年发表的论文中又设计了对应时间平均欧氏距离的高效算法,将时间复杂度从平方降低到线性,并面向有时间漂移的轨迹提出了近似算法。
香港科技大学的谢敏在2014年提出基于编辑距离的轨迹片段相似性度量EDS,并应用于轨迹子段相似性查询中。北京交通大学的陈彦俊在2014年提出考虑子轨迹多维运动特征的距离度量,并以此为基础改进了只考虑运动方向变化的轨迹分段算法。巴西圣卡塔琳娜联邦大学的Furtado团队在轨迹相似性研究方面有丰富的研究经验,2016年Furtado通过加权归一化操作设计了一种计算多维度语义轨迹相似性的模型,并验证了该模型对轨迹不同维度出现的噪声和空隙具有更好的鲁棒性。河海大学的毛莺池在2017年结合DTW算法提出了基于轨迹分段的动态时间翘曲距离度量SDTW,将点与点的距离替换为点和段之间的距离,具体方法为计算点与段两端点连接而包围的面积,此度量同时考虑了轨迹形状和时间距离,精度更高、对噪声鲁棒性更强。
较有代表性的最新研究成果是韩国高等科技学院的Yoo在2019年提出的基于Hausdorff距离的时空子片段匹配算法MaTIS,MaTIS算法通过分割索引、相似计算和缝合重建三个步骤实现轨迹子片段的最长匹配,相比于谢敏提出的EDS度量大幅提高了准确率,同时也具有较好的扩展性,可应用于不同采样条件的轨迹数据中。
可以看出,传统对轨迹相似性和轨迹模式的分析和挖掘,一般直接将轨迹视为分离的采样点,进而可以基于点之间的欧氏距离来设计轨迹的各种距离模型与相似性度量。这些子段匹配方法虽然部分考虑了轨迹点间的前后顺序特性,但忽略了轨迹采样点之间的空隙蕴含的信息量,人为地割裂了轨迹点之间的连续性,没有充分挖掘出轨迹这种特殊数据类型的特性。且上述子段匹配方法涉及到大量的空间计算,效率往往难以满足大规模轨迹数据分析的需求。
发明内容
为了解决现有技术存在的问题,本发明提供一种基于多层级轨迹编码树的子段相似性匹配方法。本发明从面向轨迹点的传统视角转为面向轨迹段,从多粒度的角度考虑轨迹的时序特性和连续结构,以相邻采样点间的片段为基本单位,采用分层级的方式将时空轨迹多粒度模型有效组织起来,结合自适应Hilbert空间编码,提出一种多层级轨迹编码树结构,形成从轨迹整段到最小片段的层次组织关系,实现了从轨迹粗粒度到细粒度的统一表达形式,并在此多层级编码树的基础上分析轨迹的不同粒度分段的相似性,设计了轨迹相似子段的快速匹配方法,为挖掘分析多层次精细化轨迹模式、扩展多样化轨迹应用场景提供了新的依据。
为实现上述技术目的,本发明采用的具体技术方案如下:
一种基于多层级轨迹编码树的子段相似性匹配方法,包括以下步骤:
(S1)对待判断的两条轨迹分别进行轨迹分段,得到各自对应的轨迹子段。待判断的轨迹可以是任何物体的运动轨迹,包括但不限于船舶航行轨迹和浮动车轨迹。
(S2)分别对待判断的两条轨迹的轨迹全段、轨迹子段以及轨迹片段进行自适应空间剖分网格编码,根据片段的相邻关系和从属关系构建两条轨迹各自对应的三层级轨迹编码树。其中:轨迹片段是指轨迹中相邻两个轨迹采样点构成的最小时空片段,是可以描述轨迹段特性的最小单位。
(S3)基于轨迹编码树各层级结点对应的编码寻找候选相似子段对。
(S4)对得到的候选相似子段对进行排序、合并操作,最后进行显著性检验,得到相似轨迹子段结果。
本发明(S1)中,轨迹分段可以采用的方法很多,例如等间隔分段、等距离分段、拐点分段等。
进一步地,本发明使用拐点分段法进行轨迹分段,步骤如下:
(S11)遍历轨迹中的轨迹片段,以两个连续轨迹片段为遍历单位,遍历步长为一个轨迹片段,记当前遍历的两个轨迹片段的端点坐标为pi-1(xi-1,yi-1),pi(xi,yi)和pi+1(xi+1,yi+1)。
(S12)计算当前轨迹点前后轨迹片段的拐角θ,公式为:
θ=arccos((xi-xi-1,yi-yi-1)·(xi+1-xi,yi+1-yi))/(|(xi-xi-1),(yi-yi-1)||(xi+1-xi),(yi+1-yi)|);
(S13)当连续的两个轨迹片段之间的夹角θ大于设定角度时,在这两个轨迹片段之间的轨迹点进行分段。设定角度根据需求设定,如将设定角度设为60度。
对待判断的两条轨迹按照(S11)至(S13)步骤,分别进行轨迹分段,得到各自对应的轨迹子段。经轨迹分段得到的每个轨迹子段可以包含多个连续轨迹采样点。
本发明(S2)中,构建三层级轨迹编码树的方法如下:
(S21)首先将轨迹全段视作由多个轨迹采样点构成的简单线对象,采用自适应网格剖分算法得到其编码层级,然后对轨迹中心点进行Hilbert-Geohash编码,作为编码树的根结点;
(S22)将轨迹经(S1)轨迹分段完成得到的各轨迹子段视作独立的线对象,采用自适应网格剖分算法得到各轨迹子段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的枝节点,并且在建立枝结点的过程中指定编码树的根结点为父结点;
(S23)对每个轨迹子段中包含的多个轨迹片段,同样采用自适应网格剖分算法得到各轨迹片段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的底层叶子节点。在建立叶子结点的过程中,要指定轨迹片段所属的轨迹子段对应的中间节点为父结点。
其中采用自适应网格剖分算法确定编码层级是根据空间对象的尺度大小计算出该空间对象最适合的编码层级,在该层级内,单个网格的大小刚好不小于空间对象MBR覆盖的空间范围。具体地包括:先求取待编码的轨迹、轨迹子段或者轨迹片段的最小包围框(Minimum Bounding Rectangular,MBR),获取其经度跨度、纬度跨度,取跨度较大的值a,然后从360度开始不断进行二等分,直到恰好不小于最小包围框(MBR)的跨度a,此时单个网格的大小恰好不小于该最小包围框(MBR)的空间范围,二等分的次数n即为待编码的轨迹、轨迹子段或者轨迹片段的自适应网格的编码层级。”
自适应Hilbert-Geohash编码的过程是:使用Hilbert填充曲线的顺序进行Geohash编码,得到待编码的轨迹、轨迹子段或者轨迹片段的自适应网格编码。具体地,对最小包围框(MBR)的中心点在level层级进行Geohash编码,得到编码code。对cade进行Base32编码,得到最终的Geohash编码。
本发明(S3)中,基于轨迹编码树各层级结点对应的编码寻找候选相似子段对,包括以下步骤:
(S31)根据两条轨迹的轨迹分段结果遍历两条轨迹间不同的轨迹子段对组合,获取其对应的编码子树;
(S32)根据两条轨迹间不同的轨迹子段对中的两轨迹子段的编码以及其编码的相同前缀计算各轨迹子段对中的两轨迹子段其相似度,作为各轨迹子段对的初始相似度。
两个编码的共同前缀可以利用字符串匹配算法求取,字符串匹配算法例如KMP或Sunday算法,也可以直接从遍历两个编码求取。例如:设任一轨迹子段对中的两轨迹子段的编码分别为code1、code2,code1=“abcde”,code2=“abcxy”,则相同前缀commonPrefix=“abc”。其中相似度计算公式如下:
initSim=2*len(commonPrefix)/(len(code1)+len(code2))
其中len表示求取字符串长度的函数。
(S33)对各轨迹子段对的初始相似度按从大到小的顺序进行排序,选取前m对作为候选轨迹子段对,对候选轨迹子段对中的两轨迹子段,在编码树中取出其对应的结点,并将其子结点,也就是轨迹子段包含的轨迹片段对应的编码按顺序一一对应,使用(S32)中的相似度计算公式计算其相似度,并求其平均值,得到候选轨迹子段对在轨迹片段粒度上的相似值;
(S34)将所有候选轨迹子段对的片段相似值按从大到小的顺序排序,保留前n对候选轨迹子段作为候选相似子段对。
本发明(S4)的实现方法,包括以下步骤:
(S41)对利用编码树的结点关系判断候选相似子段对中的各子段在各自所属的轨迹中是否相邻,将相邻的轨迹子段进行合并;
(S42)使用T-test检验方法对合并后的候选相似子段对结果进行显著性检验。显著性检验的零假设为轨迹子段对不相关,若轨迹子段对的相关性的p值小于预设值a,则拒绝原假设,a取值可根据应用场景对误判和漏判的不同要求进行设定,一般可取0.05、0.01、0.005等值,a取值越小,对误判容忍程度越小,即显著性要求越高。p值由T-test显著性检验查表查询界值表得到。
(S43)保留通过显著性检验的候选相似子段对,作为子段匹配的最终结果。
通过显著性检验的候选相似子段对的子段对数与候选子段对总数的比值可以作为本发明的准确率衡量指标。
本发明具有的优点和有益效果包括:
(1)本发明提出的轨迹子段匹配效率高,由于将轨迹子段相似性计算转换为复杂度低的字符串前缀匹配操作,构建编码树并进行子段匹配的总体复杂度仅为O(n2),其中n为轨迹包含轨迹采样点个数。
(2)本发明提出的多层级轨迹编码树结构具有创新性,在可接受的建树代价下,将轨迹子段间的空间相邻关系与从属关系巧妙地包含在树结构中,形成了从轨迹整段到轨迹片段(即最小时空片段)的层次化组织形式。
(3)本发明的稳定性高,轨迹编码树结构可以应对不同形态、不同采样频率、不同数据质量的轨迹,且在不影响匹配准确率的前提下,匹配效率相对于基于经典距离的相似性度量方法具有超过一个数量级的性能优势,为挖掘分析多层次精细化轨迹模式、扩展多样化轨迹相似性应用场景提供了效率保证。
(4)本发明的扩展性好,轨迹编码树的构建可以使用不同的轨迹分段方式,例如等间隔分段、等距离分段、拐点分段等,形成的树结构都可以有效支撑高效的相似子段匹配,且在轨迹热点挖掘、异常检测等其他模式挖掘中也具有很好应用前景。
附图说明
图1是本发明中原始轨迹、轨迹子段和轨迹片段的示意图;
图2是Hilbert-Geohash前两个层级的网格剖分与编码示例图;
图3是Hilbert-Geohash编码流程图;
图4是本发明提出的多层级轨迹片段编码树示例图;
图5是一实施例中轨迹匹配前后的效果图;其中图5(a)是两条原始轨迹;
图5(b)是采用本发明基于多层级轨迹编码树的子段相似性匹配方法对图5(a)中的两条轨迹进行子段相似性匹配的结果图。
图6是本发明提出的相似子段匹配方法在不同类型、不同规模的轨迹数据上的耗时图;
图7是本发明匹配加入不同粒度轨迹子段的耗时与采用传统距离度量的方法的耗时对比图;
图8是本发明匹配加入不同粒度轨迹子段的准确率与采用传统距离度量的方法的耗时对比图。
具体实施方式
为了使本发明的技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
图1是本发明中原始轨迹、轨迹子段和轨迹片段的示意图,其中,原始轨迹也被称为真实轨迹,是由一定时间段内移动对象在欧几里得空间中连续运动形成的曲线,可以用连续时间函数精确描述其形态。但在实际应用中一般使用传感器按一定频率记录的离散空间位置点序列来描述移动对象轨迹的形态。轨迹子段就是子轨迹,也可称为轨迹分段,是根据移动对象的移动特征或语义信息在某些轨迹点对轨迹进行分段,分段方法包括如起始-停止点分段、等间隔点分段、等长度分段和拐角点分段等。轨迹片段是由相邻两个轨迹采样点构成的最小时空片段,是可以描述轨迹段特性的最小单位。
参照图5,对于图5(a)中示出的两条轨迹,采用本实施例提供的一种基于多层级轨迹编码树的子段相似性匹配方法进行子段相似性匹配,包括以下步骤:
(S1)对待判断的两条轨迹分别进行轨迹分段,得到各自对应的轨迹子段。
(S11)遍历轨迹中的轨迹片段,以两个连续轨迹片段为遍历单位,遍历步长为一个轨迹片段,记当前遍历的两个轨迹片段的端点坐标为pi-1(xi-1,yi-1),pi(xi,yi)和pi+1(xi+1,yi+1)。
(S12)计算当前轨迹点前后轨迹片段的拐角θ,公式为:
θ=arccos((xi-xi-1,yi-yi-1)·(xi+1-xi,yi+1-yi))/(|(xi-xi-1),(yi-yi-1)||(xi+1-xi),(yi+1-yi)|);
(S13)当连续的两个轨迹片段之间的夹角θ大于60度时,在这两个轨迹片段之间的轨迹点进行分段。
对待判断的两条轨迹按照(S11)至(S13)步骤,分别进行轨迹分段,得到各自对应的轨迹子段。经轨迹分段得到的每个轨迹子段可以包含多个连续轨迹采样点。
(S2)分别对待判断的两条轨迹的轨迹全段、轨迹子段以及轨迹片段进行自适应空间剖分网格编码,根据片段的相邻关系和从属关系构建两条轨迹各自对应的三层级轨迹编码树。图4是本发明提出的多层级轨迹片段编码树示例图。其中:轨迹片段是指轨迹中相邻两个轨迹采样点构成的最小时空片段,是可以描述轨迹段特性的最小单位。在三层级轨迹编码树结构中,根节点为全段轨迹编码。编码树的中间层结点由轨迹分段的编码构成,为使构建的轨迹编码树尽量平衡,可以采用等间隔分段、等长度分段和拐点分段等不同分段方法得到轨迹子段。编码树最底层的叶子结点属性是轨迹中最小时空片段的编码,轨迹最小片段的基本形态是轨迹中两个连续的轨迹点构成的线段。
(S21)首先将轨迹全段视作由多个轨迹采样点构成的简单线对象,采用自适应网格剖分算法得到其编码层级,然后对轨迹中心点进行Hilbert-Geohash编码,作为编码树的根结点;
(S22)将轨迹经(S1)轨迹分段完成得到的各轨迹子段视作独立的线对象,采用自适应网格剖分算法得到各轨迹子段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的枝节点,并且在建立枝结点的过程中指定编码树的根结点为父结点;
(S23)对每个轨迹子段中包含的多个轨迹片段,同样采用自适应网格剖分算法得到各轨迹片段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的底层叶子节点,且在建立叶子结点的过程中,要指定轨迹片段所属的轨迹子段对应的中间节点为父结点。
图2是Hilbert-Geohash前两个层级的网格剖分与编码示例,通过不断二分,Geohash可将地球表面划分为若干形状规则的格网,不同层级的格网大小不同,可根据精度需求选择编码位数。由于原始Geohash编码方法采取Peano填充曲线的顺序,但其空间局部性不好,具有一定的突变性,即空间相近的两点,其编码也可能存在较大差异,本发明采用Hilbert空间填充曲线的顺序作为编码的排序依据,遍历顺序和前两个层级的编码示例即如途中所示,具有更好的空间局部性,相邻网格的编码也基本相邻。
上述(S21)(S22)(S23)步骤中都涉及到自适应Hilbert-Geohash编码,其中(S21)、(S22)、(S23)分别是对待编码的轨迹、轨迹子段、轨迹片段进行自适应Hilbert-Geohash编码,方法如下:首先自适应确定待编码的轨迹、轨迹子段或者轨迹片段的Geohash编码层级,然后进行自适应Hilbert-Geohash编码,编码流程见说明书附图3。其中自适应确定Geohash编码层级是根据空间对象的尺度大小计算出该空间对象最适合的编码层级,在该层级内,单个网格的大小刚好不小于空间对象MBR覆盖的空间范围。具体地包括:先求取待编码的轨迹分段的最小包围框(Minimum Bounding Rectangular,MBR),获取其经度跨度、纬度跨度,取跨度较大的值a,然后从360度开始不断进行二等分,直到恰好不小于最小包围框(MBR)的跨度a,此时单个网格的大小恰好不小于该最小包围框(MBR)的空间范围,二等分的次数n即为自适应网格的编码层级。
计算Geohash编码的过程是:使用Hilbert填充曲线的顺序进行Geohash编码,得到轨迹分段的自适应网格编码。具体地,对最小包围框(MBR)的中心点在level层级进行Geohash编码,得到编码code。对cade进行Base32编码,得到最终的Geohash编码。
(S3)基于轨迹编码树各层级结点对应的编码寻找候选相似子段对。
(S31)根据两条轨迹的轨迹分段结果遍历两条轨迹间不同的轨迹子段对组合,获取其对应的编码子树;
(S32)根据两条轨迹间不同的轨迹子段对中的两轨迹子段的编码以及其编码的相同前缀计算各轨迹子段对中的两轨迹子段其相似度,作为各轨迹子段对的初始相似度。
两个编码的共同前缀可以利用字符串匹配算法求取,字符串匹配算法例如KMP或Sunday算法,也可以直接从遍历两个编码求取。例如:设任一轨迹子段对中的两轨迹子段的编码分别为code1、code2,code1=“abcde”,code2=“abcxy”,则相同前缀commonPrefix=“abc”。其中相似度计算公式如下:
initSim=2*len(commonPrefix)/(len(code1)+len(code2))
其中len表示求取字符串长度的函数。
(S33)对各轨迹子段对的初始相似度按从大到小的顺序进行排序,选取前m对作为候选轨迹子段对,对候选轨迹子段对中的两轨迹子段,在编码树中取出其对应的结点,并将其子结点,也就是轨迹子段包含的轨迹片段对应的编码按顺序一一对应,使用(S32)中的相似度计算公式计算其相似度,并求其平均值,得到候选轨迹子段对在轨迹片段粒度上的相似值。
(S34)将所有候选轨迹子段对的片段相似值按从大到小的顺序排序,保留前n对候选轨迹子段作为候选相似子段对。
(S4)对得到的候选相似子段对进行排序、合并操作,最后进行显著性检验,得到相似轨迹子段结果。
(S41)对利用编码树的结点关系判断候选相似子段对中的各子段在各自所属的轨迹中是否相邻,将相邻的轨迹子段进行合并;
(S42)使用T-test检验方法对合并后的候选相似子段对结果进行显著性检验。显著性检验的零假设为轨迹子段对不相关,若轨迹子段对的相关性的p值小于预设值a,则拒绝原假设,a取值可根据应用场景对误判和漏判的不同要求进行设定,一般可取0.05、0.01、0.005等值,a取值越小,对误判容忍程度越小,即显著性要求越高。P值由T-test显著性检验查表查询界值表得到。T-test显著性检验有固定的计算步骤,是公知技术(可参见链接:https://baike.baidu.com/item/t%E6%A3%80%E9%AA%8C/9910799)。
T-test检验方法,步骤如下:先建立假设(零假设是两条子段的分布均值不同,也就是不相似),然后计算检验统计量t(公式见链接),最后根据t值查询T-test界值表,得到p值。
(S43)保留通过显著性检验的候选相似子段对,作为子段匹配的最终结果。参照图5(b)是采用本发明基于多层级轨迹编码树的子段相似性匹配方法对图5(a)中的两条轨迹进行子段相似性匹配的结果图。其中,两条折线代表原始轨迹,图5(b)中的颜色较深的轨迹片段代表本发明得到的相似子段匹配结果,方形框为相似子段对应的自适应Hilbert-Geohash剖分网格,可以看出,在不同的分段粒度下,本发明提出的方法可以得到不同精细程度的相似子段匹配结果。
通过显著性检验的候选相似子段对的子段对数与候选子段对总数的比值可以作为本发明的准确率衡量指标。
图6是本发明提出的基于多层级轨迹编码树的子段相似性匹配方法在不同规模的轨迹数据上的耗时,可以看出,对船舶航行轨迹和浮动车轨迹两种类型的数据,采用本发明寻找相似轨迹子段的耗时随着数据规模的增长都呈二次函数上升趋势。
图7与图8是本发明匹配加入不同粒度轨迹子段与采用传统距离度量的方法的耗时与准确率的对比,其中MaTIS方法为技术背景中最新文献的子段匹配方法。在计算效率方面,本发明提出的编码树方法相较于其他方法有超过一个数量级的提升。但在不进行精确匹配操作时,分段粒度较小的编码树的准确率仍然逊色于MaTIS方法,仅在分段粒度较大时超过MaTIS方法。所以同样对子段匹配粗过滤结果使用最底层的最小片段结点进行精确匹配计算,得到精确结果,即匹配准确率达到100%,相比于仅进行粗过滤,精确匹配的耗时有所增加,但与其他方法的粗过滤耗时仍具有显著优势,且分段粒度越小,优势越明显。
综上所述,虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何本领域普通技术人员,在不脱离本发明的精神和范围内,当可作各种更动与润饰,因此本发明的保护范围当视权利要求书界定的范围为准。

Claims (9)

1.一种基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,包括以下步骤:
(S1)对待判断的两条轨迹分别进行轨迹分段,得到各自对应的轨迹子段;
(S2)分别对待判断的两条轨迹的轨迹全段、轨迹子段以及轨迹片段进行自适应空间剖分网格编码,根据片段的相邻关系和从属关系构建两条轨迹各自对应的三层级轨迹编码树;
(S21)首先将轨迹全段视作由多个轨迹采样点构成的简单线对象,采用自适应网格剖分算法得到其编码层级,然后对轨迹中心点进行Hilbert-Geohash编码,作为编码树的根结点;
(S22)将轨迹经(S1)轨迹分段完成得到的各轨迹子段视作独立的线对象,采用自适应网格剖分算法得到各轨迹子段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的枝节点,并且在建立枝结点的过程中指定编码树的根结点为父结点;
(S23)对每个轨迹子段中包含的多个轨迹片段,同样采用自适应网格剖分算法得到各轨迹片段所处的编码层级,然后进行自适应Hilbert-Geohash编码,形成编码树的底层叶子节点,且在建立叶子结点的过程中,要指定轨迹片段所属的轨迹子段对应的中间节点为父结点;
(S3)基于轨迹编码树各层级结点对应的编码寻找候选相似子段对;
(S4)对得到的候选相似子段对进行排序、合并操作,最后进行显著性检验,得到相似轨迹子段结果。
2.根据权利要求1所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S1)中,轨迹分段采用等间隔分段、等距离分段或拐点分段。
3.根据权利要求1所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S1)中,使用拐点分段法进行轨迹分段,步骤如下:
(S11)遍历轨迹中的轨迹片段,以两个连续轨迹片段为遍历单位,遍历步长为一个轨迹片段,记当前遍历的两个轨迹片段的端点坐标为pi-1(xi-1,yi-1),pi(xi,yi)和pi+1(xi+1,yi+1);
(S12)计算当前轨迹点前后轨迹片段的拐角θ,公式为:
θ=arccos((xi-xi-1,yi-yi-1)·(xi+1-xi,yi+1-yi))/(|(xi-xi-1),(yi-yi-1)||(xi+1-xi),(yi+1-yi)|);
(S13)当连续的两个轨迹片段之间的夹角θ大于设定角度时,在这两个轨迹片段之间的轨迹点进行分段。
4.根据权利要求3所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S13)中,设定角度为60度。
5.根据权利要求1或2或3或4所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S3)中,基于轨迹编码树各层级结点对应的编码寻找候选相似子段对,包括以下步骤:
(S31)根据两条轨迹的轨迹分段结果遍历两条轨迹间不同的轨迹子段对组合,获取其对应的编码子树;
(S32)根据两条轨迹间不同的轨迹子段对中的两轨迹子段的编码以及其编码的相同前缀计算各轨迹子段对中的两轨迹子段其相似度,作为各轨迹子段对的初始相似度;
(S33)对各轨迹子段对的初始相似度按从大到小的顺序进行排序,选取前m对作为候选轨迹子段对,对候选轨迹子段对中的两轨迹子段,在编码树中取出其对应的结点,并将其子结点即轨迹子段包含的轨迹片段对应的编码按顺序一一对应,然后计算其相似度,并求其平均值,得到候选轨迹子段对在轨迹片段粒度上的相似值;
(S34)将所有候选轨迹子段对的片段相似值按从大到小的顺序排序,保留前n对候选轨迹子段作为候选相似子段对。
6.根据权利要求5所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S32)中,设任一轨迹子段对中的两轨迹子段的编码分别为code1、code2,code1=“abcde”,code2=“abcxy”,则相同前缀commonPrefix=“abc”;其中相似度计算公式如下:
initSim=2*len(commonPrefix)/(len(code1)+len(code2))
其中len表示求取字符串长度的函数。
7.根据权利要求5所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S4)的实现方法,包括以下步骤:
(S41)对利用编码树的结点关系判断候选相似子段对中的各子段在各自所属的轨迹中是否相邻,将相邻的轨迹子段进行合并;
(S42)使用T-test检验方法对合并后的候选相似子段对结果进行显著性检验;
(S43)保留通过显著性检验的候选相似子段对,作为子段匹配的最终结果。
8.根据权利要求6所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,(S42)中显著性检验的零假设为轨迹子段对不相关,若轨迹子段对的相关性的p值小于预设值a,则拒绝原假设。
9.根据权利要求7所述的基于多层级轨迹编码树的子段相似性匹配方法,其特征在于,a取值越小,对误判容忍程度越小,显著性要求越高,a取0.05、0.01或0.005。
CN202010261821.6A 2020-04-05 2020-04-05 一种基于多层级轨迹编码树的子段相似性匹配方法 Active CN111475596B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010261821.6A CN111475596B (zh) 2020-04-05 2020-04-05 一种基于多层级轨迹编码树的子段相似性匹配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010261821.6A CN111475596B (zh) 2020-04-05 2020-04-05 一种基于多层级轨迹编码树的子段相似性匹配方法

Publications (2)

Publication Number Publication Date
CN111475596A CN111475596A (zh) 2020-07-31
CN111475596B true CN111475596B (zh) 2023-04-07

Family

ID=71749722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010261821.6A Active CN111475596B (zh) 2020-04-05 2020-04-05 一种基于多层级轨迹编码树的子段相似性匹配方法

Country Status (1)

Country Link
CN (1) CN111475596B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112069371B (zh) * 2020-08-11 2021-06-29 中国水产科学研究院东海水产研究所 一种基于格网化邻域的海上船舶有效救援搜索方法
CN112050820B (zh) * 2020-09-02 2024-05-07 平安科技(深圳)有限公司 道路匹配方法、装置、电子设备及可读存储介质
CN114357313A (zh) * 2020-09-30 2022-04-15 华为技术有限公司 数据处理方法及设备
CN112269951B (zh) * 2020-11-17 2022-06-14 中国人民解放军国防科技大学 面向矢量线数据的直线形状空间检索方法
CN113298954B (zh) * 2021-04-13 2022-11-22 中国人民解放军战略支援部队信息工程大学 多维变粒度网格中物体移动轨迹确定、导航的方法和装置
CN113312361B (zh) * 2021-07-28 2022-01-25 阿里云计算有限公司 轨迹查询方法、装置、设备、存储介质及计算机程序产品
CN113657340B (zh) * 2021-08-26 2023-09-05 重庆紫光华山智安科技有限公司 轨迹匹配方法及相关装置
CN113934803B (zh) * 2021-08-30 2022-09-16 中国人民解放军91977部队 一种基于时空剖分的船只伴随模式挖掘方法
CN113806463B (zh) * 2021-09-06 2023-04-28 北京信息科技大学 一种基于时空金字塔匹配的轨迹相似度计算方法
CN115795115B (zh) * 2023-02-11 2023-05-02 云南师范大学 一种基于图存储的多轨迹集合相似性搜索方法
CN116541885A (zh) * 2023-05-25 2023-08-04 重庆邮电大学空间通信研究院 一种基于编码扰动的轨迹隐私保护方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798346A (zh) * 2017-10-23 2018-03-13 中国人民解放军国防科技大学 一种基于Fréchet距离阈值的轨迹相似性快速匹配方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9747805B2 (en) * 2013-07-31 2017-08-29 International Business Machines Corporation Computing a similarity measure over moving object trajectories

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798346A (zh) * 2017-10-23 2018-03-13 中国人民解放军国防科技大学 一种基于Fréchet距离阈值的轨迹相似性快速匹配方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yingchi Mao, etc..A Segment-Based Trajectory Similarity Measure in the Urban Transportation Systems.《Sensors》.2017,全文. *

Also Published As

Publication number Publication date
CN111475596A (zh) 2020-07-31

Similar Documents

Publication Publication Date Title
CN111475596B (zh) 一种基于多层级轨迹编码树的子段相似性匹配方法
Su et al. A survey of trajectory distance measures and performance evaluation
CN110443281B (zh) 基于hdbscan聚类的文本分类自适应过采样方法
CN102663100B (zh) 一种两阶段混合粒子群优化聚类方法
Yang et al. Generating hierarchical strokes from urban street networks based on spatial pattern recognition
CN109241126B (zh) 一种基于r*树索引的时空轨迹聚集模式挖掘算法
Wang et al. Anomalous trajectory detection and classification based on difference and intersection set distance
CN100595782C (zh) 一种融合光谱信息和多点模拟空间信息的分类方法
CN105447504A (zh) 一种交通模式行为识别方法及相应的识别模型构建方法
CN113344019A (zh) 一种决策值选取初始聚类中心改进的K-means算法
Zaree et al. Improvement of air pollution prediction in a smart city and its correlation with weather conditions using metrological big data
CN106951455A (zh) 一种相似轨迹分析系统及其分析方法
Mai et al. ADCN: An anisotropic density‐based clustering algorithm for discovering spatial point patterns with noise
CN108561127B (zh) 一种基于随机模拟的地层压力预测方法
Chunchun et al. Traffic Flow Data Mining and Evaluation Based on Fuzzy Clustering Techniques.
CN113779105B (zh) 分布式轨迹流伴随模式挖掘方法
CN110413952A (zh) 油气区块勘探程度的预测方法及装置
CN112633389B (zh) 一种基于mdl和速度方向的飓风运动轨迹趋势计算方法
Zhang et al. An efficient class-constrained DBSCAN approach for large-scale point cloud clustering
Xie et al. Road network inference from GPS traces using DTW algorithm
CN110909037B (zh) 一种频繁轨迹模式的挖掘方法及装置
Cai et al. The mining of urban hotspots based on multi-source location data fusion
Liu et al. A process-oriented spatiotemporal clustering method for complex trajectories of dynamic geographic phenomena
Li Typical trajectory extraction method for ships based on AIS data and trajectory clustering
Dunkars Matching of Datasets.

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