栅格数据批量裁剪方法、装置及计算机可读存储介质与流程

文档序号:19129007发布日期:2019-11-13 02:25阅读:248来源:国知局
栅格数据批量裁剪方法、装置及计算机可读存储介质与流程

本发明涉及数据处理技术领域,尤其涉及一种栅格数据批量裁剪方法、装置及计算机可读存储介质。



背景技术:

栅格数据就是将空间分割成有规律的网格,每一个网格称为一个单元,并在各单元上赋予相应的属性值来表示实体的一种数据形式。现有的栅格裁剪工具,基本上都是按照矩形范围进行裁剪,例如使用x坐标的最大值(xmax)和最小值(xmin),以及y坐标的最大值(ymax)和最小值(ymin),从而确定对应的矩形范围进行裁剪;或者,直接按照对应的矢量图形进行裁剪。针对需要批量处理或者是对图形中的多个矢量面进行同时裁剪操作的情况,利用现有的栅格数据裁剪方式,需要手动选择对应的矢量面,可能会出错;且在栅格数据裁剪的处理过程中,也会遇到数据量大、操作冗余、处理时间长等问题,浪费了大量的时间和精力,处理效率低且耗时长。



技术实现要素:

本发明提供一种栅格数据批量裁剪方法、装置及计算机可读存储介质,其主要目的在于提供一种对目标栅格进行批量裁剪的栅格数据裁剪方式,提高栅格数据批量裁剪的效率和准确率。

为实现上述目的,本发明提供了一种栅格数据批量裁剪方法,该方法包括:

输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;

遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;

根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

可选地,所述输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据,包括:

接收栅格数据裁剪指令,输入矢量面数据和所述矢量面数据对应的待裁剪的栅格数据;

对接收的所述栅格数据裁剪指令进行解析,获取所述栅格数据裁剪指令对应的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录。

可选地,所述遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪,包括:

识别所述矢量面数据中包含的矢量面要素的个数;

若只有一个矢量面要素,则按照这一个矢量面要素范围对待裁剪的栅格数据进行裁剪;

若有多个矢量面要素,则遍历所有矢量面要素,根据遍历结果,按照各矢量面要素分别对应的裁剪范围,对输入的所述栅格数据进行一次性批量裁剪。

可选地,所述遍历所述矢量面数据中的所有矢量面包括:

根据栅格数据的裁剪需求,配置地理信息系统arcgis系统中的python脚本工具;

基于arcgis系统中已配置的python脚本工具,利用arcpy中的查询游标和裁剪工具来遍历矢量数据中的所有矢量图形。

可选地,所述根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据,包括:

根据裁剪结果,识别对输出的栅格数据是否存在输出格式要求;

若对输出的栅格数据存在输出格式要求,则按照所述输出格式要求,进行数据输出的格式配置,并输出格式配置后的目标栅格数据;

若对输出的栅格数据不存在输出格式要求,则采用默认的数据格式,输出所述目标栅格数据。

此外,为实现上述目的,本发明还提供一种栅格数据批量裁剪装置,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的栅格数据批量裁剪程序,所述栅格数据批量裁剪程序被所述处理器执行时实现如下步骤:

输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;

遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;

根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

可选地,所述栅格数据批量裁剪程序还可被所述处理器执行,以在输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据,包括:

接收栅格数据裁剪指令,输入矢量面数据和所述矢量面数据对应的待裁剪的栅格数据;

对接收的所述栅格数据裁剪指令进行解析,获取所述栅格数据裁剪指令对应的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录。

可选地,所述栅格数据批量裁剪程序还可被所述处理器执行,以在所述遍历所述矢量面数据中的所有矢量面,包括:

根据栅格数据的裁剪需求,配置地理信息系统arcgis系统中的python脚本工具;

基于arcgis系统中已配置的python脚本工具,利用arcpy中的查询游标和裁剪工具来遍历矢量数据中的所有矢量图形。

可选地,所述栅格数据批量裁剪程序还可被所述处理器执行,以在根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据,包括:

