CN105956066B - 一种褶皱地貌类型的自动化识别方法 - Google Patents

一种褶皱地貌类型的自动化识别方法 Download PDF

Info

Publication number
CN105956066B
CN105956066B CN201610274175.0A CN201610274175A CN105956066B CN 105956066 B CN105956066 B CN 105956066B CN 201610274175 A CN201610274175 A CN 201610274175A CN 105956066 B CN105956066 B CN 105956066B
Authority
CN
China
Prior art keywords
stratum
point
fold
attribute
abbreviation
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.)
Active
Application number
CN201610274175.0A
Other languages
English (en)
Other versions
CN105956066A (zh
Inventor
李安波
陈楹
姚蒙蒙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Normal University
Original Assignee
Nanjing Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Normal University filed Critical Nanjing Normal University
Priority to CN201610274175.0A priority Critical patent/CN105956066B/zh
Publication of CN105956066A publication Critical patent/CN105956066A/zh
Application granted granted Critical
Publication of CN105956066B publication Critical patent/CN105956066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Investigation Of Foundation Soil And Reinforcement Of Foundation Soil By Compacting Or Drainage (AREA)

Abstract

本发明公开了一种褶皱地貌类型的自动化识别方法,具体包括如下步骤:1)根据核部地层与横切剖面线提取原则,提取可能存在褶皱的场景条带;2)基于邻接属性关系图建模方法,对场景条带进行场景空间结构的建模与化简;3)通过判别化简后的邻接属性关系模型能否由对应的褶皱规则推导而来,实现针对不同褶皱构造模式的匹配识别;4)基于识别出的褶皱场景进行山和谷状态的进一步判别,最终确定褶皱构造地貌类型,粗略划定褶皱地貌单元。该方法针对褶皱“两翼对称”的出露规律,以结构模式匹配的方法,基本实现了在基岩山地地区,对褶皱构造地貌的自动化识别。

Description

