知识驱动的基岩面三维模型构建方法及装置与流程

文档序号:22968679发布日期:2020-11-19 21:46阅读:210来源:国知局
知识驱动的基岩面三维模型构建方法及装置与流程

本发明涉及三维地质建模技术领域,尤其涉及一种知识驱动的基岩面三维模型构建方法及装置。



背景技术:

基岩面是指地球陆地表面疏松物质(土壤和底土)底下的坚硬岩层面,它将第四系地质体和基岩地质体分隔开来,约束着第四系松散层的空间形态和分布范围。基岩面建模对于第四系松散层三维建模、地下资源评价、地下空间规划和利用等具有重要的研究意义和实用价值。

早期,主要根据地球物理方法观测和分析各种地球物理场的变化来探测地层岩性、地质构造等,并通过数据反演构建基岩面模型。该方法虽然适用范围广,但精度较低,且解析结果及建模质量因人而异。后来,随着工程地质钻孔数据量的不断积累,逐步形成了基于钻孔的基岩面建模方法。在钻孔数据丰富,且分布相对均匀的情况下,该方法建模精度较高;然而,该方法过分依赖钻孔数据,导致钻孔稀疏区域的基岩面模型精度较低。



技术实现要素:

发明目的:本发明针对现有技术存在的问题,提供一种在提高钻孔稀疏区域的建模精度的知识驱动的基岩面三维模型构建方法及装置。

技术方案:本发明所述的知识驱动的基岩面三维模型构建方法包括:

(1)基于研究区的地质图,获取基岩出露区边界线,并对研究区的dem数据进行裁剪,获得基岩埋藏区域的dem数据dem1和基岩出露区的dem数据dem2;

(2)根据研究区的地貌单元图层,将基岩埋藏区域划分为岗地、河谷、湖泊和平原这四类地貌单元类型,并存入地貌单元集合gu中;

(3)从地貌单元集合gu中获取任一地貌单元gui,若gui为平原,则执行步骤(6);否则,执行步骤(4);

(4)获取gui的钻孔集合rd,并根据钻孔集合rd和gui的地貌单元类型计算gui待构建埋深等值线的最大埋深值hmax和最小埋深值hmin,之后执行步骤(5);

(5)基于hmax和hmin,构建地貌单元gui的埋深等值线,执行步骤(7);

(6)基于dem1,构建地貌单元gui的虚拟钻孔集合vd;

(7)基于埋深等值线、虚拟钻孔集合vd、钻孔集合rd和dem1,构建地貌单元gui的基岩面三维模型bmi;

(8)重复执行步骤(3)至步骤(7),直至所有地貌单元的基岩面三维模型构建完成,并存储至基岩面模型集合bm中;

(9)将dem2和基岩面模型集合bm中所有栅格合并,生成研究区域完整的基岩面三维模型。

进一步的,步骤(4)具体包括:

(4-1)获取gui内的所有钻孔数据到集合rd={rdj|j=1,2,…,nrd},其中,rdj表示gui内第j个钻孔,nrd为钻孔个数;

(4-2)获取埋深值最大的钻孔rdm,将其埋深值记为hm,根据下式计算最大埋深值hmax;

式中,d为预设埋深线间距,符号[]为取整符号;

(4-3)若gui为岗地,则直接将hn赋值为零;否则,获取埋深值最小的钻孔rdn,将其埋深值记为hn;

(4-4)基于hn采用下式,计算最小埋深值hmin;

(4-5)判断是否满足hmin=d,若是,则执行步骤(5);否则执行步骤(4-6);

(4-6)根据钻孔rdm和钻孔rdn分别到地貌单元边界的最短距离调整最小值hmin,并执行步骤(5)。

进一步的,步骤(4-6)具体包括:

(4-6-1)分别获取钻孔rdm、钻孔rdn到地貌单元边界的最短距离dism、disn;

(4-6-2)根据下式计算基岩埋深为hmin-d的等值线到地貌单元边界的距离dis;

式中,hn、hm分别为钻孔点rdn、rdm的基岩埋深值,符号||为取绝对值符号;

(4-6-3)若dis≥0,则令hmin=hmin-d,然后执行步骤(4-5);否则,执行步骤(5)。

进一步的,步骤(5)具体包括:

(5-1)基于地貌单元gui的钻孔集合rd,获取用于构建基岩埋深为hmin的等值线ch1的钻孔rdu和rdv;

(5-2)若gui为岗地,则基于地质图,将gui的基岩出露线作为埋深基准线ch0,否则,将gui地貌单元边界线作为埋深基准线ch0;

(5-3)分别计算钻孔点rdu、rdv到基岩埋深基准线ch0的最短距离disu、disv;

