轨迹线组特征线提取方法与流程

文档序号:12465365阅读:477来源:国知局
轨迹线组特征线提取方法与流程

本发明涉及一种轨迹线组的特征线提取方法,特别是涉及一种基于三角网的轨迹线组的特征线提取方法,属于轨迹分析技术领域。



背景技术:

轨迹线是移动对象按一定时间间隔记录空间位置,将这些位置按经纬坐标表示成轨迹点,并按时间顺序依次连接而成的折线。而一组轨迹线的特征线是指能够表示轨迹线组中所有轨迹线反映出的空间位置、形状、大小、分布情况等空间特征的折线。两条轨迹线的特征线就是它们的中心线,而多条轨迹线的特征线计算则较为复杂。轨迹线组的特征线可用于道路信息的更新与维护、海上主要航线分析、移动对象行为特征分析等方面。

然而,当前的特征线分析方法通常将轨迹线划分为线段后计算,具有一定的局限性。如果将一组轨迹线特征线的求解转化为两条轨迹线的中心线求解,现有的中心线计算方法大多针对空间不相交的线,在进行大量中心线提取时,计算量大,不适用于轨迹线组的计算。



技术实现要素:

本发明的目的是为了解决多条轨迹线的特征线提取方法复杂及现有方法不适用相交轨迹线提取的问题,本发明提供一种轨迹线组特征线提取方法。

本发明的轨迹线组特征线提取方法,所述方法包括如下步骤:

步骤一:计算轨迹线组中每两条轨迹线间的距离;

步骤二:取计算的距离中最大距离对应的两条轨迹线,获取该两条轨迹线的中心线;

步骤三:用获取的中心线替换其对应的两条轨迹线,更新轨迹线组,判断轨迹线组中轨迹线数量是否为2,若是,转入步骤四,若否,则转入步骤一;

步骤四:获取轨迹线组中的两条轨迹线的中心线,该中心线即为轨迹线组的特征线。

优选的是,所述步骤二中,获取该两条轨迹线的中心线的方法为:

基于三角网,获取该两条轨迹线的中心线。

优选的是,所述基于三角网,获取该两条轨迹线的中心线的方法包括:

步骤b1、判断两条轨迹线方向是否一致,如果一致,转入步骤b2,如果不一致,则将其中一条轨迹线的点集反向排列,使两条轨迹线方向一致;

步骤b2、顺序获取组成两条轨迹线的点集分别为L1和L2,两个点集中节点的数量分别为M和N:

步骤b3、连接两条轨迹线的起始节点得到线段P11P21,将线段P11P21的中点作为中心线的起点,加入到中心线点集Lc中;

步骤b4、从线段P11P21开始,按顺序取点集L1和L2中对应的节点,构建三角形,获取中心线点:

步骤b41:以节点P1i、节点P2j为起点,取节点P1(i+1)、节点P2(j+1),判断线段P1iP1(i+1)与线段P2jP2(j+1)是否相交,若不相交,转入步骤b42;若相交,转入步骤b43;

步骤b42:构建三角形,比较线段P1iP2(j+1)与P2jP1(i+1)的长度,选择长度较短的线段的中点加入到中心线点集Lc中,转入步骤44;

步骤b43:根据两线段交点Q,得到三角形P1iP2jQ与三角形QP1(i+1)P2(j+1),分别比较线段QP1i与QP2j、线段QP1(i+1)与QP2(j+1)的长度,将比较后较短线段在对应较长线段上取点构建等腰三角形,并把构建的等腰三角形的底边的中点加入到中心线点集Lc中,转入步骤b44;

步骤b44:当节点P1(i+1)参与构建三角形获得中点,使j=j+1,转入步骤b41,当节点P2(j+1)参与构建三角形获得中点,使i=i+1,转入步骤b41,直至点集L1和L2中的节点都取完;

步骤b5、按加入中心线点集Lc的顺序依次连接中心线点集Lc中的点,得到一条折线,即为两条轨迹线的中心线。

优选的是,所述步骤b1中,判断两条轨迹线方向是否一致的方法为:

将轨迹线的起始节点指向终节点作为轨迹线的方向向量,两条轨迹线方向向量分别为a和b,a和b的夹角为θ,若夹角θ的余弦值小于0,则方向不一致,否则方向一致,向量夹角θ余弦值为:

优选的是,所述步骤一中,计算两条轨迹线间的距离的方法包括:

