首页 / 专利库 / 电脑编程 / 算法 / 一种用于船舶挂靠港的轨迹压缩方法

一种用于船舶挂靠港的轨迹压缩方法

阅读:2发布:2024-01-06

专利汇可以提供一种用于船舶挂靠港的轨迹压缩方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种用于 船舶 挂靠港的轨迹压缩方法,基于窗口滑动 算法 进行轨迹压缩,该算法思想是始终只处理3个点,应用逐步压缩的思想,将数据以流的形式传输进来,进行在线压缩,无需将所有数据先储存再进行处理,处理数据的效率高;并且通过在计算当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离前对起始轨迹点和终止轨迹点是否为同一点进行判断,排除由于无法计算当前挂靠港至起始挂靠港与终止挂靠港连线的距离而导致的无法进行轨迹压缩的情况,使得算法能够高效得运行。,下面是一种用于船舶挂靠港的轨迹压缩方法专利的具体信息内容。

1.一种用于船舶挂靠港的轨迹压缩方法,其特征是,该方法包括以下步骤:
步骤一:初始化滑动窗口,并设定轨迹压缩距离阈值
步骤二:判断起始轨迹点和终止轨迹点是否为同一轨迹点,若是则将终止轨迹点向后移一个点,执行步骤五,否则,执行步骤三;
步骤三:计算滑动窗口中当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离;
步骤四:将当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离与轨迹压缩距离阈值进行比较,若轨迹压缩距离阈值较小则将当前待压缩的轨迹点添加到压缩轨迹集合中,并将当前待压缩的轨迹点作为其实轨迹点设置新的滑动窗口,否则,将当前待压缩的轨迹点和终止轨迹点均向后移一个点;
步骤五:判断终止轨迹点是否为最后一个轨迹点,若是,则将其添加到压缩轨迹集合中,完成轨迹压缩,否则,回到步骤二。
2.根据权利要求1所述的一种用于船舶挂靠港的轨迹压缩方法,其特征是,具体包括以下步骤:
步骤1:假设待压缩的船舶挂靠港的轨迹集为P={Pi},其中,Pi为第I个轨迹点,i∈[1,N],N为待压缩轨迹点的总个数;令滑动窗口为{Ps,Pt,Pe},其中,Ps和Pe分别为滑动窗口的起始轨迹点和终止轨迹点,e和s分别表示滑动窗口的起始轨迹点和终止轨迹点的位置,Pt为滑动窗口中当前待压缩的轨迹点,t表示滑动窗口中当前待压缩的轨迹点的位置;令压缩轨迹距离阈值为L2;
步骤2:初始化滑动窗口,令s=1,t=2,e=3;同时,令压缩轨迹集合Q={P1};
步骤3:计算点Ps和点Pe之间的直线距离L1,若L1=0则令s=t,t=t+1,e=t+2,进入步骤6;
否则,进入步骤4;
步骤4:计算点Pt到直线Ps-Pe的距离dt;
步骤5:比较dt与L2的大小,若dt大于L2则将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2;否则,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2;
步骤6:比较e与N的大小,若e大于N,则将Pt添加到轨迹集合Q当中,完成船舶挂靠港的轨迹压缩;否则,回到步骤3。
3.根据权利要求2所述的一种用于船舶挂靠港的轨迹压缩方法,其特征是,所述压缩轨迹距离阈值L2=6。
4.根据权利要求2所述的一种用于船舶挂靠港的轨迹压缩方法,其特征是,所述压缩轨迹距离阈值L2=7。

说明书全文

一种用于船舶挂靠港的轨迹压缩方法

技术领域

[0001] 本发明涉及地理信息系统应用领域,尤其是涉及一种用于船舶挂靠港的轨迹压缩方法。

背景技术

