首页| 行业资讯| 企业名录| 周边产品| 数字城市| 增强现实| 工业仿真| 解决方案| 虚拟医疗| 行业仿真| 图形处理| 军事战场
用户登录/注册 ×
资讯首页
行业资讯 >> 专业文献
基于GIS的海洋观测数据虚拟仿真研究
时间:2019-11-12    评论:0
    来源:第三维度
    作者:高锡章,冯杭建,李伟
    单位:中国科学院地理科学与资源研究所
        浙江省地质矿产研究所
        浙江工业大学计算机学院,

    摘要:在分析海洋观测数据三维可视化必要性的基础上,提出在海洋 GIS 中集成海洋数据三维可视化功能是解决当前海洋观测数据信息深层次挖掘难题的关键。对海洋观测数据三维可视化关键技术,包括三维可视化开发技术、海洋要素场数据模型、海洋要素场三维可视化流程、离散观测数据内插方法等,进行了系统分析。此基础上,根据海洋观测数据的特点,选择 OpenGL 和 IDL 作为三维可视化开发技术,采用 C++和 VC++语言开发用于海洋观测数据处理、分析的三维可视化组件 CMa3DView,并集成到自主研发的海洋 GIS 系统——MaXplorer 中。实际应用表明,基于提出的海洋观测数据三维可视化方法能较直观的再现复杂的海洋环境,从而为海洋科研工作者揭示抽象数据变化规律以及理解、分析各种复杂海洋现象,提供强有力的辅助工具。

    引 言

    海洋现场观测数据(或实测数据),常见数据种类有台站数据、船舶报数据、断面测量数据、ADCP 测量数据和浮标数据(包括 ARGO)等[1-2],是最重要的海洋数据之一,空间几何类型表现为点。其基本特点是:真实性和离散性,是“海洋复杂现象的真实反映”[3]。然而,由于海洋环境十分复杂,动态交换频繁,对于这些离散观测数据,海洋科技工作者很难从中发现规律,需对其进行可视化以及数据分析,才能更好的帮助理解海洋现象。当前,人们对海洋的开发和利用已经达到了立体化水平,而地理信息系统(GIS)一般只能处理地球表面的信息,具有简单的 2.5 维的功能,如数字高程模型(DEM),对于垂向上两个以上的采样值或界面无法处理,因此在表现真三维的自然和人工现象时无能为力[4-5]。这使得海洋三维原始数据的深层次信息得不到充分的挖掘,三维信息处理受到严重的制约。所以,海洋数据的三维可视化及分析成为当前海洋科学研究急需解决的问题,主要表现在以下几方面:

    1、海洋实测数据大多是立体三维的,以前的二维平面可视化方式表达太抽象,无法真实再现海洋复杂环境,这给海洋科学工作者的数据分析带来很大困难;

    2、三维可视化将抽象的、难于理解的海洋数据以三维图形图像的形式直观的显示出来,更利于理解数据的变化规律,同时也将枯燥繁杂的数据变得易于理解和分析;

    3、海洋实测数据具有多维的特点,二维可视化技术已不能表达其分布规律,而三维可视技术可以以“场”、“体”等的形式表达该类数据,同时能进行各类可视分析,如:切片、切块、生成等值面等;

    4、海底地形数据的三维可视化,能比较真实的反应地形地貌,同时可加入各种人工对象要素(如浮标、船只等),创建逼真的三维虚拟环境,通过与用户交互提供更多的信息,这是二维可视化技术无法达到的。

    海洋 GIS(Marine GIS,简称 MGIS)是刚发展起来的GIS 科学的一个分支,在近几年得到迅速发展,但其概念到目前为止还无统一定义[6-10]。高锡章[11]等人从广义和狭义两个方面较为系统地论述了海洋 GIS,其中狭义海洋 GIS 的概念要求从本质上体现海洋科学及应用的特点,必须研究传统GIS 技术在海洋数据模型、表达和管理上的不足或不适宜,针对海洋数据的特点,对传统 GIS 模型进行扩充或改进,设计面向海洋数据的 GIS 数据模型,实现海洋领域多源多维、动态的海量数据的统一管理及表达,特别是三维动态表达,这种海洋 GIS 是真正意义上的海洋 GIS。因此,在海洋 GIS中集成海洋数据三维可视化功能是解决当前海洋观测数据深层次信息得不到利用充分、信息处理受到制约的关键,也是当前海洋 GIS 研究所需解决的首要问题。

    本研究正是基于狭义海洋 GIS 的理解,依托“中国海岸带及卫星遥感综合应用系统软件平台”海洋 863 项目,开发出能实现海洋观测数据三维模拟、分析和可视化的海洋 GIS 系统——MaXplorer,从而真正实现海洋观测数据的三维可视化表达与分析。

    1 海洋 GIS 三维技术研究现状

    表达问题是海洋 GIS 面临的最大问题[12]。目前与三维有关的海洋 GIS 研究比较少,主要应用在海底地形重建、海岸带景观模拟、海洋三维要素数据模拟与分析等方面,这些应用功能单一,且主要是面向可视化,没有将地理空间的概念集成进来。1985 年,GIS 第一次应到海洋数据的分析与表达,但当时计算机三维图形图象技术只是限于二维层次上,还没有比较成熟的三维图形开发库,因此,对海洋数据的可视化也只能是二维的。1992 年发布的第一个商用海洋 GIS软件包——CARIS 以及 1993 年推出的 ECDIS 系统,也只能以二维的模式来表达三维数据。1992 年,SGI 公司推出后来成为三维图形标准 OpenGL 1.0 版,使得三维可视化技术得到飞速发展,并迅速被应用到各个行业,也带动了海洋三维GIS 的发展。在国际上,90 年代中期,日本开发的 Marine Explorer 海洋 GIS 软件系统,功能主要集中在海洋制图上,也对海底地形的三维模拟进行了研究,并取得了较好的效果。在随后的几年中,三维 GIS 技术在海洋的应用仅限于海底地形的模拟。2000 年,美国 New Hampshire 大学开发的Marine GIS 软件系统具有三维 GIS 特点,它将海洋探测中取得的海底地形数据,经过一定的处理,进行三维可视化,得到海底虚拟地形。

    该系统具有真正的地理空间参考,主要致力于海底及海岸带景观模拟,互操作性较强,并具有三维分析功能,如:剖面分析、异常点检测等,同时还提供了海底地形制图功能。ESRI 公司的 ArcGIS 软件在海洋 GIS 中一直占着主导地位,1999 年,其推出三维模块(ArcScence),以传统 GIS 的数据模型表达三维 GIS 数据,并在海洋地形模拟中得到应用。2002 年底,ESRI 公司提出海洋数据模型草案,主要是面对海洋三维数据,对 GIS 在海洋中的应用必将起到很大的推动作用。在国内,三维技术在海洋方面应用比较少见,周治武等[13]设计和开发的海底地形地貌地理信息系统,该系统以基于 DTM 技术,在海底地形地貌的综合解释、深槽分析等方面取得了较好的效果。

    2 关键技术

    2.1 三维可视化开发技术

    要对海洋数据进行三维可视化模拟,选取三维开发技术是首要任务。目前,使用比较多的三维图形开发技术有OpenGL、IDL、Direct3D、Java3D、和 VRML 等,它们可以方便地实现对三维模型的构造。这五种开发技术都提供了对三维图形的交互操作,是虚拟地学环境可视化系统实现中的关键技术,但由于海洋数据的特点,并不是所有这些技术都能方便的实现海洋环境和数据的三维可视化。本研究通过实际应用开发(主要是针对地形模拟),从性能、可操作性、效率等方面考虑来剖析这些技术的性能优劣,以选取适合海洋 GIS 中离散观测数据三维可视化的开发技术。通过分析比较,应该说 IDL 是比较理想的海洋三维实现技术,但由于IDL 是商业软件,不对普通用户开放,且基于该软件开发的应用程序无法脱离平台运行,这不利于所开发应用软件的发布。因此,本研究只是对其进行了尝试性的开发工作,而最终的海洋三维可视化组件是基于 OpenGL 来实现的。这主要是因为 OpenGL 具有较好扩展性[14],虽说其开发难度较大,但理论上它可以实现 IDL 所能实现的全部功能。

    2.2 海洋要素场数据模型

    离散观测数据的三维可视化的最大目的,就是为了使“不可见”的海洋场活生生的呈现在海洋科研工作者的面前。在进行具体系统开发工作之前,需要对海洋场的概念、分类以及数据模型有一个清晰的定义和认识。海洋场是一个连续场,海洋场表现为海洋要素的场分布,即海洋数据的场分布,这是海洋和海洋科学的基本特点。按照物理学的理解,海洋场可以理解为某种物理要素在空间的分布海洋场种类繁多,有波浪场、温度场、盐度场、密度场、流场、叶绿素浓度场等,但归结起来,分类上可分为标量要素场(ScalarField)和矢量要素场(VectorField),其组织结构模型见图 1。

