渔船姿态导航图形化界面研究

2020-12-24 13:39冯书庆徐志强王志勇谌志新
渔业现代化 2020年6期
关键词:渔船绘制姿态

冯书庆,徐志强,王志勇,谌志新

(中国水产科学研究院渔业机械仪器研究所,上海 200092)

结合远洋渔船通导航行、捕捞吊装等功能复加集成及作业品质提升需要,渔船有关姿态导航参数展示管理及高效人机交互界面设计研究的需求愈发迫切[1-3]。此外,姿态导航信息界面及设备也是渔船未来自主航行系统及远程驾驶监控系统信息采集和汇总控制的终端,是渔船管理智能化构建的重要组成。目前船载姿态设备多配置机械重锤倾斜仪,功能单一且难以集成与控制。高端渔船虽配备了电罗经、全球定位系统(GPS)等姿态、航向传感器,但界面设计仍局限于由文字、仪表、箭头等简单元素分立组成,信息表述集成关联度低、思维重构强度大,实用性差。受多种因素制约,基于综合图形动态显示的姿态描述界面,除特种舰艇外,普通渔船未有装备。

借鉴航空多功能显示器集成显示理念,设计了一种图形化渔船姿态导航多功能显示器(Multi Function Display,MFD)界面,使用计算机图形动态描述渔船导航参数信息、横摇纵摇姿态参数信息等,实现渔船工况的综合管理与高效人机交互,以支撑使用者快速掌控渔船整体状态并完成准确决策等。

1 MFD界面构图

1.1 姿态界面

渔船姿态信息常用展示界面多采用列表表述,使用者姿态重构思维强度高,可视性不强。如:鲍云飞[4]提出了表格形式的姿态信息人机交互界面;岳大超等[5]、李晶等[6]开发了双表盘仪表姿态信息图例;王小兰[7]在三维船体姿态模型的基础上配有多个仪表盘信息展示。目前,飞机飞行显示器利用“天地球”旋转角度来描述飞机横滚(横摇)、用角度刻度平移来描述飞机俯仰(纵摇),其姿态即视性表述在摇摆环境下的人机交互功效好,能帮助驾驶人员快速响应与决策[8]。

借鉴航空MFD姿态描述形式[9-10],设计了一种姿态球船舶MFD界面描述方法(图1)。使用姿态球的旋转角度表征船舶横摇、设计位于姿态球中间的刻度线偏移表征船体纵摇,使操纵者能快捷感受船舶摇摆姿态,借助本能反应来驾驶船舶。设计姿态球左右两边的滑动刻度来提示船行速度和船行加速度,展示更多船舶运行信息等。

图1 态界面示意图

1.2 导航与舵角界面

常用船舶转向机构由舵机舵叶组成,高机动能力要求的围网渔船则装配全回旋螺旋桨,实现船舶的推进与转向机动。舵角当前位置、导航方位、船艏航向及变化趋势等细节信息也有显示需求(图2),是渔船MFD界面需要研究的内容。

图2 导航界面示意图

2 图形化界面仿真

2.1 视口控制研究

MFC基础类库、LabView、Lab Windows CVI等开发软件封装了数字、表盘及图片等控件类,可以实现基本的贴图控制操作,但其存在视口构图难、多图层处理难等固有图形运算缺陷,不适用于复杂图形界面的编制控制。黄晓雪[11]、李建海等[12]提出使用GL_Studio软件进行仪表控件编辑及描述代码生成方案等,可产生供VC++ 、Vega Prime等框架应用程序调用的仪表控件动态库,但存在版权成本高、编程灵活性弱等缺点。

目前计算机图形编程领域的主流工具为DirectX多媒体编程及OpenGL开放图形库接口编程等,其两项基础类库都支持强大的三维图形渲染和控制能力[13],在图形学仿真等领域发挥了重大作用。上述工具使用具有入门难等缺点,需要使用者具有扎实的编程基础、掌握计算机图形学相关知识等。

Lab Windows CVI集成了基本OpenGL类库,具有一定的编程便利,选用该软件工具开展基于OpenGL类库的船舶MFD界面编制研究。计算机显示图形元素时,采用立体三维坐标描述图形在显示空间的姿态位置,并以视图及模型的概念表示视觉效果与空间描绘形状。OpenGL图形学中,使用局部空间、世界空间、观察空间、裁剪空间、屏幕空间等概念,分别描述图像绘制实体依存空间、构图空间、视觉空间,并通过裁剪空间、屏幕空间等的矩阵变换处理,实现最终图形展示[14](图3)。

图3 图形处理流程

计算机图形学还提出了“摄像机”概念,使用“摄像机”描述视觉角度时,有时会用“欧拉角”来描述视角的俯仰(Pitch)、航向(Yaw)和横滚(Roll),模型显示视角及光照效果计算均以此为基础[15]。

