CN101650837A - 一种海洋水体虚拟现实的建模方法 - Google Patents
一种海洋水体虚拟现实的建模方法 Download PDFInfo
- Publication number
- CN101650837A CN101650837A CN200910100669A CN200910100669A CN101650837A CN 101650837 A CN101650837 A CN 101650837A CN 200910100669 A CN200910100669 A CN 200910100669A CN 200910100669 A CN200910100669 A CN 200910100669A CN 101650837 A CN101650837 A CN 101650837A
- Authority
- CN
- China
- Prior art keywords
- water body
- ocean water
- data
- ocean
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种海洋水体虚拟现实的建模方法。利用RS(遥感)数据通过方便、高效的数据处理过程和科学存储方式,并以OpenGL技术构建模型的主体,采用海表试验区轮廓线构建三维海洋水体的立体建模方法,由纹理映射表现海面波浪,利用平行轮廓线“投影”构造水体柱状体来表达RS数据的水深和水质等物理量变化情况,以体透明的方式再现了海洋水体和海底地形。本发明是在RS和GIS(地理信息***)技术支持下,利用OpenGL作为建模工具实现三维海洋水体建模的新方法。本发明有效的利用了长期积累的RS资料,经过方便可行的数据处理,通过以上的模型绘制方法来实现三维海洋水体实时建模。本发明在海洋环境监测领域中应用前景非常广泛。
Description
技术领域
本发明涉及海洋水体建模方法,具体涉及一种海洋水体虚拟现实的建模方法。用于实现海洋水体的快速、实时建模,运用该方法可在中国海区域内任意划定观测区进行三维建模。
背景技术
海洋约占地球表面积的71%,是一个开放的、具有多样性的复杂***,其中有各种不同的时空尺度和不同层次的物质存在和运动形态。目前海洋水体的表达主要以电子海图等二维地图方式,海洋温度、盐度、透明度等反演数据多以文本的形式存在。随着海洋资源的开发与利用,对于海洋水体与海洋环境反演数据三维建模与可视化的需求逐渐增加。海洋资源的开发与利用要以海洋特征和规律为基础,计算机技术、虚拟现实技术等相关技术的发展为海洋水体三维建模提供了强有力的技术支撑。
本发明的虚拟现实海洋水体实时建模是了解海洋综合环境的重要手段,是再现海洋温度、盐度、透明度等相关物理量指标的新方法。本研究提出的基于RS和GIS的海洋水体虚拟现实建模方法可以实现海洋水体的快速、实时建模,并能对中国海任意划定区域的水体建模。
随着“数字海洋”的提出,国内外海洋三维实时建模研究日益成为热点,见[1]Rinehart R,Wright D.Benthic Habitat Classification and 3-DVisualizations[C].Association of American Geographers Centennial Meeting,American,Samoa,2004.[2]Alan M,et al.Visually-enabled Geo-collaborationto Support Data Exploration & Decision-making[C].Proceedings of the 21stInternational Cartographic Conference,Durban,South Africa,2003[3]上官伟,等.真实海洋环境视景仿真技术研究[J].***仿真学报.2006:18(增2)。此外,国内外商用软件也不断推出,例如MultiGen-Paradigm.Inc的Vega。但海洋三维实时建模研究尚处于起步阶段,实时性不高,数据来源多样、复杂,商用软件价格昂贵都是目前存在的主要问题。
虚拟现实(Virtual Reality)是在计算机中构造出一个形象逼真的模型,从而生成一种具有三维世界效果的模拟环境。它是利用计算机对复杂数据进行可视化操作与交互的一种高科技手段,通过模拟的仿真虚拟环境使参观者得到身历其境的感觉。
OpenGL(Open Graphics Library)图形***是一个软件接口,让程序员能够创建交互式程序,使用计算机图形学技术生成具有真实感的图像。使用OpenGL可以控制计算机图形学技术来生成真实感图形。OpenGL包括大约250个函数,用户可以使用它们来指定物体和操作,以创建交互式三维应用程序。
本发明中涉及到的OpenGL坐标***包括以下三种:
世界坐标是OpenGL中用来描述场景的坐标,Z轴垂直屏幕向外,X轴从左到右,Y轴从下到上,是右手笛卡尔坐标***。
物体坐标是以物体某一点为原点而建立的“世界坐标”,该坐标系仅对该物体适用,用来简化对物体各部分坐标的描述。物体放到场景中时,各部分经历的坐标变换相同,相对位置不变,所以可视为一个整体,与人类的思维习惯一致。
眼坐标是以视点为原点,以视线的方向为Z轴正方向的坐标系中的方向。
随着海洋环境卫星遥感的发展,大量的RS数据已经或正在应用GIS技术进行管理与维护,海洋环境卫星遥感数据具有范围广、实时性高等特点,通过方便可行的数据处理方法和虚拟现实实时建模可以使大量的RS数据成为反映海洋水体的最直观的资料之一。
发明内容
本发明的目的是克服现有技术的不足,提供一种海洋水体虚拟现实的建模方法。海洋水体虚拟现实的建模方法如下步骤:
1)通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集;
2)对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询;
3)OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、坐标系沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置;
4)根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体;
5)以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模;
6)由平行轮廓线“投影”和地形模拟拉伸获得栅格数据集物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果。
所述的通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集步骤:是将原始海洋环境反演数据的Head文件头和数据体以文件流的形式读入内存,再将其按照栅格数据集的数据组织方式写入栅格数据集,利用Internet信息服务器检测目标文件夹下的数据文件,转换入库后删除源文件。
所述的对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询步骤:基于时间可视化方式的存储是将原始海洋环境反演数据的Head文件头中的产品周期、产品生成时间段、产品生成时间点分别保存在产品元数据表、周期性时间元数据表和瞬时性时间元数据表中,以标准的SQL时间查询语句可快速的查询出时间集合内的数据集。
所述的OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、XY轴坐标平面沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置步骤:OpenGL默认的世界坐标***的X轴、Y轴和Z轴坐标单位长度是统一的,但考虑到海洋水体数据的特征,即水平方向(X,Y)坐标范围为(东经180度至西经180度,北纬90度至南纬90度),而全球海洋深度由0米至-10000多米不等,X轴、Y轴方向与Z轴方向的坐标单位长度相差2倍数量级以上,则会造成Z轴方向过于陡峭,建模效果不佳。所以,将Z轴坐标的单位长度缩小为原始长度的1/100,即X轴、Y轴的1单位长度,在Z轴上为100。OpenGL场景的世界坐标***与眼坐标***的XY轴平面是重合于屏幕平面的,所以需要将坐标***沿垂直屏幕方向向屏幕内平移。世界坐标***为右手笛卡尔坐标***,XY轴平面与屏幕平行,生成场景的海平面与屏幕相平行,这与海平面应处于水平方向的常识不符,因此,要将坐标系旋转至Z轴向上,X轴水平向右为正方向、Y轴向上为正方向。代码如下:
GL.glScaled(1.0,1.0,1.0/100.0);
GL.glTranslatef(0.0f,-200.0f,0.0f);
GL.glRotated(90.0,1.0,0.0,0.0);
所述的根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体步骤:根据用户构造的任意海域多边形轮廓线,利用GIS的方法裁剪、掩膜海表轮廓线外的区域,构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体。将轮廓线沿Z轴向下移动至海底地形数字高程模型的最大深度,两平行轮廓线之间以上下轮廓线上的拐点利用OpenGL构造矩形面,并透明显示。海洋水体柱状体X轴、Y轴平面内的尺寸取决于用户在二维电子地图中绘制的闭合多边形的尺寸,海洋水体深度Z轴方向是海底地形数字高程模型的最大深度。
所述的以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模步骤:利用OpenGL在顶面进行海洋波浪纹理映射,贴图的位置信息来源于二维轮廓线,因海表为任意多边形,所以采用环绕模式“镜像”重复与裁剪来“补足”海表多边形映射或裁剪纹理,把海底地形数字高程模型先转换为文本文件格式,再用OpenGL原语描述出来,从而转化成OpenGL可识别的图形函数,海底地形采用单一颜色渲染,利用光照视点位置、视线方向、光照参数设置反映高程的变化。
所述的由平行轮廓线“投影”和地形模拟拉伸获得栅格数据集物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果步骤:海洋水体柱状体的侧面用来表达海洋环境反演数据随深度变化的情况,通过平行轮廓线“投影”的方式将海表轮廓线映射到海洋环境反演数据的各分层信息上,得到海洋环境反演数据的二维轮廓线范围内的横截面。经预处理的海洋环境栅格数据集的像素为(x,y,value),其中包含坐标和物理量。海洋环境栅格数据集经由文本文件转换至OpenGL原语,再由地形模拟拉伸,即将物理量值value作为高程方向Z的坐标,以数字高程模型的方式拉伸获得显著直观的分层信息。海洋水体表面采用透明显示以便从任意角度透视各分层海洋环境反演数据。
本发明与现有技术相比具有有益效果:
1)实时的三维海洋水体建模,有效的利用了海洋环境卫星遥感数据,提出了从卫星数据到OpenGL建模的解决方法,大大缩短了数据处理周期,与传统船测数据相比,时效性有了很大的提高;
2)对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询;
3)通过海表试验区轮廓线构建方法可以构造出任意观测区的海洋水体立方体。这种实时的体构造方法能够更好的适应用户的需要;
4)海洋水体虚拟现实建模是海洋环境监测的新手段。在建模完成后,能够清晰的反映出海洋温度、盐度、透明度等海洋环境反演数据物理量的变化情况,能够很好的对海洋环境进行监测,预报海洋自然灾害的发生,例如赤潮等;
5)本发明是基于RS和GIS环境下,利用OpenGL作为建模工具实现三维海洋水体建模的新手段。有效的利用了海洋环境卫星遥感资料,通过划定中国海范围内任意观测区实现实时的三维海洋水体建模,可视化结果清晰、直观。本发明在海洋环境监测领域应用前景非常广阔。
附图说明
图1为本发明中RS海洋环境反演数据源文件格式示意图;
图2为本发明基于GIS的海洋环境反演数据处理方法示意图;
图3为本发明基于时间的可视化存储方法示意图;
图4为本发明建模前坐标***转换示意图;
图5为本发明海表试验区轮廓线构建海表示意图;
图6为本发明环绕模式“镜像”重复与裁剪示意图;
图7为本发明场景生成的数据准备步骤示意图;
图8为本发明生成的海洋水体场景示意图。
具体实施方式
海洋水体虚拟现实的建模方法如下步骤:
1)通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集;
2)对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询;
3)OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、坐标***沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置;
4)根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体;
5)以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模;
6)由平行轮廓线“投影”和地形模拟拉伸获得栅格数据集物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果。
所述的通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集步骤:原始海洋环境反演数据是十六进制的文本文件格式,如图1所示,具体格式如下表所示:
名称 | 类型 | 字节数 | 含义 | 读取方式 |
Product | char | 20 | 遥感产品名称 | ReadChars(20) |
Unit | char | 16 | 遥感产品物理量的单位 | ReadChars(16) |
Cycle | short | 2 | 产品周期(5天、10天、30天) | ReadInt16() |
Number | short | 2 | 融合的文件数 | ReadInt16() |
Syear | short | 2 | 起始年 | ReadInt16() |
Sday | short | 2 | 起始儒略日 | ReadInt16() |
Eyear | short | 2 | 终止年 | ReadInt16() |
Eday | short | 2 | 终止儒略日 | ReadInt16() |
Lat_max | float | 4 | 最北纬度 | ReadSingle() |
Lat_min | float | 4 | 最南纬度 | ReadSingle() |
Lon_max | float | 4 | 最东经度 | ReadSingle() |
Lon_min | float | 4 | 最西经度 | ReadSingle() |
Project | char | 20 | 投影方式 | ReadChars(20) |
R_lat | float | 4 | 经度分辨率(度) | ReadSingle() |
R_lon | float | 4 | 纬度分辨率(度) | ReadSingle() |
Row | short | 2 | 网格数据总行数 | ReadInt16() |
Col | short | 2 | 网格数据总列数 | ReadInt16() |
Slope | float | 4 | 从网格数据到物理量转换的斜率 | ReadSingle() |
Offset | float | 4 | 从网格数据到物理量转换的截距 | ReadSingle() |
Spare | char | 920 | 备用字段 | ReadChars(920) |
Value | short | 总行数×总列数 | 物理量值 | ReadInt16() |
将原始海洋环境反演数据的Head文件头和数据体以文件流的形式读入内存,使用循环行与列的方法读取数据块中的物理量。再将其按照栅格数据集的数据组织方式写入栅格数据集,即按照头文件的信息设置栅格数据集的宽度、高度、象元大小、空间参考、波段数,将数据块中的数据写入像素块中的像素。图2是基于GIS的海洋环境反演数据处理方法示意图。
利用Internet信息服务器检测目标文件夹下的数据文件,转换并入库后删除源文件。
System.Timers.Timer setTimer=new System.Timers.Timer(2000);
setTimer.Elapsed+=new ElapsedEventHandler(setTimer_Elapsed);
setTimer.Enabled=true;
setTimer.AutoReset=true;
setTimer.Start();
所述的对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询步骤:基于时间可视化方式的存储是将原始海洋环境反演数据的Head文件头中的周期性产品的周期值存放在产品元数据表中,非周期性产品存储为0;周期性时间元数据表存储起始日期(SDate)、终止日期(EDate)字段分别存储产品的开始年月日和终止年月日;起始时间(STime)、终止时间(ETime)字段存储产品的开始时分秒和终止时分秒。瞬时性时间元数据表存储瞬时性时间点的日期(Date)和时间(Time)。产品时间采用以上字段的集合来存储。以上时间存储对象与SQL标准中的时间类型一致,所以采用标准的SQL语言即可快速的查询出时间集合内的数据集。具体的表存储方式如图3所示。
所述的OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、XY轴坐标平面沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置步骤:OpenGL默认的世界坐标***的X轴、Y轴和Z轴坐标单位长度是统一的,但考虑到海洋水体数据的特征,即水平方向(X,Y)坐标范围为(东经180度至西经180度,北纬90度至南纬90度),而全球海洋深度由0米至-10000多米不等,X轴、Y轴方向与Z轴方向的坐标单位长度相差2倍数量级以上势必会造成Z轴方向过于陡峭,建模效果不佳。所以,将Z轴坐标的单位长度缩小为原始长度的1/100,即X轴、Y轴的1单位长度,在Z轴上为100。OpenGL场景的世界坐标***与眼坐标***的XY轴平面是重合于屏幕平面的,所以需要将坐标***沿垂直屏幕方向向屏幕内平移。世界坐标***为右手笛卡尔坐标***,XY轴平面与屏幕平行,生成场景的海平面与屏幕相平行,这与海平面垂直于人眼视线方向的常识不服,要将坐标系旋转至Z轴向上,X轴水平向右为正方向、Y轴向上为正方向。坐标***转换前后效果图如图4所示。代码如下:
GL.glScaled(1.0,1.0,1.0/100.0);
GL.glTranslatef(0.0f,-200.0f,0.0f);
GL.glRotated(90.0,1.0,0.0,0.0);
所述的根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体步骤:根据用户构造的任意海域多边形轮廓线,利用GIS的方法裁剪、掩膜海表轮廓线外的区域,构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体。将轮廓线沿Z轴向下移动至海底地形数字高程模型的最大深度,两平行轮廓线之间以上下轮廓线上的拐点利用OpenGL构造矩形面,并透明显示。海洋水体柱状体X轴、Y轴平面内的尺寸取决于用户在二维电子地图中绘制的闭合多边形的尺寸,海洋水体深度Z轴方向是海底地形数字高程模型的最大深度。
所述的根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体步骤:设置OpenGL的三维空间坐标***后,将其X轴、Y轴与空间数据的经纬度空间坐标相一致,根据用户构造的任意海域多边形轮廓线利用GIS的方法裁剪、掩膜海表轮廓线外的区域,构建三维海洋水体表面,如图5。以平行轮廓线“投影”生成海洋水体立方体模型的主体,海洋水体柱状体X轴、Y轴平面内的尺寸取决于用户在二维电子地图中绘制的任意多边形的尺寸,海洋水体深度Z轴方向是海底地形数字高程模型的最大深度。
所述的以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模步骤:利用OpenGL在顶面进行海洋波浪纹理映射,贴图的位置信息来源于二维轮廓线,因海表为任意多边形,所以采用环绕模式“镜像”重复与裁剪来“补足”海表多边形映射或裁剪纹理,把海底地形数字高程模型先转换为文本文件格式,再用OpenGL原语描述出来,从而转化成OpenGL可识别的图形函数,海底地形采用单一颜色渲染,利用光照视点位置、视线方向、光照参数设置反映高程的变化。光源和视线设置方法如下:
//定义一个随相机移动的移动光源
static float[]ambient={0.5f,0.5f,0.5f,1.0f};
static float[]diffuseLight={1.0f,1.0f,1.0f,1.0f};
static float[]specularLight={1.0f,1.0f,1.0f,1.0f};
static float[]lightPosition={0.0f,400.0f,200.0f,1.0f};
//初始化光源
GL.glEnable(GL.GL_LIGHTING);
//设置光源
GL.glLightfv(GL.GL_LIGHT0,GL.GL_AMBIENT,ambient);
GL.glLightfv(GL.GL_LIGHT0,GL.GL_DIFFUSE,diffuseLight);
GL.glLightfv(GL.GL_LIGHT0,GL.GL_SPECULAR,specularLight);
GL.glLightfv(GL.GL_LIGHT0,GL.GL_POSITION,lightPosition);
GL.glEnable(GL.GL_LIGHT0);
//动态设置光源函数
public static void SetLight()
{
Vector3vec=MyView.MyCamera.getPosition();
lightPosition=new float[]{vec.x+0.0000000100f,
vec.y-0.000000003f,vec.z-0.180f,1.0f};
}
//视线初始化向量值
Vector3zero=new Vector3(0.0f,0.0f,0.0f);
Vector3view=new Vector3(0.0f,1.0f,0.5f);
Vector3up=new Vector3(0.0f,0.0f,1.0f);
//Vector3为自定义的数据类型,是一个三维向量数据
Position=zero;
View=view;
UpVector=up;
//设置视点位置
public void setLook()
{
GL.gluLookAt(Position.x,Position.y,Position.z,View.x,
View.y,View.z,UpVector.x,UpVector.y,UpVector.z);
}
所述的由平行轮廓线“投影”和地形模拟拉伸获得海洋环境反演数据物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果步骤:海洋水体柱状体的侧面用来表达海洋环境反演数据随深度变化的情况,通过平行轮廓线“投影”的方式,即利用GIS的方法裁剪、掩膜海表轮廓线外的区域将海表轮廓线映射到海洋环境反演数据的各分层信息上,得到海洋环境反演数据的二维轮廓线范围内的横截面。经预处理的海洋环境栅格数据集的像素为(x,y,value),包含坐标和物理量。海洋环境栅格数据集经由文本文件转换至OpenGL原语,再由地形模拟拉伸,即将物理量值value作为高程方向Z的坐标,以数字高程模型的方式拉伸获得显著直观的分层信息。海洋水体表面采用透明显示以便从任意角度透视各分层海洋环境反演数据。
实施例
以2006年3月的海洋遥感温度反演数据为例,首先以文件流方式读取其头文件内的信息如下:
名称 | 值 | 名称 | 值 | 名称 | 值 |
Product | SST | Eyear | 2006 | Project | Equal Lat/Lon |
Unit | 度 | Eday | 90 | R_lat | 28 |
Cycle | 31 | Lat_max | 42.0000000000 | R_lon | 117.5 |
Number | 31 | Lat_min | 14.0000000000 | Row | 1681 |
Syear | 2006 | Lon_max | 130 | Col | 1501 |
Sday | 60 | Lon_min | 105 | Slope | 0 |
Offset | -2 |
第二、将头文件内的信息存储到元数据表中。其中,周期性产品的周期值存放在元数据表中,非周期性产品存储为0,以此数据为例,周期值为31;将儒略日转换为月和日,此处周期性产品时间记录表存储起始日期(2006-03-01)、终止日期(2006-03-31);以上时间存储对象与SQL标准中的时间类型一致,所以采用标准的SQL语言即可快速的查询出时间集合内的数据集。
第三、Z轴缩放、XY轴坐标平面沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置。
第四、用户在海表划定任意闭合多变形,栅格数据掩膜轮廓线以外的象元,矢量数据裁剪轮廓线以外的线段。海洋水体采用平行轮廓线“投影”的方法。将轮廓线投影至海底地形曲面,取该投影范围的曲面内水深DEM的最大谷值点,以该点构造一个平行于海表的平面。这样就构成了两相邻平行面。然后,依次连接上下轮廓线上各点形成矩形曲面。
第五、纹理对象采用二维的海面波纹BMP格式图像。在进行海表纹理映射时要确保各个顶点都指定了纹理坐标。用户在中国海区域内划定的观测区范围不定,而BMP纹理的宽度与高度固定,所以海面波纹的BMP图像的左侧、右侧以及上方、下方边缘相邻时为了达到较好的衔接效果,采用环绕模式“镜像”重复与裁剪,海表边缘不满一副纹理大小的部分利用裁剪的方式补足。
第六、海底地形采用单一颜色渲染,利用OpenGL绘制三维海底地形模型之前,设置光源、视点位置、视线方向等参数。
第七、同样采用试验区轮廓线构建方法获得海洋温度、盐度、透明度物理量横截面,以物理量值作为高程值,采用与地形建模相同的方式,以单一颜色和设置光源参数的方式表达出物理量的变化。由于物理量是位于体中的断面,所以体表需要设置透明度,透明度在(0,1)区间内,根据需要选择。
图7是利用上述方法创建的2006年3月近南海海域海洋水体与海洋环境反演数据三维模型。这里的海洋环境数据包括了温度和透明度,采用了分层设色、按物理量拉伸的方式,利用高低起伏的地形模拟方式再现了物理量变化的趋势。
Claims (7)
1.一种海洋水体虚拟现实的建模方法,其特征在于包括如下步骤:
1)通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集;
2)对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询;
3)OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、坐标系沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置;
4)根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体;
5)以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模;
6)由平行轮廓线“投影”和地形模拟拉伸获得栅格数据集物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果。
2.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的通过数据转换服务的方式,将原始海洋遥感环境反演数据文本格式自动转换为栅格数据集步骤:是将原始海洋环境反演数据的Head文件头和数据体以文件流的形式读入内存,再将其按照栅格数据集的数据组织方式写入栅格数据集,利用Internet信息服务器检测目标文件夹下的数据文件,转换入库后删除源文件。
3.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的对转换后的数据进行了基于时间可视化方式的存储,支持对海量遥感栅格数据集的时空特性进行快速查询步骤:基于时间可视化方式的存储是将原始海洋环境反演数据的Head文件头中的产品周期、产品生成时间段、产品生成时间点分别保存在产品元数据表、周期性时间元数据表和瞬时性时间元数据表中,以标准的SQL时间查询语句,可快速的查询出时间集合内的数据集。
4.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的OpenGL三维海洋水体场景的空间坐标***设定,经过Z轴缩放、坐标系沿垂直屏幕方向向屏幕内平移、坐标系旋转以及X、Y轴坐标单位统一至经纬度坐标完成场景坐标***设置步骤:OpenGL默认的世界坐标***的X轴、Y轴和Z轴坐标单位长度是统一的,但考虑到海洋水体数据的特征,即水平方向X坐标范围为东经180度至西经180度,Y坐标范围为北纬90度至南纬90度,而全球海洋深度由0米至-10000多米不等,X轴、Y轴方向与Z轴方向的坐标单位长度相差2倍数量级以上,则会造成Z轴方向过于陡峭,建模效果不佳,所以,将Z轴坐标的单位长度缩小为原始长度的1/100,即X轴、Y轴的1单位长度,在Z轴上100,OpenGL场景的世界坐标***与眼坐标***的XY轴平面是重合于屏幕平面的,所以需要将坐标***沿垂直屏幕方向向屏幕内平移,世界坐标***为右手笛卡尔坐标***,XY轴平面与屏幕平行,生成场景的海平面与屏幕相平行,这与海平面应处于水平方向的常识不符,因此,要将坐标系旋转至Z轴向上,X轴水平向右为正方向、Y轴向上为正方向。
5.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的根据用户构造的任意海域多边形轮廓线构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体步骤:根据用户构造的任意海域多边形轮廓线,利用GIS的方法裁剪、掩膜海表轮廓线外的区域,构建三维海洋水体表面,以平行轮廓线“投影”生成海洋水体立方体模型的主体,将轮廓线沿Z轴向下平移至海底地形数字高程模型的最大深度,两平行轮廓线之间以上下轮廓线上的拐点相连利用OpenGL构造矩形面,并透明显示,海洋水体柱状体X轴、Y轴平面内的尺寸取决于用户在二维电子地图中绘制的闭合多边形的尺寸,海洋水体深度Z轴方向是海底地形数字高程模型的最大深度。
6.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的以海面波浪纹理对海表进行贴图,海底地形经由数字高程模型转换为OpenGL原语,用单一颜色渲染与多光源参数设置建模步骤:利用OpenGL在顶面进行海洋波浪纹理映射,贴图的位置信息来源于二维轮廓线,因海表为任意多边形,所以采用环绕模式“镜像”重复与裁剪来“补足”海表多边形映射或裁剪纹理,把海底地形数字高程模型先转换为文本文件格式,再用OpenGL原语描述出来,从而转化成OpenGL可识别的图形函数,海底地形采用单一颜色渲染,利用光照视点位置、视线方向、光照参数设置反映高程的变化。
7.根据权利要求所述的一种海洋水体虚拟现实的建模方法,其特征在于所述的由平行轮廓线“投影”和地形模拟拉伸获得栅格数据集物理量横截面,透明显示海洋水体表面获得各个角度的可视化效果步骤:海洋水体柱状体的侧面用来表达海洋环境反演数据随深度变化的情况,通过平行轮廓线“投影”的方式将海表轮廓线映射到海洋环境反演数据的各分层信息上,得到海洋环境反演数据的二维轮廓线范围内的横截面,经预处理的海洋环境栅格数据集的像素为(x,y,value),其中包含坐标和物理量,海洋环境栅格数据集经由文本文件转换至OpenGL原语,再由地形模拟拉伸,即将物理量值value作为高程方向Z的坐标,以数字高程模型的方式拉伸获得直观的分层信息,海洋水体表面采用透明显示以便从任意角度透视各分层海洋环境反演数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910100669A CN101650837A (zh) | 2009-07-16 | 2009-07-16 | 一种海洋水体虚拟现实的建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910100669A CN101650837A (zh) | 2009-07-16 | 2009-07-16 | 一种海洋水体虚拟现实的建模方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101650837A true CN101650837A (zh) | 2010-02-17 |
Family
ID=41673066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910100669A Pending CN101650837A (zh) | 2009-07-16 | 2009-07-16 | 一种海洋水体虚拟现实的建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101650837A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101937576A (zh) * | 2010-09-08 | 2011-01-05 | 北京航空航天大学 | 一种结合多物理属性的动态纹理瀑布建模方法 |
CN102214368A (zh) * | 2010-04-07 | 2011-10-12 | 北京国遥新天地信息技术有限公司 | 三维全尺度数字地球的实现方法 |
CN102509350A (zh) * | 2011-09-30 | 2012-06-20 | 北京航空航天大学 | 一种基于立方体的体育运动赛事信息可视化方法 |
CN102798384A (zh) * | 2012-07-03 | 2012-11-28 | 天津大学 | 一种基于压缩采样的海洋遥感图像水色水温监测方法 |
CN102831644A (zh) * | 2012-07-09 | 2012-12-19 | 哈尔滨工程大学 | 一种海洋环境信息三维可视化方法 |
CN102881037A (zh) * | 2012-09-28 | 2013-01-16 | 深圳第七大道网络技术有限公司 | 一种在地图中绘制动态海洋的方法及装置 |
CN103198170A (zh) * | 2012-12-08 | 2013-07-10 | 北京工业大学 | 一种基于地形遥感数据的创建有限元三维实体的方法 |
CN103854302A (zh) * | 2013-12-23 | 2014-06-11 | 哈尔滨工程大学 | 一种多约束条件下的auv航行环境空间构建方法 |
CN104063904A (zh) * | 2013-06-03 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 一种模拟虚拟场景实时处理的方法和装置 |
CN105006009A (zh) * | 2015-07-02 | 2015-10-28 | 广东小天才科技有限公司 | 一种2d水体模拟方法 |
CN105278905A (zh) * | 2014-07-08 | 2016-01-27 | 三星电子株式会社 | 显示具有视觉效果的对象的装置和方法 |
CN106372367A (zh) * | 2016-09-30 | 2017-02-01 | 浙江大学 | 一种Argo浮标海洋产品的可视化仿真方法 |
CN107918949A (zh) * | 2017-12-11 | 2018-04-17 | 网易(杭州)网络有限公司 | 虚拟资源对象的渲染方法、存储介质、处理器及终端 |
CN108230436A (zh) * | 2017-12-11 | 2018-06-29 | 网易(杭州)网络有限公司 | 三维场景中虚拟资源对象的渲染方法 |
CN108305307A (zh) * | 2017-01-13 | 2018-07-20 | 北大方正集团有限公司 | 三维几何体动画的实现方法、实现***及终端 |
CN109297530A (zh) * | 2018-08-06 | 2019-02-01 | 广州海洋地质调查局 | 一种深海全水柱多环境要素信息融合方法及处理终端 |
CN110008363A (zh) * | 2019-03-19 | 2019-07-12 | 中国科学院国家空间科学中心 | 一种高级在轨***的可视化数据分析方法、***、设备及存储介质 |
CN110188488A (zh) * | 2019-06-03 | 2019-08-30 | 中国石油大学(华东) | 一种海底天然气水合物露头及周边环境的仿真方法和*** |
CN110568416A (zh) * | 2019-09-17 | 2019-12-13 | 南京莱斯网信技术研究院有限公司 | 一种基于遥感影像的雷达有效检测区域提取方法 |
CN111324658A (zh) * | 2020-02-19 | 2020-06-23 | 深圳震有科技股份有限公司 | 一种海洋温度的可视化分析方法、智能终端及存储介质 |
WO2022048036A1 (zh) * | 2020-09-02 | 2022-03-10 | 北京冰封互娱科技有限公司 | 水体配置方法、装置、设备和存储介质 |
CN114638912A (zh) * | 2022-03-16 | 2022-06-17 | 广州博进信息技术有限公司 | 海洋科学矢量数据的时空可视化与交互方法、介质及设备 |
-
2009
- 2009-07-16 CN CN200910100669A patent/CN101650837A/zh active Pending
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214368A (zh) * | 2010-04-07 | 2011-10-12 | 北京国遥新天地信息技术有限公司 | 三维全尺度数字地球的实现方法 |
CN101937576A (zh) * | 2010-09-08 | 2011-01-05 | 北京航空航天大学 | 一种结合多物理属性的动态纹理瀑布建模方法 |
CN101937576B (zh) * | 2010-09-08 | 2013-02-06 | 北京航空航天大学 | 一种结合多物理属性的动态纹理瀑布建模方法 |
CN102509350A (zh) * | 2011-09-30 | 2012-06-20 | 北京航空航天大学 | 一种基于立方体的体育运动赛事信息可视化方法 |
CN102509350B (zh) * | 2011-09-30 | 2013-12-25 | 北京航空航天大学 | 一种基于立方体的体育运动赛事信息可视化方法 |
CN102798384A (zh) * | 2012-07-03 | 2012-11-28 | 天津大学 | 一种基于压缩采样的海洋遥感图像水色水温监测方法 |
CN102798384B (zh) * | 2012-07-03 | 2014-09-17 | 天津大学 | 一种基于压缩采样的海洋遥感图像水色水温监测方法 |
CN102831644A (zh) * | 2012-07-09 | 2012-12-19 | 哈尔滨工程大学 | 一种海洋环境信息三维可视化方法 |
CN102881037A (zh) * | 2012-09-28 | 2013-01-16 | 深圳第七大道网络技术有限公司 | 一种在地图中绘制动态海洋的方法及装置 |
CN102881037B (zh) * | 2012-09-28 | 2015-01-21 | 深圳第七大道网络技术有限公司 | 一种在地图中绘制动态海洋的方法及装置 |
CN103198170A (zh) * | 2012-12-08 | 2013-07-10 | 北京工业大学 | 一种基于地形遥感数据的创建有限元三维实体的方法 |
CN104063904B (zh) * | 2013-06-03 | 2016-02-17 | 腾讯科技(深圳)有限公司 | 一种模拟虚拟场景实时处理的方法和装置 |
CN104063904A (zh) * | 2013-06-03 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 一种模拟虚拟场景实时处理的方法和装置 |
CN103854302B (zh) * | 2013-12-23 | 2016-09-28 | 哈尔滨工程大学 | 一种多约束条件下的auv航行环境空间构建方法 |
CN103854302A (zh) * | 2013-12-23 | 2014-06-11 | 哈尔滨工程大学 | 一种多约束条件下的auv航行环境空间构建方法 |
CN105278905A (zh) * | 2014-07-08 | 2016-01-27 | 三星电子株式会社 | 显示具有视觉效果的对象的装置和方法 |
CN105278905B (zh) * | 2014-07-08 | 2022-06-21 | 三星电子株式会社 | 显示具有视觉效果的对象的装置和方法 |
CN105006009B (zh) * | 2015-07-02 | 2020-03-24 | 广东小天才科技有限公司 | 一种2d水体模拟方法 |
CN105006009A (zh) * | 2015-07-02 | 2015-10-28 | 广东小天才科技有限公司 | 一种2d水体模拟方法 |
CN106372367A (zh) * | 2016-09-30 | 2017-02-01 | 浙江大学 | 一种Argo浮标海洋产品的可视化仿真方法 |
CN108305307A (zh) * | 2017-01-13 | 2018-07-20 | 北大方正集团有限公司 | 三维几何体动画的实现方法、实现***及终端 |
CN107918949A (zh) * | 2017-12-11 | 2018-04-17 | 网易(杭州)网络有限公司 | 虚拟资源对象的渲染方法、存储介质、处理器及终端 |
CN108230436A (zh) * | 2017-12-11 | 2018-06-29 | 网易(杭州)网络有限公司 | 三维场景中虚拟资源对象的渲染方法 |
CN109297530B (zh) * | 2018-08-06 | 2019-08-23 | 广州海洋地质调查局 | 一种深海全水柱多环境要素信息融合方法及处理终端 |
CN109297530A (zh) * | 2018-08-06 | 2019-02-01 | 广州海洋地质调查局 | 一种深海全水柱多环境要素信息融合方法及处理终端 |
CN110008363A (zh) * | 2019-03-19 | 2019-07-12 | 中国科学院国家空间科学中心 | 一种高级在轨***的可视化数据分析方法、***、设备及存储介质 |
CN110008363B (zh) * | 2019-03-19 | 2021-10-22 | 中国科学院国家空间科学中心 | 一种高级在轨***的可视化数据分析方法、***、设备及存储介质 |
CN110188488A (zh) * | 2019-06-03 | 2019-08-30 | 中国石油大学(华东) | 一种海底天然气水合物露头及周边环境的仿真方法和*** |
CN110188488B (zh) * | 2019-06-03 | 2023-04-07 | 中国石油大学(华东) | 一种海底天然气水合物露头及周边环境的仿真方法和*** |
CN110568416A (zh) * | 2019-09-17 | 2019-12-13 | 南京莱斯网信技术研究院有限公司 | 一种基于遥感影像的雷达有效检测区域提取方法 |
CN111324658A (zh) * | 2020-02-19 | 2020-06-23 | 深圳震有科技股份有限公司 | 一种海洋温度的可视化分析方法、智能终端及存储介质 |
WO2022048036A1 (zh) * | 2020-09-02 | 2022-03-10 | 北京冰封互娱科技有限公司 | 水体配置方法、装置、设备和存储介质 |
CN114638912A (zh) * | 2022-03-16 | 2022-06-17 | 广州博进信息技术有限公司 | 海洋科学矢量数据的时空可视化与交互方法、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101650837A (zh) | 一种海洋水体虚拟现实的建模方法 | |
CN103714167B (zh) | 一种灾害信息时空数据在线三维显示方法 | |
Zhou et al. | Digital preservation technology for cultural heritage | |
CN105069020A (zh) | 自然资源数据三维可视化方法和*** | |
CN108919944A (zh) | 一种基于数字城市模型实现在显示端进行数据无损交互的虚拟漫游方法 | |
Zhao | Application of 3D CAD in landscape architecture design and optimization of hierarchical details | |
CN107330964A (zh) | 一种复杂三维物体的显示方法及*** | |
Lu et al. | Design and implementation of virtual interactive scene based on unity 3D | |
CN105184843B (zh) | 一种基于OpenSceneGraph的三维动画制作方法 | |
CN111986306A (zh) | 一种一体化数据展示与仿真平台 | |
Li et al. | A VR-Ocean system for interactive geospatial analysis and 4D visualization of the marine environment around Antarctica | |
CN117422839A (zh) | 基于多维空间地理信息大数据的gis***及gis***服务方法 | |
CN113421338A (zh) | 一种将二维矢量进行三维渲染的方法 | |
Zhang et al. | [Retracted] Virtual Reality Design and Realization of Interactive Garden Landscape | |
Han et al. | Design and implementation of smart ocean visualization system based on extended reality technology | |
Qi | Computer aided design simulation of 3D garden landscape based on virtual reality | |
Fanini et al. | A new approach from 3D modelling and scanning of archaeological data to realtime online exploration | |
Li et al. | Research on 3D International River Visualization Simulation Based on Human‐Computer Interaction | |
Yutong et al. | Research on model optimization based on 3DS max modeling | |
CN114627258B (zh) | 一种重力场双体球同构建模方法与*** | |
Fricker et al. | Intuitive design through information maps | |
CN109147041A (zh) | 一种基于虚拟现实技术的水域管理仿真*** | |
CN117392315B (zh) | 一种基于分布式光伏出力动态绘制星光图的算法 | |
Yang et al. | Three-dimension visualization of environmental scalar data based on GeoSOT-3D Grids | |
Ling et al. | Landscape conservation design based on digital technology support |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20100217 |