(5-4)根据下式,计算基岩埋深为hmin的等值线ch1到基岩埋深基准线ch0的距离dis1-0;

式中,hu、hv分别为钻孔点rdu、rdv的基岩埋深值,符号||为取绝对值符号;

(5-5)基于基岩埋深基准线ch0和距离dis1-0,执行缓冲区分析,获取缓冲区边界线bline0;

(5-6)根据地貌单元gui的范围裁剪bline0,生成基岩埋深为hmin的等值线ch1;

(5-7)循环执行(5-1)至(5-6),依次构建基岩埋深为hmin+d,hmin+2d,…,hmax的基岩埋深等值线,直至地貌单元gui的所有基岩埋深等值线构建完成。

进一步的,步骤(5-1)具体包括:

(5-1-1)获取gui的钻孔集合rd,并根据埋深值,将钻孔集合rd分为子集合rd1和rd2,其中子集合rd1中钻孔的埋深值均不大于hmin,子集合rd2中钻孔的埋深值均大于hmin;

(5-1-2)若rd1和rd2均不为空,则获取rd1中埋深值最大的钻孔,记为rdu,其基岩埋深记为hu,获取rd2中埋深值最小的钻孔,记为rdv,其基岩埋深记为hv,然后执行步骤(5-2);否则,执行步骤(5-1-3);

(5-1-3)若rd1为空集,获取rd2中埋深值最小的两个钻孔作为rdu、rdv;若rd2为空集,则获取rd1中埋深值最大的两个钻孔作为rdu、rdv。

进一步的,步骤(6)具体包括:

(6-1)获取地貌单元gui的钻孔集合rd,以钻孔集合rd为基础数据通过反距离加权插值方法得到栅格面ddem;

(6-2)从基岩埋藏区域的dem数据dem1中获取地貌单元gui的dem数据demi;

(6-3)构建地貌单元gui的外包矩形rec,并在矩形rec内部生成10×10网格,将位于gui的网格交叉点存储到点集合pr中;

(6-4)从点集合pr中获取任一点prp,获取点prp在ddem上的埋深值dr,以及点prp在demi上的高程值hr,计算dr和hr的差值difr,并作为点prp的z坐标值;重复执行本步骤,直至完成集合pr中所有点的z坐标值计算;

(6-5)读取地貌单元gui的边界线到集合bl={blk|k=1,2,…,nbl},其中,blk表示第k条边界线,nbl为边界线个数;

(6-6)从集合bl中获取任一边界线blk,将边界线blk离散为点集合plk={plk,l|l=1,2,…,npk},其中,plk,l表示边界线blk上第l个点,npk为边界线blk上的点个数;若blk为基岩出露边界线,则执行步骤(6-7),否则执行步骤(6-8);

(6-7)从点集合plk中获取任一点plk,l,获取点plk,l在demi上的高程值hl,作为点plk,l的z坐标值;重复执行该步骤直至完成集合plk中所有点的z坐标值计算,然后执行步骤(6-9);

(6-8)从点集合plk中获取任一点plk,l,获取点plk,l在ddem上的埋深值dl,以及点plk,l在demi上的高程值hl,计算dl和hl的差值difl,作为点plk,l的z坐标值;重复执行该步骤直至完成集合plk中所有点的z坐标值计算,然后执行步骤(6-9);

(6-9)循环执行步骤(6-6)到(6-8),直至集合bl中所有边界线被遍历,得到地貌单元gui所有边界线的点的z坐标值;

(6-10)将包含有z坐标值的集合pr中的点和所有集合plk中的点存储到集合vd中,作为地貌单元gui的虚拟钻孔集合。

进一步的,步骤(7)具体包括:

(7-1)若地貌单元gui为平原,执行步骤(7-5);否则将基岩埋深等值线上的点存储到集合pc中;

(7-2)从集合pc中获取任一点pcb,获取点pcb在地貌单元gui的dem数据demi上的地表高程值hp,并基于基岩埋深等值线,获取点pcb的埋深值dp,计算高程值hp与埋深值dp的差值difp,作为点pcb的z坐标值;重复执行该步骤直至完成集合pc中所有点的z坐标值计算;

(7-3)从钻孔集合rd中获取任一钻孔rdj,读取rdj的高程属性得到高程值hrd,以及埋深属性得到埋深值drd;

(7-4)获取点rdj的x坐标值和y坐标值,生成点p,计算高程值hrd与埋深值drd的差值difrd,作为点p的z坐标值,将点p存储到集合pc中;

(7-5)循环执行步骤(7-3)至步骤(7-4),直至集合rd中所有点数据都被处理;

(7-6)将地貌单元gui的虚拟钻孔集合vd中所有的点都存储到集合pc中;