图 1 海洋要素场数据模型

    2.2.1 标量要素场

    标量要素场与基础地理对象模型中的 GRID 对象相类似,但在数据组织和实际含义有所不同,首先要素标量场需考虑时间因素,因为海洋中的标量要素场大多是有时间序列的;其次,GRID 对象一般是比较规整的格网,有固定的行、列数,数据充满整个格网空间,而海洋标量场由于测量手段的限制,大多没有规整的边界,其数据所填充的空间是也是不规则的。因此本模型在普通场(Field)的基础上设计了标量场类(ScalarField),以表达海洋标量场的特殊性。标量场分为二维标量场和三维标量场(图 2)。二维标量场用来表达平面要素的分布,如海洋表面温度;三维标量场用来表达标量场二维标量场 三维标量场海体中要素的分布,如某海域海洋的盐度分布等。标量场的数据组织与 GRID 对象基本相同,但其是多个 GRID 场的组合(多个时间序列),在计算机表达上,采用栅格的方式表达,数据存储采用二维或三维数组的形式来组织。

图 2 二维标量场和三维标量场
    2.2.2 矢量要素场

    矢量要素场也与基础地理对象模型中的矢量场类似,但矢量要素场中大多有时间序列,表达的是某个变化趋势或变化过程。矢量场的数据在本质上与标量场没有区别,只是在每一数据点上都加入了一个方向矢量,用以表达要素的变化或移动方向。海洋要素矢量场从现象描述上来说,几乎都是三维的,但基于目前海洋观测和分析方法的水平,在研究三维矢量场时,去掉第三维或做切片,将三维矢量场抽象为二维矢量场(图 3),这样也可基本描述现象的变化趋势,但在整体性把握上还是不够的。矢量场的表达方式比较多,矢量场有基于六面体单元和基于几何形状(如矢量点、矢量线、矢量面等)、基于颜色、光学特性及基于纹理等的表达方法[15]。基于海洋要素的特性,本模型采用基于矢量点的方式来表达矢量场,因此定义了二维矢量点和三维矢量点对象,矢量场最终通过一定数目的矢量点在计算上可视化。

