传统的海底底质测量数据采用注记的表示方法,该方法较为简单,但同一种海底底质的范围无法准确表示,如图10-24所示。后来出现了以二维纹理加注记的形式表示海底底质,该方法用代表性纹理贴图表示不同的海底底质,如图10-25所示。由于采用二维平面表示,该方法与海底地形进行融合展示较为困难。
图10-24 注记形式表示海底底质
随着计算机图形学理论和应用领域的不断拓展,人们对海洋环境尤其是三维海底环境可视化的要求越来越高,海底底质数据与海底地形作为海底环境可视化的重要组成部分,越来越受到人们的关注。海底底质的获取可参考第7章海底声学成像原理。本小节主要介绍不同纹理底质与地形结合,实现三维海底底质与地形可视化的方法。
图10-25 纹理贴图形式表示海底底质
海底地形数据通过插值、分层分块、动态调度、实时渲染等步骤,形成了海底地形的骨架。为了表达海底底质,只需要将海底底质纹理附加到三维海底地形上即可。海底底质三维可视化的基本原理是将三维海底底质按透视投影变换到二维平面,并根据光源的位置和颜色、海底底质及反光特性等计算每个像素的颜色,或选择合适的影像作为纹理贴附于海底地形表面,以增强海底地形表达的真实感。
三维海底底质可视化主要包括三个步骤:生成海底地形、生成海底底质纹理、三维海底地形与底质融合绘制。具体流程如图10-26所示。
图10-26 海底地形与底质三维可视化流程
1.海底地形生成
海底地形的生成主要是通过海底水深采样点数据,生成水深插值数据,并构造海底地形瓦片金字塔模型。具体方法参考本章10.1.2规则格网模型构建、10.1.3不规则三角网模型构建及本节中前三小节的内容。(www.daowen.com)
2.海底底质纹理的生成
首先根据定义好的底质分类,获取该分类具有代表性的纹理,并经过边缘处理使之成为能够进行贴图的纹理,然后根据已知底质数据生成不同底质纹理区域,为地形及底质融合绘制做准备,如图10-27所示。
根据已知底质数据生成不同底质纹理区域,可通过泰森多边形法(Voronoi Diagram,VD)来划分海底底质图。不同类型底质之间有明显的分界线,影响视觉效果,该问题可通过划分纹理过渡带以及多重纹理融合的方式加以改善(陈超等,2012),纹理过渡带的生成可通过计算几何中的等距线算法生成(Gill B,2005;G Barequet,2001)。
图10-27 海底底质区域划分及可视化结果
3.三维海底地形与底质融合绘制
底质纹理多边形生成和底质纹理过渡带划分完成之后,需要计算各个顶点所对应的纹理坐标。在多重纹理中,需要为每个顶点的每个纹理单位都指定一组纹理坐标。在OpenGL、Direct3D等图形绘制开发包中,都支持多重纹理的融合绘制。基于生成的纹理坐标,通过设置各个顶点的RGB值和透明度,实现纹理的融合绘制,得到不同的纹理之间平滑过渡的效果。
三维显示时,计算当前窗口中的地形网格顶点的纹理坐标,利用纹理映射技术将底质纹理映射到海底地形上,实现海底底质的三维可视化(见图10-28)。
图10-28 海底底质区域划分及可视化结果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。