一种褶皱地貌类型的自动化识别方法
技术领域
本发明属于地理信息技术应用领域,具体涉及一种基于地质图与DEM,通过空间结构模式匹配,实现自动化识别褶皱构造地貌单元的方法。
背景技术
褶皱几乎控制了大中型地貌的基本形态,在一定程度上反应了其力学背景,对于矿产的形成、分布等也有一定的控制作用,在地质测量、地貌形成和地貌分类等研究中具有重要意义。褶皱地貌的识别是有效支持地质图认知、构造解析、三维建模等工作的基础。
传统的地貌类型划分方法主要为人工操作,其工作量大,历时长,且受限于制图人员的技术和认识。因此,众多研究学者转而探讨自动化的地貌类型识别与地貌单元提取方法。当前常用的自动识别方法主要基于DEM或遥感影像,通过单元统计、特征提取或标识解译等方法,实现针对地貌形态或典型地貌的自动化识别。而褶皱构造地貌因其特有的“对称重复”地层组合空间结构,目前常用的基于地形信息进行单元统计或是特征提取的自动化地貌类型识别方法并不适用。
褶皱地貌类型的自动化识别与单元提取,应首先识别出褶皱构造,再对构造内的地貌进行综合判别。虽然,褶皱构造形态复杂、类型多样,且没有具体的边界;但其本质为一组受力弯曲的地层,在剥蚀后呈现出两翼对称的、模式化的特定地层组合结构。因此,本发明采用地形地质图、DEM等数据源,基于空间结构场景建模和文法模式匹配等方法,实现褶皱地貌的自动识别。
发明内容
本发明的主要目的在于:针对褶皱地貌“对称重复”的地层组合空间结构特征,基于地形与地质信息,提出一种构造地貌自动化识别方法。
本发明采用的技术方案如下:
一种褶皱地貌类型的自动化识别方法,包括如下步骤:
1)根据核部地层与横切剖面线提取原则,提取可能存在褶皱的场景条带;
2)基于邻接属性关系图建模方法,对场景条带进行场景空间结构的建模与化简;
3)通过判别化简后的邻接属性关系模型能否由对应的褶皱规则推导而来,实现针对不同褶皱构造模式的匹配识别;
4)基于识别出的褶皱场景进行山和谷形态的进一步判别,最终确定褶皱构造地貌类型,粗略划定褶皱地貌单元。
本发明的方法针对褶皱“两翼对称”的出露规律,以结构模式匹配的方法,基本实现了在基岩山地地区,对褶皱构造地貌的自动化识别。相比传统的人工识别方法,提高了效率,也为非专业人员的地质图读图识图提供了帮助。此外,相比目前主要基于地表形态进行的地貌自动识别提取方法,结合考虑了地层结构分布的信息,解决了空间结构特征明显的地貌自动识别的问题。同时,也可作为地表地貌自动识别方法的补充,为构造地貌的自动化识别提供了思路。
附图说明
图1本发明方法的流程图;
图2示例地层年代序列表截图;
图3实施例实验数据,(a)地质体面图层数据、(b)DEM数据;
图4核部地层选取示例;
图5实施例识别场景条带结果图;
图6邻接对象判别示例;
图7实施例场景模型,图中的“·”代表地层对象点,“—”代表对象邻接关系;
图8实施例化简后场景模型,图中的“·”代表化简后地层对象点,“—”代表化简后关系;
图9实施例褶皱地貌单元。
具体实施方式
本发明流程图如图1所示,褶皱地貌类型自动识别的具体方法步骤如下:
(一)数据预处理
步骤11:本文方法是在邻接属性关系图的基础上进行的,地层对象与地层间关系详细属性列表如下:
步骤12:加载shp格式的地质面图层数据,得到所有地层面要素集合OriS={osi|i=0,1,2,...,n-1},n为地层面要素的个数。要求osi属性表中至少包括一个[Age]字段;
步骤13:对osi属性赋值。osi[Id]与osi[SourceId]赋值为i;若osi[Trend]不为空,则根据公式(1)将其转换为极坐标系角度;若osi[Trend]为空,则通过计算osi多边形的走向(参考文献:《一个求解多边形最小面积外接矩形的算法》,程鹏飞、闫浩文、韩振辉,工程图学学报,2008,(1))来代替;
osi[Length]赋值osi多边形最小外包矩形的长边长度值;osi[Gravity]赋值其重心点坐标gpi(gxi,gyi),通过公式(2),基于地层面要素osi的顶点集OriVi={ovij(xij,yij)|j=0,1,2,...,mi-1}(mi为面要素osi的顶点个数)来计算得到;
步骤14:配置XML格式的“地层年代序列表”,示例如图2。根据osi的[Age]属性,在“地层年代序列表”中查找到节点nodej,使nodej[name]=osi[Age]:
1)若nodej[RockType]为“I”,则osi[IsIntrusion]赋值“True”,osi[StateTag]赋值“Delete”;
2)若nodej[RockType]为“S”,则osi[IsIntrusion]赋值“False”。再判断nodei是否是“Q”的子节点,若是,则osi[StateTag]赋值“Delete”;反之,osi[StateTag]赋值“Keep”;
(二)识别条带的提取
步骤21:获取集合OriS={osi|i=0,1,2,...,n-1}中每个osi面要素的邻接地层面要素集合NeiSi,并从NeiSi中移除属性[StateTag]为“Delete”的元素;
步骤22:对于属性[StateTag]为“Keep”的地层面要素osi,判断其邻接要素集合NeiSi={nsij|j=0,1,2,...,li-1}(li为osi的邻接地层中属性[StateTag]为“Keep”的地层个数)是否满足以下条件:
若满足以上任一条件,则判定面要素osi为核部地层要素,将其加入核部地层要素集合CorS={csj|j=0,1,2,...,p-1},p为查找到的核部地层的数量;
步骤23:针对每个核部地层csj,过其重心点核部地层csj[Gravity]坐标垂直于走向csj[Trend]做垂线slj,得到剖面线集合SecL={slj|j=0,1,2,...,p-1},对slj逐个做缓冲区,得到裁剪面要素集合CutP={cpj|j=0,1,2,...,p-1}。给裁剪面cpj[SourceCS]属性赋值csj[Id],裁剪面cpj[CSTrend]属性赋值csj[Trend];
步骤24:用裁剪面要素集合CutP对原始地层面要素集合OriS进行裁剪,得到场景地层面要素集合SceS={ssk|k=0,1,2,...,s-1},s为识别条带上地层对象的数量;
步骤25:对面要素ssk的属性进行赋值。对于裁剪面cpj与原始地层面osi裁剪而成的面要素ssk而言,ssk[SourceCS]和ssk[CSTrend]继承cpj的同名属性;ssk[SourceID]、ssk[Trend]、ssk[Length]、ssk[IsIntrusion]和ssk[StateTag]分别继承osi的同名属性;ssk[Id]赋值k;ssk[Area]和ssk[Gravity]基于ssk的多边形要素重新计算;
(三)识别结构建模与化简
步骤31:由上一步获得地层面要素集合SceS,根据ssk的[Gravity]属性绘制点图层SceneObjectLayer,得到地层对象点集SceG={sgi|i=0,1,2,...,s-1},对象点sgi继承面要素ssk的所有属性;
步骤32:对于任意面要素ssi与ssj(j>i),判断是否满足以下条件:
若满足,则操作步骤33:
步骤33:连接地层对象点sgi与sgi绘制线rlk,对线rlk属性赋值如下:
查找地层对象点sgi与sgj的属性[Age]在“地层年代序列表”中对应节点的编号nodea[Id]与nodeb[Id]:
1)若nodea[Id]≤nodeb[Id],rlk[StartId]赋值为sgi[Id];rlk[EndId]赋值为sgj[Id];rlk[TimeDis]赋值为nodeb[Id]-nodea[Id];rlk[AzimuthAng]赋值由对象点sgi的坐标指向对象点sgj的坐标的方位角angab
2)若nodea[Id]>nodeb[Id],rlk[StartId]赋值sgj[Id];rlk[EndId]赋值sgi[Id];rlk[TimeDis]赋值nodea[Id]-nodeb[Id];rlk[AzimuthAng]赋值由对象点sgj的坐标指向对象点sgi的坐标的方位角angba
步骤34:得到关系线集合RelL={rlk|k=0,1,2,...,t-1}(t为条带上的邻接关系数量)后,根据关系线集合RelL建立无向邻接集合SimAList={sali|i=0,1,2,...,s-1}。其中,集合sali代表属性[Id]等于“i”的点所邻接对象的属性[Id]集合。每个关系rlk,根据属性rlk[StartId]与rlk[EndId],往i=rlk[StartId]的sali中添加rlk[EndId],i=rlk[EndId]的sali中添加rlk[StartId];
步骤35:除了属性[Source]与[SourceC]相等的核部地层对象点不进行化简操作外,对每个地层对象点sgi及其邻接面要素化简情况和处理方案如下:
1)若sgi[StateTag]为“Keep”,且集合sali长度等于1。对于唯一的对象点sgj[Id]∈sali,若满足sgj[StateTag]为“Delete”,则sgi[StateTag]赋值“Delete”,清空集合sali使其长度为0;
2)若sgi[StateTag]为“Keep”,且集合sali长度大于0。若存在对象点sgj,满足①sgi[StateTag]为“Keep”;②sgi[Id]∈sali;③sgj[Age]与sgi[Age]在“地层年代表序列表”中对应的编号nodea[Id]与nodeb[Id]相等。则对对象点sgi与sgj进行如下的合并操作:
a)令ai=sgi[Area],aj=sgj[Area],根据公式(3)重新计算点坐标(xi,yi),并赋值给sgi[GravityPoint]。保留对象点sgi的其他属性;
b)对象点sgj[StateTag]赋值为“Delete”;
c)将集合salj整合到集合sali中,清空集合salj使其长度为0;
3)若sgi[StateTag]为“Delete”,且集合sali长度等于1。对于唯一的sgu[Id]∈sali。若满足sgu[StateTag]为“Delete”,执行步骤35.2).a)~c)对对象点sgi与sgu进行合并操作;
4)若sgi[StateTag]为“Delete”,且集合sali长度等于2。存在对象点sgu和sgv(v>u),sgu[Id]∈sali,sgv[Id]∈sali。若满足则将sgv[Id]加入集合salu,将sgu[Id]加入集合salv。清空集合sali使其长度为0;
5)若sgi[StateTag]为“Delete”,且集合sali长度大于2。至少存在对象sgu点和sgv(v>u),满足sgu[Id]∈sali,sgv[Id]∈sali。对对象点sgu和sgv进行如下判断:
c)若存在对象点sgu与sgv满足:①sgu[Age]与sgv[Age]在“地层年代表序列表”中对应的编号nodea[Id]与nodeb[Id]相等,②sgu[StateTag]与sgv[StateTag]都为“Keep”,③方位角anguv或angvu与sgi[CSTrend]差值小于容限。则执行步骤35.2).a)~c)对对象点sgu与sgv进行合并操作;
d)若存在对象点sgu与sgv满足:①方位角angui与方位角angiv差值不超出容限,②对于任意sgt[Id]∈salu,方位角angut与angtv的差值均超出容限,③对于任意sgt[Id]∈salv,方位角angvt与angtu的差值均超出容限,④则将sgv[Id]从集合sali中移除并加入集合salu,将sgu[Id]从集合sali中移除并加入集合salv
e)不再出现以上情况,则清空集合sali使其长度为0;
步骤36:遍历邻接关系集合SimAList,若对象点sgi[StateTag]为“Delete”,清空集合sali使其长度为0;反之,若存在对象点sgj满足sgj[StateTag]为“Delete”,且sgj[Id]∈sali,则将sgj[Id]从集合sali中移除;
步骤37:完成上一步后,遍历sgi[StateTag]为“Keep”的对象,若其集合sali的长度大于2,则分别计算sgjsgi与其邻接对象的方位角,保留与sgi[CSTrend]最接近垂直的两个角度及其对象,将其它对象的[Id]从集合sali中移除;
步骤38:取点集SceG中属性[StateTag]为“Keep”的点绘制化简后的地层对象点图层SimSOLayer。得到化简后地层对象点集SimSG={ssgj|j=0,1,2,...,c-1},c为化简后保留的地层对象的数量,即SceG中属性[StateTag]为“Keep”的对象的数量;
步骤39:根据删改后的邻接关系集合SimAList={sali|i=0,1,2,...,s-1}绘制化简后的有向线图层SimRLLayer。对于每个对象点ssgj,若存在ssgu[Id]∈sali,则按照步骤33连接地层对象点ssgu与ssgj,绘制线srlk。得到化简后的关系线集合SimRL={srlk|k=0,1,2,...,r-1},r为化简后的邻接关系数量。
(四)褶皱构造模式匹配
步骤41:创建集合OriFold={ofi|i=0,1,2,...,p-1}存放褶皱对象,初始化的褶皱对象数量与核部地层对象点的数量相等。褶皱对象的数据属性如表:
步骤42:基于化简后的地层对象点集SimSG={ssgj|j=0,1,2,...,c-1}与关系线集SimRL={srlk|k=0,1,2,...,r-1},进行褶皱构造识别。获取ssgj[SourceCS]=ssgj[SourceId]的对象点加入点集CorG,得到化简后的核部地层对象点集合CorG={cgi|i=0,1,2,...,p-1}。对每个褶皱对象ofi属性进行赋值,ofi[SourceCS]赋值cgi[SourceCS];ofi[IdList]中添加cgi[Id];
步骤43:取cgi[Id]的值给索引编号“LeftS”与“RightS”,对化简后关系线集合SimRL中的元素进行如下规则判别,其中预先设定tolerance为容限:
1)若存在对象满足背斜规则集,则属性ofi[FoldType]赋值“Anticline”。将srla[EndId]插入ofi[IdList]的第一个位置,将srlb[EndId]添加到ofi[IdList]的最后,将srla[EndId]与srlb[EndId]赋值给索引编号“LeftS”与“RightS”,重复本规则集的判别直至不再满足背斜规则集,则结束判别。背斜规则集如下:
2)若存在对象满足向斜规则集,则属性ofi[FoldType]赋值“Syncline”。将srla[StartId]插入ofi[IdList]的第一个位置,将srlb[StartId]添加到ofi[IdList]的最后,将srla[StartId]与srlb[StartId]赋值给索引编号“LeftS”与“RightS”,重复本规则集的判别直至不再满足向斜规则集,则结束判别。向斜规则集如下:
步骤44:对所有核部地层对象点cgi完成规则匹配后,可知初始褶皱对象集合OriFold={ofi|i=0,1,2,...,p-1}中包括了不符合褶皱规则的褶皱对象,遍历OriFold,若ofi[IdList]的长度小于3,则将ofi从中OriFold移除,最终得到褶皱单元集合Fold={fi|i=0,1,2,...,q-1},q为符合褶皱规则的褶皱单元数量;
步骤45:对于褶皱单元fi,依次找到属性[Id]值等于fi[IdList][0]至fi[IdList][ListCount-1]的化简前地层对象点sgj,并将sgj[SourceId]添加到fi[SIdList]中;
步骤46:对集合Fold中两两褶皱的重复部分进行舍取。对于褶皱单元fi,遍历褶皱单元fj(j=0,1,2,...,q-1,j≠i):
1)若存在某个褶皱单元fj(j>i),满足fi[SIdList]与fj[SIdList]完全相同,或是fi[SIdList]与fj[SIdList].Reverse()完全相同,则从褶皱单元集合Fold中移除褶皱单元fj
2)比较fi[SIdList]数组与每个fj[SIdList]数组中的元素,若存在相等的元素,记录其在fi[SIdList]数组中的下标。对于所有记录的下标,取最接近ListCount/2且小于ListCount/2的下标a和最接近ListCount/2且大于ListCount/2的下标b,保留fi[IdList]数组fi[IdList][a]至fi[IdList][b]的部分,保留fi[SIdList]数组fi[SIdList][a]至fi[SIdList][b]的部分;
步骤46:对褶皱单元集合Fold={fi|i=1,2,3,...,q}中的褶皱单元fi其余属性进行赋值。获取属性[SourceId]与[SourceCS]相等,且等于fi[SourceCS]属性的地层对象点sgj,fi[Trend]赋值sgj[Trend],fi[Gravity]赋值sgj[Gravity],fi[a]赋值sgj[Length];获取属性[Id]等于fi[IdList][0]和fi[IdList][ListCount-1]的地层对象点sgleft与sgright,计算sgleft[Gravity]与sgleft[Gravity]间的距离d,fi[b]赋值d。
(五)褶皱地貌类型确定
步骤51:加载同一投影坐标系下的DEM数据;
步骤52:根据规则识别得到的褶皱单元集合Fold={fi|i=0,1,2,...,q-1},对于褶皱单元fi,找到属性[Id]为fi[IdList][0]、fi[IdList][ListCount/2]和fi[IdList][ListCount-1]的地层对象点sgleft、sgcenter与sgright,根据地层对象点的[Gravity]属性,从栅格数据上获取高程分别为L、C和R;
步骤53:若L-C>0&R-C>0,则fi[Landform]赋值“Valley”;反之,fi[Landform]赋值“Mountain”;
步骤54:以fi[Gravity]为中心点,以fi[a]为长轴,以fi[b]为短轴,以fi[Trend]为旋转角度,绘制椭圆表示褶皱地貌单元,得到褶皱地貌类型图层FoldLandformLayer。
实施例
下面结合附图并通过描述一个基于地形地质信息自动识别褶皱地貌类型并提取地貌单元的实例,来进一步说明本发明的效果。本实例选择1:50000的庐山地区的地质体面图层和DEM图层,如图3所示。
具体实施过程如下:
(一)数据预处理
步骤11:加载shp格式的地质体面图层数据“地质分区”,读取地层面要素读入集合OriS={osi|i=1,2,...,137},本实施例中共包含138个地层面要素;
步骤12:加载的“地质分区”图层基本参数为:宽13034m,高9930m,图幅区域为点集{(399008.2,3271576.7),(412171.3,3271576.7),(412171.3,3281630.9),(399008.2,3281630.9)}围成的矩形。识别条带宽带可以默认取值为图幅长度的1/100,也可以人工设置,本实施例中设置取值为200m。设置化简和褶皱匹配时的角度容限tolerance为15°;
步骤12:“地质分区”图层的属性表中包括[Age]和[Trend]两个字段,以面要素os27和面要素os104为例,os27自带属性包括os27[Age]为“Z_1l^3”,os27[Trend]为“51”,os104自带属性包括os104[Age]为“Z_1l^1”,os104[Trend]为“47”。通过计算,对其部分属性进行赋值如下:
步骤13:在加载的“地层年代序列表”中os27[Age]对应条目node3,os104[Age]对应条目node1,对osi部分属性赋值如下:
(二)识别条带的提取
步骤21:获取OriS中每个面要素osi的邻接地层要素集合NeiSi,以要素os27和要素os105为例,要素os27的邻接地层要素集合NeiS27有4个要素,面要素os104的邻接地层要素集合NeiS104有4个要素,如图4所示。各个邻接地层要素的属性以及对应在“地层年代序列表”的条目的分别如下:
则依据[StateTag]属性,将面要素os116和os134从NeiS27中移除,将面要素os116从NeiS104中移除;
步骤22:根据规则选取核部地层,以面要素os27和os104为例,规则判别如下:
1)因os27[StateTag]为“Keep”,对集合NeiS27进行判断:面要素os27对应的node[Id]为3,NeiS27中的面要素os105其node[Id]为2小于os27,而面要素os23其node[Id]为6大于os27,不满足规则;此外,NeiS27长度为2,不满足规则。因此,要素os27不是核部地层;
2)因os104[StateTag]为“Keep”,对集合NeiS104进行判断:面要素os104对应的node[Id]为1,NeiS104中的面要素os105、os129和os130对应的node[Id]分别为2、1和2,都大于或完全等于os104,满足规则。因此,要素os104满足核部地层选取原则,加入核部地层面要素集合CorS;
对所有属性[StateTag]为“Keep”的地层osi进行规则判别,得到核部地层要素集合CorS={csl|l=0,1,2,...,40},其中cs35即为os104
步骤23:按照属性对核部地层要素集合CorS中的所有核部地层面要素绘制剖面线,得到其裁剪面要素集合CutP={cpl|l=0,1,2,...,40}。以核部地层cs35为例,在cs35的重心点(402597.7,3277015.0)处,沿着133°方向绘制直线,与图幅边界相交,得到直线sl35<(399008.2,3280248.602),(408616.3,3271576.7)>。沿直线以200m为宽,做缓冲区,得到裁剪面cp35,根据核部地层要素cs35的属性[Id]和[Trend]给裁剪面cp35赋值,cp35[SourceCS]为“104”,cp35[CSTrend]为“43”;
步骤24:用裁剪面要素集合CutP中的41个面要素与原始地层面要素OriS中的138个面要素分别进行求交,得到场景地层面要素集合SceS={ssk|k=0,1,2,...,839},绘制图层如图5所示。以裁剪面cp35为例,其与12个原始地层面要素os0、os89、os90、os96、os103、os104、os105、os123、os124、os125、os129和os130相交,求交并进行拆分多部件要素后得到16个场景地层面要素{ss722,ss723,ss724,ss725,ss726,ss727,ss728,ss729,ss730,ss731,ss732,ss733,ss734,ss735,ss736,ss737};
步骤25:对SceS内的所有要素属性进行赋值,如面要素ss722为cp35与os0相交得到的,则其属性赋值如下:
(三)识别结构建模与化简
步骤31:根据面要素集合SceS={ssi|i=0,1,2,...,839}中要素的ssk[Gravity]属性绘制点图层,得到地层对象点集SceG={sgi|i=0,1,2,...,839}。对象点sgk继承场景面要素ssk的所有属性;
步骤32:对于同一识别条带内邻接的地层面要素ssi与ssj(j>i),需要连接对应的对象点sgi与sgj。以要素ss721、ss722、ss723、和ss724为例(如图6所示),依据规则进行如下判断:
1)如面要素ss721与ss722,ss721[SourceCS]与ss722[SourceCS]不相等,则不符合条件;
2)如面要素ss722与ss723满足ss722[SourceCS]=ss723[SourceCS],且面要素ss722与ss723有重合边界点,则连接对象点sg722与sg723,得到线rl730<sg722[Gravity],sg723[Gravity]>;
3)如面要素ss722与ss724满足ss722[SourceCS]=ss724[SourceCS],但面要素ss722与ss724没有重合的边界点,则不符合条件;
步骤33:完成对SceS的遍历,绘制线图层,得到关系线集合RelL={rlk|k=0,1,2,...,847},共有847对在识别场景条带中邻接的地层对象,线要素代表对象间的关系。对关系线要素rlk的属性进行赋值,以属性[SourceCS]为104的地层对象为例,其属性如下表:
连接上表间的邻接对象,对关系线要素属性赋值如下表:
结合对象与关系的图层与属性信息,完成“地质分区”图层中识别场景条带上邻接关系属性模型的构建,点线图层如图7所示;
步骤34:基于地层对象点集合SceG和关系线集合RelL构建无向邻接集合SimAList={sali|i=0,1,2,...,839},集合sali中存储对象sgi邻接的对象的属性[Id]序列。以上述表所示的对象与关系为例,可得到:
sal722={723,725,732}; sal723={722,731};
sal724={732,733,734}; sal725={722,732};
sal726={735,737}; sal727={728,737};
sal728={727,731}; sal729={732};
sal730={733}; sal731={723,728};
sal732={722,724,725,729}; sal733={724,730};
sal734={724}; sal735={726,738};
sal736={735}; sal737={726};
步骤35:借助无向邻接集合,根据条件对对象点集进行化简,得到的化简后地层对象点集SimSG={ssgg|g=0,1,2,...,369}。以[SourceCS]为104的条带为例,对其邻接关系属性模型进行化简后,得到化简后对象点属性如下:
基于表数据绘制化简后的地层对象点图层;
步骤36:化简后的示例无向邻接集合展示如下:
sal722={725,728}; sal723={}; sal724={};
sal725={722}; sal726={735,737}; sal727={728,737};
sal728={722,727}; sal729={}; sal730={};
sal731={}; sal732={}; sal733={};
sal734={}; sal735={726,736}; sal736={735};
sal737={726};
步骤37:根据删改后的无向邻接集合绘制化简后的线图层,得到关系线要素集合SimRL={srlk|k=0,1,2,...,307}。如邻接集合sal722,包含元素“725”和“728”。则连接对象点sg722与sg728得到关系线srl260,连接对象点sg722与sg727得到关系线srl261,再如步骤33重新赋值属性。示例条带化简后的对象间关系如下表所示,其中关系线srl255表示的为化简后新增的关系:
化简后的邻接关系属性模型点线图层如图8所示;
(四)褶皱构造模式匹配
步骤41:基于化简后的地层对象点集SimSG={ssgj|j=0,1,2,...,369}与关系线集SimRL={srlk|k=0,1,2,...,307},进行褶皱构造识别。通过查找ssgj[SourceCS]=ssgj[SourceId]的对象点获取核部地层对象点加入点集CorG,得到核部地层对象点集CorG={cgi|i=0,1,2,...,40},并创建对应的褶皱对象集合OriFold={ofi|i=0,1,2,...,40}。以上述表所示的对象为例,其中,对象点ssg316满足[SourceCS]属性与[SourceId]属性相等,cg35即为ssg316,建立对应的褶皱对象of35
步骤42:将每个核部地层对象点cgi的信息加入对应的褶皱对象ofi中,对属性ofi[SourceCS]赋值cgi[SourceCS];ofi[IdList]中添加cgi[Id]。以上述表所示的对象与关系为例,核部地层对象点为cg35,根据cg35的属性[SourceCS]和[Id]给of35赋值,of35[SourceCS]赋值104,of35[IdList]数组中添加727;
步骤43:遍历化简后地层对象点集SimSG与关系线集SimRL,将规则匹配的褶皱对象记录存放进OriFold集合中,以上述表所示的对象与关系为例,将cg35的[Id]属性赋值给索引编号“LeftS”与“RightS”,LeftS=727,RightS=727。基于此进行递归判断如下:
1)存在关系srl264,满足srl264[StartId]=LeftS,存在关系srl265,满足srl265≠srl264,且srl265[StartId]=RightS;
2)srl264[TimeDis]与srl265[TimeDis]相等,都为1;
3)|srl264[AzimuthAng]-srl265[AzimuthAng]|=179.68,|179.68-180|=0.32<15;
4)则关系srl264与srl265满足背斜规则集,of35[FoldType]赋值“Anticline”;将srl264[EndId]与srl265[EndId]分别插入of35[IdList]的第一个位置和最后一个位置,得到of35[IdList]={728,727,737};将728和737分别赋值给索引编号“LeftS”与“RightS”,继续判别;
5)存在关系srl261,满足srl261[StartId]=LeftS,存在关系srl263,满足srl263≠srl261,且srl263[StartId]=RightS;
6)srl261[TimeDis]=2,srl263[TimeDis]=1,两者不相等,不满足判别规则,退出判别;
基于每个cgi重复规则判别,修改褶皱对象ofi的属性;
步骤44:对于初始的再找对象集合OriFold={ofi|i=0,1,2,...,40}中的每个褶皱对象ofi要素,存在ofi[IdList]的长度小于3,将ofi从OriFold中移除,最终得到褶皱单元Fold={fi|i=0,1,2,...,8},分别对应属性[SourceCS]为34、64、65、66、94、101、102、103和104的识别场景条带。根据数组fi[IdList]中的值查找属性与之相等的化简前地层对象点sgj,将sgj[SourceId]的值添加到fi[SIList]中,对褶皱单元fi的属性赋值如下:
步骤45:对褶皱单元fi的重复部分进行处理,示例褶皱单元f5与f7的对象范围修改如下:
步骤46:对褶皱单元fi的其余属性赋值如下:
(五)褶皱地貌类型确定
步骤51:若未加载栅格数据,则加载高程栅格数据“lushanDEM.bgd”;
步骤52:对于褶皱单元fi,找到属性[Id]为fi[IdList][0]、fi[IdList][ListCount/2]和fi[IdList][ListCount-1]的地层对象点,根据其[Gravity]属性,从栅格数据上获取高程分别为L、C和R。对于示例褶皱单元f8,分别获取对象点sg727、sg728与sg737的高程为L、C和R。则,L=321.1m,C=409.2m,R=730.3m;
步骤53:L、C和R不满足L-C>0&R-C>0,则f8[Landform]赋值“Mountain”;
步骤54:以fi[Gravity]为中心点,fi[a]为长轴,fi[b]为短轴,fi[Trend]为旋转角度,绘制椭圆表示褶皱地貌单元。以褶皱单元f8为例,在点(402538.610,3277066.956)处,以10900.1m为长轴,1235m为短轴,逆时针旋转43°,得到代表褶皱单元f8的地貌单元。基于所有褶皱单元fi的属性绘制地貌单元,得到褶皱地貌类型图层,如图9所示。