[0002] 数据压缩是轨迹数据预处理的关键技术之一,在保证原始轨迹数据特征和拓扑结构的前提下减少用于表征原始轨迹点的数量。根据压缩前是否需要所有船舶轨迹点数据,轨迹压缩可分为两大类:离线压缩和在线压缩。在离线压缩算法中,某一个点的剔除或保留根据该点与所有轨迹点的关系确定,相对原始轨迹产生的形变较小,但是压缩效率低,尤其对于超出计算机存储能的海量船舶轨迹数据。在线算法通过分析相邻船舶轨迹点的关系来确定点的取舍,这种方法简便而且高效,对于海量船舶轨迹数据压缩效果较好。
[0003] 船载自动识别系统的强制安装使用,有利于实现海事系统和船公司对船舶的监控,但海量AIS数据的存储和使用带来了巨大挑战,为了从海量数据中提取船舶正常行为模式,诞生出了各种船舶轨迹压缩方法,道格拉斯-普克法是目前最经典的船舶轨迹压缩方法,该方法可以描述为将一条轨迹的初始轨迹点和终止轨迹点虚连一条直线,求出其余各轨迹点到该直线的垂直距离,选择其最大者与预先规定的阈值相比较,若小于等于阈值,则将直线两端间各轨迹点全部删去,若大于阈值,则将离该直线垂直距离最大的轨迹点保留,并以此为界,把轨迹分成两部分,对这两部分重新使用上述方法,直至最终无法做进一步的压缩为止,其算法思想是以轨迹起始点和终止点连线,求取中间点至该连线距离,根据设定的距离阈值筛选出关键点,实现轨迹压缩的目的。但是该方法计算量巨大,耗费时间长,当数据的量超出计算机最大存储量级时,道格拉斯-普克法就无法实现在线轨迹压缩。

发明内容

[0004] 本发明为了克服现有技术中道格拉斯-普克法计算量大,耗费时间长,当数据的量超出计算机最大存储量级时,道格拉斯-普克法就无法实现在线轨迹压缩的不足,提供一种用于船舶挂靠港的轨迹压缩方法,能够在线压缩船舶轨迹数据,在数据持续更新的状态下一直保持压缩,处理数据效率高。
[0005] 为了实现上述发明目的,本发明采用以下技术方案:一种用于船舶挂靠港的轨迹压缩方法,该方法包括以下步骤:
步骤一:初始化滑动窗口,并设定轨迹压缩距离阈值;
步骤二:判断起始轨迹点和终止轨迹点是否为同一轨迹点,若是则将终止轨迹点向后移一个点,执行步骤五,否则,执行步骤三;
步骤三:计算滑动窗口中当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离;
步骤四:将当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离与轨迹压缩距离阈值进行比较,若轨迹压缩距离阈值较小则将当前待压缩的轨迹点添加到压缩轨迹集合中,并将当前待压缩的轨迹点作为起始轨迹点设置新的滑动窗口,否则,将当前待压缩的轨迹点和终止轨迹点均向后移一个点;
步骤五:判断终止轨迹点是否为最后一个轨迹点,若是,则将其添加到压缩轨迹集合中,完成轨迹压缩,否则,回到步骤二。
[0006] 上述方案中,基于窗口滑动算法进行轨迹压缩,该算法思想是始终只处理3个点,应用逐步压缩的思想,将数据以流的形式传输进来,进行在线压缩,无需将所有数据先储存再进行处理,处理数据的效率高;并且通过在计算当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离前对起始轨迹点和终止轨迹点是否为同一点进行判断,排除起始轨迹点和终止轨迹点为同一点的情况,当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离始终可以被计算出来,算法不会因为无法计算当前挂靠港至起始挂靠港与终止挂靠港连线的距离而导致无法进行轨迹压缩,使得算法能够高效得运行。
[0007] 作为优选,具体包括以下步骤:步骤1:假设待压缩的船舶挂靠港的轨迹集为P={Pi},其中,Pi为第I个轨迹点,i∈[1,N],N为待压缩轨迹点的总个数;令滑动窗口为{Ps,Pt,Pe},其中,Ps和Pe分别为滑动窗口的起始轨迹点和终止轨迹点,e和s分别表示滑动窗口的起始轨迹点和终止轨迹点的位置,Pt为滑动窗口中当前待压缩的轨迹点,t表示滑动窗口中当前待压缩的轨迹点的位置;令压缩轨迹距离阈值为L;
步骤2:初始化滑动窗口,令s=1,t=2,e=3;同时,令压缩轨迹集合Q={P1};
步骤3:判断Ps与Pe是否为同一点,若Ps等于Pe,则将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2,进入步骤6;否则,进入步骤4;
步骤4:计算点Pt到直线Ps-Pe的距离dt;
步骤4:计算点Pt到直线Ps-Pe的距离dt;
步骤5:比较dt与L的大小,若dt大于L则将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2;否则,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2;
步骤6:比较e与N的大小,若e大于N,则将Pt添加到轨迹集合Q当中,完成船舶挂靠港的轨迹压缩;否则,回到步骤3。
[0008] 作为优选,压缩轨迹距离阈值L=6。
[0009] 作为优选,压缩轨迹距离阈值L=7。
[0010] 本发明的有益效果是基于滑动窗格算法对在线船舶轨迹进行压缩,无需获取船舶轨迹的终止点,即可实现船舶轨迹在线压缩;起始轨迹点和终止轨迹点进行判断,当起始轨迹点和终止轨迹点为同一点时,保留当前轨迹点,将滑动窗口整体向后移动一个点,使得算法不会由于起始轨迹点和终止轨迹点为同一点而无法进行轨迹压缩。附图说明
[0011] 图1是本发明的一种流程图

