轨迹相似性度量方法

目录

1 轨迹

2 欧式距离(Euclidean Distance)

3 动态时间归整(Dynamic Time Warping,DTW)

4 最长公共字串(Longest Common Sub-Sequence,LCSS)

5 编辑距离(Edit Distance on Real sequence,EDR)

6 豪斯多夫距离(Hausdorff Distance)

7 弗雷歇距离(Fréchet Distance)

8 单向距离(One Way Distance,OWD)

9 多线位置距离(Locality In-between Polylines,LIP)


1 轨迹

        轨迹作为一种时空数据[1],指的是某物体在空间中的移动路径,通常表示为GPS点的序列,例如tr=,其中点pi=(lat,lng,t),表示该物体在t时刻位于地理坐标位置(lat,lng)上,lat和lng分别表示纬度和经度。

        大数据时代,随着车载导航系统的普及,海量的轨迹数据正在源源不断的产生,这些轨迹中蕴含着巨大的价值[2],例如可以进行交通流量分析和预测,为政府的城市规划提供建议;也可以进行轨迹聚类,发现那些被很多轨迹经过的道路,用于指导自行车道的规划;还可以进行驻留点检测,发现轨迹经常停留的区域等。

        轨迹数据的分析处理非常具有挑战性,主要包含三个方面:1)轨迹数据量大2)轨迹数据噪音多3)轨迹数据获取途径多样。其中,轨迹相似性作为一项基础算法服务,衡量两条轨迹之间的距离大小,可为其上层应用提供支持,也是目前研究的热点之一。

        相对于点与点点与轨迹之间的距离度量,轨迹之间的距离度量更加的复杂,需要考虑的因素也更多,例如轨迹的采样率、考虑轨迹的时间信息轨迹自身的噪音等。常见的轨迹相似性度量方法大致分类如下图所示。

        我们定义如下两条轨迹,长度分别为n和m,则:

        

欧式距离(Euclidean Distance)

        欧式距离要求两条轨迹的长度相同一一对应,其数学定义为:

        

        欧氏距离的定义简单明了,就是两条轨迹对应点的空间距离的平均值,但是缺点也很明显,就是不能度量不同长度的轨迹相似性,且对噪音点敏感。

动态时间归整(Dynamic Time Warping,DTW)

        如上所述,欧式距离的一个明显的限制是要求两条轨迹长度相等,这在实际情况中是不太可能的,更理想的情况应该在轨迹长度上具有一定的灵活性。

        动态时间归整DTW[3]的思想是自动扭曲两个序列,并在时间轴上进行局部的缩放对齐,以使其形态尽可能一致,从而得到最大可能的相似性。DTW将两条轨迹的点进行多对多的映射,从而较为高效地解决了数据不齐的问题,其动态规划算法如下:

        其中Head(tr)=表示该轨迹的第一个点;Rest(tr)=表示除第一个点之外的所有点组成的子序列。

        

        动态时间归整算法灵活,对轨迹长度无限制,且效果较好,但是其并未对噪音点进行处理,离群点也会对结果造成较大影响。

最长公共字串(Longest Common Sub-Sequence,LCSS)

        有一个经典的算法问题:求解两序列的最长公共子序列,不要求公共子序列中的两个连续相连,例如BDCABA和ABCBDAB的最大公共子序列为BCBA。在此基础上,很自然提出了基于最长公共子序列的轨迹相似性度量方法,即LCSS,其值代表最多可被是为同一点的点数,也就是两条轨迹中满足最小距离阈值限制的轨迹点的对数。其基于动态规划的算法如下:

        其中,参数e是最小距离阈值,两点之间距离小于该值时将被认为是同一点,此外,该算法对轨迹长度没有限制。

        最长公共子串距离对噪音点进行了处理,即因噪音点的偏离没有与其相近的轨迹点故不会被计算在最终结果内,这一步骤有效对抗噪音。但与此同时,该算法的最小距离阈值e不好定义,还有可能返回并不相似的轨迹。

编辑距离(Edit Distance on Real sequence,EDR)

        给定两个长度分别为n和m的轨迹tr1和tr2,最小距离的匹配阈值e,则两条轨迹之间的EDR距离[4]就是需要对tr1及逆行插入、删除或替换使其变为tr2的操作次数,其基于动态规划的算法如下:

其中,

        在p1处“插入”一点、将p2'“替换”替换为p3和在p5处“插入”一点,共计3个操作使两条轨迹相等(即对应点距离均小于阈值),故其EDR值为3

        轨迹的编辑距离为轨迹相似新度量提供了一种新的思路,其缺陷也很明显,就是对噪音点敏感。

豪斯多夫距离(Hausdorff Distance)

        简单来说,豪斯多夫距离[5]就是两条轨迹最近点距离的最大值。

        

        其中,h(tr1,tr2)称为tr1到tr2的单向豪斯多夫距离,其定义如下:

        

        

弗雷歇距离(Fréchet Distance)

        直观的理解,弗雷歇距离[6]就是狗绳距离,即主人走路径A,狗走路径B,各自走完两条路径过程中所需要的最短狗绳长度。

        弗雷歇距离基于动态规划思想的算法如下:

        

        其中,d(p,q)是两个GPS点的欧式距离,tr(n-1)=是轨迹tr的长度为n-1的子轨迹。

        弗雷歇距离为我们提供了一种简单直观的度量相似性的方式,也能达到较好的效果;但可惜的是其并没有对噪音点进行处理,例如若狗的某个轨迹点因为噪声偏离得很远,那么弗雷歇距离也随之增大,这显然是不合理的。

单向距离(One Way Distance,OWD)

        单向距离OWD[7]的定义如下:

        

        其中,|tr1|表示轨迹tr1的长度,d(p,tr2)表示GPS点p到tr2的距离。为了对称,简单修改上述公式:

        OWD距离的基本思想基于两条轨迹围成的面积,当面积大,说明轨迹之间距离较远,相似度就低;相反,若围成的面积为0,则说明两条轨迹重合,相似度最高。

多线位置距离(Locality In-between Polylines,LIP)

        多线位置距离LIP[8]定义如下:

        

        其中,Ii表示两条轨迹的第i个交点,权重wi定义如下:

        

         

        LIP方法很好理解,当某区域面积的周长占总长比重大时权重也自然就大;当Area均为0时,说明两条轨迹重合没有缝隙,LIP距离为0;当Area加权和大时,则说明两条轨迹之间缝隙较大,LIP距离也就大。此外,权重由区域周长占总长比重大决定,也一定程度对抗了噪音点的干扰。

  • 26
    点赞
  • 205
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值