论文部分内容阅读
摘 要:利用Open Inventor三维图形开发包来进行地质储层可视化。通过面向像素可视化技术,得到了地质数据的三维显示,实现了以图形的形式显示数据体的空间模型。
关键词: Open Inventor 地质储层 可视化
通过对地质储层的可视化,实现了数据--图形转换,在空间中再现了地质数据的特点。用三维真实感图像表达地质储层,直观展示储层物性参数空间分布。可应用于油藏模拟的分析和处理,指导油田开发。以往实现储层可视化一般都使用OpenGL图形库进行开发,但OpenGL提供的函数并不多,只有一百多个核心函数,而且OpenGL使用的是面向过程的编程方法,提供的功能过于基本和底层,因此不易在短时间内掌握。作者在本文中采用的是目前使用比较广泛的三维图形开发包Open Inventor来作为开发工具。
一、Open Inventor简介
Open Inventor是一个面向对象的跨平台的专业三维图形软件,提供广泛的面向对象集(超过1300个易于使用的类),并集成了用户友好的系统架构进行快速开发。Open Inventor使用的是面向对象的编程方法。通过一个个类对象,开发人员有可能花费最小的代价,开发出能充分利用图形硬件特性的程序,且程序具有简单、高效的特点。
二、地质储层可视化的具体实现
地质储层的可视化可分成三个步骤,分别为:建模、数据处理以及颜色映射。
1.建模
建模通常表现为用来定义几何对象的顶点数据。在本文中即为布网格,为数据--图形变换建立一座桥梁,把数据和图形联系到一起。步网格过程为根据地質储层数据中给定的X、Y、Z方向的起始点、步长值以及网格数目,就可以确定图形的大致形状。使用的网格为三维不规则笛卡尔网格,在Open Inventor中类PbCartesianGrid3D描述了此网格。三维不规则笛卡尔网格的每个单元是六面体,六面体相对的两个面不一定是平行的,因而单元块不一定是的长方体或者正方体,网格点之间的间距互不相同。这类网格的数据必须有显式的坐标信息。数据在网格上的排列顺序是沿Z、Y、X方向排。设numX表示网格模型X方向的节点数,numY表示网格模型Y方向上 的节点数,numZ表示网格模型的Z方向的节点数,共有(numX-1)*(numY-1)*(numZ-1)个单元格。图1的例子中numX=5,numY=4,numZ=2,该网格的几何结构由X坐标数组X、Y坐标数组Y、Z坐标数组Z定义,每个数组均有numX*numY* numZ个元素。v是数据数组,Pijk这一点的X坐标是x[i*numY*numZ + j*numZ + k],Y坐标是y[i*numY*numZ + j*numZ + k],Z坐标是z[i*numY*numZ + j*numZ + k],数据值为v[i*numY*numZ + j*numZ + k]。
2.数据处理
数据处理作用于第一步建模后的顶点数据,目标是确定哪些数据对象可以在屏幕上显示。通过地质建模软件petrel,使用克里金插值算法得到每个网格的深度值,使用地质统计学算法模拟出对应网格的三维空间坐标。由这两个算法获得了一组四维坐标向量。即为步网格时所需的数据。因为通过petrel导出的数据可能存在无效值,所以需要对这些无效值进行处理。本文中所采用的办法是对四维坐标向量的前三个分量(即对应网格的三维空间坐标)进行范围约束。对每个三维空间坐标的X、Y、Z设定最大最小值,满足在这个最大最小范围内的坐标向量就是有效值,插入到网格中,否则就为无效值,舍弃。
3.颜色映射
颜色映射负责把颜色值赋给网格。网格就是潜在的像素。每个网格都具有一个颜色属性以及在屏幕坐标系中的位置属性,网格的位置属性对应于缓存中某个像素的位置。网格的颜色要么由顶点属性决定,要么通过顶点颜色插值计算得到。本文中采用的是由顶点属性得到网格颜色。在第二步数据处理后,得到了有效的四维坐标向量,其中最后一个分量即为每个网格的深度值(即网格的属性值)。对这些网格的属性值进行处理,得到最大值和最小值,求出两个最值差值的绝对值。然后对这个绝对值均等分,由份数确定有多少种颜色,每一个属性值对应一种颜色。在Open Inventor中利用PoNonLinearDataMapping2类中的成员函数对读取的属性值进行颜色赋值。
三、结束语
本文利用Open Inventor显示地质储层,大大简化了程序开发过程。通过建模、数据处理以及颜色映射三个步骤,根据基于像素的可视化技术,实现了数-形转换。可以对显示的三维图形进行任意旋转和剖切,从不同的角度观察储层外部形态及其内部特征。用三维图形表达地质储层模型,加深了使用者对油藏非均质性的认识和理解。不过在数据处理部分只是对数据做了范围约束而进行限制,还比较粗糙。因此还需要搜寻新的算法来对数据进行更加合理的处理。
图 1 三维不规则笛卡尔网格
参考文献
[1]李攀,王明君,傅旭志,夏立显.基于OIV的三维地层可视化[J].物探化探计算技术,2008(4).
[2]阎锋欣,侯增选,张定华,等.Open Inventor程序设计从入门到精通[M].北京:清华大学出版社,2007.
[3]张荣华,宋雨,刘书刚,等译.交互式计算机图形学-基于OpenGL着色器的自顶向下方法[M].北京:电子工业出版社,2012.
[4]朱良峰,潘信,吴信才.三维地质建模及可视化系统的设计与开发[J].岩土力学;2006,,27(5):828.
[5]JOSIE WERNECKE,OIV ARCHITECTURE GROUP.The Inventor Toolmaker:Extending OIV,Release 2 [M].Boston:Addison-Wesley Professional,1993.
关键词: Open Inventor 地质储层 可视化
通过对地质储层的可视化,实现了数据--图形转换,在空间中再现了地质数据的特点。用三维真实感图像表达地质储层,直观展示储层物性参数空间分布。可应用于油藏模拟的分析和处理,指导油田开发。以往实现储层可视化一般都使用OpenGL图形库进行开发,但OpenGL提供的函数并不多,只有一百多个核心函数,而且OpenGL使用的是面向过程的编程方法,提供的功能过于基本和底层,因此不易在短时间内掌握。作者在本文中采用的是目前使用比较广泛的三维图形开发包Open Inventor来作为开发工具。
一、Open Inventor简介
Open Inventor是一个面向对象的跨平台的专业三维图形软件,提供广泛的面向对象集(超过1300个易于使用的类),并集成了用户友好的系统架构进行快速开发。Open Inventor使用的是面向对象的编程方法。通过一个个类对象,开发人员有可能花费最小的代价,开发出能充分利用图形硬件特性的程序,且程序具有简单、高效的特点。
二、地质储层可视化的具体实现
地质储层的可视化可分成三个步骤,分别为:建模、数据处理以及颜色映射。
1.建模
建模通常表现为用来定义几何对象的顶点数据。在本文中即为布网格,为数据--图形变换建立一座桥梁,把数据和图形联系到一起。步网格过程为根据地質储层数据中给定的X、Y、Z方向的起始点、步长值以及网格数目,就可以确定图形的大致形状。使用的网格为三维不规则笛卡尔网格,在Open Inventor中类PbCartesianGrid3D描述了此网格。三维不规则笛卡尔网格的每个单元是六面体,六面体相对的两个面不一定是平行的,因而单元块不一定是的长方体或者正方体,网格点之间的间距互不相同。这类网格的数据必须有显式的坐标信息。数据在网格上的排列顺序是沿Z、Y、X方向排。设numX表示网格模型X方向的节点数,numY表示网格模型Y方向上 的节点数,numZ表示网格模型的Z方向的节点数,共有(numX-1)*(numY-1)*(numZ-1)个单元格。图1的例子中numX=5,numY=4,numZ=2,该网格的几何结构由X坐标数组X、Y坐标数组Y、Z坐标数组Z定义,每个数组均有numX*numY* numZ个元素。v是数据数组,Pijk这一点的X坐标是x[i*numY*numZ + j*numZ + k],Y坐标是y[i*numY*numZ + j*numZ + k],Z坐标是z[i*numY*numZ + j*numZ + k],数据值为v[i*numY*numZ + j*numZ + k]。
2.数据处理
数据处理作用于第一步建模后的顶点数据,目标是确定哪些数据对象可以在屏幕上显示。通过地质建模软件petrel,使用克里金插值算法得到每个网格的深度值,使用地质统计学算法模拟出对应网格的三维空间坐标。由这两个算法获得了一组四维坐标向量。即为步网格时所需的数据。因为通过petrel导出的数据可能存在无效值,所以需要对这些无效值进行处理。本文中所采用的办法是对四维坐标向量的前三个分量(即对应网格的三维空间坐标)进行范围约束。对每个三维空间坐标的X、Y、Z设定最大最小值,满足在这个最大最小范围内的坐标向量就是有效值,插入到网格中,否则就为无效值,舍弃。
3.颜色映射
颜色映射负责把颜色值赋给网格。网格就是潜在的像素。每个网格都具有一个颜色属性以及在屏幕坐标系中的位置属性,网格的位置属性对应于缓存中某个像素的位置。网格的颜色要么由顶点属性决定,要么通过顶点颜色插值计算得到。本文中采用的是由顶点属性得到网格颜色。在第二步数据处理后,得到了有效的四维坐标向量,其中最后一个分量即为每个网格的深度值(即网格的属性值)。对这些网格的属性值进行处理,得到最大值和最小值,求出两个最值差值的绝对值。然后对这个绝对值均等分,由份数确定有多少种颜色,每一个属性值对应一种颜色。在Open Inventor中利用PoNonLinearDataMapping2类中的成员函数对读取的属性值进行颜色赋值。
三、结束语
本文利用Open Inventor显示地质储层,大大简化了程序开发过程。通过建模、数据处理以及颜色映射三个步骤,根据基于像素的可视化技术,实现了数-形转换。可以对显示的三维图形进行任意旋转和剖切,从不同的角度观察储层外部形态及其内部特征。用三维图形表达地质储层模型,加深了使用者对油藏非均质性的认识和理解。不过在数据处理部分只是对数据做了范围约束而进行限制,还比较粗糙。因此还需要搜寻新的算法来对数据进行更加合理的处理。
图 1 三维不规则笛卡尔网格
参考文献
[1]李攀,王明君,傅旭志,夏立显.基于OIV的三维地层可视化[J].物探化探计算技术,2008(4).
[2]阎锋欣,侯增选,张定华,等.Open Inventor程序设计从入门到精通[M].北京:清华大学出版社,2007.
[3]张荣华,宋雨,刘书刚,等译.交互式计算机图形学-基于OpenGL着色器的自顶向下方法[M].北京:电子工业出版社,2012.
[4]朱良峰,潘信,吴信才.三维地质建模及可视化系统的设计与开发[J].岩土力学;2006,,27(5):828.
[5]JOSIE WERNECKE,OIV ARCHITECTURE GROUP.The Inventor Toolmaker:Extending OIV,Release 2 [M].Boston:Addison-Wesley Professional,1993.