CN115905342B - 水上移动对象轨迹抽稀方法、装置和计算机设备 - Google Patents
水上移动对象轨迹抽稀方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN115905342B CN115905342B CN202210880361.4A CN202210880361A CN115905342B CN 115905342 B CN115905342 B CN 115905342B CN 202210880361 A CN202210880361 A CN 202210880361A CN 115905342 B CN115905342 B CN 115905342B
- Authority
- CN
- China
- Prior art keywords
- point data
- track point
- data set
- target
- track
- 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
Links
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000004590 computer program Methods 0.000 claims abstract description 32
- 230000008569 process Effects 0.000 claims description 16
- 238000007865 diluting Methods 0.000 abstract description 9
- 230000009467 reduction Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Train Traffic Observation, Control, And Security (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
本申请涉及一种水上移动对象轨迹抽稀方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。采用本方法能够提高目标水上移动对象的抽稀轨迹点数据集的完整性,从而提高目标水上移动对象轨迹的还原度。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种水上移动对象轨迹抽稀方法、装置和计算机设备。
背景技术
通过水上移动对象的轨迹数据可以确定水上移动对象的移动路线。然而,现有的技术采集的水上移动对象的轨迹数据数量十分庞大,可以达到千亿级别的量,导致轨迹数据的处理效率比较低。因此,目前急需一种水上移动对象轨迹抽稀方法。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高轨迹数据处理效率的水上移动对象轨迹抽稀方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种水上移动对象轨迹抽稀方法。所述方法包括:
获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,其中,预设条件包括预设时长条件或预设角度条件中的至少一项。
在其中一个实施例中,预设条件包括预设时长条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;
判断参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值;
在大于的情况下,则将参考轨迹点数据更新为下一轨迹点数据,在不大于的情况下,则维持参考轨迹点数据不变,并将下一轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在其中一个实施例中,预设条件包括预设角度条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
将目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;
判断基于轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从轨迹点数据组中删除排序首位的轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据从目标轨迹点数据集中删除;
重复执行上述判断及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在其中一个实施例中,每一轨迹点数据还包括位置信息;其中,航向夹角的确定过程,包括:
根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
基于第一方向与第二方向之间的夹角,确定航向夹角。
在其中一个实施例中,预设条件包括预设时长条件和预设角度条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
确定目标轨迹点数据集中排序首位的轨迹点数据;
在目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
根据首位的轨迹点数据和第一轨迹点数据,确定轨迹点数据队列;其中,轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足预设条件,若满足,则将第二轨迹点数据存入轨迹点数据队列中;将最终的轨迹点数据队列作为抽稀轨迹点数据集。
在其中一个实施例中,根据轨迹点数据队列中的轨迹点数据和第二轨迹点数据,确定第二轨迹点数据是否满足预设条件,包括:
从轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,第四轨迹点数据排在第三轨迹点之后;
将判断第四轨迹点数据和第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
根据第三轨迹点数据、第四轨迹点数据以及第二轨迹点数据,确定航向夹角,并将判断航向夹角是否大于预设角度的判断结果作为第二判断结果;
若第一判断结果与第二判断结果均为是,则确定第二轨迹点数据满足预设条件。
第二方面,本申请还提供了一种水上移动对象轨迹抽稀装置。所述装置包括:
获取模块,用于获取目标水上移动对象的目标轨迹点数据集,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
抽稀模块,用于根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取目标水上移动对象的目标轨迹点数据集,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,其中,预设条件包括预设时长条件或预设角度条件中的至少一项。
上述水上移动对象轨迹抽稀方法、装置、计算机设备、存储介质和计算机程序产品,获取目标水上移动对象的目标轨迹点数据集,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。本方法可以提高目标水上移动对象的抽稀轨迹点数据集的完整性,从而提高目标水上移动对象轨迹的还原度。
附图说明
图1为一个实施例中水上移动对象轨迹抽稀方法的应用环境图;
图2为一个实施例中水上移动对象轨迹抽稀方法的流程示意图;
图3为一个实施例中历史轨迹点数据预处理的流程示意图;
图4为一个实施例中实时轨迹点数据预处理的流程示意图;
图5为一个实施例中第一方向的示意图;
图6为一个实施例中第二方向的示意图;
图7为一个实施例中航向夹角的示意图;
图8为另一个实施例中水上移动对象轨迹抽稀方法的流程示意图;
图9为一个实施例中水上移动对象轨迹抽稀装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种专业名词,但除非特别说明,这些专业名词不受这些术语限制。这些术语仅用于将一个专业名词与另一个专业名词区分。举例来说,在不脱离本申请的范围的情况下,第三预设阈值与第四预设阈值可以相同可以不同。
本申请实施例提供的水上移动对象轨迹抽稀方法,可以应用于如图1所示的应用环境中。其中,终端101通过网络与服务器102进行通信。数据存储系统可以存储服务器102需要处理的数据。数据存储系统可以集成在服务器102上,也可以放在云上或其他网络服务器上。其中,终端101可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种水上移动对象轨迹抽稀方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
201、获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
其中,水上移动对象包括轮船、浮标等其它可以在水上航行的物体。目标水上移动对象可以是一个目标对象,也可以是多个目标对象。比如,若所有的水上移动对象包括轮船A、轮船B、轮船C、轮船D;则目标水上移动对象可以是轮船A,也可以是轮船A与轮船C。根据每一目标水上移动对象的目标轨迹点数据集,可以确定对应目标水上移动对象的抽稀轨迹点数据集。
水上移动对象的轨迹点数据集的数据源包括历史轨迹点数据和实时采集软件采集的实时轨迹点数据。历史轨迹点数据指的是未采用实时采集软件之前采集每一水上移动对象的轨迹点数据。实时采集软件采集的实时轨迹点数据包括当前时刻采集的每一水上移动对象的轨迹点数据和实时采集软件在当前时刻之前采集的每一水上移动对象的轨迹点数据。其中,实时采集软件可以为Kafka(卡夫卡)软件以及其他类型的数据处理软件。
另外,每一轨迹点数据的数据格式可以以下显示,比如,(ais-id:2,lon:111.2,lat:22.3,sog:5.6,cog:105,time:20210118091500)、(ais-id:3,lon:112.5,lat:22.2,sog:2.3,cog:3567,time:20210118091500)、(ais-id:2,lon:111.5,lat:22.2,sog:5.8,cog:115,time:20210118091502)、(ais-id:4,lon:113.5,lat:22.2,sog:3.6,cog:205,time:20210118091503)、(ais-id:4,lon:113.5,lat:22.2,sog:3.6,cog:205,time:20210118091503)、(ais-id:2,lon:111.5,lat:22.2,sog:5.1,cog:125,time:20210118091504)、(ais-id:1,lon:113.5,lat:22.2,sog:5.9,cog:117,time:20210118091508)。其中,ais-id表示水上移动对象标识,lon表示经度信息,lat表示纬度信息,sog表示航速信息,cog表示航向信息,time表示时间戳信息。每一个水上移动对象都具有唯一的水上移动对象标识。
其中,水上移动对象标识用于区分水上移动对象,比如,水上移动对象1的水上移动对象标识为A,水上移动对象2的水上移动对象标识为B等。时间戳信息用于指示该轨迹点数据的采集时刻。航向信息用于表示该水上移动对象的航行方向。
在获取目标水上移动对象的目标轨迹点数据集之前,对历史轨迹点数据和实时轨迹点数据需要通过数据处理软件进行数据预处理。数据预处理的过程包括:
(1)、如图3所示,先将所有历史轨迹点数据通过Flume组件导入至kafka软件中,其中,Flume组件可以配置相应的source(数据源)、channel(传输管道)和sink(数据目的地),source配置为数据文件所在目录,channel配置为磁盘文件管道,sink配置为Kafka软件的队列。通过Flume组件,可以将历史轨迹点数据写入到Kafka软件的队列中,Java程序通过并发消费该Kafka软件的队列的Topic实现并发导入,从而可以提高导入的效率和准确性。历史轨迹点数据通过Flume组件导入Kafka软件的队列的一个Topic,Java程序通过并发消费该Topic数据并导入HBase数据中。由于轨迹点数据的数量非常多,达到千亿级别,因此,需要通过分布式数据库HBase对轨迹点数据进行存储和查询。其中,史轨迹点数据和实时轨迹点数据的数据获取来源还包括AIS船舶自动识别系统。
(2)、如图4所示,将Kafka软件的队列中的实时轨迹点数据通过Java入库程序消费该Topic数据写入HBase分布式数据库,在HBase分布式数据库中存储着所有水上移动对象的轨迹点数据。
(3)、在HBase分布式数据库中,所有水上移动对象的轨迹点数据会根据轨迹点数据的水上移动对象标识对轨迹点数据进行归类,得到每一水上移动的轨迹点数据集,并且每一水上移动的轨迹点数据集中的轨迹点数据都按照时间戳信息顺序或逆序的排序方式进行排序。值得一提的是,轨迹点数据排序是在HBase分布式数据库中完成的。其中,按照时间戳信息顺序排序指的是轨迹点数据按照采集时刻的先后顺序进行排序,比如,轨迹点数据集中包括轨迹点数据A、轨迹点数据B、轨迹点数据C,其中,轨迹点数据A的采集时刻在轨迹点数据B的采集时刻之前,轨迹点数据B的采集时刻在轨迹点数据C的采集时刻之前。按照时间戳信息逆序排序指的是轨迹点数据按照采集时刻逆序进行排序,比如,轨迹点数据集中包括轨迹点数据E、轨迹点数据F、轨迹点数据G,其中,轨迹点数据G的采集时刻在轨迹点数据F的采集时刻之前,轨迹点数据F的采集时刻在轨迹点数据E的采集时刻之前。
(4)终端根据实际需求确定目标水上移动对象以及目标水上移动对象的目标轨迹点数据集。其中,终端还包括采用SpringBoot进行应用层程序开发的终端。
具体地,目标水上移动对象可以根据输入参数水上移动通信业务标识码(Maritime Mobile Service Identify,MMSI)(即水上移动对象标识-ais-id)确定,目标轨迹点数据集指的是根据实际需求从对应目标水上移动对象的轨迹点数据集中确定的预设时间段内的轨迹点数据集。比如目标水上移动对象的轨迹点数据集中包括的是2010年1月到2022年1月之间采集的轨迹点数据,则目标轨迹点数据集可以是2012年1月到2015年1月之间采集的轨迹点数据。
另外,目标轨迹点数据集中轨迹点数据的排序方式与对应目标水上移动对象的轨迹点数据集的排序方式相同。比如,目标水上移动对象的轨迹点数据集的排序方式为按照时间戳信息顺序排序,则对应的目标轨迹点数据集的排序方式也为按照时间戳信息顺序排序。
202、根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
具体地,终端通过获取目标水上移动对象的目标轨迹点数据集,并根据抽稀算法以及预设条件对目标轨迹点数据集进行数据抽稀,得到目标水上移动对象的抽稀轨迹点数据集。其中,预设时长条件和预设角度条件的预设参数都可以根据实际需求进行设置,本发明实施例对预设时长条件和预设角度条件的预设参数不做具体限定。抽稀算法可以由使用了Ngnix负载均衡器的处理器提供。
本发明实施例提供的方法,通过Flume组件,将大量的历史轨迹点数据导入至Kafka软件的队列中,可以提高导入数据的效率和导入数据的准确性;通过确定目标水上移动对象的目标轨迹点数据集,并根据预设条件对目标轨迹点数据集进行抽稀,可以提高获取目标水上移动对象的轨迹点数据的准确性以及完整性。
结合上述实施例的内容,在其中一个实施例中,预设条件包括预设时长条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;
判断参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值;
在大于的情况下,则将参考轨迹点数据更新为下一轨迹点数据,在不大于的情况下,则维持参考轨迹点数据不变,并将下一轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
其中,参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长指的是两者采集时刻的间隔时长,参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长可以根据对应轨迹点数据的时间戳信息确定。预设阈值指的是上述内容中预设时长条件中的预设参数,本实施例中,预设阈值为大于0的值。
具体地,若预设条件为预设时长条件,则说明需要根据目标轨迹点数据集中每一轨迹点数据的时间戳信息和预设阈值,判断目标轨迹点数据集中对应的轨迹点数据是否需要删除。比如,预设阈值为60s,参考轨迹点数据的时间戳信息20220606170100,参考轨迹点数据之后的下一轨迹点数据的时间戳信息为20220606170145,则参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长为45秒,因为参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长小于预设阈值,则需要将参考轨迹点数据之后的下一轨迹点数据从目标轨迹点数据集中删除。
本发明实施例提供的方法,通过预设时长条件,对目标轨迹点数据集中的轨迹点数据判断是否需要删除,可以按照需求对目标轨迹点数据集进行抽稀,从而提高抽稀结果的准确度。
结合上述实施例的内容,在其中一个实施例中,预设条件包括预设角度条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
将目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;
判断基于轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从轨迹点数据组中删除排序首位的轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据从目标轨迹点数据集中删除;
重复执行上述判断及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
其中,轨迹点数据组中的轨迹点数据与目标轨迹点数据集的轨迹数据排序方式相同,比如,目标轨迹点数据集是按照时间顺序进行排序,则轨迹点数据组中的轨迹点数据也按照时间顺序进行排序。本实施例中,预设角度为大于0的值。
具体地,预设角度条件主要用于保留水上移动对象的目标轨迹点数据集中的拐点轨迹。预设角度条件需要三个轨迹点数据进行比较,因此,轨迹点数据组中存在三个轨迹点数据时才能进行判断。轨迹点数据组中排序前两位的轨迹点数据不会在目标轨迹点数据集中被删除。
本发明实施例提供的方法,通过预设角度条件,对目标轨迹点数据集中的轨迹点数据判断是否需要删除,可以按照需求对目标轨迹点数据集进行抽稀,从而可以保留目标轨迹点数据集中的拐点轨迹,进而提高目标水上移动对象的轨迹点数据的完整性。
结合上述实施例的内容,在其中一个实施例中,每一轨迹点数据还包括位置信息;其中,航向夹角的确定过程,包括:
根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
基于第一方向与第二方向之间的夹角,确定航向夹角。
其中,位置信息指的是经度信息和纬度信息。
具体地,根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的经度信息与纬度信息,和轨迹点数据组中轨迹点数据的排序方式,确定相应两个轨迹点间连线所确定的第一方向;根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的经度信息与纬度信息,和轨迹点数据组中轨迹点数据的排序方式,确定相应两个轨迹点间连线所确定的第二方向;如图5所示,若轨迹点数据组中轨迹点数据的排序方式为按照时间戳信息顺序的排序方式进行排序顺序方式进行排序,即首位轨迹点数据的时间戳信息早于中位轨迹点数据,中位轨迹点数据时间戳信息早于末位轨迹点数据,则第一方向为首位轨迹点数据对应的轨迹点指向中位轨迹点数据对应的轨迹点,第二方向为中位轨迹点数据对应的轨迹点指向末位轨迹点数据对应的轨迹点。
如图6所示,若轨迹点数据组中轨迹点数据的排序方式为按照时间戳信息逆序的排序方式进行排序,即首位轨迹点数据的时间戳信息晚于中位轨迹点数据的时间戳信息,中位轨迹点数据的时间戳信息晚于末位轨迹点数据的时间戳信息,则第一方向为中位轨迹点数据对应的轨迹点指向首位轨迹点数据对应的轨迹点,第二方向为末位轨迹点数据对应的轨迹点指向中位轨迹点数据对应的轨迹点。
基于第一方向与第二方向之间的夹角,确定航向夹角,其中,航向夹角的示意图如图7所示。
本发明实施例提供的方法,通过轨迹点数据组中轨迹点数据的排序方式和各自包括的位置信息,可以确定第一方向和第二方向,从而可以根据第一方向和第二方向,确定航向夹角,进而可以根据航向夹角,确定轨迹点数据组中排序末位的轨迹点数据是否需要从目标轨迹点数据集中删除。
结合上述实施例的内容,在其中一个实施例中,预设条件包括预设时长条件和预设角度条件;根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,包括:
确定目标轨迹点数据集中排序首位的轨迹点数据;
在目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
其中,预设时长条件中包括预设阈值,预设角度条件中包括预设角度;预设阈值和预设角度可以根据实际需求进行设置,预设阈值和预设角度均为大于0的值。
具体地,将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据,根据目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据与参考轨迹点数据的时间戳信息,确定目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值,将目标轨迹点数据集中与首位的轨迹点数据排序最近,且与参考轨迹点数据之间的间隔时长大于预设阈值的轨迹点数据作为第一轨迹点数据。
根据首位的轨迹点数据和第一轨迹点数据,确定轨迹点数据队列;其中,轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
具体地,轨迹点数据队列中轨迹点数据的排序方式与目标轨迹点数据集的排序方式相同,比如目标轨迹点数据集的排序方式为按照时间戳信息顺序排序,则对应的轨迹点数据队列的排序方式也为按照时间戳信息顺序排序。
对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足预设条件,若满足,则将第二轨迹点数据存入轨迹点数据队列中;将最终的轨迹点数据队列作为抽稀轨迹点数据集。
其中,第二轨迹点数据指的是目标轨迹点数据集中第一轨迹点数据之后的每个轨迹点数据,即目标轨迹点数据集中第一轨迹点数据之后的每个轨迹点数据都会参与是否满足预设条件的判断过程。
值得一提的是,只有在轨迹点数据队列中包含至少两个及两个以上的轨迹点数据时,才会判断每个第二轨迹点数据是否满足预设条件。
具体地,对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和第二轨迹点数据,依次确定每个第二轨迹点数据是否同时满足预设时长条件和预设角度条件,若任一第二轨迹点数据同时满足预设时长条件和预设角度条件,则将对应的第二轨迹点数据存入轨迹点数据队列中,当目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据均参与是否满足预设条件的判断过程并完成判断后的处理过程后,将最终的轨迹点数据队列作为抽稀轨迹点数据集。
本发明实施例提供的方法,通过预设时长条件和预设角度条件,对目标轨迹点数据集中的数据进行抽稀,可以提高抽稀轨迹点数据集中轨迹点数据的准确性。
结合上述实施例的内容,在其中一个实施例中,根据轨迹点数据队列中的轨迹点数据和第二轨迹点数据,确定第二轨迹点数据是否满足预设条件,包括:
从轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,第四轨迹点数据排在第三轨迹点之后;
将判断第四轨迹点数据和第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
具体地,根据第四轨迹点数据和第二轨迹点数据的时间戳信息,确定第四轨迹点数据和第二轨迹点数据之间的间隔时长,作为参考间隔时长,判断参考间隔时长是否大于预设阈值,并将判断参考间隔时长是否大于预设阈值的判断结果作为第一判断结果。
根据第三轨迹点数据、第四轨迹点数据以及第二轨迹点数据,确定航向夹角,并将判断航向夹角是否大于预设角度的判断结果作为第二判断结果;
若第一判断结果与第二判断结果均为是,则确定第二轨迹点数据满足预设条件。
具体地,根据第三点轨迹点数据的位置信息、第四轨迹点数据的位置信息和轨迹点数据队列的排序方式,确定相应两个轨迹点间连线所确定的第三方向。根据第四点轨迹点数据的位置信息、第二轨迹点数据的位置信息和轨迹点数据队列的排序方式,确定相应两个轨迹点间连线所确定的第四方向;基于第三方向与第四方向之间的夹角,确定第三点轨迹点数据、第四轨迹点数据以及第二轨迹点数据构成的航向夹角,作为参考夹角,航向夹角的示意图如图7所示。其中,位置信息包括经度信息和纬度信息。判断参考夹角是否大于预设角度,并将判断参考夹角是否大于预设角度的判断结果作为第二判断结果。若第一判断结果和第二判断结果均为是,则确定第二轨迹点数据满足预设条件;若第一判断结果和第二判断结果中存在至少一个为否,则确定第二轨迹点数据不满足预设条件。其中,对于第三方向或第四方向的确定方式,可以参照上述实施例中第一方向或第二方向的限定,对于参考夹角的确定方式,可以参照上述实施例中航向夹角的限定,在此不再赘述
本发明实施例提供的方法,通过轨迹点数据队列中的轨迹点数据和第二轨迹点数据,可以确定第二轨迹点数据是否满足预设条件,从而可以判断是否可以将第二轨迹点数据存入轨迹点数据队列。
结合上述实施例的内容,在一个实施例中,由于水上移动对象的轨迹点数据涉及的数量达到千亿级别,当应用层接收到水上移动对象的MMSI水上移动通信业务标识码号码和查询的起止时间段后,需要在海量的轨迹点数据中查询出某一个水上移动对象的在该输入时间段内的所有轨迹点数据,并通过顺序或者倒序的方式返回给应用层。
查询的某个水上移动对象的轨迹支持查询1年的轨迹数据,由于轨迹点数量非常多,以及应用层资源或者性能的限制原因,不允许在应用层进行轨迹点数据排序的操作,所以需要借助HBase分布式数据库进行提前的排序,可以按照时间戳信息进行顺序排序或者时间戳信息倒序进行排序,将所有排序完成后的轨迹点数据返回应用层。
应用层接收输入参数的MMSI和起止时间段内该MMSI号码的所有排序好的轨迹点数据。
输入参数还包括两个抽稀控制参数:分别为时间间隔参数和角度控制参数,可同时利用这两个控制参数进行轨迹点数据抽稀,或者只利用其中的一个控制参数进行轨迹点数据抽稀,比如,只利用时间间隔参数进行轨迹点数据抽稀,或者只利用角度控制参数进行轨迹点数据抽稀。
时间间隔参数主要用于控制两个轨迹点之间的时间间隔要超过该输入的参数,如时间间隔参数输入为60秒,第一个轨迹点数据时间戳信息为20220606170100,第二个轨迹点数据的时间戳信息为20220606170145,第三个轨迹点数据的时间戳信息为20220606170215,因为第二个轨迹点数据与第一个轨迹点数据的时间间隔为45秒,未超过60秒,则丢弃,第三个轨迹点数据与第一个轨迹点数据超过60秒,则加入到结果队列中。
角度控制参数主要用于保留目标水上移动对象的轨迹的拐点。角度控制时需要三个轨迹点数据进行比较,例如前两个轨迹点数据已经是确定进入队列的点,接收到第三个轨迹点数据时,例如第一轨迹点数据和第二个轨迹点数据的连线为线段1,第二个轨迹点数据与第三个轨迹点数据的连线为线段2,线段1和线段2共有轨迹点数据2这个轨迹点数据,通过计算线段1和线段2的夹角是否大于输入的角度控制参数,可以确定是否把第三个轨迹点数据进入结果队列。
具体地,同时利用时间间隔参数和角度控制参数两个控制参数进行轨迹点数据抽稀,包括:
设输入的时间间隔参数为T秒,如果无时间间隔参数输入,则T取0。
设输入的角度控制参数为A角度,如果无角度控制参数输入,则A取0。
预先设置一个结果队列存储最后抽稀后的结果,设该队列为L。
按顺序读取分布式数据库排序好的轨迹点。
1.首先将目标水上移动对象的目标轨迹点数据集第一个轨迹点数据存入结果队列L中。
2.读取目标轨迹点数据集中下一个轨迹点数据,如果该轨迹点数据的时间戳信息time减去上一个已入结果队列的轨迹点数据的时间戳信息time-before不大于T,则丢弃该轨迹点数据;如果大于T则将该轨迹点数据存入结果队列L中。
3.当队列L中至少有2个轨迹点数据后,再次读取新的轨迹点数据时,将要进行角度控制参数判断,假设队列里面的前两个轨迹点数据分别为P1和P2,当读取轨迹点数据P3时,如果P3的时间戳信息减去P2的时间戳信息不大于T,则直接丢弃轨迹点数据P3点;大于T则进行角度控制参数判断,P1与P2连接形成线段D1,P2与P3连接形成线段D2,当D1与D2线段的之间的夹角小于A时,则丢弃P3点,否则将P3点存入队列L中。
4.当上一步骤的P3存入队列L中后,则更新最新的两个轨迹点数据为P2和P3,继续取新的轨迹点数据按照步骤3进行判断。
5.直到目标轨迹点数据集中所有的轨迹点数据都处理完成后,输入结果队列L中的所有轨迹点数据为最终的抽稀结果。
6、按照输入的MMSI(AIS目标的唯一id),输入的时间起止段,抽稀的时间间隔参数和角度控制参数,输出抽稀后的预先排好序的抽稀轨迹序列。
本发明实施例提供的方法,通过时间间隔参数和角度控制参数,可以最大限度的保留目标水上移动对象的轨迹点数据,从而可以提高目标水上移动对象轨迹的还原度。
结合上述实施例的内容,在一个实施例中,如图8所示,一种水上移动对象轨迹抽稀方法,包括:
801、获取水上移动对象的第一轨迹点数据集和第二轨迹点数据集,其中,第一轨迹点数据集指的是在采集第二轨迹点数据集之前采集的每一水上移动对象的轨迹点数据;第二轨迹点数据集是通过实时采集软件平台采集的每一水上移动对象的轨迹点数据;第一轨迹点数据集和第二轨迹点数据集中每一轨迹点数据均包含水上移动对象标识和时间戳;
802、对第一轨迹点数据集和第二轨迹点数据集中的每一轨迹数据按照水上移动标准标识归类,得到每一水上移动对象的轨迹点数据集;
803、对每一水上移动对象的轨迹点数据集中的每一轨迹点数据按照时间戳排序,得到每一水上移动对象的有序轨迹点数据集;
804、根据目标水上移动对象的有序轨迹点数据集,确定目标水上移动对象的目标有序轨迹点数据集;
805、根据预设时长条件或预设角度条件中至少任意一项,对目标有序轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集。
本发明实施例提供的方法,通过预设时长条件或预设角度条件,可以实现按照需求对目标轨迹点数据集进行抽稀,从而提高抽稀结果的准确度。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的水上移动对象轨迹抽稀方法的水上移动对象轨迹抽稀装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个水上移动对象轨迹抽稀装置实施例中的具体限定可以参见上文中对水上移动对象轨迹抽稀方法的限定,在此不再赘述。
在一个实施例中,如图9所示,提供了一种水上移动对象轨迹抽稀装置,包括:获取模块和抽稀模块,其中:
获取模块901,用于获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
抽稀模块902,用于根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
在一个实施例中,抽稀模块902,包括:
第一判断子模块,用于将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;判断参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值;
更新子模块,用于在大于的情况下,则将参考轨迹点数据更新为下一轨迹点数据,在不大于的情况下,则维持参考轨迹点数据不变,并将下一轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,抽稀模块902,还包括:
第二判断子模块,用于将目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;判断基于轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从轨迹点数据组中删除排序首位的轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,第二判断子模块,包括:
第一确定单元,用于根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
第二确定单元,用于根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
第三确定单元,用于基于第一方向与第二方向之间的夹角,确定航向夹角。
在一个实施例中,抽稀模块902,还包括:
第一确定子模块,用于确定目标轨迹点数据集中排序首位的轨迹点数据;
第二确定子模块,用于在目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
第三确定子模块,用于根据首位的轨迹点数据和第一轨迹点数据,确定轨迹点数据队列;轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
第四确定子模块,用于对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足预设条件,若满足,则将第二轨迹点数据存入轨迹点数据队列中;将最终的轨迹点数据队列作为抽稀轨迹点数据集。
在一个实施例中,第四确定子模块,包括:
选取单元,用于从轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,第四轨迹点数据排在第三轨迹点之后;
判断单元,用于将判断第四轨迹点数据和第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
第四确定单元,用于根据第三轨迹点数据、第四轨迹点数据以及第二轨迹点数据,确定航向夹角,并将判断航向夹角是否大于预设角度的判断结果作为第二判断结果;
第五确定单元,用于若第一判断结果与第二判断结果均为是,则确定第二轨迹点数据满足预设条件。
上述水上移动对象轨迹抽稀装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种水上移动对象轨迹抽稀方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;
判断参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值;
在大于的情况下,则将参考轨迹点数据更新为下一轨迹点数据,在不大于的情况下,则维持参考轨迹点数据不变,并将下一轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;
判断基于轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从轨迹点数据组中删除排序首位的轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据从目标轨迹点数据集中删除;
重复执行上述判断及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
基于第一方向与第二方向之间的夹角,确定航向夹角。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
确定目标轨迹点数据集中排序首位的轨迹点数据;
在目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
根据首位的轨迹点数据和第一轨迹点数据,确定轨迹点数据队列;轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足预设条件,若满足,则将第二轨迹点数据存入轨迹点数据队列中;将最终的轨迹点数据队列作为抽稀轨迹点数据集。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
从轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,第四轨迹点数据排在第三轨迹点之后;
将判断第四轨迹点数据和第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
根据第三轨迹点数据、第四轨迹点数据以及第二轨迹点数据,确定航向夹角,并将判断航向夹角是否大于预设角度的判断结果作为第二判断结果;
若第一判断结果与第二判断结果均为是,则确定第二轨迹点数据满足预设条件。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取目标水上移动对象的目标轨迹点数据集,其中,目标轨迹点数据集中每一轨迹点数据包括时间戳信息,目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对目标轨迹点数据集抽稀,得到目标水上移动对象的抽稀轨迹点数据集,预设条件包括预设时长条件或预设角度条件中的至少一项。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;
判断参考轨迹点数据之后的下一轨迹点数据与参考轨迹点数据之间的间隔时长是否大于预设阈值;
在大于的情况下,则将参考轨迹点数据更新为下一轨迹点数据,在不大于的情况下,则维持参考轨迹点数据不变,并将下一轨迹点数据从目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;
判断基于轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从轨迹点数据组中删除排序首位的轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在目标轨迹点数据集中的下一轨迹点数据,并将轨迹点数据组中排序末位的轨迹点数据从目标轨迹点数据集中删除;
重复执行上述判断及判断后的处理过程,直至目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为抽稀轨迹点数据集。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
根据轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
基于第一方向与第二方向之间的夹角,确定航向夹角。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
确定目标轨迹点数据集中排序首位的轨迹点数据;
在目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
根据首位的轨迹点数据和第一轨迹点数据,确定轨迹点数据队列;轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
对于目标轨迹点数据集中第一轨迹点数据之后的每个第二轨迹点数据,根据轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足预设条件,若满足,则将第二轨迹点数据存入轨迹点数据队列中;将最终的轨迹点数据队列作为抽稀轨迹点数据集。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,第四轨迹点数据排在第三轨迹点之后;
将判断第四轨迹点数据和第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
根据第三轨迹点数据、第四轨迹点数据以及第二轨迹点数据,确定航向夹角,并将判断航向夹角是否大于预设角度的判断结果作为第二判断结果;
若第一判断结果与第二判断结果均为是,则确定第二轨迹点数据满足预设条件。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (7)
1.一种水上移动对象轨迹抽稀方法,其特征在于,所述方法包括:
获取目标水上移动对象的目标轨迹点数据集,所述目标轨迹点数据集中每一轨迹点数据包括时间戳信息,所述目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
根据预设条件对所述目标轨迹点数据集抽稀,得到所述目标水上移动对象的抽稀轨迹点数据集,所述预设条件包括预设时长条件或预设角度条件中的至少一项;
所述预设条件包括预设时长条件和预设角度条件;所述根据预设条件对所述目标轨迹点数据集抽稀,得到所述目标水上移动对象的抽稀轨迹点数据集,包括:
确定所述目标轨迹点数据集中排序首位的轨迹点数据;
在所述目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与所述首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
根据所述首位的轨迹点数据和所述第一轨迹点数据,确定轨迹点数据队列;所述轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
对于所述目标轨迹点数据集中所述第一轨迹点数据之后的每个第二轨迹点数据,根据所述轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足所述预设条件,若满足,则将第二轨迹点数据存入所述轨迹点数据队列中;将最终的轨迹点数据队列作为所述抽稀轨迹点数据集;
所述根据所述轨迹点数据队列中的轨迹点数据和第二轨迹点数据,确定第二轨迹点数据是否满足所述预设条件,包括:
从所述轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,所述第四轨迹点数据排在所述第三轨迹点之后;
将判断所述第四轨迹点数据和所述第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
根据所述第三轨迹点数据、所述数据以及所述第二轨迹点数据,确定航向夹角,并将判断所述航向夹角是否大于所述预设角度的判断结果作为第二判断结果;
若所述第一判断结果与所述第二判断结果均为是,则确定第二轨迹点数据满足所述预设条件。
2.根据权利要求1所述的方法,其特征在于,所述预设条件包括预设时长条件;所述根据预设条件对所述目标轨迹点数据集抽稀,得到所述目标水上移动对象的抽稀轨迹点数据集,包括:
将目标轨迹点数据集中排序首位的轨迹点数据作为参考轨迹点数据;
判断所述参考轨迹点数据之后的下一轨迹点数据与所述参考轨迹点数据之间的间隔时长是否大于预设阈值;
在大于的情况下,则将所述参考轨迹点数据更新为所述下一轨迹点数据,在不大于的情况下,则维持所述参考轨迹点数据不变,并将所述下一轨迹点数据从所述目标轨迹点数据集中删除;重复执行上述判断以及判断后的处理过程,直至所述目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为所述抽稀轨迹点数据集。
3.根据权利要求1所述的方法,其特征在于,所述预设条件包括预设角度条件;所述根据预设条件对所述目标轨迹点数据集抽稀,得到所述目标水上移动对象的抽稀轨迹点数据集,包括:
将所述目标轨迹点数据集中排序前三位的轨迹点数据构成轨迹点数据组;
判断基于所述轨迹点数据组所确定的航向夹角是否小于预设角度,在不小于的情况下,则从所述轨迹点数据组中删除排序首位的轨迹点数据,并将所述轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在所述目标轨迹点数据集中的下一轨迹点数据;在小于的情况下,则将所述轨迹点数据组中排序末位的轨迹点数据更新为排序末位的轨迹点数据在所述目标轨迹点数据集中的下一轨迹点数据,并将所述轨迹点数据组中排序末位的轨迹点数据从所述目标轨迹点数据集中删除;
重复执行上述判断及判断后的处理过程,直至所述目标轨迹点数据集中的所有轨迹点数据均完成判断及判断后的处理过程,将最终的目标轨迹点数据集作为所述抽稀轨迹点数据集。
4.根据权利要求3所述的方法,其特征在于,每一轨迹点数据还包括位置信息;所述航向夹角的确定过程,包括:
根据所述轨迹点数据组中排序首位的轨迹点数据与排序中位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第一方向;
根据所述轨迹点数据组中排序中位的轨迹点数据与排序末位的轨迹点数据各自包括的位置信息,确定相应两个轨迹点间连线所确定的第二方向;
基于所述第一方向与所述第二方向之间的夹角,确定所述航向夹角。
5.一种水上移动对象轨迹抽稀装置,其特征在于,所述装置包括:
获取模块,用于获取目标水上移动对象的目标轨迹点数据集,所述目标轨迹点数据集中每一轨迹点数据包括时间戳信息,所述目标轨迹点数据集中轨迹点数据按照时间戳信息进行排序;
抽稀模块,用于根据预设条件对所述目标轨迹点数据集抽稀,得到所述目标水上移动对象的抽稀轨迹点数据集,所述预设条件包括预设时长条件或预设角度条件中的至少一项;
所述抽稀模块,还包括:
第一确定子模块,用于确定所述目标轨迹点数据集中排序首位的轨迹点数据;
第二确定子模块,用于在所述目标轨迹点数据集中排序首位的轨迹点数据之后的轨迹点数据中,确定与所述首位的轨迹点数据排序最近且满足预设时长条件的第一轨迹点数据;
第三确定子模块,用于根据所述首位的轨迹点数据和所述第一轨迹点数据,确定轨迹点数据队列;所述轨迹点数据队列中的轨迹点数据按照时间戳信息进行排序;
第四确定子模块,用于对于所述目标轨迹点数据集中所述第一轨迹点数据之后的每个第二轨迹点数据,根据所述轨迹点数据队列中的轨迹点数据和每个第二轨迹点数据,确定每个第二轨迹点数据是否满足所述预设条件,若满足,则将第二轨迹点数据存入所述轨迹点数据队列中;将最终的轨迹点数据队列作为所述抽稀轨迹点数据集;
所述第四确定子模块,包括:
选取单元,用于从所述轨迹点数据队列中选取排序最后两个轨迹点数据分别作为第三轨迹点数据和第四轨迹点数据,所述第四轨迹点数据排在所述第三轨迹点之后;
判断单元,用于将判断所述第四轨迹点数据和所述第二轨迹点数据之间的间隔时长是否大于预设阈值的判断结果作为第一判断结果;
第四确定单元,用于根据所述第三轨迹点数据、所述第四轨迹点数据以及所述第二轨迹点数据,确定航向夹角,并将判断所述航向夹角是否大于所述预设角度的判断结果作为第二判断结果;
第五确定单元,用于若所述第一判断结果与所述第二判断结果均为是,则确定第二轨迹点数据满足所述预设条件。
6.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述的方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210880361.4A CN115905342B (zh) | 2022-07-25 | 2022-07-25 | 水上移动对象轨迹抽稀方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210880361.4A CN115905342B (zh) | 2022-07-25 | 2022-07-25 | 水上移动对象轨迹抽稀方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115905342A CN115905342A (zh) | 2023-04-04 |
CN115905342B true CN115905342B (zh) | 2023-12-15 |
Family
ID=86483854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210880361.4A Active CN115905342B (zh) | 2022-07-25 | 2022-07-25 | 水上移动对象轨迹抽稀方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115905342B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020133079A1 (zh) * | 2018-12-27 | 2020-07-02 | 深圳市优必选科技有限公司 | 一种对象轨迹跟踪展示方法以及系统 |
CN111654290A (zh) * | 2020-04-24 | 2020-09-11 | 北京中交兴路车联网科技有限公司 | 车辆轨迹数据压缩的方法、装置、设备及存储介质 |
CN113223049A (zh) * | 2021-04-23 | 2021-08-06 | 亿海蓝(北京)数据技术股份公司 | 轨迹数据处理方法及装置 |
CN113806426A (zh) * | 2021-11-16 | 2021-12-17 | 亿海蓝(北京)数据技术股份公司 | 轨迹数据的处理方法、装置、可读存储介质和电子设备 |
CN113868362A (zh) * | 2021-11-30 | 2021-12-31 | 亿海蓝(北京)数据技术股份公司 | 航路轨迹构建方法、系统、船舶和船舶管理系统 |
CN114415693A (zh) * | 2022-03-22 | 2022-04-29 | 深圳市普渡科技有限公司 | 可移动设备、轨迹记录方法、装置和存储介质 |
-
2022
- 2022-07-25 CN CN202210880361.4A patent/CN115905342B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020133079A1 (zh) * | 2018-12-27 | 2020-07-02 | 深圳市优必选科技有限公司 | 一种对象轨迹跟踪展示方法以及系统 |
CN111654290A (zh) * | 2020-04-24 | 2020-09-11 | 北京中交兴路车联网科技有限公司 | 车辆轨迹数据压缩的方法、装置、设备及存储介质 |
CN113223049A (zh) * | 2021-04-23 | 2021-08-06 | 亿海蓝(北京)数据技术股份公司 | 轨迹数据处理方法及装置 |
CN113806426A (zh) * | 2021-11-16 | 2021-12-17 | 亿海蓝(北京)数据技术股份公司 | 轨迹数据的处理方法、装置、可读存储介质和电子设备 |
CN113868362A (zh) * | 2021-11-30 | 2021-12-31 | 亿海蓝(北京)数据技术股份公司 | 航路轨迹构建方法、系统、船舶和船舶管理系统 |
CN114415693A (zh) * | 2022-03-22 | 2022-04-29 | 深圳市普渡科技有限公司 | 可移动设备、轨迹记录方法、装置和存储介质 |
Non-Patent Citations (1)
Title |
---|
基于路网的GPS轨迹在线压缩方法;程倩;丁云峰;;计算机系统应用(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115905342A (zh) | 2023-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10991248B2 (en) | Parking identification and availability prediction | |
WO2017215370A1 (zh) | 构建决策模型的方法、装置、计算机设备及存储设备 | |
CN110634047B (zh) | 一种推荐房源的方法、装置、电子设备及存储介质 | |
CN110573837B (zh) | 导航方法、装置、存储介质以及服务器 | |
CN110413742B (zh) | 简历信息的查重方法、装置、设备及存储介质 | |
JP7171471B2 (ja) | 学習モデル生成支援装置、及び学習モデル生成支援方法 | |
CN111382217A (zh) | 一种目的地推荐方法和装置 | |
CN107229770A (zh) | 道路病害诊断方法和系统 | |
CN112885099A (zh) | 用于确定车辆轨迹关键点的方法、装置及设备 | |
CN115905342B (zh) | 水上移动对象轨迹抽稀方法、装置和计算机设备 | |
CN111507541A (zh) | 货量预测模型构建方法、货量测量方法、装置及电子设备 | |
CN115858659A (zh) | 矢量轨迹的显示方法、装置、计算机设备、存储介质 | |
CN107797831B (zh) | 后台应用清理方法、装置、存储介质及电子设备 | |
CN110070371B (zh) | 一种数据预测模型建立方法及其设备、存储介质、服务器 | |
CN110619086B (zh) | 用于处理信息的方法和装置 | |
CN112015832A (zh) | 路网预测树可视化方法、装置、电子设备及存储介质 | |
CN116665455B (zh) | 一种车辆站点选择方法、装置、计算机设备 | |
CN115240401B (zh) | 车辆位置确定方法、装置、设备、介质和产品 | |
CN115438095A (zh) | 位置信息处理方法、装置、计算机设备和存储介质 | |
CN115409576A (zh) | 产品推荐方法、装置、计算机设备及其存储介质 | |
CN115358379A (zh) | 神经网络处理、信息处理方法、装置和计算机设备 | |
CN114579889A (zh) | 订单热力图的推荐方法、装置、设备及存储介质 | |
CN111177588A (zh) | 兴趣点检索方法和装置 | |
CN115757508A (zh) | 流式数据处理方法、装置、计算机设备、存储介质和产品 | |
CN117708366A (zh) | 基于人工智能的图像检索方法、装置、设备及存储介质 |
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 |