结合相关文献[16],针对船舶MFD界面显示内容要求,基于面向对象设计思想,本文应用视图模型编程方法建立图形处理流程、使用视口管理函数glViewport()和glOrtho()投影函数等构建姿态管理区、速度尺管理区等显示分区,设立图形描绘控制区,增加代码重用性。对象效果图如姿态显示视口区(图4)、速度尺显示视口区(图5)所示。

图4 姿态视口

图5 速度尺视口

2.2 图形旋转、缩放与平移

计算机图形对象的描绘也借用了空间物体的点、线、面表述方法,对象模型的“边”线表述由两点 “向量”表示,对象模型的“面”由3组(或多组)首尾相连的向量组表述,使用足够小的“面”的组合集,可以使用计算机图形拟合表述所有空间实体物体。

根据向量运算知识,使用矩阵乘法可实现对向量、面及模型对象的空间旋转、缩放和位移操作,达到图形处理目的。

(1)

(2)

(3)

在空间坐标系中,式(1)描述了模型对象绕轴旋转的矩阵运算操作,其中,θ为图形旋转的角度,x、y、z分别代表空间坐标轴;式(2)描述了模型对象在坐标系中的缩放矩阵运算操作,其中,S1、S2、S3分别表示在坐标系x、y、z轴上的缩放比例;式(3)描述了模型对象平移矩阵运算操作,式中,Tx、Ty、Tz为对象在坐标系x、y、z轴上的平移距离[17]。

基于模型对象控制理论,使用旋转运算函数glRotatef ()、缩放运算函数glScalef ()及平移运算函数glTranslatef(),分别实现了如姿态球的左旋、纵摇刻度的下移等表达目的,完成了数字字块的大小控制,满足图形控制要求(图6)。

图6 图形旋转与平移

算法处理所定义的图形空间变换处理为步骤连续的,若需要对对象实现多步骤的操作,应注意步骤顺序。例如,对对象先平移再旋转与先旋转再平移,其实现效果是不一样的,在编程设计中应予注意。

2.3 汉字纹理显示

设定船舶MFD界面需要显示汉字信息,而所使用的开发软件并不支持汉字显示功能,需要根据应用情况进行编码处理和转换[18]。参考文献[19],使用wglUseFontBitmaps()函数,将所需显示的汉字文字以纹理贴图转换方法,构建文字贴图,进行缩放处理,完成设计目标。汉字显示效果如图4 姿态视口中的垂直速度、深度、航向、舵向等字符信息所示。

2.4 着色填充策略

为提高船舶MFD界面的高效可读性,依据船级社智能集成平台检验指南建议,考察常用用色习惯,对具有统一特性的文字和数据表示进行用色设计,规定用色见表1。

表1 船舶MFD界面用色优选

软件提供了色彩处理功能,向量着色运算处理可使用颜色插值的方法,完成基于顶点颜色的中间渐变色渲染描绘。当有视角及光照渲染需要时,平台软件可基于片元展示绚丽细腻的色彩表达。考察船舶MFD界面设计用色要求,不过多展开特效渲染研究,只进行端点插值渲染。

3 绘制与展示试验

3.1 建模与实时绘制

所用软件具有强大的三维图形描绘与控制能力,复杂表述对象模型如游戏角色常采用建模工具如3D MAX、MAYA XSI软件等完成,模型文件可如OBJ文件等。附加视角和光照计算,软件渲染OBJ模型时,使用蒙皮及骨骼动画技术,可展示出栩栩如生的游戏角色[20]。另外一种对象模型绘制方法为实时动态绘制,其优点是可实时改变模型内容,实现界面调整。对象模型动态绘制的最大弊端是建模计算会占用CPU的资源,影响软件执行效率[21]。

研究了上述对象建模方法,结合各自优劣,对姿态球对象采用建模及数据库管理方式进行数据管理和装载,而对微调类数字等对象采用实时编制的方法实现绘制,兼顾了性能与效率。

3.2 图形细节优化

使用软件建模图形对象时,算法仅确定了计算机所操作像素的颜色值,再加上计算机显存低分辨率阵列模型的影响,实际在计算机屏幕空间计算并绘制模型斜线时,会有边缘锯齿现象发生(图7),影响显示效果。

图7 锯齿图

为避免因建模原因产生的锯齿噪点,工程实现可采用增加虚拟像素点阵、提高图形描绘分辨率的方法来弥消锯齿现象,如超级采样缩放抗锯齿等相关技术[22]。与图像处理技术中的邻域平均平滑算法相类似[23],多重采样抗锯齿可通过邻域像素的均值着色处理来进行图像锯齿平滑。抗锯齿处理涉及模型阵列扩大运算和像素插值运算,会占用计算机CPU资源。船舶MFD界面绘制时,当对对象元素无差别进行抗锯齿操作时,会大大占用计算机CPU运行资源,造成电脑(试验电脑配置:I7-6500/8G内存)运行卡滞,影响程序数据处理的实时性。

