基于TIN-Octree的三维地质模型构建方法研究
2019-08-13尚福华杨彦彬杜睿山
尚福华 杨彦彬 杜睿山
摘 要:在三维地质模型中,不能有效的分析地层与断层之间的形态与结构,提出了基于TIN-Octree混合空间数据模型的精细三维地质体构建方法。分析两者的地质形态与连接状态,形成良好的数据映射剖面,并利用Octree的编码特性,增加对象的描述精度以及存储性能,可以有效地为油气勘探开发提供可视化效果。并结合实际地质地震勘探解释成果资料的应用,表明该模型构建方法可以有效地建立地质体三维模型,具有良好的应用价值。
关键词:不规则三角网(TIN);Octree;TIN-Octree混合模型;三维建模
中国分类号:TP319 文献标识码:A
Research on Construction Method of 3D Geological
Model Based on TIN-Octree
SHANG Fu-hua1,YANG Yan-bin1?覮,DU Rui-shan2
(School of Computer & Information Technology,Northeast Petroleum University,Daqing,Heilongjiang 163318,China)
Abstract:In 3D geological models,the form and structure between strata and faults can not be effectively analyzed. A method of constructing fine 3D geological body based on TIN-Octree mixed spatial data model is proposed.The geological morphology and connection state of the two are analyzed.A good data mapping section is formed.And using the encoding characteristics of Octree,Increases the description accuracy and storage performance of objects.It can effectively provide visual effects for oil and gas exploration and development.Combined with the application of the actual geological seismic interpretation results,It is shown that the method can effectively establish 3D models of geological bodies.It has good application value.
Key words:irregular triangulation network (TIN);Octree;TIN-Octree mixture model;3D modeling.
三维地质模型的概念最早由加拿大Simon W.Houlding[1]于1993年提出,总体的概念可以理解为三维地质建模是利用计算机技术来研究地质结构和地质现象,描述地质数据、空间逻辑和地质属性,并进行三维可视化交互的科學与技术。空间数据模型一直是解决此类问题的核心概念,模型的选择将直接决定三维建模的可视化效果。近年来,空间数据模型的分类仍以面元模型、体元模型和混合模
型[2]为主。其中面元模型主要是用来表示三维空间物体的表面,其优点在于数据的计算处理相对简单,且占用的存储空间小;体元模型数据结构主要是对三维空间体的表示,优点是体属性信息的表达较好;但存储与计算速度都不是很理想。
目前对于混合三维模型的研究已经比较广泛,周国清,黄煜等人提出基于纹理数据和SCSG-BR表示的城市建筑物混合建模[3]就是以结构实体几何与边界表示模型展开的;李江应用线框与块体混合模型(Wire frame+Block)完成矿山多模型构建[4];杨利容在某复杂铀矿矿体建模中,对利用TIN + GTP混合模型解决了建模过程中三维网格剖分、网格节点插值以及矿体边界处理等关键技术问题[5];高琴[6]采用TIN-GTP-TEN混合建模方法和VTK工具,对现有TIN和GTP模型结构进行改进,实现了快速建模精细显示。
在各个领域上建模所使用的三维地质模型都没有相应的固定结构,从而导致不同的领域的侧重点上各有不同,功能上也存在差异[4,7,8]。而以上模型建立的目的在于使用相对较好的三维空间模型完成真实的地质形态模拟。三维空间模型的建立,其作用不单单只是依靠可视化来分析地质数据,由于生产需要,在建立模型的过程中就会利用当前的建模形态去产生相应的计算因子(比如在封闭性中,Vsh的曲线,以及断距值等)。从而避免不了对于曲线与断距等数据的计算,而这些数据不仅仅决定建模的可视化应用,也对后台数据的计算产生至关重要的作用。本文利用混合模型的概念来处理空间关系的复杂状况,研究重点在于地层与断层交界处利用TIN-Octree混合模型表达两种层面之间的逻辑关系与空间映射关系,从而产生剖面细致化的计算条件。
2 TIN-Octree空间数据模型概述
2.1 TIN数据模型概述
TIN模型通过将很多互不重叠的三角面连接在一起构成三维物体表面。而TIN模型中的Delaunay可以最大限度的减少对初始曲面形态的计算时间并且能够产生良好的可视化感受。现有的三角网生成方法可以分为三类:分治算法,逐点插入法和三角网生长算法[9]。由于地质数据的特性,分治算法的子集点不易确定、而另外两类的最坏时间复杂度都可能达到o(n2),但根据数据可能具有奇点,从而最终确定利用逐点插入法进行建模,可以在构建过程中消除不利建模的特征点,从而可以确保三维空间模型的精度[10]。
2.2 Octree数据模型概述
八叉树是一种数据结构的表现形式,具有非线性的特征,在表现上包含按分支定义的层次结构与树形结构,大多数是参考类型树的方式去实行递归定义[11]。但两者都是按照空间的结构去定义和表
达,从而实现对于三维地质体的分析和特征的表示,这样构造以八叉树为模型,来对地质体的三维进行空间的构造,从而研究相对应的拓扑表达式与组织结构,所以利用此模型建模可以很好的表达出空间信息的内部属性,也便于信息的检索,所以,被广泛的应用到解决特定的问题中。其总体形态示意图如图1所示。
2.3 TIN-Octree混合数据模型概述
基于TIN的面元模型的特点,相对于其他空间数据模型来说,其对地质层面的模拟结果较为准确,但不能很好地表达出层面之间的地质情况;基于Octree的体元模型可以根据三维地质模型精度的要求,将地质区域划分为一个个小的地质块体,所划分的块体越多,建立的模型表达上越精细,但对地质层面的表达上却不如TIN精确,复杂度也相对较高;基于TIN-Octree混合空間数据模型可以利用以上两种空间数据模型的优点,实现优势互补,从而建立横纵向都精确的三维地质模型。
根据构建过程中网格的分布,可以判断Octree模型中每个单元格的位置,综合位置信息与地质体的形态的变化来确定模型深度,即细化单元格的大小,不但可以表达出实际的地质现象,而且可以节省计算效率。同时利用Octree模型通过对单元格的剖分,可以实现对某一研究区域的三维地质属性模型具有较高精度的形态描述。
3 TIN-Octree空间数据模型的构建
基于TIN-Octree混合空间数据模型构建的过程是通过TIN算法构建出TIN的构造地层格架三维地质平面模型;再根据Octree的数据结构特点,建立以TIN模型为基础的Octree模型算法,即基于TIN模型结构的地层格架模型建立为Octree结构的地质模型,实现TIN三维地质模型能以Octree三维地质模型充实内部结构。对于TIN-Octree空间数据模型的建立,关键是如何在TIN模型与Octree模型之间建立相应的关系,包含相应的断面,以及地层形态。在建立该模型的过程当中,面模型建立的准确性将直接决定体模型的计算趋势与节点的计算。所以从两者的相关性来说,需找出相对真实的数据去完成整体的构建。TIN模型与Octree模型的相关性如图2所示。
在完成Octree模型构建之前,其深度的大小是决定模型计算精度的决定性条件,而精度是根据地质人员研究需求、计算机运算速度以及计算机存储能力来决定的,即在对研究区进行精细建模时,所提供的计算机计算速度越快,存储空间越大,对单元格划分得越小,所建立的三维模型就越精细。这就从模型表达上为构建具有较高精细特点的模型结构提供了可能,同时在计算属性的时间复杂度上一定会有所提高,综上所述使深度值划分为单一的属性去建立Octree模型是不可避免的。
3.1 地层与断层网格架构的模型建立
基于TIN的构造地层模型主要是通过对地层数据进行处理,起始数据为空间点数据构成,正确的划分地层数据,通过对相同层位的坐标,生成TIN的三维地层面模型的基本点,再通过面化处理。使用的数据主要是地层数据和断裂带数据。其建模流程如图3所示。具体建模步骤为:
(1)根据地层数据按照一定分布规则,投影生成空间点分布类型;
(2)按照地层划分规则进行地层连线。包括时间上的地层划分与人为数据模拟的地层圈定的范围;
(3)利用地层坐标与相应深度数据,通过校正,将线数据进行三维化;
(4)利用构建好的三维地质连线插值成TIN
面。在插值的过程当中,需要注意各个剖面的地层连线保持一致,这样才能保证某一地层形态的准确性;
(5)由于在计算的过程当中需要插值,可能会出现不同地层的交叉情况,或者因为某一个突出的地层数据,出现尖锐地层,为了保证相邻地层面成体的实现,需要对每个地层面进行拓扑重构。
当利用断层数据进行建模的过程中,需要重复构建地层时的建模步骤来完成断层构建的过程。在构建断层剖面进行到步骤(4)的过程中,考虑到断面在纵向方向中一定存在断层中某个点与地层面上的某一个点相交或者邻近。对于同一地层并且在同一个断层水平剖面的相对位置当中,存在两个上述交点,也就是地层在断层剖面磋开时将形成的中间宽、两面窄的断裂区域,此区域在断面上可能存在相交区域,此部分的断面网格构建将直接影响后期属性值的计算,虽然此断面通过建立地层时,已经完成TIN三角网格的构建,但是问题在于该面的TIN构成不符合断层面上构建TIN网格的要求,需要重新建立三角网格。过程如下:
Step1:确定相交点集,查找并确定断层与地层之间相交的深度范围,在此范围中将存在若干地层空间数据点,利用水平坐标的限制,可形成类似于一维的数据点集;
Step2:计算相交点,采用空间的距离依次计算得到的数据集,确定相交点或者邻近点并重新拟合新的交点,而得到的该交点可定义为断层与地层之间的交点。并将此交点作为断层数据中的一部分,并插入到断层数据当中。
Step3:记录边界数据是通过第二步计算的同时,根据地层属性形成两套地层边界的数据结果,分别为地层面的上盘边界数据与下盘边界数据。
Step4:利用两套边界数据集与断层数据相结合构建断面模型。
通过上述面模型的构建过程,结合边界数据的标注,在重构面模型的过程当中查找相对真实的空间交点,有利于地层模型与断层模型之间空间形态的描述。实现基于TIN的构造地层与断层模型的生成,完成带断层约束的三角剖分[12]。
3.2 基于TIN构建Octree数据模型
3.2.1 井轨迹的处理
利用测井数据,处理相应的测井深度与垂直深度这两类相关数据。为了减少计算机本身的计算误差,需要进行数据的细化处理,目的在于处理后的细化数据与深度相关的其他属性相结合,形成所研究内容的基本数据标准,同时,在细化的过程中需要将地层数据以及曲线数据进行拟合处理,得到计算机可以使用的属性数据。综合以上两点,可以得到数据中含有两种深度类型以及具有一定规范化的三套数据。
3.2.2 地层属性的建立
基于TIN的面元模型在X,Y,Z方向上是不规则三角网的形式存在的,而Octree模型在X,Y,Z方向上是排列的叶节点空间单元,因此,首先要确定模型中存在多少网格单元。
地层序列定义的内容包括:地层层数、名称、两类深度划分、加密系数、颜色。地层数:表示在TIN面元模型中有多少个地层;地层名称:表示每一个地层的名称;两类深度划分:层对应的测深位置与垂深位置;地层加密系数:模型的单元格深度;地层颜色:模型的单元格颜色。
3.2.3 Octree模型划分体系
定义好地层属性之后,需要对整体模型进行划分。模型网格划分包括:确定模型网格的边界、模型的编码与构造、有效性分析、模型属性的计算。Octree模型划分体系构建关系判断如图4所示。
(1)模型网格边界
对于模型的边界判断要从两个方面获取,一是横向划分,二是纵向划分。
在纵向上的问题是如何知道地层模型中某一地层的厚度。需要确定当前地层平行于水平面之间的范围差,找出该地层点之间的垂直距离,也就是该地层中拥有最小垂直深度与最大垂直深度之间的差值,将此差值作为该地层最大厚度。并利用井轨迹与地层之间的交点与得到的差值结果形成包围盒,模型的绘制区域将在此包围盒中。最终所研究的区域为包围盒中两个地层线之间的范围。
而横向上的边界虽然是包围盒的水平边界。但需要利用节点信息判断节点中是否包含断层,并且该节点的深度是否符合要求。
(2)Octree模型的編码与构造
以TIN的网格节点作为某一面结构上的离散点数据,根据地层数据模拟的地质对象,本质上是形成三维体素矩阵,而且每一个矩阵中的体素仅有唯一的三维坐标。
1)编码过程:
体素矩阵中坐标到二进制形式的转换,公式如下:
通过压缩交换的计算,得到线性八叉树编码qn-1,qn-2, … q0,其中qk = zk*2^2 + yk * 2^1 +xk*2^0,k = 0,1,2,…,N-1。
2)解码过程:
将编码过程逆转,将二进制编码还原成压缩前体素矩阵的存储状态,如1X要改变成(10,11,12,13,14,15,16,17)这种常规的八叉树编码,公式如下:
为完成解码过程设计算法如下。
Step1:将编码数组octreeOptimization转化为octreeConvention这种常规的线性编码,并将数据依次导入到数组octreeConvention中,便可以得到地质体体素的个数;
Step2:利用上述公式将octreeConvention中的元素分别计算其坐标位置,并存入到矩阵vMatrix中;此矩阵作为三维体素矩阵;
Step3:输出地质体的坐标矩阵。
通过上述过程,得到三维体素与三维坐标之间的相互对应关系,奠定属性计算的基础,优化体建模的空间复杂性。
3.2.4 Octree模型的有效性
在构建Octree模型的过成中,判断该单元格是否被构建,根据模型边界、模型中间不需要构建的区域以及地层边界位置缺失的状态,来定义单元格的有效性。其中参数名称为ISACTION。在有效性判断的过程当中,只需要断定某一父节点是否存在叶子节点。若存在,则该单元格有效性设置为TRUE;反之,该单元格有效性设置为FALSE;通过以上处理,可以完成以TIN面元模型构建Octree模型。
3.2.5 模型属性的计算
模型属性即钻孔数据在断层面上的属性映射分布。首先需要确定在地质体的坐标矩阵中确定断层起始位置,并找到某一地层的深度范围,其中断层两侧属性应相同,计算过程如下:
Step1:在钻孔数据中找到相应地层,确定计算区域;
Step2:判断地层位置,若某地层的上盘线与下盘线相交,需重新拟合地层范围,将以地层线为标准,计算地层线上的属性值,重新计算某范围的属性。
Step3:提取Octree叶节点的位置信息,判断所在位置比例,结合断层位置叶节点与钻孔位置叶节点以及断层位置叶节点大小计算钻孔位置叶节属性值。将其定义为子节点中心值。
Step4:依次计算叶节点属性,在断层中形成线性属性值,
Step5:重复前三个步骤,直至完成整个断面中一个地层属性的计算。
利用某油田为例,利用TIN-Octree的三维地层构建某区地层与相应断层,实现的示意图如图5所示,图(a)为整体效果的绘制;图(b) 为单一显示断层面的绘制结果。
4 结 论
提出基于TIN-Octree三维地层构建方法,有利于完成地层相关属性的数据映射,客观的反应出断层剖面上利用相关映射后的数据完成所需属性的结果值运算。利用映射后的地层相关属性、Octree模型的叶节点大小以及模型深度值这三个条件,通过地质公式的计算,解决某地层中涉及到的断面属性投影,避免地層对断面投影进行顶底范围以及数据插值的反复计算,同时由于Octree本身的特性提高一定的计算精度。
参考文献
[1] SIMON W H. 3D geoscience modeling:computer techniques for geological eimracter- ization[M]. London:Spring-Vetlag,1994.
[2] 董前林. 地质矿产三维形态重构及属性场建模研究[D]. 北京:中国矿业大学,2017.
[3] 周国清,黄煜,岳涛,等.基于纹理数据和SCSG-BR表示的城市建筑物混合建模[J].地球信息科学学报,2018,20(04):543—551.
[4] 李江.基于语义尺度的矿山多模型构建与不确定性研究[D].北京:中国地质大学,2016.
[5] 杨利容.复杂矿体结构三维建模与储量计算方法研究[D].成都:成都理工大学,2013.
[6] 高琴,洪振刚,李朝晖,等.基于VTK的三维地质建模方法研究[J].工程勘察,2011,39(04):59—63.
[7] 刘苏. 三维地质模型可视化方法及应用[J].中国高新技术企业,2015(30):133—134.
[8] BAK P,MILL A. Three dimension representation in a geoscientific resource management system for the minerals industry[C]. In:Three Dimensional Applica tions in Geographic Information Systems. London:Taylor and Francis,1989:155—182.
[9] 黄诠,刘浩,梁平元.Delaunay三角网的并行构网算法[J].测绘科学,2017,42(06):171—177.
[10] ZHU Jian-wen,DANIEL D G. An ultra-fast instruction set simu-lator[J]. IEEE Transactions on Very Large Scale IntegrationSystems,2002,10(3):363—372.
[11] 吴朔媚,宋建卫,卢翠荣. 基于改进的八叉树算法三维地质建模技术研究[J].计算机仿真,2012,29(07):140—143.
[12] LV Ming-song,DENG Qing-xu,GUAN Nan,et al. ARMISS:an instruction set simulator for the ARM architecture,embedded software and systems [C]//Proc. of International Conference on ICESS'08.[S. 1.]:IEEE Press,2008.