步骤a1:顺序获取组成两条轨迹线的点集分别为L1和L2,两个点集中节点的数量分别为M和N:

步骤a2、依次计算L1中每一个节点P1i到L2中每一条线段P2jP2(j+1)的距离d1ij,其中i=1,2,…,M,j=1,2,…,N-1;

步骤a3:依次计算L2中每一个节点P2j到L1中每一条线段P1iP1(i+1)的距离d2ij,其中i=1,2,…,M-1,j=1,2,…,N;

步骤a4:根据下述公式,获取两条轨迹线间的距离D:

本发明的有益效果在于,本发明通过计算两两轨迹线间的距离,挑选距离最大的两条轨迹线,提取它们的中心线,用中心线在原轨迹线组中替换挑选出的两轨迹线,再用同样的方法挑选轨迹线、计算中心线、替换,直到轨迹线组只剩下两条折线时,则这两条折线的中心线即为要计算的特征线。本发明提供了特征线轨迹线间距离的计算、两条轨迹线中心线计算和特征线迭代求解的方法。应用本发明能够提取出代表一组轨迹线的空间位置、形状、大小和分布等几何属性的特征线,作为一种空间数据挖掘方法,有助于道路信息的更新与维护、海上主要航线分析、移动对象行为特征分析等方面。

附图说明

图1为实施例中轨迹线组的示意图。

图2为实施例中两条轨迹线的中心线提取示意图。

图3为实施例中轨迹线组迭代计算中心线过程示意图。

图4为实施例中轨迹线组提取结果示意图。

具体实施方式

本实施方式所述的轨迹线组特征线提取方法,包括如下步骤:

步骤一:计算轨迹线组中每两条轨迹线间的距离;

步骤二:取计算的距离中最大距离对应的两条轨迹线,获取该两条轨迹线的中心线;

步骤三:用获取的中心线替换其对应的两条轨迹线,更新轨迹线组,判断轨迹线组中轨迹线数量是否为2,若是,转入步骤四,若否,则转入步骤一;

步骤四:获取轨迹线组中的两条轨迹线的中心线,该中心线即为轨迹线组的特征线。

本实施方式提供了多于两条轨迹线的轨迹线组的特征线提取方法,利用代表两条轨迹线的特征的中心线来替换,通过先替换距离大的轨迹线,缩小轨迹线特性线的范围:从轨迹线分布稀疏到密集。最终确定出最具代表性的中心线,即特征线。

优选实施例中,步骤二中,获取该两条轨迹线的中心线的方法为:

基于构建三角网,获取该两条轨迹线的中心线。

本实施方式是将轨迹线分成多个节点,每个节点与相邻节点组成线段,通过判断两条轨迹线中的线段是否相交,构建三角网,求取构建三角网的边的中点,利用求取的中点,形成中心线。

优选实施例中,基于三角网,获取该两条轨迹线的中心线的方法包括:

步骤b1、判断两条轨迹线方向是否一致,如果一致,转入步骤b2,如果不一致,则将其中一条轨迹线的点集反向排列,使两条轨迹线方向一致;

步骤b2、顺序获取组成两条轨迹线的点集分别为L1和L2,两个点集中节点的数量分别为M和N:

步骤b3、连接两条轨迹线的起始节点得到线段P11P21,将线段P11P21的中点作为中心线的起点,加入到中心线点集Lc中;

步骤b4、从线段P11P21开始,按顺序取点集L1和L2中对应的节点,构建三角形,获取中心线点:

步骤b41:以节点P1i、节点P2j为起点,取节点P1(i+1)、节点P2(j+1),判断线段P1iP1(i+1)与线段P2jP2(j+1)是否相交,若不相交,转入步骤b42;若相交,转入步骤b43;

步骤b42:构建三角形,比较线段P1iP2(j+1)与P2jP1(i+1)的长度,选择长度较短的线段的中点加入到中心线点集Lc中,转入步骤44;

步骤b43:根据两线段交点Q,得到三角形P1iP2jQ与三角形QP1(i+1)P2(j+1),分别比较线段QP1i与QP2j、线段QP1(i+1)与QP2(j+1)的长度,将比较后较短线段在对应较长线段上取点构建等腰三角形,并把构建的等腰三角形的底边的中点加入到中心线点集Lc中,转入步骤b44;

步骤b44:当节点P1(i+1)参与构建三角形获得中点,使j=j+1,转入步骤b41,当节点P2(j+1)参与构建三角形获得中点,使i=i+1,转入步骤b41,直至点集L1和L2中的节点都取完;

