一种提高地形表达精度的地形特征线处理方法与流程

文档序号:23387121发布日期:2020-12-22 13:52阅读:369来源:国知局
一种提高地形表达精度的地形特征线处理方法与流程

本发明属于高精度数字高程模型构建的技术领域,涉及对地形特征线数据进行一系列预处理操作,从而将地形特征线信息能够有效融入地表模型构建中,进而提高所构建的地表模型的地形表达精度。



背景技术:

数字高程模型(digitalelevationmodel,简称dem)是国家基础地理数据的核心内容。目前,我国已初步完成1:100万、1:25万、1:5万和部分地区1:1万dem数据的建设。这些数据在国民经济、国防建设及科学研究等方面发挥着不可或缺的重要作用,其应用领域遍布测绘、交通、军事、水利、农业、环境、资源管理、规划与旅游等众多领域。

已有的经典dem构建方法能较好反映地表的自然起伏特征,但是对于渐变地形与突变地形交错分布、人工地形与自然地形混合分布的地表,现有dem地形描述与应用都存在严重的失真现象,形态保真度较低,严重制约了dem在这些区域的应用深度。上述地形一个重要特点是存在大量的地形陡坎线,特别是在人类活动改造明显的区域,例如河堤、道路边线、农田地块边界线、梯田边界线等。这些边界线是不同地物的边界线,也是局部区域地表高程的突变线,往往线两侧呈现明显的高程差。因此,要在这些区域进行规则dem构建,必需考虑上述各种边界线对区域高程的影响,否则会造成构建结果形态的明显失真。

将陡坎线融入到dem中目前普遍应用的方式是构建不规则三角网tin,即将陡坎线作为约束线成为构建tin的数据源之一,从而将陡坎线嵌入到形成的不规则三角网中。这种构建方法目前在技术上比较成熟,也早已在一些应用软件中集成应用,例如esri旗下的arcgis软件。但是当前tin生成算法在融合陡坎线等地形信息时,其处理方法还不够完善,导致构建结果形态保真度较差。这问题主要在于当陡坎线参与构建tin时,需要在陡坎线上顺序插入一系列节点作为三角网的顶点,而在计算这些节点的高程时,当前的tin算法采用陡坎线两侧的高程点来估计这些节点的值,这就引入了误差,因为陡坎线作为高程急剧变化的分界线,一般是处在地形较高的区域。采用陡坎线两侧高程点来估值的结果就是使得陡坎线上节点的高程值低于其正常值,最终导致构建的tin会在陡坎线处形成一系列不规则的斜坡面,陡峭的突变地形无法得到有效表达。



技术实现要素:

为解决上述问题,提高地形特征线处的dem建模结果的形态精度,本着操作简便、易于实现的原则,本发明从完善突变地形的特征表达出发:先生成原始特征线的平行特征线,与原始地形特征线共同表达实际突变地形的边界;然后在原始地形特征线及其平行特征线上插入一系列节点,并以不跨越对方为原则寻找已知采样点来估算节点的高程值;最后,将原始特征线和平行特征线共同作为特征约束线完成tin构建。以此方法构建的tin,以及转化得到的格网dem在地形特征线处的突变形态特征能得到较好表达。

本发明采用的技术方案如下:

一种提高地形表达精度的地形特征线处理方法,包括如下步骤:

s1,对于建模数据中的原始特征线,计算其两侧一定范围内高程点的高程均值差,判断该高程均值差是否大于指定阈值,如果大于阈值,则将当前特征线标记为需要处理,否则标记为不需要处理;

s2,对于步骤s1中标记的每一条需要处理的原始特征线,在高程均值低的一侧生成当前原始特征线的平行特征线;

s3,按照指定步长参数,在原始特征线和它的平行特征线上分别插入节点;

s4,对于步骤s3中原始特征线插入的节点,根据其周围已知高程点,计算每一个节点的高程值;

s5,对于步骤s3中平行特征线插入的节点,根据其周围已知高程点,计算每一个节点的高程值;

s6,将步骤4和步骤5高程值计算完成的原始特征线及其平行特征线输出,与其他地形数据构建tin。

进一步地,所述步骤s2的具体步骤为:

s21,对于所需要处理的原始特征线,根据其节点坐标,计算其外包矩形范围;

s22,计算出外包矩形范围后,被当前处理的原始特征线分割为两部分,分别统计落入两部分区域的高程点的平均高程值,然后计算两部分区域的高程点平均高程值的差值;

s23,根据步骤s22计算出的高程点平均高程值的差值,判断拟生成的平行特征线的位置,判断的准则是平行特征线要位于高程均值低的一侧;

s24,对当前处理的原始特征线的首节点,生成过首节点且与首节点与第二个节点的连线相垂直的直线,并在拟插入平行特征线的一侧,按照指定距离参数,在垂直直线上插入平行特征线的第一个节点;

