基于MSVG数据的船舶航线可视化

时间:2022-04-05 11:26:00

基于MSVG数据的船舶航线可视化

【摘 要】 为改善船舶航线的可视化效果,解决信息丢失、效率较低等问题,提出一种基于MSVG数据的船舶航线可视化方法,根据MSVG和航线的特点,分层组织空间数据,构建可视化框架,阐述其基本原理是从MSVG数据解析、船舶航线经纬度实时读取和航线要素可视化入手,设计并实现船舶航线的可视化。

【关键词】 MSVG;船舶航线;数据解析;可视化

1 船舶航线的可视化问题

船舶航迹控制系统能自动控制船舶沿着一条预定的计划航线航行。国际电工委员会制订的航迹控制系统性能指标IEC 62965对其功能和安全性有明确的要求,但由于国内船舶航迹控制系统的研制尚处于初级阶段,加上船舶速度、海流速度等因素变化无常,无法及时知道船舶是否偏离计划航线,所以必须时刻监控船舶运行的实际航线。由此可见,船舶运行实时航线的可视化程度高低是整个系统成功与否的关键因素之一。

实时可视化问题一直困扰着船舶航迹控制系统领域的研究者们。针对船舶航线的可视化问题,一些学者从不同角度进行了研究。REICHENBACHER[1]研究了移动线路的自适应可视化理论框架,REEVES[2]于1983年提出了粒子系统方法,王洪等[3]研究了电子地图可视化中的自适应策略。这些研究对改善船舶航线的可视化效果都起到了积极的作用,但在动画处理过程中信息较易丢失,效率相对较低。本文在此提出一种基于MSVG(Mobile Scalable Vector Graphic)数据的船舶航线可视化方法,该方法从MSVG空间数据的要素结构出发,通过MSVG数据解析、航线地理坐标读取和几何要素可视化,以移动终端组建的形式设计和实现基于MSVG数据的船舶航线可视化。

2 基于MSVG数据的船舶航线 可视化方法

2.1 MSVG的特点

MSVG是可伸缩的地理标志语言,具有XML的基于文本、自我描述、结构灵活、能够嵌套表达复杂数据类型以及标准完全公开等优点[4],并且向后兼容。其Schema集合的组织具有模块化特点,即用户能够有选择地使用所需部分,减化和缩小了执行的尺寸,提供了面向Web应用、基于对象的地理数据描述语言。此外,MSVG增加了对复杂的几何实体、拓扑、空间参照系统、元数据、时间特征和动态数据等的支持,使其更加适合描述现实世界问题,如基于位置服务的行程安排和船舶航线跟踪。同时,其基本保持了原有的GML标识符所代表的要素意思。

2.2 MSVG空间数据分析

MSVG分层组织空间数据,它根据具体的应用形成树形结构,采用“简单要素”数据模型对现实建模。其包括空间要素和非空间要素,空间要素包含简单要素(包括点、线和面)和要素集合。MSVG是采用字典方式的GML格式的一个可伸缩标准,其数据量减小了很多,可以降低空间数据量,以实现快速移动航线的可视化。

根据MSVG和航线的特点,船舶航线空间数据的组织在要素分层组织模式的基础上加以拓展:船舶航线空间要素先以几何特征要素分层,而每一要素层中再以空间数据类型进行分层(见图1)。这样既便于船舶航线数据的查询操作,又易于存储和管理。

图1 MSVG船舶航线空间数据组织模型

2.3 MSVG船舶航线可视化框架

MSVG是基于XML,根据船舶航线特征需要而定义的更为严格和规范的语言。GML数据解析是MSVG数据可视化的重要一环,它依次读取和输出MSVG各个节点包含的数据,然后将这些数据交给计算机处理。由MSVG数据解析提取的地理信息中,包括了各船舶航线要素、航线经纬度和属性信息等。通常来说,MSVG船舶航线可视化框架如图2所示。

图2 MSVG船舶航线可视化框架