摩尔纹是空间特定间隔的规则光线干涉叠加所产生的光线波纹现象[24],软件建模图形对象时,在参数选取合理情况下,一般不会发生图形重绘乃至光线干涉,但在图形密集绘制时,若无差别选用了抗锯齿效果,计算机辅助算法将对所有密集图形边缘像素进行抗锯齿操作,造成相邻图形边界的重绘,产生摩尔纹现象,如图8中发散状的水波纹簇,是图形描绘时需要避免的地方。

为考察抗锯齿算法对软件运行效率的影响及界面视觉体验,本研究针对抗锯齿处理优化效果进行了研究测试和调试。试验图形绘制无差别抗锯齿运行时,观测应用软件进程占用CPU资源25%,观察到界面有大量摩尔纹现象出现;试验全部关闭抗锯齿运行时,观测应用软件进程占用CPU资源16%,观察到界面图形线条出现明显锯齿现象;试验可知抗锯齿处理可增加应用软件56.3%的CPU资源占用率。

图8 摩尔纹

在综合考虑界面显示效果和运行效率的基础上,本文采用对线条类对象绘制进行抗锯齿处理,对图形类对象绘制只做基本描绘的方式渲染界面,保证了软件运行实时性,兼顾了显示体验(图6)。

3.3 垂直导航界面展示

船舶MFD垂直导航界面展示如图9所示,画面即时信息数据可解读为:姿态横摇右倾15°、纵摇下倾18°、航速1 154 m/h、垂荡108 m/h、水深1 040 m等。垂直导航界面中,其他航向参数信息等以白标绿色字符显示,供必要时的专视读取。

3.4 水平导航界面展示

船舶MFD水平导航界面展示如图10所示,画面即时信息数据分别表示为:航向270°、舵向(相对)90°、导航方位180°等,图中航向、舵向、导航台方位角均以图形运动轨迹与安装平台随动指示,界面清晰明了。

图9 垂直导航界面

图10 水平导航界面

3.5 传感器联试

为验证MFD界面关键图形显示部分与传感信号的联动表述效果,结合试验条件,选用北微SEC385三维电子罗盘传感器[25]作为信号源在试验室内对界面软件开展了基础测试工作。SEC385三维电子罗盘传感器具有磁航向、俯仰及横滚姿态角测量能力,测量分辨率为0.01°,测量精度航向信息不低于1°、俯仰及横滚信息不低于0.1°,满足界面测试需要。

依据技术文件,采用宇泰UT-850通讯电缆实现计算机USB口与电子罗盘的信号交联、编制Modbus-RS485通讯协议,设计以计算机为主站、0.2 s周期数据交换的信令协议进行联调测试(图11)。

图11 联调测试

测试结果显示,与分立仪表或数据界面相比,当前姿态导航图形化界面中横摇和纵摇信息均以图形运动轨迹指示且与安装平台随动刷新,增加了信息获取即视性、临场感、沉浸感,具有高效信息表述能力;速度值、深度值、航向信息等以指示带平移表示,在表述当前参数值信息的同时,还隐含表述了信息变化的趋势、速率等相关信息。

测试期间MFD界面软件稳定、流畅和清晰地接收并描述各信号实时数据信息、状态变化等,软件运行可靠、鲁棒性强;在电子罗盘姿态随机变化过程中,软件界面姿态表述对于传感器数据变化响应无明显延迟,证明界面软件运行效率高、信号跟随实时性好,符合应用要求。

为增加渔船姿态导航信息的综合管理能力,综合导航界面及渔船发动机参数告警信息显示也有设计需要,但当前软件仅设计了垂直和水平导航两款分界面,后续需要开展综合姿态导航界面的研究工作。

4 结论

使用姿态球的旋转表征船舶横摇、使用刻度线(带)的偏移表征船体纵摇及速度等,信息表达相比列表格式更加清晰直观,信息容量大,交互功效好;界面使用罗盘及舵角方位的方式描述渔船航向及舵角指向,信息表述全面形象,实用性好。针对界面绘制产生的锯齿问题,对图形描绘抗锯齿处理、摩尔纹产生条件及软件运行效率开展了测试:试验无差别抗锯齿运行时,观测应用软件进程占用CPU资源25%、观察到界面有大量摩尔纹现象出现;试验全部关闭抗锯齿运行时,观测应用软件进程占用CPU资源16%,观察到界面图形线条出现明显锯齿现象,抗锯齿处理可增加应用软件56.3%的CPU资源占用率。本研究采用线条抗锯齿描绘、图元直接描绘的方法绘制界面,保证了软件运行速度,兼顾了界面体验,使用效果好;设计了姿态球对象预建模及数据库装载的方式管理复杂对象描绘,减少了计算机运行时的建模计算量,提升了软件运行效率,增强了软件运行的硬件适应性。

猜你喜欢
渔船绘制姿态
绘制童话
千舟竞发
作品赏析
攀爬的姿态
绘制世界地图
国内新型远洋金枪鱼围网渔船首航
全新一代宋的新姿态
神秘的不速之客
另一种姿态
阅读是最美的姿态