s25,按照步骤s24的方法依次生成与原始特征线上节点对应的平行特征线节点;

s26,连接步骤s24和s25所生成的节点,形成原始特征线的平行特征线。

进一步地,所述步骤s4的具体步骤如下:

s41,对于所处理的原始特征线,从其首节点开始,找到第一个插入节点,作为要计算高程值的第一个节点;

s42,以步骤s41确定的节点为圆心,按照指定参数,在数据处理空间中,以当前处理的原始特征线为参照,在不存在平行特征线的一侧,生成搜索半圆;

s43,统计落入步骤s42中生成的搜索半圆中的已知高程点的数量,如果数量大于或等于最大采样高程点数量,则对这些高程点按照距待计算高程值节点的距离排序,取数量为最大采样高程点数量的点,标记已知高程点数量,并继续执行步骤s45,否则,如果当前搜索半圆中高程点的数量小于最大采样高程点数量,但是大于或等于最小采样高程点数量,则将这些点全部标记为计算用点,并标记已知高程点数量,并继续执行步骤s45,否则,执行步骤s44;

s44,按照指定参数,生成扩大搜索半圆,统计落入高程点的数量,如果数量大于或等于最小采样高程点数量,则按照距离排序,取最小采样高程点数量的点作为计算用点,并标记已知高程点数量,并继续执行步骤s45,否则,如果落入当前搜索半圆中的高程点数量依然小于最小采样高程点数量,但是大于1,则将当前点标记为计算用点,并标记已知高程点数量,并继续执行步骤s45,否则,如果数量等于1,则直接将该已知高程点的高程值赋给当前待计算节点,并结束s4步骤,否则,如果数量为0,则赋值为空,结束步骤s44,并执行步骤s46;

s45,根据可用高程点,依据反距离加权算法,计算当前待计算节点的高程值;

s46,对当前原始特征线的其它插入节点,依次按照步骤s42-s45,计算高程值。

本发明的技术特点及有益效果:

(1)本发明提出的地形特征线处理方法,通过生成原始特征线的平行特征线,对原始特征线及平行特征线添加节点,并依据已有高程信息对所添加的节点进行合理估值,从而达到对原始特征线两侧地形特征合理表达的目的。经过该处理后,所构建的数字地表模型在原始特征线处的精度显著提高。

(2)本发明的方法可以方便地应用于基于地形图数据的地表模型构建,完全立足于已有的地形图数据,不需要额外增加地形信息;同时本方法只涉及对原始特征线进行处理,不需要修改数字地表模型构建的相关算法,整个过程简单易操作。

(3)本发明的应用范围很广。当前在人类活动区域,例如城市区域,各种人类工程造就了多种多样的突变地形,此时可以应用本发明提出的方法,来提高这些区域的数字地表模型的精度,进而提升数字地表模型在这些区域的应用价值。

附图说明

图1为本发明方法的流程示意图。

图2为本发明方法中特征线及其外包矩形示意图。

图3为本发明方法中生成特征线的平行特征线示意图。

图4为本发明方法中地形特征线及其平行特征线对区域的分割示意图。

图5为本发明方法中特征线节点高程值计算的搜索半圆示意图。

图6为实施例中经过本发明方法处理前后构建的tin示意图,(a)处理前,(b)处理后。

图7为实施例中经过本发明方法处理前后的格网dem示意图,(a)处理前,(b)处理后。

图8为实施例中经过本发明方法处理前后结果对应的山体阴影图,(a)处理前,(b)处理后。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

如图1所示,本发明的一种提高地形表达精度的地形特征线处理方法的具体步骤如下:

步骤1:信息初始化,确定相关参数:特征线两侧高差阈值为p,原始特征线与平行特征线距离为q,特征线插入节点步长为l,初始搜索半圆半径为r,二次搜索半圆半径为2r,节点高程估值所需要的最大已知高程点数为m,节点高程估值所需要的最小已知高程点数为n。

步骤2:遍历当前处理原始特征线节点,根据节点坐标,生成其外包矩形,而原始特征线将外包矩形分割成两部分,区域a和区域b,如图2所示。

步骤3:分别标记落入区域a和区域b中高程点,统计其平均高程值ha和hb,计算两者之差,如果大于p,则继续执行步骤4,否则,该特征线不处理,转到步骤2,继续处理其它特征线。

步骤4:根据步骤3计算得到的ha和hb,判断值低的一个,对应的区域为平行特征线生成区域。

步骤5;在平行特征线生成区域,按照如下规则生成对应节点:从原始特征线首节点开始,与下一个节点形成一条直线,过第一节点往平行特征线区域引垂线,然后在距第一节点距离为q处插入平行特征线节点(如图3所示)。然后依次处理其它节点,其中尾节点可与其前一个节点形成直线。

步骤6:连接步骤5中生成的节点,形成原始特征线的平行特征线,此时,原始特征线和平行特征线将研究区域分为三部分,标记为a、b、c,如图4所示。

步骤7:对原始特征线,以及生成的平行特征线,按照步长l,插入节点。

步骤8:以原始特征线的首节点为待计算节点,并以其为圆心,以r为半径,在区域a生成搜索半圆,如图5所示。

步骤9:统计落入搜索半圆中高程点的数量num,如果num大于m,则根据到圆心的距离,从小到大排序,选择m个高程点,标记为计算用点,执行步骤12。如果num小于或等于m,且同时大于或等于n,则将所有高程点标记为计算用点,执行步骤12。如果num小于n,则执行步骤10。

步骤10:以步骤8中的圆心为圆心,以2r为半径生成扩大搜索圆。

步骤11:统计落入扩大搜索半圆中高程点数量num,如果num大于n,则根据高程点到圆心距离,从小到大排序,选择n个高程点,标记为计算用点,执行步骤12。如果num小于n,但大于0,则将所有高程点标记为计算用点,执行步骤12。如果num为0,则将当前待计算节点的高程值属性赋空值,并将下一个节点作为待计算节点,并重新执行步骤8。

步骤12:用来计算当前节点高程值的已知高程数量s,如果s等于1,则直接将已知高程点的高程值赋给当前计算节点的高程属性,并将下一个节点作为待计算节点,并重新执行步骤8。否则,将用来计算节点高程值的高程点依次标记为o1(x1,y1,h1),o2(x2,y2,h2),......,os(xs,ys,hs),按照反距离加权的方式来计算当前节点高程值,具体计算方式为:

第一步:计算当前待计算高程值节点与已知高程点的距离di,i=1,2,...,s

其中(x0,y0)为当前待计算高程值节点的平面位置坐标。

第二步:按照如下公式计算每一个已知高程点的权重wi,i=1,2,...,s

第三步:按照如下公式计算当前前待计算高程值节点的高程值h0

步骤13:判断原始特征线中是否还有未计算高程值的节点,如果有,则从步骤8开始,依次执行计算步骤,否则,则执行步骤14;

步骤14:仿照原始特征线节点计算方式(步骤8-步骤13),完成平行特征线节点高程值计算;

步骤15:判断输入的原始特征线数据中是否还有未处理的特征线,如果有,则从步骤2开始,依次执行处理步骤,否则,执行步骤16;

步骤16:将原始特征线与所生成的平行特征线输出为新的地形特征线图层;

步骤17:联合新的地形特征线图层与其他地形数据,执行tin构建步骤。

实施例

tin是数字高程模型的一种重要数据结构,在地形表达与分析中具有重要作用,但是在当前的tin构建方法中,没有很好地融入地形特征线所代表的地形突变信息,导致构建的tin,以及后续生成的格网dem不能很好的表达突变地形。为了验证本发明方法对存在地形特征线区域地形表达的形态保真效果,例举实例选取了地形特征线较为丰富的地区——南京市某某区域,该区域人类活动剧烈,各种工程对地表改变较大,形成了许多突变地形。本例以1:1000地形图为数据源,采集其中的高程点、等高线以及地形特征线作为构建tin的数据源,采用本发明方法实施tin构建,并从高程精度与形态精度两方面与当前tin构建效果进行比较。

本实施例具体的实施步骤如下:

步骤1:根据获取数据情况,确定相关参数:原始特征线两侧高差阈值为0.2米,原始特征线与平行特征线距离为2米,特征线插入节点步长为1米,初始搜索半圆半径为5米,二次搜索半圆半径为10米,节点高程估值所需要的最大已知高程点数为12,节点高程估值所需要的最小已知高程点数为6;

步骤2:根据原始特征线两侧高程点情况,筛选需要处理的特征线;

步骤3:对需要处理的原始特征线,依次生成平行特征线;

步骤4:对需要处理的原始特征线,及其对应的平行特征线,依次按照指定步长插入节点,此例中步长为1米;

步骤5:根据原始特征线及对应平行特征线周围高程点,依次计算其节点的高程值;

步骤6:将原始地形特征线与生成的平行特征线合并,输出为新的地形特征线;

步骤7:将新地形特征线与示例区域中的等高线、高程点等其他地形数据联合,构建tin,其中构建结果如图6所示。

步骤8:将构建结果与地形特征线未处理的tin构建结果对比,分析应用本发明方法所构建tin的形态精度与高程精度。其中图7表示tin转换成格网dem,再生成的山体阴影对比图;表1则为高程精度对比。

表1精度验证误差统计(单位:米)

综合上面的结果可以看出,本发明方法构建的tin在形态精度和高程精度两方面都优于当前现有的tin构建方法。

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