2.4 MSVG数据解析

XML解析就编程接口而言,目前有SAX(Simple API for XML)接口和DOM(Document Object Model)接口,两种方法实现的原理各异。SAX解析以流的方式分析XML文件中的数据,即“读一段数据,处理一段数据”,在任何一个给定的时刻,SAX解析器只分析XML整个数据文件的局部,但由于需要计算机反复从硬盘读入数据,因此CPU的负担比较重。DOM解析采用文档驱动方式,在处理时是以树形层次结构组织起来的节点或信息片段的集合,允许用户以浏览树来查找特定信息。DOM提供了一个API,该API允许用户为创建应用程序而在树的任何地方进行添加、删除等操作。本文采用DOM接口解析。

2.5 船舶航线经纬度的读取

假定忽略船舶操舵过程对航速的影响,设船舶航向为H,对水速度为V,船向南北的速度为Vn,船向东西的速度为Ve,地球的半径为Re,海流流速为Vf,海流流向为Sf,船舶初始经纬度为( 0, 0),则得到船舶航线的实时经纬度位置( , ):

系统无线接收器通过RS232C串行通信接口接收GPS导航仪的航线实时经纬度、航线要素和属性信息,再移交给计算机去处理。

2.6 MSVG要素的可视化

MSVG文件的可视化就是针对航线要素类型进行渲染绘制。MSVG数据的船舶航线可视化步骤如下:首先,从移动设备中读取MSVG数据,并进行MSVG文件解析,转换成航线要素集;其次,设置相应的绘图样式和规则,如颜色、宽度、类型等,接着绘制航线,再调用绘制方法生成要素显示;最后,配以常用的缩小、放大等地理信息系统(GIS)操作功能,完成整个MSVG船舶航线可视化的流程。

3 MSVG船舶航线可视化的实现

移动终端MSVG可视化组件平台本质上是应用软件,其与用户的交流通过人机界面完成,用户通过键盘、鼠标和数据接收端口等实现指令和参数设置。系统经过SMGL数据解析,再根据解析后的航线要素数据绘制船舶实时移动航线。

在Eclipse编程环境下,运用Java ME能实现基于MSVG缓存的船舶航线可视化,其效果图如图3所示。图中航线跨越太平洋,距离较远,可用于测试系统长时间跟踪船舶航线的能力。

图3 船舶航线可视化效果

为了验证该系统的合理性和准确性,笔者对多条船舶航线进行了测试。分析发现,随着船舶吨位的减小和运行环境的恶化,其信息丢失没有显著提高且耗费时间增加不明显。表1的测试结果是只针对不同大小船舶在同一环境下的可视化准确率和信息丢失情况。

表1 不同大小船舶的可视化准确率和信息丢失情况

4 结 论

本文着重从船舶航线的实时性和真实性角度出发,采用基于MSVG数据的船舶航线可视化方法,为船舶航线的变换和处理提供了可靠的标准,提高了船舶航线数据的使用效率,能实时屏幕显示船舶航线随船舶大小、运行环境、船速的变化而变化及船舶随波浪上下起伏等动态效果。最后,通过Java编程语言实现的MSVG航线可视化效果图验证了该方法的可行性。

参考文献:

[1]REICHENBACHER T.Adaptive Methods for Mobile Cartography[C].The 21st International Cartographic Conference(ICC),Durban:2003.

[2] REEVES W T.Particle Systems-a Technique for Modeling a Class of Fuzzy Objects[J].Computer Graphics,1983,17(3):359-376.

[3] 王洪,艾廷华,祝国瑞.电子地图可视化中的自适应策略[J].武汉大学学报:信息科学版,2004,29(6):525-528.

[4] 魏星,张磊,吴义国.一种基于多模式匹配的文本压缩算法[J].现代计算机:专业版,2011(6):28-30.

上一篇:船舶承租人与船舶所有人关注气象导航的不同价... 下一篇:上海游艇市场管理对策