步骤b5、按加入中心线点集Lc的顺序依次连接中心线点集Lc中的点,得到一条折线,即为两条轨迹线的中心线。

本实施方式提供了,两条轨迹线的线段相交和不相交两种情况时,如何求对应的中心线的点,在相交的情况下,通过构建等腰三角形,求取等腰三角形的中点,作为中心线的组成部分,方法简单,且计算量小,利用该方法获取的中心线更能代表对应两条轨迹线的特征。

优选实施例中,步骤b1中,判断两条轨迹线方向是否一致的方法为:

将轨迹线的起始节点指向终节点作为轨迹线的方向向量,两条轨迹线方向向量分别为a和b,a和b的夹角为θ,若夹角θ的余弦值小于0,则方向不一致,否则方向一致,向量夹角θ余弦值为:

优选实施例中,步骤一中,计算两条轨迹线间的距离的方法包括:

步骤a1:顺序获取组成两条轨迹线的点集分别为L1和L2,两个点集中节点的数量分别为M和N:

步骤a2、依次计算L1中每一个节点P1i到L2中每一条线段P2jP2(j+1)的距离d1ij,其中i=1,2,…,M,j=1,2,…,N-1;

步骤a3:依次计算L2中每一个节点P2j到L1中每一条线段P1iP1(i+1)的距离d2ij,其中i=1,2,…,M-1,j=1,2,…,N;

步骤a4:根据下述公式,获取两条轨迹线间的距离D:

实施例:

一:获取9条轨迹线组成的轨迹线组,如图1所示,分别命名为L0、L1、L2、L3、L4、L5、L6、L7、L8

二:按照上述轨迹线间距离计算方法,计算轨迹线组中两两轨迹线间的距离,计算结果为:

三、取距离最大的两条轨迹先L3与L8,构建三角网,计算的中心线,记为L38。参照图2,中心线计算方法如下:

1、判断两条轨迹线方向是否一致,计算得到cosθ>0,两者方向一致,不用调整轨迹线节点顺序;

2、连接P11与P21,取中点C1作为中心线的第一个节点。

3、线段P11P12与P21P22不相交,线段P21P12<P11P22,取P21P12的中点C2作为中心线的第二个节点;

4、P21与P12参与计算中点,因此取它们的下一节点P13、P22,线段P12P13与P21P22相交于点J1,J1P12<J1P21,作辅助点F1,满足J1P12=J1F1,另外J1P22<J1P13,作辅助点F2,满足J1P22=J1F2,于是P12F1中点、J1、P22F2中点分别为中心线的第3、4、5个节点C3、C4、C5

5、P22参与计算,P13未参与计算,因此取节点P23、P13,线段P12P13与P22P23相交于点J2,J2F2<J2P22,作辅助点F3,满足J2F2=J2F3,另外J2P23>J2P13,作辅助点F4,满足J2P13=J2F4,于是F2F3中点、J2、P13F4中点分别为中心线的第6、7、8个节点C6、C7、C8

6、依次类推,计算中心线上的节点,当两条线节点都到达末端时,将P24与P16中点作为中心线最后一个节点C17

7、依次连接中心线节点C1,C2…,C17,得到L3与L8的中心线L38

四、用L38替换轨迹线组中的L3与L8,计算L38与其他轨迹线(L0、L1、L2、L4、L5、L6、L7)的距离。

五、按照类似步骤三的方法计算距离最大的轨迹线中心线,类似步骤四的方法替换中心线,更新距离。如此迭代计算,直到轨迹线组只有两条折线,则这两条折线的中心线即为原轨迹线组的特征线,迭代计算过程如图3所示,具体为:

S1、计算L3与L8中心线L38,替换轨迹线并更新距离;

S2、计算L1与L5中心线L15,替换轨迹线并更新距离;

S3、计算L6与L7中心线L67,替换轨迹线并更新距离;

S4、计算L0与L4中心线L04,替换轨迹线并更新距离;

S5、计算L15与L38中心线L15-38,替换轨迹线并更新距离;

S6、计算L04与L67中心线L04-67,替换轨迹线并更新距离;

S7、计算L04-67与L2中心线L04-67-2,替换轨迹线并更新距离;

S8、计算L15-38与L04-67-2中心线,得到轨迹线组的中心线

最后得到的特征线如附图4所示。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1