根据裁剪结果,识别对输出的栅格数据是否存在输出格式要求;

若对输出的栅格数据存在输出格式要求,则按照所述输出格式要求,进行数据输出的格式配置,并输出格式配置后的目标栅格数据;

若对输出的栅格数据不存在输出格式要求,则采用默认的数据格式,输出所述目标栅格数据。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有栅格数据批量裁剪程序,所述栅格数据批量裁剪程序可被一个或者多个处理器执行,以实现如上所述的栅格数据批量裁剪方法的步骤。

本发明提出的栅格数据批量裁剪方法、装置及计算机可读存储介质,输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。本发明还提出一种栅格数据批量裁剪装置以及一种计算机可读存储介质。本发明实现了一种对目标栅格进行批量裁剪的栅格数据裁剪方式,提高了栅格数据批量裁剪的效率,节约了大量的时间和精力,进一步地也提高了栅格数据批量裁剪的准确率。

附图说明

图1为本发明一实施例提供的栅格数据批量裁剪方法的流程示意图;

图2为本发明一实施例中输入的矢量面数据的示意图;

图3为本发明一实施例中输入的待裁剪的栅格数据的示意图;

图4为本发明一实施例中将图2所示的矢量面作为裁剪范围对图3所示的栅格数据进行裁剪的示意图;

图5为本发明一实施例中利用图4进行一次性批量裁剪后输出的目标栅格数据的示意图;

图6为本发明一实施例提供的栅格数据批量裁剪装置的内部结构示意图;

图7为本发明一实施例提供的栅格数据批量裁剪装置中栅格数据批量裁剪程序的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种栅格数据批量裁剪方法。参照图1所示,为本发明一实施例提供的栅格数据批量裁剪方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。

在本实施例中,栅格数据批量裁剪方法包括:

步骤s10,输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据。

本发明实施例中所描述的栅格数据可以理解为:将空间分割成有规律的网格,每一个网格称为一个单元,并在各单元上赋予相应的属性值来表示实体的一种数据形式;矢量面数据可以理解为:将矢量打散成散点图后,将散点图中的有序点进行合并后生成的一个完整的面矢量。在根据矢量面数据对待裁剪的栅格数据进行裁剪之前,根据数据裁剪指令,输入对应的矢量面数据,以及该矢量面数据对应的待裁剪的栅格数据。在一个具体的应用场景中,输入的矢量面数据如图2所示,图2所示的矢量面数据对应的待裁剪的栅格数据如图3所示。

步骤s20,遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪。

本发明实施例中,输入的矢量面数据中可能包括多个矢量面,因此,在对待裁剪的栅格数据进行裁剪之前,需要遍历矢量面数据中的所有矢量面,并获取上述所有矢量面中所包含的每一个矢量面分别对应的边界范围以及数据特征,进而根据每一个矢量面分别对应的边界范围,确定待裁剪的栅格数据对应的裁剪范围;根据确定的裁剪范围以及所有矢量面对应的数据特征,对所述栅格数据进行一次性裁剪。在一个具体的应用场景中,利用图2所示的矢量面数据对图3所示的栅格数据进行一次性批量裁剪的示意图如图4所示。

步骤s30,根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

为了便捷的进行数据处理,同时也为了区别不同矢量面各自分别对应的目标栅格数据,在根据裁剪结果输出目标栅格数据时,针对多个矢量面的同时批量裁剪,在遍历所述矢量面数据中的所有矢量面的同时,根据每个矢量面的数据特征或者该矢量面的边界范围特征,或者可唯一确定该矢量面的其他特征信息,为每个矢量面进行编号。在对多个矢量面进行批量裁剪并输出裁剪结果时,对应于每个矢量面,为各矢量面分别对应的目标栅格数据进行一一对应编号,即通过每个矢量面各自的编号便可确定该矢量面对应的目标栅格数据,以及通过输出的对应目标栅格数据的编号,即可便捷地获知该目标栅格数据对应的是哪一个矢量面。在一个具体的应用场景中,利用图4进行一次性批量裁剪后,输出的目标栅格数据的示意图如图5所示。