Claims (5)

1.一种褶皱地貌类型的自动化识别方法,其特征在于,包括如下步骤:
1)根据核部地层与横切剖面线提取原则,提取可能存在褶皱的场景条带;
2)基于邻接属性关系图建模方法,对场景条带进行场景空间结构的建模与化简;
3)通过判别化简后的邻接属性关系模型能否由对应的褶皱规则推导而来,实现针对不同褶皱构造模式的匹配识别;
4)基于识别出的褶皱场景进行山和谷形态的进一步判别,最终确定褶皱构造地貌类型,粗略划定褶皱地貌单元。
2.根据权利要求1所述的一种褶皱地貌类型的自动化识别方法,其特征在于,该方法的具体实现过程为:
(一)数据预处理
步骤11:加载shp格式的地质面图层数据,得到所有地层面要素集合OriS={osi|i=0,1,2,...,n-1},n为地层面要素的个数,面要素osi的属性包括原地层编号[SourceId]、地层年代[Age]、走向[Tend]、重心点坐标[Gravity]、岩类[RockType]、出露面积[Area]和出露长度[Length];
步骤12:对面要素osi的属性赋值:要求地层年代[Age]属性不为空,走向[Tend]属性为极坐标方位角;若面要素osi属性不完整,对其进行补充;其中,岩类[RockType]属性结合事先生成的XML格式的地层年代序列表进行赋值,并根据需要标记为化简地层与保留地层两种状态;
(二)识别条带的提取
步骤21:获取集合OriS={osi|i=0,1,2,...,n-1}中每个面要素osi的邻接地层面要素集合NeiSi,并从集合NeiSi中移除状态标记为化简地层的元素,得到面要素osi的邻接地层面要素集合NeiSi={nsij|j=0,1,2,...,li-1},li为面要素集合NeiSi中状态为保留地层的元素数量;
步骤22:对于状态为保留地层的面要素osi,判断其邻接地层面要素集合NeiSi是否满足以下条件:
若满足以上任一条件,则判定面要素osi为核部地层,将其加入核部地层要素集合CorS={csj|j=0,1,2,...,p-1},p为查找到的核部地层的数量;
步骤23:针对每个核部地层要素csj,过其重心点坐标[Gravity]垂直于走向[Tend]做缓冲区,得到裁剪面要素集合CutP={cpj|j=0,1,2,...,p-1};裁剪面cpj记录属性包括核部地层编号[SourceCS]和核部地层走向[CSTrend];
步骤24:用裁剪面要素集合CutP对集合OriS进行裁剪,得到场景地层面要素集合SceS={ssk|k=0,1,2,...,s-1},s为识别条带上地层对象的数量;由裁剪面cpj与面要素osi裁剪得到的面要素ssk,其出露面积[Area]、出露长度[Length]和重心点坐标[Gravity]重新计算,编号[id]属性赋值为k,其余属性继承自裁剪面cpj与面要素osi
(三)识别结构建模与化简
步骤31:由上一步获得地层面要素集合,根据面要素ssk的重心点坐标[Gravity]属性新建点,得到地层对象点集SceG={sgi|i=0,1,2,...,s-1},对象点sgi继承面要素ssk的所有属性;
步骤32:针对对象点集,基于邻接属性关系图的方式建模,对满足空间拓扑关系为邻接的地层对象间建立空间方位关系与时间距离关系,并绘制线要素,得到关系集合RelL={rlk|k=0,1,2,...,t-1},t为条带上的邻接关系数量;关系属性记录为:起点对象Id[StartId]、终点对象Id[EndId]、空间方位关系[AzimuthAng]和时间距离关系[TimeDis],定义[StartId]为较老的地层对象的编号,[EndId]为较新的地层对象的编号,[AzimuthAng]为起点对象指向终点对象的方位角,[TimeDis]为邻接对象在地层年代序列表中对应节点的[Id]值的差值的绝对值;
步骤33:根据关系集合RelL建立无向邻接集合SimAList={sali|i=0,1,2,...,s-1};集合sali代表属性[Id]值为i的对象点所邻接的对象点的[Id]值集合;
步骤34:遍历判断对象点sgi的原地层编号[SourceId]与核部地层编号[SourceCS]属性是否相等,若不相等,则进行化简判断;
步骤35:遍历无向邻接集合SimAList,对于化简后状态为化简地层的对象点sgi,清空集合sali使其长度为0,并将其[Id]值从其他集合中移除;对于状态为保留地层的对象点sgi,若集合sali的长度大于2,则保留与对象点sgi形成的方位角最接近垂直于核部地层走向[CSTrend]的两个对象,将其它对象的[Id]值从集合sali中移除;
步骤36:由修改后的无向邻接集合SimAList得到化简后点集SimSG={ssgj|j=0,1,2,...,c-1}和化简后的关系集合SimRL={srlk|k=0,1,2,...,r-1},其中,c为化简后保留的地层要素的数量,r为化简后的邻接关系数量;
(四)褶皱构造模式匹配
步骤41:创建集合OriFold={ofi|i=0,1,2,...,p-1}存放初始褶皱对象,其数量与核部地层对象数量相等;褶皱判别对象ofi的属性继承自核部地层对象cgi,并新增属性如下:褶皱地层的编号数组[IdList]、褶皱原始地层的编号数组[SIList]、褶皱单元长轴[a]、褶皱单元短轴[b]、褶皱类型[FoldType]、地貌类型[Landform];
步骤42:基于化简后的点集SimsG与关系集合SimRL,进行褶皱构造识别;先获取化简后的核部地层点集合CorG={cpi|i=0,1,2,...,p-1};一个cgi对应一个褶皱判别对象ofi
步骤43:判别关系集合SimRL中是否递归存在关系srla与关系srlb总满足背斜规则集或向斜规则集;
步骤44:对于规则匹配的褶皱判别对象ofi,将其加入褶皱单元集合Fold={fi|i=0,1,2,...,q-1},q为符合褶皱规则的褶皱单元数量;对褶皱单元fi属性赋值:褶皱类型[FoldType]取决于其匹配的规则集,褶皱地层的编号数组[IdList]记录组成褶皱的对象点编号,褶皱原始地层的编号数组[SIList]记录组成褶皱的原始地层编号,其余属性继承自对应的核部地层对象;
步骤45:对集合Fold中两两褶皱的重复部分进行舍取,根据去重复后的褶皱单元fi的范围,对属性褶皱单元长轴[a]和褶皱单元短轴[b]进行赋值;
(五)褶皱地貌类型确定
步骤51:加载同一投影坐标系下的DEM数据;
步骤52:对于元素fi,从栅格数据上获取褶皱范围最左、核部与最右对象点的高程分别为L、C和R;
步骤53:若L-C>0&R-C>0,则地貌类型为谷;反之,地貌类型为山;绘制椭圆表示褶皱地貌单元。
3.根据权利要求2所述的一种褶皱地貌类型的自动化识别方法,其特征在于,步骤12中,若面要素osi属性不完整,缺失的走向[Tend]属性通过计算面要素osi多边形的走向来代替。
4.根据权利要求2所述的一种褶皱地貌类型的自动化识别方法,其特征在于,步骤34中,对对象点sgi进行化简判断及处理的具体方案如下:
1)对于地层对象点sgi与其邻接对象点sgj,其中j>i,若两者都为保留地层且地层年代[Age]属性在地层年代序列表中编号[Id]相等,或两者都为化简地层,则对对象点sgi与sgj进行如下的合并操作:
a)以对象点sgi与sgj的出露面积[Area]属性为权重重新计算重心点坐标[Gravity],保留对象点sgi的其他属性;
b)对象点sgj的状态标记为化简地层;
c)将集合salj整合到集合sali中,清空集合salj使其长度为0;
2)若地层对象点sgi为化简地层,且其邻接地层对象中包含至少两个状态为保留地层的对象点sgu和sgv,其中v>u:
a)若对象点sgu与sgv满足:①对象点sgu与sgv的地层年代[Age]属性在地层年代表序列表中对应的节点的编号[Id]相等,②对象点sgu指向sgv的方位角anguv或对象点sgv指向sgu的方位角angvu,与对象点sgi的核部地层走向[CSTrend]差值小于容限,则执行步骤1)中的a)至c)对对象点sgu与sgv进行合并操作;
b)若对象点sgu与sgv满足:①在对象点sgu指向对象点sgv的方位角anguv的角度阈值与对象点sgv指向对象点sgu的方位角angvu的角度阈值范围内不存在其他状态为保留地层的对象,②对象点sgu与sgv不是邻接对象,则将对象点sgv的[Id]值从集合sali中移除并加入集合salu,将对象点sgu的[Id]值从集合sali中移除并加入集合salv
3)不再出现以上情况,则清空集合sali使其长度为0。
5.根据权利要求2所述的一种褶皱地貌类型的自动化识别方法,其特征在于,步骤43中,背斜规则集如下:
向斜规则集如下:
其中,索引编号LeftS与RightS分别为当前往左方向与右方向上满足规则的关系的终点对象的编号,以及将要查找的关系的起点对象的编号[Id];tolerance为角度容限。
CN201610274175.0A 2016-04-28 2016-04-28 一种褶皱地貌类型的自动化识别方法 Active CN105956066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610274175.0A CN105956066B (zh) 2016-04-28 2016-04-28 一种褶皱地貌类型的自动化识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610274175.0A CN105956066B (zh) 2016-04-28 2016-04-28 一种褶皱地貌类型的自动化识别方法