具体实施方式

[0012] 下面结合附图和具体实施例对本发明做进一步的描述。
[0013] 具体实施例:一种用于船舶挂靠港的轨迹压缩方法,该方法包括以下步骤:步骤一:初始化滑动窗口,并设定轨迹压缩距离阈值;
步骤二:判断起始轨迹点和终止轨迹点是否为同一轨迹点,若是则将终止轨迹点向后移一个点,执行步骤五,否则,执行步骤三;
步骤三:计算滑动窗口中当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离;
步骤四:将当前待压缩的轨迹点到其起始轨迹点和终止轨迹点的直线的垂直距离与轨迹压缩距离阈值进行比较,若轨迹压缩距离阈值较小则将当前待压缩的轨迹点添加到压缩轨迹集合中,并将当前待压缩的轨迹点作为起始轨迹点设置新的滑动窗口,否则,将当前待压缩的轨迹点和终止轨迹点均向后移一个点;
步骤五:判断终止轨迹点是否为最后一个轨迹点,若是,则将其添加到压缩轨迹集合中,完成轨迹压缩,否则,回到步骤二。
[0014] 该算法思想是始终只处理3个点,应用逐步压缩的思想,将数据以流的形式传输进来,进行在线压缩。例如初始窗口为{P1,P2,P3},P1为初始点,设为关键特征点保留,判断P1和P3是否为同一点,若是将P3舍弃,加入P4,重新进行判断,若P1和P3不为同一点,计算P2点到2个端点连线P1-P3之间的距离,计算公式如式如下;如果小于预先设定的阈值距离L,中间点P2舍弃,加入P4;当前窗口更新为{P1,P3,P4},判断P1和P4是否为同一点,若不是则计算P3点到2个端点连线P1-P4之间的距离;如果大于预先设定的阈值距离L,则P3标记为关键特征点保留,窗口滑动并加入P5,当前窗口更新为{P3,P4,P5};将P3作为新的滑动起始点,进行逐步压缩,依此类推。
[0015] 上述方法具体包括以下步骤:步骤1:假设待压缩的船舶挂靠港的轨迹集为P={Pi},其中,Pi为第I个轨迹点,i∈[1,N],N为待压缩轨迹点的总个数;令滑动窗口为{Ps,Pt,Pe},其中,Ps和Pe分别为滑动窗口的起始轨迹点和终止轨迹点,e和s分别表示滑动窗口的起始轨迹点和终止轨迹点的位置,Pt为滑动窗口中当前待压缩的轨迹点,t表示滑动窗口中当前待压缩的轨迹点的位置;令压缩轨迹距离阈值为L;
步骤2:初始化滑动窗口,令s=1,t=2,e=3;同时,令压缩轨迹集合Q={P1};
步骤3:判断Ps与Pe是否为同一点,若Ps等于Pe,则将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2,进入步骤6;否则,进入步骤4;
步骤4:计算点Pt到直线Ps-Pe的距离dt;
步骤4:计算点Pt到直线Ps-Pe的距离dt;
步骤5:比较dt与L的大小,若dt大于L则将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2;否则,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2;
步骤6:比较e与N的大小,若e大于N,则将Pt添加到轨迹集合Q当中,完成船舶挂靠港的轨迹压缩;否则,回到步骤3。
[0016] 本实施例中,压缩轨迹距离阈值L=6,N=25,Pi(Xi,Yi)为坐标为船舶行驶过程中的各个挂靠港坐标,则轨迹点Pi(Xi,Yi)的坐标由各个挂靠港经纬度组成,Xi为第i个挂靠港的经度,Yi为第i个挂靠港的纬度,dt为点Pt到直线Ps-Pe的距离,在本实施例中将dt表示为d(Ps,Pt,Pe),将集合P中数据代入上述步骤,结合具体数据进行进一步阐述:第一步:待压缩的船舶挂靠港的轨迹集为P={P1(55.050503,25.002617),P2
(122.416667,30.666667),P3(122.066667,30.633333),P4(128.75,35.066667),P5(128.75,35.066667),P6(121.8833,29.9333),P7(-123.116667,49.283333),P8(-
123.388233,48.415872),P9(-122.3333,47.6),P10(128.7,35.116667),P11(113.945392,
22.360472),P12(114.25,22.5833),P13(128.7,35.116667),P14(-123.116667,
49.283333),P15(-123.388233,48.415872),P16(-123.388233,48.415872),P17(-
122.3333,47.6),P18(128.7,35.116667),P19(113.945392,22.360472),P20(114.25,
22.5833),P21(121.883333,29.933333),P22(122.416667,30.683333),P23(122.066667,
30.633333),P24(128.7,35.116667),P25(-123.116667,49.283333)};令滑动窗口为{Ps,Pt,Pe},其中,Ps和Pe分别为滑动窗口的起始轨迹点和终止轨迹点,e和s分别表示滑动窗口的起始轨迹点和终止轨迹点的位置,Pt为滑动窗口中当前待压缩的轨迹点,t表示滑动窗口中当前待压缩的轨迹点的位置;令压缩轨迹距离阈值为L=6;
第二步:初始化滑动窗口,令s=1,t=2,e=3,则Ps=P1,Pt=P1,Pe=P3;同时,令压缩轨迹集合Q={P1};
第三步:判断点P1和点P3是否为同一点,P1(55.050503,25.002617)不等于P3
(122.066667,30.633333),故执行算法的步骤4;
第四步:计算点P2到直线P1-P3的距离dt,d(P1,P2,P3)=0.00391311865678253;
第五步:0.0039小于6,即dt小于L,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2,得到Pt=P3,Pe=P4;
第六步:4小于25,即e小于N,故执行算法的步骤3;
第七步:判断点P1和点P4是否为同一点,P1(55.050503,25.002617)不等于P4(128.75,
35.066667),故执行算法的步骤4;
第八步:计算点P3到直线P1-P4的距离dt,d(P1,P3,P4)=3.48831642459002;
第九步:3.4883小于6,即dt小于L,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2,得到Pt=P4,Pe=P5;
第十步:5小于25,即e小于N,故执行算法的步骤3;
第十一步:判断点P1和点P5是否为同一点,P1(55.050503,25.002617)不等于P5(128.75,35.066667),故执行算法的步骤4;
第十二步:计算点P4到直线P1-P5的距离dt,d(P1,P4,P5)=8.8001138829084E-16;
第十三步:8.8001138829084E-16小于6,即dt小于L,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2,得到Pt=P5,Pe=P6;
第十四步:6小于25,即e小于N,故执行算法的步骤3;
第十五步:判断点P1和点P6是否为同一点,P1(55.050503,25.002617)不等于P6(121.8833,29.9333),故执行算法的步骤4;
第十六步:计算点P5到直线P1-P6的距离dt,d(P1,P5,P6)=4.61422613535309;
第十七步:4.61422613535309小于6,即dt小于L,将Pt和Pe同时向后移动一个点,令t=t+1,e=t+2,得到Pt=P6,Pe=P7;
第十八步:7小于25,即e小于N,故执行算法的步骤3;
第十九步:判断点P1和点P7是否为同一点,P1(55.050503,25.002617)不等于P7(-
123.116667,49.283333),故执行算法的步骤4;
第二十步:计算点P6到直线P1-P7的距离dt,d(P1,P6,P7)=13.9101141362529;
第二十一步:13.9101141362529大于6,即dt大于L,将Pt添加到轨迹集合Q当中,重置滑动窗口,令s=t,t=t+1,e=t+2,得到Q={P1,P6},Ps=6,Pt=P7,Pe=P8;
第二十二步:8小于25,即e小于N,故执行算法的步骤3;
以此类推,将集合P中的各个挂靠港坐标本实施例所述方法进行运算,最终得到的压缩轨迹集合为Pt={P1,P6,P9,P10,P12,P13,P17,P18,P23,P25},本实施例所述的船舶轨迹压缩方法的好处是基于滑动窗格算法对轨迹压缩方法进行改进,对在线船舶轨迹进行压缩,系统所占用的资源更少,处理效率更高,无需获取船舶轨迹的终止点,即可实现船舶轨迹在线压缩;起始轨迹点和终止轨迹点进行判断,当起始轨迹点和终止轨迹点为同一点时,将向后移动一个点,使得算法不会由于起始轨迹点和终止轨迹点为同一点而无法进行轨迹压缩。
[0017] 以上所述,仅是本发明的较佳实施例,并非对本发明作任何限制,凡是根据本发明技术实质对以上实施例所作的任何简单修改、变更以及等效变换,均仍属于本发明技术方案的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