本实施例提出的栅格数据批量裁剪方法,输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。本发明实现了一种对目标栅格进行批量裁剪的栅格数据裁剪方式,提高了栅格数据批量裁剪的效率,节约了大量的时间和精力,进一步地也提高了栅格数据批量裁剪的准确率。

进一步地,在本发明方法的另一实施例中,图1所述实施例中的步骤s10,输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据,还可以按照如下技术手段实施:

接收栅格数据裁剪指令,输入矢量面数据和所述矢量面数据对应的待裁剪的栅格数据;

对接收的所述栅格数据裁剪指令进行解析,获取所述栅格数据裁剪指令对应的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录。

本发明实施例中,由于直接对栅格数据进行批量裁剪,因此在批量裁剪之前,首先需要获取待裁剪区域对应的矢量面数据,以便根据矢量面数据确定对应的裁剪范围,因此在接收到栅格数据的裁剪指令时,根据该栅格数据裁剪指令,提取对应的矢量面数据并输入栅格数据批量裁剪系统中。在获取待裁剪的栅格数据时,可以通过解析接收到的所述栅格数据裁剪指令,来获取所述裁剪指令指向的需进行裁剪的待裁剪栅格数据以及矢量面数据对应的裁剪范围,同时也可以一并确定裁剪后的目标栅格数据对应的结果输出目录。

其中,输入的栅格数据的数据格式支持地理数据库(比如个人、文件或者arcsde)以及erdasimagine格式、tiff格式;输入的矢量数据的数据格式支持地理数据库(比如个人、文件或者arcsde)以及shapefile格式等。

通过上述处理方式,提供了批量栅格数据裁剪所需的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录,为批量栅格数据裁剪的执行提供了重要依据。

进一步地,在本发明方法的另一实施例中,图1所述实施例中的步骤s20,遍历所述矢量面数据中的所有矢量面,还可以按照如下技术手段实施:

根据栅格数据的裁剪需求,配置地理信息系统arcgis系统中的python脚本工具;

基于arcgis系统中已配置的python脚本工具,利用arcpy中的查询游标和裁剪工具来遍历矢量数据中的所有矢量图形。

在一个具体的应用场景中,可以利用基于arcgis系统中的python脚本工具,比如arcpy中的查询游标(searchcursor)和裁剪工具(clip)来遍历矢量数据中的矢量图形,从而对栅格数据进行裁剪,获取每个矢量数据范围的栅格数据。在使用python工具时,可以根据栅格数据的具体裁剪需求对python工具进行配置,实现栅格数据的批量裁剪。

本发明实施例中所描述的arcgis系统可以理解为:是集空间数据显示、编辑、查询检索、统计、报表生成、空间分析和高级制图等众多功能于一体的桌面应用地理信息系统平台。

进一步地,图1所述实施例中的步骤s20,遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪,还可以按照如下技术手段实施:

识别所述矢量面数据中包含的矢量面要素的个数;

若只有一个矢量面要素,则按照这一个矢量面要素范围对待裁剪的栅格数据进行裁剪;

若有多个矢量面要素,则遍历所有矢量面要素,根据遍历结果,按照各矢量面要素分别对应的裁剪范围,对输入的所述栅格数据进行一次性批量裁剪。

由于本发明实施例中主要进行多个矢量面对应的栅格数据进行批量裁剪,但也同样适用于针对一个矢量面进行栅格数据裁剪的应用场景中。因此,在遍历所述矢量面数据中的所有矢量面时,可以通过识别所述矢量面数据中所包含的矢量面要素的个数是一个还是多个,来选择实施针对单个矢量面的栅格数据裁剪,还是多个矢量面的栅格数据进行一次性批量裁剪。若输入的矢量面数据中包含有多个矢量面要素,则遍历所有矢量面要素,根据遍历结果,按照各矢量面要素分别对应的裁剪范围,对输入的所述栅格数据进行一次性批量裁剪。这种处理方式提高了栅格数据批量裁剪的效率,节约了大量的时间和精力。