图 3 二维矢量和三维矢量场

    2.3 海洋要素场三维可视化流程

    三维海洋要素场实际上也属于一种三维空间数据场,因此其可视化过程与其它三维空间数据场的可视化过程大体相同。无论采用何种开发技术,对三维空间数据场的可视化的基本流程大体相同,具体流程如下:

    第一步,数据读取。即将三维空间数据文件输入计算机。本研究中涉及的三维要素场数据格式二进制,数据以行、列和垂直三个方向上按顺序排列,文件头为对整个数据块的说明,如行列数据、数据类型等。在数据库中的存储也基本相同,只是作一个对象的方式作为一个字段来处理。

    第二步,数据处理。对数据的分析方不同及数据类型的不同,这一步的功能也各不相同。对于数据量过大的数据,需加以精炼和选择,以适当减少数据量,但必须最大限度的减少有用信息的丢失,主要是用重采样技术来操作。相反地,当数据分布过分稀疏而有可能影响可视化的效果时,需进行有效的插值处理。

    第三步,可视化映射。这是整个流程的核心,其含义是:将经过处理的原始数据转换为可供绘制的几何图素和属性。这里,映射的含义包括可视化方案的设计,即需要决定在最后的图像中应该看到什么,又如何将其表现出来。也就是说,如何用形状、光亮度、颜色及其它属性表示出原始数据中人们感兴趣的性质和特点。这一步,在 IDL 中表现为光照和颜色的设置,而对原始数据的转换,其提供了相应的库函数据来实现,但在 OpenGL 中,对原始数据向几何图素的转换必须开发者自己来实现,这也是用 OpenGL 实现三维场数据可视化的难点。

    第四步,显示图像。将第三步产生的几何图像和属性转换为可供显示的图像。所用方法是计算机图形学中的基本技术,包括视见变换、光照计算等。

    2.4 离散观测数据内插方法

    海洋观测数据是离散的,为了使数据均匀分布,必须要进行内插。海洋观测数据的内插就是将分布不连续的离散数据,按其属性值(如温度、盐度、密度、深度、高程等)在空间上用插值算法,生成规则连续的 GRID 数据。本研究中,针对不同类型的海洋离散点数据,实现了不同的处理方式。

    对于二维离散点数据,如海面温度、海底地形高程等,引入地学中的空间数据插值方法,采用二次曲面拟合和移动平均相结合的方法进行插值。

    对于具有深度维的三维离散观测点数据,如盐度等,由于它只表达了海体中某些测点的要素值,而要研究海洋现象,必须得到海体内任一位置的要素值。从散点得到面或体数据的过程,就要进行插值。目前,二维插值技术已比较成熟,而三维插值问题目前仍处于研究和探索中,已有的各种三维插值方法,虽然基本思想大至类似于相应的二维插值,但是技巧上难度更大,结构上程度也更复杂。对于三维插值,本研究扩展克里金和距离反比插值算法,用三维克里金和三维距离反比插值算法来实现插值,从而得到观测海体中每一点数据,同时可通过切片的方式方便得到观测区域内每一深度的要素变化规律。

    3 系统实现

    在本研究中,海洋观测数据的三维可视化功能是作为MaXplorer 系统的一个组件(CMa3DView)存在。MaXplorer的实现全部从底层开发,数据的可视化、分析等,全部用C++和 Visual C++实现。海洋观测数据三维可视化分为海洋要素场三维可视化和海洋背景数据三维可视化。

    1、海洋要素场三维可视化

    本研究中,海洋三维标量要素场是海洋实测数据经处理后生成的三维 Grid 数据,该数据呈体状分布,因此对其可视化必须从三维体的角度来考虑。从实测数据生成三维要素场是通过三维插值实现。本研究选取 IDL 作为海洋三维要素场可视化技术,因为 IDL 提供了丰富的可视化分析工具,如直接体绘制等,可以满足海洋三维要素场可视化和分析的需要,且实现过程比较简单。将 IDL 和 VC++结合起来,将 IDL嵌入 VC++,从而将 IDL 编程环境集成到 MaXplorer 系统的开发中。三维要素场的可视化分析主要包括要素场的三维体显示、对要素体的切片/切块显示、生成等值面等。

    2、海洋背景数据三维可视化

    海洋背景数据包括海岸带地形数据、岸线数据、海底地形数据及海岸带遥感数据等,其中海岸带地形数据包括海岸带基本地形数据及其它辅助数据,如:河流、道路等。一般来说海底地形数据的原始数据为高程点,需经过插值形成GRID 或构造 TIN,然后再进行显示。对于海岸带遥感数据,一般作为地形的纹理来可视化。经比较分析,作者认为要想实现海洋数据三维一体化显示,OpenGL 是最佳选择。本研究将 VC++和 OpenGL 结合编程,对海洋各类数据一体显示做了一些尝试。

    3.1 基于 OpenGL 的多源海洋数据三维一体化表达

    海洋数据一体化显示的前提是各类数据都有实际的地理坐标,这对海洋背景数据是不难做到的,但海洋实测或要素场数据,由于进行了一些中间转化,很容易丢掉其地理空间信息。海洋数据三维一体化显示,其结果应该是在三维海洋背景数据上显示海洋要素及实测数据。

    基于 OpenGL 的海洋数据三维一体化显示应通过以下步骤实现(图 4 为实现的多源海洋数据三维一体化显示效果):

    1、在 OpenGL 三维场景中对海洋背景数据进行可视化;

    2、在已创建的海洋背景场景中,对海洋实测及要素场数据进行三维坐标匹配。也就是在海洋背景场景中,找到实测或要素场数据的显示空间位置。这与二维坐标匹配原理相同,且由于实测数据(要素场数据)都有自己的第三维数据,因此不涉及高程匹配问题;

    3、在海洋背景场景中,对海洋实测及要素场数据进行可视化。对海洋实测数据的可视化是采用画点的方式,通过不同颜色表达所测数据的值。

