一种栅格数据的数据处理方法和装置制造方法及图纸

技术编号:21247115 阅读:79 留言:0更新日期:2019-06-01 07:26
本发明专利技术实施例提供了一种栅格数据的处理方法和装置,具体为对于待计算的栅格数据,将其中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应位置的所述中间波段上;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。通过利用波段对任务进行分割,可以将分割后的任务分配给多个计算资源进行计算,从而可以提高计算效率,解决了大范围栅格计算时结果较为难计算的问题。

A Data Processing Method and Device for Raster Data

The embodiment of the present invention provides a method and device for processing raster data, in particular for dividing each factor of the raster data to be calculated to obtain a preset number of data blocks, and constructing a number of data files with the same number of data blocks, each of which includes multiple intermediate bands, the number of intermediate bands and the factors. The number of calculation results is the same; each data block of each factor is written on the intermediate band corresponding to the location of each data file; the intermediate band containing the data block is allocated to a plurality of computing resources for calculation, and a plurality of calculation results are obtained; all calculation results are assembled to obtain the final result raster data. By using bands to segment tasks, the tasks after segmentation can be allocated to multiple computing resources for calculation, which can improve the computing efficiency and solve the problem that the results of large-scale grid computing are difficult to calculate.

【技术实现步骤摘要】
一种栅格数据的数据处理方法和装置
本专利技术涉及计算机
,特别是涉及一种栅格数据的数据处理方法和装置。
技术介绍
在gis应用中,在对水土保持的水蚀模型或风蚀模型的计算过程中,多数是用多因子栅格叠加计算,在保证精度的情况下,大范围的栅格计算由于空间与时间的关系导致数据量极其巨大,从而使结果很难被计算出来。
技术实现思路
有鉴于此,本专利技术提供了一种栅格数据的数据处理方法和装置,以解决大范围的栅格计算时结果较为难计算的问题。为了解决上述问题,本专利技术公开了一种栅格数据的数据处理方法,包括:对于待计算的栅格数据,将所述栅格数据中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应的所述中间波段上的对应位置;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。可选的,每个所述数据文件还包括一个结果波段,所述结果波段用于记录所述计算结果。可选的,所述对所述计算结果进行装配,包括:对所有的所述结果波段所记录的结果数据进行装配,得到所述成果栅格数据。可选的,在所述将每个所述因子的每个数据块写入每个所述数据文件的对应的所述中间波段的对应位置步骤之后,还包括:构建索引文件,所述索引文件用于保存每个数据文件及其对应的起始行列与结束行列。可选的,所述将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,包括:根据所述索引文件将多个所述中间波段分配给一个计算设备中的多个计算模块进行并行计算;或,根据所述索引文件将多个所述中间波段分配被多个计算设备进行并行计算。另外,还提供了一种栅格数据的数据处理装置,包括:因子分割模块,用于对于待计算的栅格数据,将所述栅格数据的每个因子进行分割,得到预设数量的数据块;文件构建模块,用于构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;数据写入模块,用于将每个所述因子的每个数据块写入每个所述数据文件的对应位置的所述中间波段上;任务分配模块,用于将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;结果装配模块,用于对所有计算结果进行装配,得到最终的成果栅格数据。可选的,每个所述数据文件还包括一个结果波段,所述结果波段用于记录所述计算结果。可选的,所述结果装配模块用于对所有的所述结果波段所记录的结果数据进行装配,得到所述成果栅格数据。可选的,还包括:索引构建模块,用于在所述数据写入模块将每个所述因子的每个数据块写入每个所述数据文件的对应位置的所述中间波段上之后,构建索引文件,所述索引文件用于保存每个数据文件及其对应的起始行列与结束行列。可选的,所述任务分配模块包括:第一分配单元,用于根据所述索引文件将多个所述中间波段分配给一个计算设备中的多个计算模块进行并行计算;或,第二分配单元,用于根据所述索引文件将多个所述中间波段分配被多个计算设备进行并行计算。从上述技术方案可以看出,本专利技术提供了一种栅格数据的处理方法和装置,具体为对于待计算的栅格数据,将其中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应位置的所述中间波段上;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。通过利用波段对任务进行分割,可以将分割后的任务分配给多个计算资源进行计算,从而可以提高计算效率,解决了大范围栅格计算时结果较为难计算的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例的一种栅格数据的数据处理方法的流程图;图2为本申请实施例的另一种栅格数据的数据处理方法的流程图;图3为本申请实施例的一种栅格数据的数据处理装置的框图;图4为本申请实施例的另一种栅格数据的数据处理装置的框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一图1为本申请实施例的一种栅格数据的数据处理方法的流程图。参照图1所示,本实施例通过的数据处理方法应用于在基于gis的水蚀模型和风蚀模型的计算中,用于通过对多个因子的计算最终得到计算结果,即结果栅格数据。该数据处理方法包括如下步骤:S1、将待计算的栅格数据中的因子进行数据分割。经过对栅格数据中每个因子进行分割,得到预设数量的数据块。例如,如果该栅格数据中包含N个因子,则根据第一个因子N1进行数据分割,分割为M个数据块,例如分割为1024*1024个数据块。值得指出的是,对于每个因子来说,在对N1进行分割确定数据块的数量后,其他因子所分割的数据块与N1的数据块的数量相同。S2、构建多个数据文件。构建的数据文件的数量与任一个因子被分割的数据块的数量相同,且每个数据文件中包括多个中间波段,中间波段的数量与该栅格数据中因子的数量相同。例如,对于本实施例来说,每个数据文件中有N个中间波段。S3、将每个因子的数据块写入对应的中间波段。具体来说,是将每个因子所分割的相应数据块写入对应的中间波段的对应位置,以使每个因子的所有数据块均匀分布于每个数据文件中。S4、将中间波段分配给多个计算资源进行计算。具体来说,是将所有中间波段分配给相应数量的计算资源进行并行计算,从而得到相应的计算结果,得到的计算结果存储于每个数据文件的结果波段中。具体分配时,可以将所有中间波段分配给一个计算设备中多个计算模块进行并行计算,也可以是将所有中间波段分配给多个计算设备进行并行计算。S5、将计算结果进行装配,得到结果栅格文件。在得到计算结果后,将得到的所有计算结果进行装配,从而得到结果栅格文件。具体来说,是将每个数据文件中结果波段中存储的计算结果进行装配,从而得到该结果栅格文件。从上述技术文件可以看出,本实施例提供了一种栅格数据的处理方法,具体为对于待计算的栅格数据,将其中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应位置的所述中间波段上;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。通过利用波段对任务进行分割,可以将分割后的任务分配给多个计算资源进行计算,本文档来自技高网...