进一步地,在本发明方法的另一实施例中,图1所述实施例中的步骤s30,根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据,还可以按照如下技术手段实施:

根据裁剪结果,识别对输出的栅格数据是否存在输出格式要求;

若对输出的栅格数据存在输出格式要求,则按照所述输出格式要求,进行数据输出的格式配置,并输出格式配置后的目标栅格数据;

若对输出的栅格数据不存在输出格式要求,则采用默认的数据格式,输出所述目标栅格数据。

在对裁剪后的栅格数据进行输出时,可以根据使用该栅格数据的具体应用场景所需的数据格式,进行数据输出的格式配置,省去了额外进行数据转换的麻烦。若没有对输出的栅格数据有任何格式要求,则直接按照默认的输出格式进行裁剪后栅格数据的输出。

在一个实施例中,针对裁剪后输出的所述目标栅格数据的数据格式,若输出名称中未指定任何扩展名,则采用默认的数据格式;比如,按照默认采用esrigrid栅格格式;若指定的目标栅格数据对应的输出位置是某一地理数据库,则采用此特定类型的地理数据库(个人、文件或arcsde)创建并输出裁剪后的目标栅格数据;若指定的目标栅格数据对应名称的扩展名为*.img,则裁剪后输出的目标栅格数据将采用erdasimagine格式;若指定的目标栅格数据对应名称的扩展名为*.gif,则裁剪后输出的目标栅格数据将采用tiff格式。

通过对输出栅格数据对应的输出格式的配置操作,省去额外进行数据转换操作的同时,进一步节约了系统的处理时长。

本发明还提供一种栅格数据批量裁剪装置。参照图6所示,为本发明一实施例提供的栅格数据批量裁剪装置的内部结构示意图。

在本实施例中,栅格数据批量裁剪装置1可以是pc(personalcomputer,个人电脑),也可以是智能手机、平板电脑、便携计算机等终端设备。该栅格数据批量裁剪装置1至少包括存储器11、处理器12,通信总线13,以及网络接口14。

其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是栅格数据批量裁剪装置1的内部存储单元,例如该栅格数据批量裁剪装置1的硬盘。存储器11在另一些实施例中也可以是栅格数据批量裁剪装置1的外部存储设备,例如栅格数据批量裁剪装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器11还可以既包括栅格数据批量裁剪装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于栅格数据批量裁剪装置1的应用软件及各类数据,例如栅格数据批量裁剪程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行栅格数据批量裁剪程序01等。

通信总线13用于实现这些组件之间的连接通信。

网络接口14可选的可以包括标准的有线接口、无线接口(如wi-fi接口),通常用于在该装置1与其他电子设备之间建立通信连接。

