【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究

此为临时链接,仅用于文章预览,将在短期内失效 关闭

【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究

2016-09-22  上海义为信息科技有限公司

在经典D-P算法与动态D-P算法的基础上,为了同时考虑航向与速度特征的变化且最大化压缩效率的情况下,提出一种加入时间特征的船舶轨迹离线压缩算法,即快速Douglas-Peucker算法(简称快速D-P算法)。为了在经典D-P算法与动态D-P算法的基础上,为了尽量避免使用海伦公式计算点到直线的垂直距离,本算法利用到了向量外积的性质。


向量的外积


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第1张图片


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第2张图片



算法核心思路

【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第3张图片


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第4张图片



与单船压缩效果


距离阈值在本文研究的算法中起到重要作用。经过实验发现,使用不同的距离阈值进行压缩将会产生不同的结果。实验结果如表3.3.1所示,本文随机取两条船一个月的船舶AIS数据进行压缩,船的mmsi412148000412406910,时间为20149月与20159月。原始数据为12043条与33612条,两表中数据为分别为两条船在压缩前与压缩后的数据结果对比。

【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第5张图片


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第6张图片



仅用表格与数字来体现三种算法关于阈值与航程之间的或许太过抽象,不够直观。下面两张直方图是根据表格中的数据绘制,帮助体现三种算法关于阈值与航程之间的关系。


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第7张图片


3.1-3.4为本文将表格3.1中的航程差百分比与压缩比放入直方图中直观展现(因为分析方法相同,表格3.2中的数据未用直方图进行展示)。由于航程差百分比数值较小,在直方图中对其乘以了系数100来平衡航程差百分比与压缩比在直方图中的显示数值。如图,当距离阈值取得越大时,压缩比越高,航程差越大。压缩比、航程差与距离阈值呈递增关系。主要原因就是,当阈值越大,在判断状态驻点到首尾两点连线间的距离时,状态驻点被判断为无需保留,导致保留下来的点减少,航程差百分比增大。明显发现,快速D-P算法在误差方面要优于其他两种算法。


与动态D-P算法的压缩时间对比


针对动态D-P算法在压缩前需要对数据进行分段且反复运用复杂的距离公式,导致了效率不理想的问题,而经典D-P算法没有考虑时间维度,在移动物体的实际轨迹中压缩效果不佳。所以,在对比效率时仅与动态D-P算法进行比较。快速D-P算法运用空间向量中内积、外积的性质来提高快速D-P算法的压缩效率。这里将列出快速D-P算法效率上由于动态D-P算法的实例。

在阈值效果相同条件下,对201491日的所有AIS船舶轨迹数据[1]进行压缩。对阈值效果为10米、20米、30米、50米,分别压缩3次,原始数据条数为7166742条,得到如下实验结果。

【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第8张图片


【独家】加入时间特征的船舶轨迹离线压缩算法——快速Douglas-Peucker算法研究_第9张图片




根据表4.1实验结果可知,快速D-P算法平均压缩时间要小于动态D-P算法。由于在表格中只用数字表达效率的差距不是十分直观,本文将两种压缩算法在不同阈值下的压缩之间加总,在直方图中展示,如图4.1所示。

如直方图所示,从图中可以直观的看到,快速D-P算法对同一数据集在同一阈值效果的条件下,压缩效率皆高于动态D-P算法。验证了:利用向量内积与外积的性质,通过对计算机而言计算周期较小的计算方法找出状态驻点后计算状态驻点到首尾两点连线的距离,可以大大提高压缩算法的效率。


  综上,本文提出的快速D-P算法不仅仅在压缩效果上进行了优化,而且在压缩效率上相比之前的两种压缩算法有了较大的提升。推动了移动物体轨迹压缩算法的研究。





微信扫一扫
关注该公众号

你可能感兴趣的:(技术控,AIS,大数据,数据压缩,算法,压缩)