(7-7)以集合pc为基础数据通过反距离加权插值方法得到栅格面bmi,栅格面bmi即为地貌单元gui的基岩面三维模型。

有益效果:本发明与现有技术相比,其显著优点是:本发明从不同地貌类型的基岩面埋深及基岩面起伏规律出发,形成一种知识驱动的基岩面三维建模方法,提高了钻孔稀疏区域的基岩面三维建模精度。

附图说明

图1是本实施例中采用的实验数据((a)钻孔分布图,(b)dem,(c)基岩出露图层,(d)地貌单元图层);

图2本发明的流程示意图;

图3是本发明岗地单元构建基岩埋深等值线的子流程图;

图4是本发明构建虚拟钻孔点的子流程图

图5是本实施例中构建的基岩面模型;

图6是本实施例中构建的基岩面模型三维示意图。

具体实施方式

下面对本发明技术方案进行详细说明,本实例的实验区采用的是南京市(图1)。区内地貌类型也较为齐全,钻孔数据虽相对丰富,但分布不均。下面结合附图,并通过描述一个具体的实施例,来进一步说明。

如图2所示,本实施例提供的知识驱动的基岩面三维模型构建方法包括:

(1)基于研究区的地质图,获取基岩出露区边界线,并对研究区的dem数据进行裁剪,获得基岩埋藏区域的dem数据dem1和基岩出露区的dem数据dem2。

(2)根据研究区的地貌单元图层,将基岩埋藏区域划分为岗地、河谷、湖泊和平原这四类地貌单元类型,并存入地貌单元集合gu中。

(3)从地貌单元集合gu中获取任一地貌单元gui,若gui为平原,则执行步骤(6);否则,执行步骤(4)。

(4)获取gui的钻孔集合rd,并根据钻孔集合rd和gui的地貌单元类型计算gui待构建埋深等值线的最大埋深值hmax和最小埋深值hmin,之后执行步骤(5)。

该步骤具体包括:

(4-1)获取gui内的所有钻孔数据到集合rd={rdj|j=1,2,…,nrd},其中,rdj表示gui内第j个钻孔,nrd为钻孔个数;

(4-2)获取埋深值最大的钻孔rdm,将其埋深值记为hm,根据下式计算最大埋深值hmax;

式中,d为预设埋深线间距,本实施例中,设置d=5,符号[]为取整符号;

(4-3)若gui为岗地,则直接将hn赋值为零;否则,获取埋深值最小的钻孔rdn,将其埋深值记为hn;

(4-4)基于hn采用下式,计算最小埋深值hmin;

(4-5)判断是否满足hmin=d,若是,则执行步骤(5);否则执行步骤(4-6);

(4-6)根据钻孔rdm和钻孔rdn分别到地貌单元边界的最短距离调整最小值hmin,并执行步骤(5)。

其中,步骤(4-6)具体包括:

(4-6-1)分别获取钻孔rdm、钻孔rdn到地貌单元边界的最短距离dism、disn;

(4-6-2)根据下式计算基岩埋深为hmin-d的等值线到地貌单元边界的距离dis;

式中,hn、hm分别为钻孔点rdn、rdm的基岩埋深值,符号||为取绝对值符号;

(4-6-3)若dis≥0,则令hmin=hmin-d,然后执行步骤(4-5);否则,执行步骤(5)。

(5)基于hmax和hmin,构建地貌单元gui的埋深等值线,执行步骤(7)。

如图3所示,该步骤具体包括:

(5-1)基于地貌单元gui的钻孔集合rd,获取用于构建基岩埋深为hmin的等值线ch1的钻孔rdu和rdv;

其中,步骤(5-1)具体包括:

(5-1-1)获取gui的钻孔集合rd,并根据埋深值,将钻孔集合rd分为子集合rd1和rd2,其中子集合rd1中钻孔的埋深值均不大于hmin,子集合rd2中钻孔的埋深值均大于hmin;

(5-1-2)若rd1和rd2均不为空,则获取rd1中埋深值最大的钻孔,记为rdu,其基岩埋深记为hu,获取rd2中埋深值最小的钻孔,记为rdv,其基岩埋深记为hv,然后执行步骤(5-2);否则,执行步骤(5-1-3);

(5-1-3)若rd1为空集,获取rd2中埋深值最小的两个钻孔作为rdu、rdv;若rd2为空集,则获取rd1中埋深值最大的两个钻孔作为rdu、rdv。

(5-2)若gui为岗地,则基于地质图,将gui的基岩出露线作为埋深基准线ch0,否则,将gui地貌单元边界线作为埋深基准线ch0;

(5-3)分别计算钻孔点rdu、rdv到基岩埋深基准线ch0的最短距离disu、disv;