可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(display)、输入单元比如键盘(keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在栅格数据批量裁剪装置1中处理的信息以及用于显示可视化的用户界面。

图6仅示出了具有组件11-14以及栅格数据批量裁剪程序01的栅格数据批量裁剪装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对栅格数据批量裁剪装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

在图2所示的装置1实施例中,存储器11中存储有栅格数据批量裁剪程序01;处理器12执行存储器11中存储的栅格数据批量裁剪程序01时实现如下步骤:

本发明实施例中所描述的栅格数据可以理解为:将空间分割成有规律的网格,每一个网格称为一个单元,并在各单元上赋予相应的属性值来表示实体的一种数据形式;矢量面数据可以理解为:将矢量打散成散点图后,将散点图中的有序点进行合并后生成的一个完整的面矢量。在根据矢量面数据对待裁剪的栅格数据进行裁剪之前,根据数据裁剪指令,输入对应的矢量面数据,以及该矢量面数据对应的待裁剪的栅格数据。在一个具体的应用场景中,输入的矢量面数据如图2所示,图2所示的矢量面数据对应的待裁剪的栅格数据如图3所示。

遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪。

本发明实施例中,输入的矢量面数据中可能包括多个矢量面,因此,在对待裁剪的栅格数据进行裁剪之前,需要遍历矢量面数据中的所有矢量面,并获取上述所有矢量面中所包含的每一个矢量面分别对应的边界范围以及数据特征,进而根据每一个矢量面分别对应的边界范围,确定待裁剪的栅格数据对应的裁剪范围;根据确定的裁剪范围以及所有矢量面对应的数据特征,对所述栅格数据进行一次性裁剪。在一个具体的应用场景中,利用图2所示的矢量面数据对图3所示的栅格数据进行一次性批量裁剪的示意图如图4所示。

根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

为了便捷的进行数据处理,同时也为了区别不同矢量面各自分别对应的目标栅格数据,在根据裁剪结果输出目标栅格数据时,针对多个矢量面的同时批量裁剪,在遍历所述矢量面数据中的所有矢量面的同时,根据每个矢量面的数据特征或者该矢量面的边界范围特征,或者可唯一确定该矢量面的其他特征信息,为每个矢量面进行编号。在对多个矢量面进行批量裁剪并输出裁剪结果时,对应于每个矢量面,为各矢量面分别对应的目标栅格数据进行一一对应编号,即通过每个矢量面各自的编号便可确定该矢量面对应的目标栅格数据,以及通过输出的对应目标栅格数据的编号,即可便捷地获知该目标栅格数据对应的是哪一个矢量面。

本实施例提出的栅格数据批量裁剪装置,输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。本发明实现了一种对目标栅格进行批量裁剪的栅格数据裁剪方式,提高了栅格数据批量裁剪的效率,节约了大量的时间和精力,进一步地也提高了栅格数据批量裁剪的准确率。

进一步地,在本发明装置的另一实施例中,栅格数据批量裁剪程序01还可被处理器12调用,以在输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据,包括:

接收栅格数据裁剪指令,输入矢量面数据和所述矢量面数据对应的待裁剪的栅格数据;

对接收的所述栅格数据裁剪指令进行解析,获取所述栅格数据裁剪指令对应的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录。

本发明实施例中,由于直接对栅格数据进行批量裁剪,因此在批量裁剪之前,首先需要获取待裁剪区域对应的矢量面数据,以便根据矢量面数据确定对应的裁剪范围,因此在接收到栅格数据的裁剪指令时,根据该栅格数据裁剪指令,提取对应的矢量面数据并输入栅格数据批量裁剪系统中。在获取待裁剪的栅格数据时,可以通过解析接收到的所述栅格数据裁剪指令,来获取所述裁剪指令指向的需进行裁剪的待裁剪栅格数据以及矢量面数据对应的裁剪范围,同时也可以一并确定裁剪后的目标栅格数据对应的结果输出目录。

其中,输入的栅格数据的数据格式支持地理数据库(比如个人、文件或者arcsde)以及erdasimagine格式、tiff格式;输入的矢量数据的数据格式支持地理数据库(比如个人、文件或者arcsde)以及shapefile格式等。

通过上述处理方式,提供了批量栅格数据裁剪所需的待裁剪栅格数据、裁剪范围以及裁剪后的结果输出目录,为批量栅格数据裁剪的执行提供了重要依据。

进一步地,在本发明装置的另一实施例中,栅格数据批量裁剪程序01还可被处理器12调用,以在所述遍历所述矢量面数据中的所有矢量面包括:

根据栅格数据的裁剪需求,配置地理信息系统arcgis系统中的python脚本工具;

基于arcgis系统中已配置的python脚本工具,利用arcpy中的查询游标和裁剪工具来遍历矢量数据中的所有矢量图形。

在一个具体的应用场景中,可以利用基于arcgis系统中的python脚本工具,比如arcpy中的查询游标(searchcursor)和裁剪工具(clip)来遍历矢量数据中的矢量图形,从而对栅格数据进行裁剪,获取每个矢量数据范围的栅格数据。在使用python工具时,可以根据栅格数据的具体裁剪需求对python工具进行配置,实现栅格数据的批量裁剪。

本发明实施例中所描述的arcgis系统可以理解为:是集空间数据显示、编辑、查询检索、统计、报表生成、空间分析和高级制图等众多功能于一体的桌面应用地理信息系统平台。

进一步地,所述栅格数据批量裁剪程序还可被所述处理器执行,以在遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪,包括:

识别所述矢量面数据中包含的矢量面要素的个数;

若只有一个矢量面要素,则按照这一个矢量面要素范围对待裁剪的栅格数据进行裁剪;

若有多个矢量面要素,则遍历所有矢量面要素,根据遍历结果,按照各矢量面要素分别对应的裁剪范围,对输入的所述栅格数据进行一次性批量裁剪。

由于本发明实施例中主要进行多个矢量面对应的栅格数据进行批量裁剪,但也同样适用于针对一个矢量面进行栅格数据裁剪的应用场景中。因此,在遍历所述矢量面数据中的所有矢量面时,可以通过识别所述矢量面数据中所包含的矢量面要素的个数是一个还是多个,来选择实施针对单个矢量面的栅格数据裁剪,还是多个矢量面的栅格数据进行一次性批量裁剪。若输入的矢量面数据中包含有多个矢量面要素,则遍历所有矢量面要素,根据遍历结果,按照各矢量面要素分别对应的裁剪范围,对输入的所述栅格数据进行一次性批量裁剪。这种处理方式提高了栅格数据批量裁剪的效率,节约了大量的时间和精力。

进一步地,在本发明方法的另一实施例中,所述栅格数据批量裁剪程序还可被所述处理器执行,以在根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据,包括:

根据裁剪结果,识别对输出的栅格数据是否存在输出格式要求;

若对输出的栅格数据存在输出格式要求,则按照所述输出格式要求,进行数据输出的格式配置,并输出格式配置后的目标栅格数据;

若对输出的栅格数据不存在输出格式要求,则采用默认的数据格式,输出所述目标栅格数据。

在对裁剪后的栅格数据进行输出时,可以根据使用该栅格数据的具体应用场景所需的数据格式,进行数据输出的格式配置,省去了额外进行数据转换的麻烦。若没有对输出的栅格数据有任何格式要求,则直接按照默认的输出格式进行裁剪后栅格数据的输出。

在一个实施例中,针对裁剪后输出的所述目标栅格数据的数据格式,若输出名称中未指定任何扩展名,则采用默认的数据格式;比如,按照默认采用esrigrid栅格格式;若指定的目标栅格数据对应的输出位置是某一地理数据库,则采用此特定类型的地理数据库(个人、文件或arcsde)创建并输出裁剪后的目标栅格数据;若指定的目标栅格数据对应名称的扩展名为*.img,则裁剪后输出的目标栅格数据将采用erdasimagine格式;若指定的目标栅格数据对应名称的扩展名为*.gif,则裁剪后输出的目标栅格数据将采用tiff格式。

通过对输出栅格数据对应的输出格式的配置操作,省去额外进行数据转换操作的同时,进一步节约了系统的处理时长。

可选地,在其他实施例中,栅格数据批量裁剪程序01还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述栅格数据批量裁剪程序在栅格数据批量裁剪装置中的执行过程。

例如,参照图7所示,为本发明栅格数据批量裁剪装置一实施例中的栅格数据批量裁剪程序的程序模块示意图,该实施例中,栅格数据批量裁剪程序可以被分割为数据输入模块10、数据裁剪模块20以及数据输出模块30,示例性地:

所述数据输入模块10用于:输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;

所述数据裁剪模块20用于:遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;

所述数据输出模块30用于:根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

上述数据输入模块10、数据裁剪模块20以及数据输出模块30等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有栅格数据批量裁剪程序,所述栅格数据批量裁剪程序可被一个或多个处理器执行,以实现如下操作:

输入矢量面数据,以及需要根据输入的所述矢量面数据进行栅格裁剪的栅格数据;

遍历所述矢量面数据中的所有矢量面,并将所述矢量面作为裁剪范围对所述栅格数据进行裁剪;

根据裁剪结果,输出裁剪后得到的所述矢量面对应的目标栅格数据。

本发明计算机可读存储介质具体实施方式与上述栅格数据批量裁剪装置和方法各实施例基本相同,在此不作累述。

需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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