一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种全球航线热力图生成方法及系统与流程

2022-02-21 07:58:38 来源:中国专利 TAG:


1.本发明涉及船舶航运技术领域,具体涉及一种全球航线热力图生成方法及系统。


背景技术:

2.目前航运可视化系统中,会针对历史航线进行热力图形势的展示以供参考分析,通行的做法是根据ais历史数据,综合港口信息等辅助内容进行航线的计算从而在电子海图上绘制。
3.但这种做法存在以下几个问题:1、ais由于信号采集、传输、存储等各方面原因综合作用,通常会出现一些信息噪点,这些信息噪点与实际位置有很大偏差,导致绘制的航线出现较大偏差,从而失去准确度;2、ais原始历史数据数据非常庞大,往往在绘制的过程中,需要动用高性能机器,有些系统就只绘制低分辨率的航线图,无法做到放大查看精细航线数据。


技术实现要素:

4.为了解决现有技术中存在的分辨率低以及有信息噪点等问题,本发明提供了一种全球航线热力图生成方法,通过重新设计数据报文的格式,去除冗余信息,实现了数据的高效传输,并通过直接对报文字节进行读写,不进行传统的压缩/解压缩处理,提高了数据的处理速度。本发明还涉及一种全球航线热力图生成系统。
5.本发明的技术方案如下:
6.一种全球航线热力图生成方法,其特征在于,包括以下步骤:
7.数据采集步骤:采集船舶ais历史航行数据和港口数据;
8.数据清洗步骤:根据采集的港口数据中的起始港和结束港的经纬度数据计算得到两港球面距离,根据两港球面距离计算出港间距,并根据港间距与两港边界系数的乘积得到航线的边界范围,将航线的实际距离在所述边界范围外的航线剔除,然后根据剔除后的ais历史航行数据统计航线平均距离,根据所述航线平均距离设定距离阈值范围,将在距离阈值范围外的航线剔除,进而实现对ais历史航行数据中异常数据的清洗;
9.航线轨迹还原步骤:从清洗后的ais历史航行数据中提取出按时间排序的坐标点信息,剔除无用的坐标点信息,保留关键节点的坐标点信息,对于剩余的ais历史航行数据,利用sas算法进行稀疏,将关键节点的坐标点信息按照时间顺序插入到稀疏结果中,得到还原的航线轨迹数据;
10.图像绘制步骤:根据还原的航线轨迹数据,采用分片绘制的方式,将分辨率超过一定数量像素点的航线轨迹数据拆分成等面积的几个区域,形成待绘制图片队列,然后将航线的经纬度数据转化成像素点,采用取模运算的方式,将所有航线的像素点分配到拆分出来的图片队列内,从分配好的图片队列内获取需要绘制的航线数据,逐一分发到绘制集群中进行绘制,绘制完成后,将绘制好的图片回传到主节点,由主节点进行图像的拼接,完成图像的绘制。
11.优选地,还包括图像展示步骤,将绘制好的图像通过瓦片图的方式进行多级存储、展示。
12.优选地,所述航线轨迹还原步骤中,还将还原后的航线轨迹数据根据hausdorff距离方法,通过多轮迭代对相似度匹配或接近的全量航线历史数据进行验证,保证其准确性。
13.优选地,所述航线轨迹还原步骤中,所述关键节点包括起始港和目的港。
14.优选地,所述航线轨迹还原步骤中,所述动态信息包括靠泊和锚泊。
15.一种全球航线热力图生成系统,其特征在于,包括依次连接的数据采集模块、数据清洗模块、航线轨迹还原模块和图像绘制模块,
16.所述数据采集模块,采集船舶ais历史航行数据和港口数据;
17.所述数据清洗模块,根据采集的港口数据中的起始港和结束港的经纬度数据计算得到两港球面距离,根据两港球面距离计算出港间距,并根据港间距与两港边界系数的乘积得到航线的边界范围,将航线的实际距离在所述边界范围外的航线剔除,然后根据剔除后的ais历史航行数据统计航线平均距离,根据所述航线平均距离设定距离阈值范围,将在距离阈值范围外的航线剔除,进而实现对ais历史航行数据中异常数据的清洗;
18.所述航线轨迹还原模块:从清洗后的ais历史航行数据中提取出按时间排序的坐标点信息,剔除无用的坐标点信息,保留关键节点的坐标点信息,对于剩余的ais历史航行数据,利用sas算法进行稀疏,将关键节点的坐标点信息按照时间顺序插入到稀疏结果中,得到还原的航线轨迹数据;
19.所述图像绘制模块:根据还原的航线轨迹数据,采用分片绘制的方式,将分辨率超过一定数量像素点的航线轨迹数据拆分成等面积的几个区域,形成待绘制图片队列,然后将航线的经纬度数据转化成像素点,采用取模运算的方式,将所有航线的像素点分配到拆分出来的图片队列内,从分配好的图片队列内获取需要绘制的航线数据,逐一分发到绘制集群中进行绘制,绘制完成后,将绘制好的图片回传到主节点,由主节点进行图像的拼接,完成图像的绘制。
20.优选地,还包括图像展示模块,所述图像展示模块与图像绘制模块相连,用于将绘制好的图像通过瓦片图的方式进行多级存储、展示。
21.优选地,在所述航线轨迹还原模块中,还将还原后的航线轨迹数据根据hausdorff距离方法,通过多轮迭代对相似度匹配或接近的全量航线历史数据进行验证,保证其准确性。
22.优选地,所述关键节点包括起始港和目的港。
23.优选地,所述动态信息包括靠泊和锚泊。
24.本发明的有益效果为:
25.本发明提供的一种全球航线热力图生成方法,依次设置数据采集步骤、数据清洗步骤、航线轨迹还原步骤和图像绘制步骤,各步骤相互配合协同工作,首先采集船舶ais历史航行数据和港口数据;并根据采集的港口数据中的起始港和结束港的经纬度数据计算得到两港球面距离,根据两港球面距离计算出港间距,并根据港间距与两港边界系数的乘积得到航线的边界范围,将航线的实际距离在所述边界范围外的航线剔除,然后根据剔除后的ais历史航行数据统计航线平均距离,根据该平均距离设定距离阈值范围并进行对比,将在距离阈值范围外的航线剔除,进而实现对ais历史航行数据中异常数据的清洗;然后从清
洗后的ais历史航行数据中提取出按时间排序的坐标点信息,剔除无用的坐标点信息,保留关键节点的坐标点信息,对于剩余的ais历史航行数据,利用sas算法进行稀疏,将关键节点的坐标点信息按照时间顺序插入到稀疏结果中,得到还原的航线轨迹数据;最后根据还原的航线轨迹数据,采用分片绘制的方式,将分辨率超过一定数量像素点的航线轨迹数据拆分成等面积的几个区域,形成待绘制图片队列,然后将航线的经纬度数据转化成像素点,采用取模运算的方式,将所有航线的像素点分配到拆分出来的图片队列内,从分配好的图片队列内获取需要绘制的航线数据,逐一分发到绘制集群中进行绘制,通过拆分到绘制集群中并行绘制的方法,从根本上解决了超大分辨率图像绘制时的效率问题,绘制完成后,将绘制好的图片回传到主节点,由主节点进行图像的拼接,完成图像的绘制,极大提高了航线绘制的数据准备时间,以及数据绘制时间,从而在更短时间内,完成数据的处理。海量ais数据采集、清洗、转换、分析及计算准确航线,为实现基于大数据的历史航系绘制提供基础支撑。获得船舶的ais历史数据后,综合船型、海峡节点等实际需求,根据船舶的港口信息、船舶信息、时间信息、穿越节点筛选等,获取准确的航线相关信息,综合进行真实航线的还原,可以针对计算的每条历史航线,根据大量的历史数据论证其准确性,提高海量数据在电子海图上的绘制效率,并能够进行超大分辨率存储与展示。
26.本发明还涉及一种全球航线热力图生成系统,该系统与上述的全球航线热力图生成方法相对应,可理解为是一种实现上述全球航线热力图生成方法的系统,包括依次连接的数据采集模块、数据清洗模块、航线轨迹还原模块和图像绘制模块,各模块相互协同工作,极大提高了航线绘制的数据准备时间,数据绘制时间,从而在更短时间内,完成数据的处理。
附图说明
27.图1是本发明全球航线热力图生成方法的流程图。
28.图2是绘制完成后的图像整体效果图。
29.图3是图2的局部放大效果图。
具体实施方式
30.下面结合附图对本发明进行说明。
31.本发明涉及一种全球航线热力图生成方法,该方法的流程图如图1所示,依次包括以下步骤:
32.数据采集步骤:采集船舶ais历史航行数据和港口数据;具体地,依托大数据模型的航线推荐,支撑的平台可理解为是海量数据存储及检索平台,需要提供海量数据样本,且样本数量级动辄上亿甚至十亿、百亿级,而传统的关系型数据存储系统无法满足存储、检索及计算要求,因此选用基于postgresql语法实现的分布式计算数据库polardb,从polardb数据库中取出船舶ais历史航行数据,以及港口数据,实现单表最大存储超百亿条,且通过精选业务字段进行逻辑分区,实现百亿级数据3秒内检索响应。同时,结合postgis插件,实现了全球地理数据的运算,突破了经纬度跨180度的限制,且可构造任意曲线、多边形,支持船舶、港口坐标与任意地理图形距离的计算,支持任意地理形状的相交判断。
33.数据清洗步骤,或进一步称为预处理步骤:在获得ais历史航行数据和港口数据
后,对数据进行清洗,去除无用的干扰数据,先对ais历史航行数据进行预处理,去掉ais中存在异常的数据(如缺失过多,位置、速度等异常),然后对港口数据进行预处理,去除修船的数据、起始港和终点港有缺失的数据、未知港口的数据以及起点港与终点港为相同港口的数据。可通过窗口函数将每一条数据和前一条数据的变化值进行计算并保存。
34.由于历史航线数据样本中,存在少量ais异常数据,本发明实施例根据平均航线距离进行多轮优化。可以理解的是,该步骤支撑的平台是海量数据逻辑处理平台,船舶ais数据属于物联网数据,具有数据量大、数据质量不稳定等特征,原始数据存储到分布式数据库之前,需经过严格筛选、清洗及初步转换,方可确保源数据样本的质量,因此选用分布式etl系统kettle,进行数据抽取、清洗转换,实现了日处理数千万级的数据处理能力,同时实现了动态数据分钟级同步,为模型搭建提供了强有力支撑。
35.其中,对ais历史航行数据进行清洗,具体是先根据采集的港口数据中的起始港和结束港的经纬度数据计算得到两港球面距离,按照下式进行计算:
[0036][0037]
上式中,x1,y1是纬度\经度的弧度单位,radius为地球半径(半径米),r是单位圆弧长,ry1为起始港经度,ry2为结束港经度,rx1为起始港纬度,rx2为结束港纬度。
[0038]
其中,单位圆弧长按照下式进行计算:
[0039]r(θ)
=π
×
θ
÷
180
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0040]
上式中,θ为两港之间的圆心角。
[0041]
然后根据两港球面距离计算出海里为单位的港间距dn,按照下式进行计算:
[0042]
dn(x)=1.852
×
x
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0043]
上式中,x为两港球面距离,参考郑州测绘学校杨国清的论文“子午线长度正反算公式及相应系数值”,计算出子午线长度,转换为公里的系数为1.852。
[0044]
再根据港间距与两港边界系数的乘积得到航线的边界范围,其中,两港边界系数可以根据实际需求自由设定,例如分别设置两港边界系数为0.5和2,将航线的实际距离在所述边界范围外的航线剔除(注:因ais异常丢失导致一部分航线数据记录的距离跨度存在较大的误差),然后根据剔除后的ais历史航行数据,基于月份、船型等维度统计航线平均距离,根据统计计算得到的平均距离设定距离阈值范围,将超出距离阈值范围外的航线剔除,进而实现对ais历史航行数据中异常数据的清洗,在清洗完异常数据后,再重新统计一次航线平均距离,得出起始港到结束港的历史平均距离,即得到清洗后的历史航线,并将这部分航线作为后续航线绘制的候选航线。
[0045]
需要说明的是,在船舶ais历史航行数据中,有多条两港之间的数据,而这些两港之间的数据中,有些数据是不准确的,例如,取10条历史航线,其中有7条航线两港之间的距离相近,计算出这7条航线的平均距离,而另外3条航线中,有1条航线两港之间的距离是所述平均距离的1.4倍,有2条航线两港之间的距离是所述平均距离的0.7倍,则认为这7条航线是有效的,而另外3条航线超过所述平均距离过多,则认为这3条航线无效。而对于接近所述平均距离的航线,比如是平均距离的1.1倍或者0.9倍的航线,认为是有效的,也可以理解为是,优选设定的距离阈值范围在平均距离的0.9倍至1.1倍之间。
[0046]
其中,航线平均距离的统计按照下式进行计算:
[0047][0048]
上式中,n为清洗后的历史航线总数,i为样本数据的索引变量,pi为当前索引的航线距离,pi 1为下一个索引的航线距离,全部历史航线总距离求和完成后,除以历史航线总数即得到航线平均距离。
[0049]
航线轨迹还原步骤:清洗后的ais历史航行数据仅包含起始港、目的港,历史航行时间等关键信息,在通过ais还原时,需要结合航行的关键信息,从海量ais历史记录中摘取坐标信息进行展示。具体地,先从清洗后的ais历史航行数据中提取出按时间排序的坐标点信息,剔除无用的坐标点信息(靠泊、锚泊),保留关键节点的坐标点信息,对于剩余的ais历史航行数据,利用sas(sparse a*search)算法进行稀疏,最后将关键节点的坐标点信息按照时间顺序插入到稀疏结果中,得到接近真实、可展示的航线轨迹数据,即得到还原后的真实航线。优选地,还原后的航线轨迹数据根据hausdorff距离方法,通过多轮迭代对相似度匹配或接近的全量航线历史数据进行验证,保证其准确性。优选地,关键节点包括起始港和目的港。
[0050]
图像绘制步骤:通常用于展示的电子海图根据不同的缩放层级,有不同的分辨率,以第0层分辨率为256x256像素的正方形图像来作为基准,不同层级分辨率的单边像素按照下式进行计算:
[0051]
p(z)=256x2^z
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0052]
例如在第18层时,图像分辨率将达到:
[0053]
p(18)=256x2^18=67,108,864
[0054]
即67,108,864x67,108,864个像素点。
[0055]
当图像分辨率很大的时候,绘制整个图像对机器压力非常大,因此采用分片绘制的方式进行绘制,当分辨率超过一定数量的像素点时,即拆分成等面积的几部分,其值为4个整数倍,形成待绘制图片队列,必要时图片队列中的图像数据采用磁盘作为缓存;
[0056]
然后将航线的经纬度数据转化成像素点,采用取模运算的方式,将所有航线的像素点按照是否穿越拆分后的待绘制图片底图范围的关系及队列总数进行计算,例如5个计算队列,则当像素点在编号为17的图片上时,队列号为17mod 5,得到编号为2的计算队列,再将计算后的像素点分配到拆分出来的图片队列内,并按顺序从分配好的图片队列内获取需要绘制的航线数据,逐一分发到由多台计算机组成的绘制集群中进行绘制,多台计算机绘制完成后,将绘制好的图片回传到主节点,由主节点进行图像的拼接,完成图像的绘制,如图2所示,为绘制完成后的图像整体效果图,显示出去除了冗余信息的高分辨率的全球航线热力图,图3为图2中的右侧亚洲地区的局部放大效果图,通过拆分到多台计算机并行绘制的方法,从根本上解决了超大分辨率图像绘制时的效率问题。
[0057]
图像展示步骤:任何展示设备的分辨率始终有限,为了能流畅展示航线热力图,采用瓦片图的方式进行多级存储、展示。
[0058]
具体地,按照每个瓦片图为正方形,全球航线热力图的瓦片图数量公式为:
[0059]
t(z)=4^z
[0060]
上式中,z为瓦片图层级,当瓦片图层级为18层时,数量将达到
[0061]
t(18)=4^18=68,719,476,736个
[0062]
采用静态文件存储的话,18层的目录下文件将达到百亿级别,对文件的输入/输出
(input/output,io)将带来致命影响,因此采用分多级存储的方式,每一层级的路径下,经过测试,每一个层级的目录下,存储999个文件,可以达到io与空间利用的最大平衡;
[0063]
其拆分规则步骤如下:
[0064]
s1:每一个级别拥有一个独立的根目录;
[0065]
s2:每个级别的瓦片图拆分后,用(x,y)编号,用于标识唯一一个瓦片图;
[0066]
s3:当x或y大于999时,将被拆分成多级路径用于保证每个目录下只存放999个瓦片图。
[0067]
本发明还涉及了一种全球航线热力图生成系统,该系统与上述全球航线热力图生成方法相对应,可理解为是实现上述方法的系统,该系统包括依次连接的数据采集模块、数据清洗模块、航线轨迹还原模块、图像绘制模块和图像展示模块,具体地,
[0068]
数据采集模块,采集船舶ais历史航行数据和港口数据;
[0069]
数据清洗模块,根据采集的港口数据中的起始港和结束港的经纬度数据计算得到两港球面距离,根据两港球面距离计算出港间距,并根据港间距与两港边界系数的乘积得到航线的边界范围,将航线的实际距离在所述边界范围外的航线剔除,然后根据剔除后的ais历史航行数据统计航线平均距离,根据该航线平均距离设定距离阈值范围,将在距离阈值范围外的航线剔除,进而实现对ais历史航行数据中异常数据的清洗;
[0070]
航线轨迹还原模块,从清洗后的ais历史航行数据中提取出按时间排序的坐标点信息,剔除无用的坐标点信息,保留关键节点的坐标点信息,对于剩余的ais历史航行数据,利用sas算法进行稀疏,将关键节点的坐标点信息按照时间顺序插入到稀疏结果中,得到还原的航线轨迹数据;优选地,还原后的航线轨迹数据根据hausdorff距离方法,通过多轮迭代对相似度匹配或接近的全量航线历史数据进行验证,保证其准确性。优选地,关键节点包括起始港和目的港。优选地,动态信息包括靠泊和锚泊。
[0071]
图像绘制模块,根据还原的航线轨迹数据,采用分片绘制的方式,将分辨率超过一定数量像素点的航线轨迹数据拆分成等面积的几个区域,形成待绘制图片队列,然后将航线的经纬度数据转化成像素点,采用取模运算的方式,将所有航线的像素点分配到拆分出来的图片队列内,从分配好的图片队列内获取需要绘制的航线数据,逐一分发到绘制集群中进行绘制,绘制完成后,将绘制好的图片回传到主节点,由主节点进行图像的拼接,完成图像的绘制。
[0072]
本发明提供的全球航线热力图生成方法及系统,能够海量数据同步,通过kettle将海量ais数据同步到历史及最新数据,完成数据清洗及预处理,清洗ais中的异常点(位置,速度等异常),并通过窗口函数将每一条数据和前一条数据的变化值进行计算并保存;还可以进一步进行船舶生命周期分析,基于ais历史轨迹数据,结合港口、泊位位置进行海量离线分析,得出船舶全生命周期数据,如靠泊、锚泊、航行、加油、修理等;在筛选航线时,根据历史数据计算平均港间距,基于平均港间距筛选合理范围内的航线数据,再基于港口信息、船舶信息、穿越节点、等因素筛选分组航线,同时将分组后的结果作为绘制的输入;主节点根据不同分辨率的需求,进行大分辨率图像绘制任务的数据切割,分配到不同绘制节点上;主节点收集所有绘制好的图片,合并后进行瓦片图切割、存储,可通过拆分到多台计算机并行绘制的方法,从根本上解决超大分辨率图像绘制时的效率问题,并优选通过瓦片图服务进行存储、发布、展示,解决了展示设备的分辨率始终有限的问题,能够流畅展示航
线热力图。
[0073]
应当指出,以上所述具体实施方式可以使本领域的技术人员更全面地理解本发明创造,但不以任何方式限制本发明创造。因此,尽管本说明书参照附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换,总之,一切不脱离本发明创造的精神和范围的技术方案及其改进,其均应涵盖在本发明创造专利的保护范围当中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献