【技术实现步骤摘要】
等值线和/或等值面生成方法、系统、设备及存储介质
[0001]本专利技术属于地理信息
,尤其涉及一种基于gdal空间插值的等值线和/或等值面生成方法、系统、计算机设备及存储介质。
技术介绍
[0002]等值线是专题地图的重要图型,起初用来描述地形的起伏变化,后常被用于以相等数值点的连线表示连续分布且逐渐变化的数量特征,如等高线、等温线、等降雨量线等。等值面是一定地理空间范围内相近值的面域范围集合,在专题地图展示时,等值面可更直观地表示要素在空间渐变的趋势。等值线及等值面的应用不仅仅在测绘及地理信息领域,同时也越来越多地被应用于环境、水利、气象等诸多领域的数据分析及可视化渲染。
[0003]随着地理信息技术的快速发展,利用GIS技术中的等值线及等值面进行数据分析以及信息化系统的开发与展示被越来越多的大众接受和认可。尽管等值线及等值面生成技术已经十分成熟,但该功能大多集成在商用地理信息数据处理软件中,如ArcGISDesktop、SuperMap Desktop,在WebGIS信息化系统开发过程中需要取得其桌面软件及服务端软件的产品授权才能使用,软件价格昂贵、等值线及等值面生成技术调用效率低下,因其结果数据只能利用对应软件产品的二维地图sdk或api进行加载,导致无法跨平台使用,且展示效果不直观,更无法与二、三维开源WebGISApi进行无缝展示集成。而流行的开源前端的插值渲染类库,如kriging.js、turf.js等,效率低下,准确率较低、参数设置不灵活、展示效果不理想、无法生成等值线数据、与三维We ...
【技术保护点】
【技术特征摘要】
1.一种等值线和/或等值面生成方法,其特征在于,包括以下步骤:步骤1:根据栅格数据的使用分辨率需求设置插值结果栅格的数据分辨率,根据所需结果数据的实际坐标范围设置插值范围的四角坐标数据;步骤2:根据所述数据分辨率和四角坐标数据计算出栅格区域的宽度值和高度值;步骤3:根据栅格区域的宽度值和高度值、定义的插值结果栅格的输出数据类型计算出内存缓冲区大小,并动态生成内存缓冲区;步骤4:利用GDAL(Geospatial Data Abstraction Library)提供的插值函数对空间散点数据进行插值结果计算,并将计算出的插值结果存储至所述内存缓冲区;步骤5:选择生成等值线和/或等值面,当生成等值线时,执行步骤6;当生成等值面时,执行步骤9;当生成等直线和等值面时,执行步骤6和9;步骤6:创建第一临时存储文件,并为所述第一临时存储文件写入四角范围坐标,在所述第一临时存储文件中创建存储波段,将所述内存缓冲区的插值结果写入至第一临时存储文件的存储波段中;步骤7:创建第一矢量图层,并设置等值线生成间隔;利用GDAL提供的等值线生成函数对所述第一临时存储文件中存储插值结果的波段数据进行等值线数据生成,并将生成的等值线数据存储至所述第一矢量图层;步骤8:根据需要输出的结果范围创建第一裁剪图层,利用所述第一裁剪图层对所述第一矢量图层中的等值线数据进行裁剪,得到等值线文件;步骤9:将所述内存缓冲区的插值结果转化为特定的数值类型,对转化后的数据进行重分类,并将重分类后的数据按照原顺序写入整形数组;步骤10:创建第二临时存储文件,并为所述第二临时存储文件写入四角范围坐标,在所述第二临时存储文件中创建存储波段,将所述步骤9中写有重分类后的数据的整形数组写入至第二临时存储文件的存储波段中;步骤11:创建第二矢量图层,利用GDAL提供的栅格矢量化函数对所述第二临时存储文件中存储整形数组的波段数据进行栅格矢量化转换,并将栅格矢量化转换后的数据存储至所述第二矢量图层;步骤12:根据需要输出的结果范围创建第二裁剪图层,利用所述第二裁剪图层对所述第二矢量图层中的数据进行裁剪,得到等值面文件。2.如权利要求1所述的等值线和/或等值面生成方法,其特征在于,所述步骤2中,栅格区域的宽度值和高度值的计算公式为:区域的宽度值和高度值的计算公式为:其中,N
x
表示栅格区域的宽度值,N
y
表示栅格区域的高度值,x
max
、y
max
分别表示x、y方向坐标的最大值,x
min
、y
min
分别表示x、y方向坐标的最小值,δ表示数据分辨率。3.如权利要求1所述的等值线和/或等值面生成方法,其特征在于,所述步骤3中,内存缓冲区大小的计算公式为:
其中,B表示内存缓冲区大小,N
x
表示栅格区域的宽度值,N
y
表示栅格区域的高度值,N
type
表示输出数据类型尺寸;优选地,利用JAVA.nio.ByteBuffer.allocateDirect()函数动态生成所述内存缓冲区。4.如权利要求1所述的等值线和/或等值面生成方法,其特征在于,所述步骤4中,插值函数所采用的插值方式为反距离权重插值法、自然邻域插值法或趋势面法插值。5.如权利要求1所述的等值线和/或等值面生成方法,其特征在于,所述步骤6或10中,利用GDAL内置函数rasterDriver.Create()创建第一临时存储文件或第二临时存储文件;利用SetGeoTransform()函数为第一临时存储文件或第二临时存储文件...
【专利技术属性】
技术研发人员:张旗升,傅利,李翔,罗凯乐,陈岳鸿,
申请(专利权)人:中国电建集团中南勘测设计研究院有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。