Publications (2)

Publication Number Publication Date
CN105956066A CN105956066A (zh) 2016-09-21
CN105956066B true CN105956066B (zh) 2019-09-17

Family

ID=56916632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610274175.0A Active CN105956066B (zh) 2016-04-28 2016-04-28 一种褶皱地貌类型的自动化识别方法

Country Status (1)

Country Link
CN (1) CN105956066B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709439B (zh) * 2016-12-16 2020-04-03 南京师范大学 一种单斜岩层构造地貌的自动识别方法
CN107146283B (zh) * 2017-05-10 2020-05-19 南京师范大学 一种层状岩质边坡类型的自动划分方法
CN107194401B (zh) * 2017-05-23 2019-08-27 南京师范大学 一种基于灰度匹配的自动化火成岩分类方法
CN108829742B (zh) * 2018-05-24 2021-12-17 南京师范大学 一种坡面形态类型划分方法
CN115424083B (zh) * 2022-11-03 2023-05-16 山东省鲁南地质工程勘察院(山东省地质矿产勘查开发局第二地质大队) 一种用于水文地质勘察的褶皱地层分析系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102938163A (zh) * 2012-11-15 2013-02-20 湖南创博龙智信息科技股份有限公司 一种正弦状褶皱三维建模方法
CN104867391A (zh) * 2015-06-03 2015-08-26 华北理工大学 多维动态地层褶皱演示模型装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102938163A (zh) * 2012-11-15 2013-02-20 湖南创博龙智信息科技股份有限公司 一种正弦状褶皱三维建模方法
CN104867391A (zh) * 2015-06-03 2015-08-26 华北理工大学 多维动态地层褶皱演示模型装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Machine Learning Tools for Automatic Mapping of Martian Landforms;Richard Doyle;《IEEE Computer Society》;20071231;第100-106页
我国数字高程模型与数字地形分析研究进展;汤国安;《地理学报》;20140930;第69卷(第9期);第1305-1325页