图 4 多源海洋数据三维一体化显示

    3.2 基于 IDL 的海洋三维标量要素场可视化

    本研究对海洋三维标量要素场的可视化分析主要包括要素场的三维体显示、对要素体的切片/切块显示、生成等值面等。海洋标量要素场的三维体显示,最直观的方法就是整体显示。本研究通过对 IDL 的编程,利用 IDL 强大的三维图形绘制功能,来实现海洋要素场的三维显示及分析。

    在 IDL 中对三维要素场的可视化,是通过直接体绘制算法来实现的,空间中每一个网格点称为体素(Voxel),具体可视化实现一般需经过以下几步:

    1、读取数据。一般先用 IDL 的 Open 函数来打开数据文。本研究的三维要素场数据是通过自主开发的插值算法从实测数据得到的,是以二进制方式存储,数据类型为浮点型。

    2、对于已读入内存(以三维数组形式存储)中的数据,首先进行数据处理。对三维要素场的显示,本研究采用的假彩色绘制方法,因此须将读入的数据进行拉伸,使数据分布于 0-255 之间,以为每个体素按调色板进行赋值。

    3、数据经过前期的处理,即可通过 IDL 的 PolyFill 函数来实现绘制要素体。PolyFill 通过指定不同的参数可以实现不同的绘制方式。图 5 为通过以上步骤实现的中国东海某区域 1958-1981春季温度场三维可视化结果。

图 5 海洋温度场三维可视化

    三维要素场通过 IDL 可视化形成体,由于计算机表达局限性,无法表达要素场内部的要素分布情况,因此,必须对要素体进行切片/切块分析,以让工作者能直观的了解要素场内部数据分布规律。本研究中,切片/切块是通过鼠标在视图中操作来实现的,切片可纵切、横切及斜切,切块有两种操作方式:

    添加和挖去,挖去是将大数据块中相应的块挖掉,就好像是用刀将其割去。图 6 为各种切块效果图,数据来源同图 5。

图 6 海洋温度场切块效果图
    4 结论

    基本表达是海洋 GIS 的首要问题。为了能真实、动态的表达海洋各类现象,必须对海洋数据进行可视化模拟,海洋数据的特点决定了海洋数据三维可视化是海洋数据表达的核心。本研究根据海洋各类数据的特点,选用 OpenGL 实现了海洋背景数据的三维可视化和海洋数据一体化显示,选用 IDL 实现了海洋三维要素场的三维可视化,开发了动态三维可视化组件,以表达海洋环境中的2.5维和真三维的数据。并通过C++和VC++语言集成到海洋 GIS 系统 MaXplorer 中,为海洋科技工作者揭示、理解、分析各种海洋现象提供了强有力的辅助工具。

    然而,海洋是一个极复杂的生态系统,其现象也是复杂多变的。涡漩(冷涡、暖涡等)、锋面(也称流隔、潮境)、水团等第三类海洋现象[16]是海洋中广泛存在的重要现象,对于这类现象的可视化本系统还未实现,有待课题组进一步深入研究。

    参考文献:

    [1] 苏奋振, 周成虎, 杨晓梅, 等. 海洋地理信息系统理论基础及其关键技术研究[J]. 海洋学报. 2004, 26(6): 2-28.

    [2] 杜云艳, 苏奋振, 杨晓梅, 等. 中国海岸带及近海科学数据平台研究与开发[J]. 海洋学报. 2004, 26(6): 29-36.

    [3] 王跃山. 数据同化—它的缘起、含义和主要方法[J]. 海洋预报.1999, 16(1): 12-15.

    [4] 李清泉, 李德仁. 三维空间数据模型集成的概念框架研究[J]. 测绘学报. 1998, 27(4): 325-330.

    [5] 方裕, 景贵飞, 景贵飞, 等. 第四代 GIS 软件研究[J]. 中国图象图形学报. 2001, 6(9): 817-823.

    [6] Coppock J T, Rhind D W. The History of GIS. Geographical Information Systems: Principles and Applications [M]. Harlow,Longman/ New York, John Wiley & Sons Inc., 1991: 21-43.
    
    [7] Hill J M, Ecans D L, Blackmon J B. Development of a Permit Geographic Information System for Coastal Zone Management,Technical Papers [C]// 51st Annual Meeting, ASP, Washington DC,USA, 1985, 1: 284-293.

    [8] Davis B, Davis P. Marine GIS: Concepts and Considerations [C]//Proceedings of the AGI Conference, San Antonio, ACSM/ASPRS,1988, 1: 159-168.

    [9] Manley T O, Tallet J A. Volumetric Visualization: An Effective use of GIS Technology in the Field of Oceanography [J]. Oceanography,1990, 3: 23-29.

    [10] 王红梅, 朱振海. 海洋地理信息系统国内外研究进展[J]. 遥感技术与应用, 1999, 14(3): 49-53.

    [11] 高锡章. 基于大型数据库的海洋 GIS 设计与自主开发研究[D]. 杭州: 浙江大学博士论文, 2004.

    [12] Goodchild M F. Geographical Data Modeling [J]. Computers and Geosciences (S9830-3004), 1992, 18(4): 401-408.

    [13] 周治武, 刘永, 陈飞翔. 海底地形地貌地理信息系统的设计与实现[J]. 计算机与现代化, 2003, 3:19-21.

    [14] 费广正, 乔林. Visual C++高级编程技术——OpenGL 技术[M]. 北京: 机械工业出版社, 2000: 219-223.

    [15] 唐泽圣. 三维数据场可视化[M]. 北京: 清华大学出版社,1999:157-173.

    [16] 邵全琴. 海洋GIS 时空数据表达研究[D]. 北京: 中科院地理科学与资源研究所博士学位论文, 2001. 

标签:GIS海洋
上一篇:基于Unity3D的火炮外弹道虚拟视景仿真系统下一篇:电力能源虚拟仿真教学实验系统
网友评论:基于GIS的海洋观测数据虚拟仿真研究
留名: 验证码:
最新评论
查看全部评论0
暂无评论
您可能还需要关注一下内容:
·ArcEngine下基于钻孔的离子型稀土矿三维虚拟仿真方法
·三维GIS及其在智慧城市中的应用
·GIS技术在温州市市政排水管网控制管理的应用研究 
·基于 OSG 的海洋环境三维可视化系统研究
·西门子Plant Simulation工业过程仿真软件
·基于GIS与虚拟现实的土地利用总体规划仿真展示平台设计
·基于洪水模拟和预报的三维仿真系统设计
·基于ArcGIS创建三维虚拟城市流程
·三维虚拟地球的海洋信息适用性分析及原型研究
·组件式 GIS 技术在军事仿真系统中的应用
☏ 推荐产品

小宅 Z5 2018青春版
商家:小宅

杰瑞特运动平台
商家:杰瑞特智能

Dikalis眼动追踪
商家:赢富仪器

魔神 Hawk
商家:魔神运动分析

5DT Binoculars
商家:四维宇宙

Christie DS+750
商家:四维宇宙

Zalman M220W
商家:四维宇宙

全息360°
商家:四维宇宙

PD F10 AS3D
商家:四维宇宙

PHANTOM系列
商家:四维宇宙
☞ 外设导航
☏ 企业名录
【宁波】宁波维真显示科技股份有限公司
【潍坊】歌尔股份有限公司
【上海】霍尼韦尔(中国)有限公司
【北京】科视Christie-中国
【北京】北京华如科技股份有限公司
【北京】北京乐卡仕技术有限公司
【广州】广州弥德科技有限公司
【上海】刃之砺信息科技(上海)有限公司
【北京】北京度量科技有限公司
【北京】北京小鸟看看科技有限公司
关于本站联系我们融资计划免责声明网站建设广告服务咨询策划行业推广
北京第三维度科技有限公司 版权所有 京ICP备15051154号-3
2008-2020 Beijing The third dimension Inc. All Rights Reserved.
Email:d3dweb@163.com  QQ:496466882
Mob:13371637112(24小时)
关注虚拟现实
关注第三维度