2. 三一高空机械装备有限公司,浙江 湖州 313000
2. Sany Aerial Work Equipment Ltd., Huzhou 313000, China
目前很多大型远洋商用集装箱、散货船均已开发使用无人驾驶功能。2016年,国外研究机构提出无人驾驶船队远程监控控制构想,支持驾驶员远程监控船舶航行状态,并远程控制船舶航行[1-3]。船舶航行状态远程监控的核心功能,是通过传感器感知船舶航行环境信息,并从空间、时间的角度全面显示。所以,船舶航行状态远程监控过程中,驾驶员对航行内容的认知特别关键。
周毅[4]设计智能船舶船岸一体视频远程管理系统,此系统从视频监控效果优化角度,优化船舶远程监控视频流畅度,完成智能船舶船岸一体视频远程监控。但此系统的人机交互界面内容仅以视频、图像为主,不能提供航行状态的三维仿真可视化视觉效果。胡勤友[5]研究基于AIS移动的海上船舶自动监控系统,此系统在交通繁忙海域中,可实现船舶连续式监控。但其系统侧重于监控信号传输方面的性能研究,针对航行状态监控内容的优化,仍需深入探究。
除此之外,当下很多船舶监控系统的研究,均以航行位置、航向监控为主,不能更为真实地显示船舶航行环境信息[6]。为此,本文分析3D可视化设计在船舶航行状态监控系统中的应用,设计基于3D可视化的船舶航行状态监控系统,主要使用Unity3D 引擎,设计具备3D可视化能力的船舶航行状态监控系统,为驾驶员提供沉浸式、仿真式的人机交互界面场景服务,全面显示船舶的三维航行环境信息。
1 基于3D可视化的船舶航行状态监控系统 1.1 舰船航行状态监控系统结构基于3D可视化的船舶航行状态监控系统结构如图1所示。系统结构分为传感、通信、数据融合、3D可视化显示模块,3D可视化显示模块用于显示电子海图、航行状态信息。数据融合处理模块收到多种传感器感知的导航数据后,对其进行融合、存储等管理。传感、通信模块分别用于感知船舶航行环境信息、监控信息传输。传感模块采集航行环境信息后,由以太网发送至数据融合处理模块,计算船舶碰撞风险度后,将航行状态信息,全方位显示于3D可视化显示模块的界面之中。
3D可视化显示模块主要使用Unity3D 软件完成航行场景三维设计,此软件属于一种具备增强现实能力的三维设计引擎。其使用交互式图形界面,打造船舶航行状态的三维式信息监控场景。图2为Unity3D 软件的功能结构框图。逻辑单元功能是管理船舶航行状态监控信息的逻辑关系。AI单元用于管理船舶航行状态监控场景的物体、角色,为用户提供沉浸式交互体验。持久性数据管理单元可管理多种航行状态数据,主要分为数据保存、数据更新管理。指导单元可在系统界面为用户提供操作提示。图形用户界面与渲染单元的功能分别是监控场景图形设计、场景像素与着色设计。
当下常用的三维可视化引擎包含OpenGL、DIRECT3D、VRML 、JAVA3D图形库。此类3D引擎主要通过矩阵坐标转换的方式,完成可视化设计,此类转换也叫做集合管道、转换管道。为降低航行状态3D可视化显示的操作难度,本文采用3D可视化设计方法,转换模型仅包含模型空间设计、世界坐标系设计、投影面坐标系设计3种内容。3D可视化设计原理如图3所示。
船舶航行状态监控时,世界坐标系、投影面坐标系、投影中心分别为xyz、xoy、R。世界坐标系中实体点、投射线分别为
$ \left( {\begin{array}{*{20}{c}} x \\ y \\ z \end{array}} \right) = \left( {\begin{array}{*{20}{c}} {x'} \\ {y'} \\ {z'} \end{array}} \right) + H\left( {\begin{array}{*{20}{c}} {x'' - x'} \\ {y'' - y'} \\ {z'' - z'} \end{array}} \right) 。$ | (1) |
其中:
设船舶航行状态监控时,视线、可视化设计投影面的交点位置是Q(x,y,z),因投影面和
$ 0 = z' + H\left( {z'' - z} \right),$ | (2) |
$ H = \frac{{z'}}{{z' - z''}},$ | (3) |
把式(2)、式(3)代入式(1),则
$ x = \frac{{x'z'' - z'x''}}{{z'' - z'}},$ | (4) |
$ y = \frac{{y'z'' - z'y''}}{{z'' - z'}} 。$ | (5) |
其中,
基于2D矢量地图数据中,针对点状、线状、面状地物而言,设置
$ x = \frac{{x'z'' - z'x''}}{{z'' - z'}},$ | (6) |
$ y = \frac{{y'z''}}{{z'' - z'}}。$ | (7) |
针对
为保证船舶航行状态不出现危险,首先运算船舶航行状态碰撞风险度,把船舶航行状态碰撞风险度计算结果,以三维可视化的方式,从时间变化、空间变化的角度,动态呈现于操作界面中。船舶航行状态碰撞风险可视化处理方法的运行流程如图4所示。此模型能够动态运算船舶碰撞风险度,运算过程中,需要运算船舶附近船舶的会遇距离最小值、会遇时间最小值,并结合经纬度地理坐标,运算所监控船舶与附近障碍物的距离,构建风险度运算模型,系统根据风险度的警示颜色,对航行信息进行颜色处理,展示船舶的三维航行状态。
以表1所示的船舶作为实验对象。
船舶航行状态监控画面效果如图5所示。从图5可知,本文系统可由3D可视化设计的方式,全面显示船舶的三维航行环境信息。可直接在此界面进行远程式航行状态监控,且航行环境信息清晰可见。
测试本文系统利用基于3D可视化设计的航行状态地图显示模型,打造船舶航行状态地图3D显示效果时的操作速度,设置航行状态地图显示比例尺分别是1:5000、1:10000、1:15000、1:20000,测试本文系统对不同比例尺的地物可视化速度,结果如表2所示。从表2可知,航行状态地图显示比例尺逐渐增大时,本文系统利用基于3D可视化设计的航行状态显示模型,打造船舶航行状态3D显示效果时,操作速度逐渐变慢,由此可知,船舶航行状态3D显示效果的设计,与投影对象存在直接联系,但在实验测试中,船舶航行状态地图比例尺为1∶20000时,本文系统对地物可视化操作的耗时均值仅有561 ms,操作速度较快。
为深度测试本文系统的应用优势,以表3所示的2种障碍物为例,使用本文系统,计算船舶航行状态监控时碰撞风险度。
设置表3所示的2种障碍物,测试本文系统在监控船舶航行状态时防碰撞效果。首先计算2种障碍物与所监控船舶目标之间会遇距离、会遇时间,并结合经纬度地理坐标,运算所监控船舶与附近障碍物的距离,从而计算碰撞风险度。计算结果如表4所示。从表4可知,本文实验所监控船舶目标与障碍物之间的碰撞风险度,随着航行时间增长,风险度数值逐渐增大,表示碰撞的概率增大。
测试本文系统使用3D可视化设计前后,船舶航行状态变化,结果如图6所示。从图6可知,本文系统使用3D可视化设计前,船舶仅航行至位置(8 km,3 km),便因障碍物碰撞问题结束航行。本文系统使用3D可视化设计后,船舶正常运行至终点。这是因为这本文系统能够将船舶航行的碰撞风险度信息,以3D可视化的状态呈现,及时全面地显示预警信息,从而协助船舶避障,优化船舶的航行状态监控效果。
基于3D可视化的船舶航行状态监控系统全面、立体展示了船舶航行状态监控信息,并标注船舶航行状态的碰撞风险信息,为实现船舶航行状态监控提供有力支持,及时全面地显示预警信息。
[1] |
方琼林, 郭志富. 基于自适应分数阶Kalman滤波的船舶视觉跟踪[J]. 中国航海, 2021, 44(1): 75-80+105. FANG Qiong-lin, GUO Zhi-fu. Ship visual tracking with adaptive fractional kalman filter[J]. Navigation of China, 2021, 44(1): 75-80+105. DOI:10.3969/j.issn.1000-4653.2021.01.013 |
[2] |
高泽宇, 张鹏, 曹乐乐, 等. 基于自适应阈值的船舶柴油机状态监控[J]. 船舶工程, 2021, 43(12): 172-177. DOI:10.13788/j.cnki.cbgc.2021.12.27 |
[3] |
王志刚, 刘震, 马天宇. 基于数字孪生的汽轮机叶片装配虚实交互系统[J]. 船舶工程, 2022, 44(10): 1-7. |
[4] |
周毅, 何金平, 华先亮, 等. 智能船舶船岸一体视频远程管理系统设计应用[J]. 船海工程, 2021, 50(3): 113-116. DOI:10.3963/j.issn.1671-7953.2021.03.028 |
[5] |
胡勤友, 张蓓, 杨春, 等. 大量海上AIS移动基站对全球船舶监控效果的仿真及可视化[J]. 上海海事大学学报, 2022, 43(2): 14-18. |
[6] |
蔡智媛, 余龙, 杨俊, 等. 基于航行逻辑划分语义标签的可视化分析方法[J]. 中国舰船研究, 2022, 17(6): 59-69. CAI Zhiyuan, YU Long, YANG Jun, et al. Visual analysis semantic label method based on navigation logic division[J]. Chinese Journal of Ship Research, 2022, 17(6): 59-69. DOI:10.19693/j.issn.1673-3185.02590 |