【技术保护点】
1.一种栅格数据的数据处理方法,其特征在于,包括:对于待计算的栅格数据,将所述栅格数据中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应的所述中间波段上的对应位置;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。

【技术特征摘要】
1.一种栅格数据的数据处理方法,其特征在于,包括:对于待计算的栅格数据,将所述栅格数据中的每个因子进行分割,得到预设数量的数据块;构建数量与所述数据块的数量相同的多个数据文件,每个所述数据文件包括多个中间波段,所述中间波段的数量与所述因子的数量相同;将每个所述因子的每个数据块写入每个所述数据文件的对应的所述中间波段上的对应位置;将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,得到多个计算结果;对所有计算结果进行装配,得到最终的成果栅格数据。2.如权利要求1所述的数据处理方法,其特征在于,每个所述数据文件还包括一个结果波段,所述结果波段用于记录所述计算结果。3.如权利要求2所述的数据处理方法,其特征在于,所述对所述计算结果进行装配,包括:对所有的所述结果波段所记录的结果数据进行装配,得到所述成果栅格数据。4.如权利要求1所述的数据处理方法,其特征在于,在所述将每个所述因子的每个数据块写入每个所述数据文件的对应的所述中间波段的对应位置步骤之后,还包括:构建索引文件,所述索引文件用于保存每个数据文件及其对应的起始行列与结束行列。5.如权利要求4所述的数据处理方法,其特征在于,所述将多个包含所述数据块的所述中间波段分配给多个计算资源进行计算,包括:根据所述索引文件将多个所述中间波段分配给一个计算设备中的多个计算模块进行并行计算;或,根据所述索引文件将多个所述中间波段分配被多个计算设备进行并行计算。6.一种栅格数据的数据处理装置,其特征...

【专利技术属性】
技术研发人员:李婧许永利郭浩彭文华王明润杨蒙王建文周怀春李团宏常丹东
申请(专利权)人:北京地拓科技发展有限公司水利部水土保持监测中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1