Also Published As

Publication number Publication date
CN105956066A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
CN105956066B (zh) 一种褶皱地貌类型的自动化识别方法
CN103278170B (zh) 基于显著场景点检测的移动机器人级联地图创建方法
Lee A spatial access-oriented implementation of a 3-D GIS topological data model for urban entities
Zhou et al. Accurate and efficient indoor pathfinding based on building information modeling data
CN104200212B (zh) 一种基于机载LiDAR数据的建筑物外边界线提取方法
Azpúrua et al. Multi-robot coverage path planning using hexagonal segmentation for geophysical surveys
Khoshelham et al. 3D modelling of interior spaces: Learning the language of indoor architecture
CN101944239A (zh) 三维模型分割方法、装置以及包含该装置的图像处理系统
Shiratori et al. Efficient large-scale point cloud registration using loop closures
Alidoost et al. Knowledge based 3D building model recognition using convolutional neural networks from LiDAR and aerial imageries
Maltezos et al. Automatic detection of building points from LiDAR and dense image matching point clouds
Mielle et al. Using sketch-maps for robot navigation: Interpretation and matching
CN102930536B (zh) 基于层次化结构的室内场景运动性分析与检测方法
Fritsch et al. Modeling facade structures using point clouds from dense image matching
Heras et al. Urban heritage monitoring, using image processing techniques and data collection with terrestrial laser scanner (TLS), case study Cuenca-Ecuador
CN104063893B (zh) 基于格式塔心理学准则和多标签图割最小化的城市建筑可视化的方法
de Oliveira Miranda et al. Finite element mesh generation for subsurface simulation models
Xu et al. A method of 3d building boundary extraction from airborne lidar points cloud
Rezanejad et al. Robust environment mapping using flux skeletons
Zhu et al. Feature line based building detection and reconstruction from oblique airborne imagery
Adreani et al. Rendering 3D city for smart city digital twin
Wolf et al. Applicability of neural networks for image classification on object detection in mobile mapping 3d point clouds
Laksono et al. Interactive 3D city visualization from structure motion data using game engine
Hujebri et al. Automatic building extraction from lidar point cloud data in the fusion of orthoimage
CN106709439B (zh) 一种单斜岩层构造地貌的自动识别方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant