首页> 中国专利> 基于空间数据库输出地图高程数据的方法及设备、介质

基于空间数据库输出地图高程数据的方法及设备、介质

摘要

本发明公开了一种基于空间数据库输出DEM地图高程数据的方法及设备、介质,包括1、获取高程数据地图;2、将所述高程数据地图切分成多个切片,每个切片中包含多个网格;3、同时遍历多个切片中的网格,读取网格中的高程值并输出。由于将地图进行切片分割成多个小片并存入空间数据库,通过空间数据库的接口同时读取各切片上的每个网格的坐标及高程值并输出。从而有利于计算机并行读取数据,提高了DEM中整张地图的高程值的读取和输出效率。

著录项

  • 公开/公告号CN112883130A

    专利类型发明专利

  • 公开/公告日2021-06-01

    原文格式PDF

  • 申请/专利权人 中国人民解放军国防科技大学;

    申请/专利号CN202110010086.6

  • 申请日2021-01-05

  • 分类号G06F16/29(20190101);G06F16/25(20190101);G06F16/248(20190101);

  • 代理机构11885 北京融智邦达知识产权代理事务所(普通合伙);

  • 代理人吴强

  • 地址 410003 湖南省长沙市开福区德雅路109号

  • 入库时间 2023-06-19 11:11:32

说明书

技术领域

本发明属于地图数据处理领域,尤其涉及一种基于空间数据库输出地图高程数据的方法及系统。

背景技术

DEM(Digital Elevation Model数字高程地图)可以应用于国家地理信息的基础数据、土木工程、景观建筑与矿山工程规划与设计、为军事目的而进行的三维显示、景观设计与城市规划、流水线分析、可视性分析、交通路线的规划与大坝选址、与GIS联合进行空间分析等等。此外,从DEM还能派生以下主要产品:平面等高线图、立体等高线图、等坡图、晕渲图、通视图、三维立体透视图等等。

DEM一般为规则矩形格网,规则格网将区域空间切分为规则的格网单元,每个格网单元对应一个数值。数学上可以表示为一个矩阵,在计算机实现中则是一个二维数组,每个格网单元或数组的一个元素,对应一个高程值,如图1所示。

DEM即数字高程模型,是一系列地面点的平面坐标X、Y以及该点的高程Z组成的数据阵列。矩阵网格数据量较大,便于使用,容易管理。但是随着地图范围的扩大,或者地图精度越高,DEM矩阵网格数据量就越大,甚至是海量数据。传统的DEM高程提取方法是通过遍历逐个点提取DEM中整张地图的高程值,或者通过降低精度来输出DEM中的整张地图的高程值,而进行三维显示。这种传统的提取方式速度较慢、效率不高,还会损失地图的精度。如图2所示的降低DEM数据精度示意图。

发明内容

本发明所要解决的技术问题是怎样在不降低地图精度的前提下,提高DEM中整张地图高程值的读取和输出效率,提供了一种基于空间数据库输出地图高程数据的方法及系统。

为解决该问题,所采用的技术方案是:

一种基于空间数据库输出地图高程数据的方法,包括以下步骤:

步骤1:获取高程数据地图;

步骤2:将所述高程数据地图切分成多个切片,每个切片中包含多个网格;

步骤3:同时遍历多个切片中的网格,读取网格中的高程值及网格的坐标并输出。

进一步地,多个所述切片的地图数据保存在空间数据库中。

进一步地,所述切片的地图数据包括切片元数据和切片中各网格对应的高程值,所述切片元数据包括切片的定位坐标、切片中网格矩阵的大小以及切片中各网格的横纵间距。

进一步地,所述切片的定位坐标记为切片的某一角的坐标,所述网格的坐标根据切片的某一角的坐标以及网格的行列值和网格的横纵间距计算得到。

进一步地,所述切片的地图数据包括切片的坐标以及切片中每个网格的坐标和每个网格对应的高程值。

本发明还提供了一种计算机可读介质,存储有计算机程序,所述计算机程序可被处理器执行以实现前面所述的一种基于空间数据库输出地图高程数据方法的步骤。

本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前面所述的一种基于空间数据库输出地图高程数据方法的步骤。

与现有技术相比,本发明所取得的有益效果是:

本发明一种基于空间数据库输出地图高程数据的方法,通过将DEM地图切分成大小合适的切片分别存入空间数据库,通过空间数据库的接口同时读取各切片上的每个网格的坐标及高程值并输出。由于将地图进行切片分割成多个小片,从而有利于计算机并行读取数据,提高了DEM中整张地图的高程值的读取和输出效率。

附图说明

图1为DEM数字高程模型示意图;

图2为降低DEM数据精度示意图;

图3为本发明系统流程图;

图4为DEM地图切片示意图;

图5为遍历切片获取高程值示意图;

图6为从数据库获取的切片元数据图;

图7为获取切片元数据伪算法代码;

图8为同时遍历切片获取高程值伪算法示意图。

图9为本发明实施例中程序用时结果图;

图10为没有进行切片的地图元数据示意图;

图11为传统方法的程序用时结果图。

具体实施方式

图3至图11出示了本发明基于空间数据库输出地图高程数据的方法,包括以下步骤,如图3所示:

步骤1:获取拟输出高程数据的高程数据地图;

步骤2:将所述高程数据地图切分成多个切片,每个切片中包含多个网格;

将DEM地图切成小片存储于空间数据库中,如图4所示,本实施例中将9*9的网格矩阵切分成3*3的9块网格矩阵进行存储。

步骤3:同时遍历多个切片中的网格,读取网格中的高程值及网格的坐标并输出。

本发明通过将DEM地图切分成大小合适的切片分别存入空间数据库,通过空间数据库的接口同时读取各切片上的每个网格的坐标及高程值并输出。由于将地图进行切片分割成多个小片,从而有利于计算机并行读取数据,提高了DEM中的整张地图的高程值的读取和输出效率。如本实施例中由于将9*9的网格矩阵切分成了3*3的9块网格矩阵进行存储,每一块中包含3*3=9个网格。数据读取由原来遍历一张地图中的9*9的网格,变成了如图5所示的同时读取9块网格,并遍历每块网格中的3*3个网格,从而节约了DEM中的整张地图的高程值的读取时间,提高了输出效率。

本实施例中,程序在实现时,根据切片的数量向程序申请同等数量的块空间,申请和切片数量相等的块空间用于存储每个切片中的一个网格的和所对应的高程值。将每块切片的数据保存在空间数据库中。通过将切片的地图数据保存在空间数据库中,便于通过空间数据库的接口同时提取多个切片进行切片中数据的读取。

本实施例中,切片的地图数据包括切片元数据和切片中各网格对应的高程值,所述切片元数据包括切片的定位坐标、切片中网格矩阵的大小以及切片中各网格的横纵间距。遍历切片获取高程值时,遍历切片中的每一个网格,获取每个网格的高程值,同时根据对应的切片元数据计算出每个网格的X、Y坐标值并输出。每个网格的X、Y坐标值的计算方法是,如图6所示的切片元数据示意图,读取切片元数据时,使用如图7所示的获取切片元数据伪算法代码,读取切片的定位坐标,切片的定位坐标为切片上的某一角的坐标,所述网格的坐标根据切片上某一角的坐标以及网格的行列值和横纵间距计算得到。如图6所示,本实施例中切片的定位坐标为切片左上角的横纵坐标UleftX、UleftY,根据网格矩阵的行列值Width、Height,以及网格的横纵间距ScaleX、ScaleY,得到每个网格的坐标。当然切片的定位坐标也可以选择切片上任意位置的坐标进行定位,根据网格的行列值和横纵间距计算出每个网格的坐标。

本实施例中,图8给出了同时遍历切片获取高程值伪算法示意图,同时遍历切片中的每一个网格,获取每个网格的高程值,并根据对应的切片元数据计算出每个网格的X、Y坐标值并输出。

实验验证:

将一张大小为206KB,网格大小为512*512的DEM地图,使用本发明的方法将DEM地图切分成36个100*100大小的网格存储于空间数据库中。数据库中切片的元数据如图6所示。其中rid integer表示切片序号,upperleftx double precision表示切片左上角X坐标值,upperlefty double precision表示切片左上角Y坐标值,width integer表示切片宽度即切片宽度方向所包含的网格数量,height integer表示切片长度即切片长度方向所包含的网格数量,scalex double precision表示切片网格宽度,scaley double precision表示切片网格长度。

读取数据输出时,同时遍历存储于空间数据库中切片中的每一个网格,获取每个网格的高程值,并根据对应的切片元数据计算出每个网格的X、Y坐标值并输出。程序用时12.848秒,如图9所示。

使用传统方法,将同样一张大小为206KB,网格大小为512*512的DEM地图,不进行切分整张存储于空间数据库中。地图的元数据如图10所示。然后遍历每个网格并输出每个网格的X、Y坐标和高程值,程序用时约为992.852秒,如图11所示.

通过本发明的方法与传统方法相比,本发明的方法将同样一张DEM地图进行切片存储并对每一个切片同时进行遍历计算X、Y和高程值将整张地图的高程数据输出速率提升了约77倍。

本发明根据DEM地图格式的大小,将DEM地图切分成大小合适的切片分别存入PostGIS空间数据库,然后通过开源PostGIS空间数据库提供的接口获取每个切片的数据,然后向程序申请和切片数量相等的块空间用于存储每个切片中的一个网格的X、Y坐标和所对应的高程值。同时遍历切片中的每一个网格,获取每个网格的高程值,并根据对应的切片数据计算出每个网格的X、Y坐标值并输出。

本发明还提供了一种计算机可读介质,存储有计算机程序,所述计算机程序可被处理器执行以实现前面所述方法。

本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前面所述方法。

以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号