(5-4)根据下式,计算基岩埋深为hmin的等值线ch1到基岩埋深基准线ch0的距离dis1-0;

式中,hu、hv分别为钻孔点rdu、rdv的基岩埋深值,符号||为取绝对值符号;

(5-5)基于基岩埋深基准线ch0和距离dis1-0,执行缓冲区分析,获取缓冲区边界线bline0;

(5-6)根据地貌单元gui的范围裁剪bline0,生成基岩埋深为hmin的等值线ch1;

(5-7)循环执行(5-1)至(5-6),依次构建基岩埋深为hmin+d,hmin+2d,…,hmax的基岩埋深等值线,直至地貌单元gui的所有基岩埋深等值线构建完成。

(6)基于dem1,构建地貌单元gui的虚拟钻孔集合vd。

如图4所示,该步骤具体包括:

(6-1)获取地貌单元gui的钻孔集合rd,以钻孔集合rd为基础数据通过反距离加权插值方法得到栅格面ddem;

(6-2)从基岩埋藏区域的dem数据dem1中获取地貌单元gui的dem数据demi;

(6-3)构建地貌单元gui的外包矩形rec,并在矩形rec内部生成10×10网格,将位于gui的网格交叉点存储到点集合pr中;

(6-4)从点集合pr中获取任一点prp,获取点prp在ddem上的埋深值dr,以及点prp在demi上的高程值hr,计算dr和hr的差值difr,并作为点prp的z坐标值;重复执行本步骤,直至完成集合pr中所有点的z坐标值计算;

(6-5)读取地貌单元gui的边界线到集合bl={blk|k=1,2,…,nbl},其中,blk表示第k条边界线,nbl为边界线个数;

(6-6)从集合bl中获取任一边界线blk,将边界线blk离散为点集合plk={plk,l|l=1,2,…,npk},其中,plk,l表示边界线blk上第l个点,npk为边界线blk上的点个数;若blk为基岩出露边界线,则执行步骤(6-7),否则执行步骤(6-8);

(6-7)从点集合plk中获取任一点plk,l,获取点plk,l在demi上的高程值hl,作为点plk,l的z坐标值;重复执行该步骤直至完成集合plk中所有点的z坐标值计算,然后执行步骤(6-9);

(6-8)从点集合plk中获取任一点plk,l,获取点plk,l在ddem上的埋深值dl,以及点plk,l在demi上的高程值hl,计算dl和hl的差值difl,作为点plk,l的z坐标值;重复执行该步骤直至完成集合plk中所有点的z坐标值计算,然后执行步骤(6-9);

(6-9)循环执行步骤(6-6)到(6-8),直至集合bl中所有边界线被遍历,得到地貌单元gui所有边界线的点的z坐标值;

(6-10)将包含有z坐标值的集合pr中的点和所有集合plk中的点存储到集合vd中,作为地貌单元gui的虚拟钻孔集合。

(7)基于埋深等值线、虚拟钻孔集合vd、钻孔集合rd和dem1,构建地貌单元gui的基岩面三维模型bmi。

该步骤具体包括:

(7-1)若地貌单元gui为平原,执行步骤(7-5);否则将基岩埋深等值线上的点存储到集合pc中;

(7-2)从集合pc中获取任一点pcb,获取点pcb在地貌单元gui的dem数据demi上的地表高程值hp,并基于基岩埋深等值线,获取点pcb的埋深值dp,计算高程值hp与埋深值dp的差值difp,作为点pcb的z坐标值;重复执行该步骤直至完成集合pc中所有点的z坐标值计算;

(7-3)从钻孔集合rd中获取任一钻孔rdj,读取rdj的高程属性得到高程值hrd,以及埋深属性得到埋深值drd;

(7-4)获取点rdj的x坐标值和y坐标值,生成点p,计算高程值hrd与埋深值drd的差值difrd,作为点p的z坐标值,将点p存储到集合pc中;

(7-5)循环执行步骤(7-3)至步骤(7-4),直至集合rd中所有点数据都被处理;

(7-6)将地貌单元gui的虚拟钻孔集合vd中所有的点都存储到集合pc中;

(7-7)以集合pc为基础数据通过反距离加权插值方法得到栅格面bmi,栅格面bmi即为地貌单元gui的基岩面三维模型。

(8)重复执行步骤(3)至步骤(7),直至所有地貌单元的基岩面三维模型构建完成,并存储至基岩面模型集合bm中。

(9)将dem2和基岩面模型集合bm中所有栅格合并,生成研究区域完整的基岩面三维模型,如图5和图6所示。

以上所揭露的仅为本发明一种较佳实施例而已,不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1