一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像处理方法、系统以及存储介质与流程

2022-03-16 03:14:56 来源:中国专利 TAG:


1.本技术涉及图像处理领域,具体而言,涉及一种图像处理方法、系统以及存储介质。


背景技术:

2.目前,遥感图像具有文件大、数量多、处理逻辑复杂、计算量大、处理效率要求高等特点,传统做法是通过高性能服务器,或者通过专业遥感处理软件对遥感图像进行处理。但是,高性能服务器价格昂贵,通过高性能服务器对遥感图像进行处理的成本较高。
3.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术实施例提供了一种图像处理方法、系统以及存储介质,以至少解决相关技术中通过高性能服务器对遥感图像进行处理,导致处理成本较高的技术问题。
5.根据本技术实施例的一个方面,提供了一种图像处理方法,包括:一种图像处理方法,其特征在于,包括:获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;对遥感图像进行切分,得到多个图像块;从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
6.根据本技术实施例的另一方面,还提供了一种图像处理方法,包括:接收客户端上传的目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;对遥感图像进行切分,得到多个图像块;从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果;发送目标处理结果至客户端。
7.根据本技术实施例的另一方面,还提供了一种图像处理系统,包括:调度模块,用于获取目标处理请求,对遥感图像进行切分,得到多个图像块,其中,目标处理请求为对遥感图像进行处理的请求;集群底座,与调度模块连接,用于从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;执行模块,与调度模块连接,用于通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
8.根据本技术实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述任意一个实施例中的图像处理方法。
9.在本技术实施例中,首先获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求,然后对遥感图像进行切分,得到多个图像块,可以从目标处理请求中读取每
个图像块的资源需求,并基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成,最后通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果,实现了降低图像处理成本的目的。容易注意到的是,通过对遥感图像进行切分,得到多个图像块,并将多个图像块分配给多台计算机进行处理,这样可以将需要高性能服务器处理的遥感图像分配给多个低性能的服务器进行处理,降低图像处理的成本,并且多个计算机可以对多个图像块进行并行处理,因此,可以提高图像处理的效率,进而解决了相关技术中通过高性能服务器对遥感图像进行处理,导致处理成本较高的技术问题。
附图说明
10.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
11.图1是根据本技术实施例的一种用于实现数据处理方法的计算机终端(或移动设备)的硬件结构框图;
12.图2是根据本技术实施例的一种图像处理方法的流程图;
13.图3a是根据本技术实施例的一种对遥感图像进行流式处理的示意图;
14.图3b是根据本技术实施例的一种对处理任务进行调度的示意图;
15.图3c是根据本技术实施例的一种调度模块进行调度的示意图;
16.图3d是根据本技术实施例的一种任务运行过程中的示意图;
17.图3e是根据本技术实施例的一种用户查询任务的示意图;
18.图4是根据本技术实施例的另一种图像处理方法的流程图;
19.图5是根据本技术实施例的一种图像处理装置的示意图;
20.图6是根据本技术实施例的另一种图像处理装置的示意图;
21.图7是根据本技术实施例的一种计算机终端的结构框图。
具体实施方式
22.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
23.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
24.首先,在对本技术实施例进行描述的过程中出现的部分名词或术语适用于如下解
释:
25.流计算:在传统的数据处理流程中,总是先收集数据,然后将数据放到数据库中。当需要通过数据库对数据做查询时,是在查询到结果后进行相关的处理。这样的处理过程非常的紧凑,尤其是在一些实时搜索应用环境中的某些具体问题,类似于mapreduce(映射归纳编程模型)方式的离线处理并不能很好地解决问题,但是通过流计算方式可以很好地对大规模流动数据在不断变化的运动过程中实时地进行分析,捕捉到可能有用的信息,并把结果发送到下一计算节点。
26.目前,卫星、无人机获取的遥感图像具有文件大、数量多、处理逻辑复杂、计算量大、处理效率要求高等特点,传统做法是通过更性能服务器,通过专业遥感处理软件进行处理,还可以通过单机版的软件来进行处理,但是使用专业遥感处理软件进行处理的成本较高,而使用单机版的软件难以处理大规模遥感影像,其处理性能完全取决于运行的单击硬件的性能。
27.为了解决上述问题,本技术提供了如下解决方案。
28.实施例1
29.根据本技术实施例,还提供了一种图像处理的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
30.本技术实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现图像处理方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,
……
,102n来示出)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(i/o接口)、通用串行总线(usb)端口(可以作为bus总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
31.应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
32.存储器104可用于存储应用软件的软件程序以及模块,如本技术实施例中的图像处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的图像处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实
例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
33.传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(network interface controller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
34.显示器可以例如触摸屏式的液晶显示器(lcd),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
35.此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
36.在上述运行环境下,本技术提供了如图2所示的图像处理方法。图2是根据本技术实施例的图像处理方法的流程图。如图2所示,该方法可以包括以下步骤:
37.步骤s202,获取目标处理请求。
38.其中,目标处理请求为对遥感图像进行处理的请求。
39.上述的遥感图像可以是气象图像、建筑图像等多种类型的遥感图像。
40.在一种可选的实施例中,目标处理请求可以是对遥感图像进行辐射校正、几何纠正、图像整饰、投影变化、镶嵌、特征提取、分类等处理请求,从而使遥感图像达到预期的效果。目标处理请求对应的处理方式可以为通过光学、照相和电子学的方式对遥感图像的照片或者底片进行处理,目标处理请求对应的处理方式还可以为利用计算机对遥感图像进行处理。
41.在另一种可选的实施例中,用户可以将目标处理请求发送至调度模块,调度模块可以根据目标处理请求将遥感图像的处理任务进行下发。
42.步骤s204,对遥感图像进行切分,得到多个图像块。
43.在一种可选的实施例中,由于遥感图像的文件较大、数量较多,因此针对于遥感图像的处理过程做了一个“划分-合并”过程,可以先对遥感图像进行切分,得到多个图像块,并对每个图像块进行标记,通过分布式处理的方式,将得到的多个图像块下发给分布式集群底座中的各个服务器进行处理,并将处理之后的多个图像块进行合并,完成整个处理流程。通过将遥感图像进行切分,得到多个图像块,并对多个图像块分别处理之后再进行合并完成对该遥感图像的处理过程,可以高效的利用各个服务器来提高处理的效率,并且可以降低处理遥感图像的成本。
44.在另一种可选的实施例中,可以根据分布式集群底座中各个服务器的处理能力和服务器的数量来对遥感图像进行切分,以便能够高效的利用所有的服务器来对得到的多个图像块进行处理。
45.在另一种可选的实施例中,在通过服务器对多个图像块进行处理之后,需要对多个图像块进行合并,为了使多个图像块在进行处理之后可以合并为完整的图像,可以构建一个拓扑结构,在后续合并的过程中可以通过拓扑结构来对处理之后的多个图像块进行合并。
46.在又一种可选的实施例中,可以在执行模块中对遥感图像进行切分,得到多个图像块,执行模块可以实时的向调度模块上报遥感图像的处理状态。
47.步骤s206,从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器。
48.其中,分布式服务器集群由多个不同性能的服务器组成。
49.上述的资源需求可以是处理每个图像块所需要的消耗的资源和每个图像块所需要使用的服务器,通过读取每个图像块的资源需求,可以更加高效的将每个图像块的处理任务分配给分布式服务器集群中的服务器。
50.上述的分布式服务器集群可以为分布式集群底座,其中,分布式集群底座可以是采用kubernetes(云原生集群)来构建的,其能够将不同规格型号、性能各异的普通物理机组织成一定规模的分布式集群,以便实现多个图像块的分布式处理。其中,分布式集群底座中搭建了关系型数据库、分布式kv数据库、工作流引擎、gpu显存调度插件,其可以与上述的调度模块、执行模块配合一起完成对遥感图像的处理任务。
51.需要说明的是,上述的分布式集群底座所使用的方法为分布式计算,其中,分布式计算是一种计算方法,和集中式计算是相对的。对于需要非常巨大的计算能力才能完成的处理任务,如果采用集中式计算,则需要耗费非常多的时间来完成,但是,通过分布式计算可以将处理任务分解成相对小的部分,并将每个小的部分去分配给多台计算机进行处理,这样可以节约整体计算的时间,大大的提高了计算的效率。
52.在一种可选的实施例中,可以从目标处理请求中获取到每个图像块对应遥感图像的任务类型,例如对遥感图像中的地物目标进行提取、对遥感图像中的地物进行变化检测等任务,可以根据任务类型确定分布式集群底座中能够处理任务的目标服务器,并通过目标服务器对图像块进行处理。
53.步骤s208,通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
54.上述的目标服务器可以是一个也可以是多个,其中,每个目标服务器对应一个处理步骤,用于实现不同的处理任务。
55.在一种可选的实施例中,可以通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果,其中,目标处理结果用于表示遥感图像对应的所有图像块是否处理完毕,在所有的图像块都处理完毕的情况下,说明遥感图像处理完毕。
56.通过本技术上述步骤,首先获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求,然后对遥感图像进行切分,得到多个图像块,可以从目标处理请求中读取每个图像块的资源需求,并基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成,最后通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果,实现了降低图像处理成本的目的。容易注意到的是,通过对遥感图像进行切分,得到多个图像块,并将多个图像块分配给多台计算机进行处理,这样可以将需要高性能服务器处理的遥感图像分配给多个低性能的服务器进行处理,降低图像处理的成本,并且多个计算机可以对多个图像块进行并行处理,因此,可以提高图像处理的效率,进而解决了相关技术中通过高性能服务器对遥感图像进行处理,导致处理成本较高的技术问题。
57.本技术上述实施例中,资源需求包括:目标资源消耗量,以及使用的处理器的目标类型,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器包括:基于目标资源消耗量,确定分布式服务器集群中的服务器集合,其中,服务器集合中的服务器的资源量大于或等于目标资源消耗量;基于目标类型,确定服务器集合中每个图像块对应的目标服务器,其中,目标服务器中的处理器的类型为目标类型。
58.上述的目标资源消耗量指处理图像块所需要消耗的资源。上述处理器的目标类型指图像块对应的处理任务类型,其中,目标类型可以为图像预处理、图像推理计算、图像和矢量图斑的后处理等。
59.上述的服务器集合是指分布式服务器集群中资源量总和大于或等于目标资源消耗量的服务器的集合。其中,通过目标资源消耗量确定分布式服务器集群中的服务器集合可以确定目前是否存在能够处理图像块的空闲服务器,在确定目前存在能够处理图像块的服务器时,可以从服务器集合中确定用于处理图像块的目标服务器,以便通过目标服务器完成对图像块的处理任务。
60.在一种可选的实施例中,可以对遥感图像对应的每个图像块的处理过程进行一个高度抽象,具体的,可以将处理过程抽象为具体的任务类型,即,上述的目标类型,并根据不同的目标类型来定义不同的处理阶段,以便对每个图像块构建有向无环图的执行拓扑,可以对图像块的每个处理阶段按照一定的资源容量预估后组成工作流,并下发到分布式集群服务器中,以便分布式集群服务器根据资源容量和处理阶段对应的任务类型确定出目标服务器,并通过目标服务器来完成具体的处理工作。
61.本技术上述实施例中,通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果包括:构建第一有向无环图,其中,第一有向无环图包括:多个第一处理步骤对应的节点,多个第一处理步骤包括:对遥感图像进行切分的步骤,对多个图像块进行并行处理的步骤,及对多个图像块对应的子处理结果进行合并的步骤;通过每个图像块对应的目标服务器对每个图像块进行处理,得到每个图像块对应的子处理结果;基于第一有向无环图,将多个图像块对应的子处理结果进行合并,得到目标处理结果。
62.上述的有向无环图是指一个无回路的有向图,其用于表示任务之间的依赖关系。其中,有向图中可以包含多级节点,第一级节点用于对图像进行切图,第二级节点用于对第一级节点切出的图像块进行处理,第二级节点可以是有多个并列并行执行的节点,例如,切出来的图像块为n个,则可以有n个处理程序分别在分布式集群里面的不同机器上并行对n个图像块进行处理,在所有的第二级节点都处理完毕时,说明所有的图像块都已经处理完毕,此时,可以开始执行第三级节点,第三级节点可以将第二级节点处理完后的所有图像块进行合并。
63.上述的子处理结果是指对每个图像块进行处理之后得到的子处理结果,在将遥感图像所有的图像块都处理完毕之后,才能得到遥感图像对应的目标处理结果。
64.在一种可选的实施例中,可以根据第一有向无环图确定对遥感图像进行切分、并行处理和合并等步骤之间的关联关系,通过该关联关系可以对该遥感图像切分得到的多个图像块对应的子处理结果进行合并,得到遥感图像对应的目标处理结果,通过将遥感图像分为多个图像块分别进行处理,可以实现对遥感图像的并行处理,节约整体的处理时间,达到提高了对遥感图像的处理效率。
65.本技术上述实施例中,通过每个图像块对应的目标服务器对每个图像块进行处理,得到每个图像块对应的子处理结果包括:基于目标处理请求的处理类型,构建第二有向无环图,其中,第二有向无环图包括:多个第二处理步骤对应的节点;按照第二有向无环图,通过每个处理步骤对应的处理算子对每个图像块进行处理,得到每个图像块对应的子处理结果。
66.在一种可选的实施例中,上述的每个图像块可能需要多个第二处理步骤来进行处理,可以根据目标处理请求的处理类型,确定每个图像块对应的多个第二处理步骤,并根据多个第二处理步骤来构建第二有向无环图,其中,第二有向无环图中包含有多个第二处理步骤对应的节点。
67.上述的处理步骤可以为对图像块的预处理(包括但不限于辐射校正、几何纠正、重投影、重采样等)、从图像块中读取数据、ai(人工智能)推理、遥感图像和矢量图斑后处理(包括但不限于标签添加、矢量信息生成等),通过对处理步骤进行抽象之后可以得到处理步骤对应的处理算子。
68.在另一种可选的实施例中,可以按照第二有向无环图中每个处理步骤的节点来确定对图像块进行处理的流程,并通过每个处理步骤对应的处理算子按照对图像块的处理流程进行处理,得到每个图像块对应的子处理结果。需要说明的是,在处理的过程中,可以对处理算子进行灵活编排,并灵活使用处理算子,以提高处理图像块的效率。
69.在又一种可选的实施例中,在执行模块根据分配的任务来对每个图像块进行处理的过程中,可以向调度模块实时上报执行任务之前的状态、执行任务过程中的过程以及执行任务之后的状态。
70.本技术上述实施例中,在对每个图像块进行处理的过程中,或对每个图像块处理完毕之后,该方法还包括:获取每个图像块的目标执行状态;将目标执行状态存储至第一数据库;基于目标执行状态确定每个图像块是否执行正常,以及每个图像块是否执行完毕。
71.上述的第一数据库可以是进行临时存储的数据库,例如kv数据库(以键值对存储数据的一种数据库,key-value数据库),其主要是对处理任务运行过程中的状态信息进行临时存储。
72.在一种可选的实施例中,执行模块可以获取每个图像块的目标执行状态,并将目标执行状态上报至调度模块,调度模块可以根据目标执行状态判断任务是否运行正常,在任务运行正常的情况下,判断图像块对应的遥感图像中所有的图像块是否处理完毕,若没有处理完毕,则继续处理,直至所有的图像块的处理完毕。
73.本技术上述实施例中,目标处理请求存储在目标队列中,在通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果之后,方法还包括:清理目标服务器的运行资源;从目标队列中删除目标处理请求;将目标处理结果存储至第二数据库。
74.上述的第二数据库为关系型数据库,其主要用于对图像处理任务中遥感图像的原始信息进行持久化的存储,其中,遥感图像的原始信息可以为输入图像位置、输出结果格式及位置、遥感图像的处理参数。其中,关系型数据库是指采用了关系模型来组织数据的数据路,其以行和列的形式存储数据。
75.在另一种可选的实施例中,在对每个图像块进行处理的过程中或对每个图像块处理完毕之后,需要将每个图像块的目标执行状态来进行存储,以便确定遥感图像对应的所
有的图像块是否都处理完毕,在遥感图像对应的所有图像块都处理完毕时,可以将该遥感图像对应的处理任务结束,并删除处理过程中的任务运行资源,以便清理出一定的运行资源用于后续的图像处理任务。
76.本技术上述实施例中,该方法还包括:接收客户端上传的第一处理请求;将第一处理请求对应的请求信息存储至第二数据库;返回提交成功响应至客户端。
77.上述的第一处理请求可以是通过网络接口(http api)接收到的请求,其中,网络接口可以为提交处理任务的接口、查询处理任务进度的接口、停止处理任务的接口、下载处理任务结果的接口等。其中,网络接口可以为简洁且具有层次接口,例如restful接口。
78.在一种可选的实施例中,在接收到客户端上传的第一处理请求之后,可以将第一处理请求对应的请求信息存储至关系型数据库中,并返回提交成功响应至客户端;可以定时轮询关系型数据库中的请求信息,以获取到未处理完成的任务。
79.本技术上述实施例中,该方法还包括:获取第二数据库中未完成的第二处理请求;获取分布式服务器集群中所有服务器的资源总量,以及目标队列中所有处理请求的第一资源消耗量;基于资源总量和第一资源消耗量,确定是否将第二处理请求存储至目标队列。
80.在一种可选的实施例中,可以实时根据分布式服务器集群中所有服务器的资源总量、目标队列中已有任务消耗的资源量来进行评估,也即,对上述的第一资源消耗量进行评估;其中,资源总量可以为多个维度,cpu slice分片、内存容量、gpu显存容量、用户租户等可用资源的总量。在得到评估结果之后,可以根据评估结果确定是否将已提交到关系型数据库中的第二处理请求加入到目标队列。具体的,在目标队列中已有的任务消耗的资源量大于资源总量时,说明目标队列中的任务请求已经饱和,此时,不需要将第二处理请求加入到目标队列中。在目标队列中已有的任务消耗的资源量小于资源总量时,说明目标队列中的任务请求未饱和,此时,可以将第二处理请求加入到目标队列中。
81.本技术上述实施例中,基于资源总量和第一资源消耗量,确定是否将第二处理请求存储至目标队列包括:获取第一资源消耗量和第二处理请求的第二资源消耗量之和,得到资源消耗总量;在资源总量大于或等于资源消耗总量的情况下,确定将第二处理请求存储至目标队列;在资源总量小于资源消耗总量的情况下,确定禁止将第二处理请求存储至目标队列。
82.上述的第二资源消耗量为第二处理请求对应的资源消耗量。
83.在一种可选的实施例中,可以根据第一资源消耗量和第二资源消耗量确定出资源消耗总量,用于确定是否还需要在目标队列中加入第二处理请求,在分布式服务器集群中所有服务器的资源总量大于或等于资源消耗总量的情况下,说明服务器的处理进程未饱和,此时,可以将第二处理请求存储至目标队列中;在资源总量小于资源消耗总量的情况下,说明服务器的处理进行已饱和,此时,可以禁止将第二处理请求存储至目标队列,避免由于目标队列中的处理请求过多而导致处理的过程出现堵塞。
84.本技术上述实施例中,在确定将第二处理请求存储至目标队列之后,按照任务调度策略,将第二处理请求存储至目标队列。
85.上述的任务调度策略可以是对第二数据库中未完成的第二处理请求进行队列排序的策略,其中,任务调度策略可以为先入先出(fifo)、优先级(priority)等多种类型的队列排序策略。
86.在一种可选的实施例中,在资源调度时实现了gpu(graphics processing unit,图形处理器)显存利用的网格化划分,能让同一个任务的并行子处理进程和不同任务的处理进程跑在同一张gpu显卡上,各自分得gpu显存的一部分来完成处理工作和ai计算。
87.本技术上述实施例中,该方法还包括:接收客户端上传的查询请求;获取第一数据库中查询请求对应的执行状态,以及第二数据库中查询请求对应的处理结果;返回查询请求对应的执行状态和处理结果至客户端。
88.在一种可选的实施例中,可以为客户端提供接口用于接收查询请求,调度模块可以在接收到查询请求之后,判断查询请求的需要查询的类别,若是需要查询处理状态,可以从kv数据库中获取与查询请求对应的执行状态;若是需要查询处理结果,则可以从关系型数据库中获取与查询请求对应的处理结果,在获取到执行状态或者处理结果之后,可以将查询请求对应的执行状态和处理结果发送至客户端,以便客户端进行查看。
89.下面结合图3a至图3d对本技术一种优选的实施例进行详细说明,该方法可以由移动终端或服务器执行,在本技术实施例中,以该方法由服务器执行为例进行说明。
90.如图3a所示为对遥感图像进行流式处理的示意图,其中的云原生分布式底座为上述的分布式服务器集群,首先调度模块可以向云原生分布式底座下发dag(directed acyclic graph,有向无环图)子任务工作流,然后云原生分布式底座可以接收到任务工作流请求,并将接收到的任务工作流请求转化为执行程序,并在分布式集群中找到具有足够资源的机器节点进行运行,可以判断工作流子节点是否使用gpu,若正在使用gpu,则可以在分布式集群中选取有gpu的机器节点,并启动任务运行容器,对gpu显卡和显存实行多任务共享复用;若没有使用gpu,则选取有足够资源的机器节点来启动任务运行容器,例如cpu slice、内存、用户租户等的机器节点。通过异构配置机器组建的分布式集群来实现资源的调度,以充分利用分布式服务器集群中的各个机器。
91.进一步地,如图3a所示,在启动任务运行容器之后,可以根据遥感图像处理任务工作流的不同处理阶段,执行对图像块的预处理(包括但不限于辐射校正、几何纠正、重投影、重采样等)、从图像块中读取数据、ai(人工智能)推理、遥感图像和矢量图斑后处理(包括但不限于标签添加、矢量信息生成等),以便将所有算子在任务运行容器内组织成有向无环图计算处理pipeline(管线),也即上述的第二有向无环图。通过对不同任务类型组织成dag执行拓扑,可以实现对遥感图像处理过程中的编排。
92.进一步地,向云原生分布式底座下发dag子任务工作流之前,可以先监听任务队列,对于新加入队列的任务,根据不同的任务类型解析得到相应的有向无环图dag执行拓扑。
93.如图3b所示为对处理任务进行调度的示意图,可以定时的轮询关系型数据库,并获取所有未完成的任务,可以查询kv数据库中的任务队列,结合分布式集群资源总量、任务队列已有的任务、不同类型遥感图像处理任务的资源消耗计算出该未完成任务是否能够加入到任务队列中,通过判断未完成任务是否能够加入任务队列来确定后续的流程,若未完成任务可以加入到任务队列中,则根据一定的排序策略将任务加入到kv数据库中的任务队列,若未完成任务不能加入到任务队列中,则继续定时轮询关系型数据库。基于云原生分布式底座的处理方式,可以实现普通pc机器集群的组件,具备集群快速扩容缩容,且具备异构机器组件等特点。
94.如图3c所示为调度模块进行调度的示意图,用户可以通过rsst-api提交任务给调度模块,调度模块在接收到任务提交请求后,可以记录任务提交请求对应的任务信息到关系型数据库中,并返回任务提交成功响应至用户,用户可以收到任务提交成功响应。可以基于cpu slice、内存、gpu显存等多维度进行资源调度,以便对gpu进行高效利用。
95.如图3d所示为任务运行过程中的示意图,执行模块可以在任务运行过程中可以上报心跳到调度模块,其中,心跳是指任务运行过程中的运行状态,在任务结束之后可以上报结束时的任务状态至调度模块,此时,任务运行容器可以退出;调度模块可以根据接收到的心跳和状态来判断任务是否运行正常,在任务运行正常时,可以判断当前子工作流是否已执行完成,若没有执行完成,则继续根据接收到的心跳和状态来判断任务是否正常运行;若已经执行完成,则可以判断当前任务dag是否已执行完成,也即遥感图像对应的所有的图像块是否都处理完成,若已经处理完成,则向云原生分布式底座清理任务运行资源,若未处理完成,则根据任务dag执行拓扑,并下发后继的子工作流,形成流式处理链路。
96.进一步地,在云原生分布式底座清理完任务运行资源后,可以从kv数据库中的任务队列移除已完成的任务,并向关系型数据库记录任务运行结果。
97.如图3e所示为用户查询任务的示意图,用户可以通过rest-api查询任务,调度模块在收到任务查询请求之后,可以从关系型数据库和kv数据库中获取任务状态和结果,并返回任务运行结果至用户,用户此时可以收到任务运行结果响应。
98.上述内容可以通过架构设计运行在低配服务器上,通过云原生技术kubernetes,结合自研的资源调度器(可实现gpu显存粒度调度,cpu/mem/gpu混合调度模型),实现分布式计算能力,其中,mem为存储系统(memory)。使用一套插件化、可编排的处理框架,同时框架自带多种遥感处理算子,ai推理算子等,具备丰富的遥感处理能力,可以进行大规模遥感影像处理。
99.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
100.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁盘、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
101.实施例2
102.根据本技术实施例,还提供了一种图像处理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
103.图4是根据本发明实施例的一种图像处理方法的流程图。如图4所示,该方法可以
包括以下步骤:
104.步骤s402,接收客户端上传的目标处理请求。
105.其中,目标处理请求为对遥感图像进行处理的请求。
106.步骤s404,对遥感图像进行切分,得到多个图像块。
107.步骤s406,从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器。
108.其中,分布式服务器集群由多个不同性能的服务器组成。
109.步骤s408,通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
110.步骤s410,发送目标处理结果至客户端。
111.实施例3
112.根据本技术实施例,还提供了一种用于实施上述图像处理方法的图像处理装置,如图5所示,该装置500包括:第一获取模块502、切分模块504、读取模块506、第一处理模块508。
113.其中,第一获取模块用于获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;切分模块用于对遥感图像进行切分,得到多个图像块;读取模块用于从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;第一处理模块用于通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
114.此处需要说明的是,上述第一获取模块502、切分模块504、读取模块506、第一处理模块508对应于实施例1中的步骤s202至步骤s208,四个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
115.需要说明的是,本技术上述实施例中涉及到的优选实施方案与实施例1提供的方案以及应用场景、实施过程相同,但不仅限于实施例1所提供的方案。
116.本技术上述实施例中,资源需求包括:目标资源消耗量,以及使用的处理器的目标类型,第一读取模块包括:第一确定单元、第二确定单元。
117.其中,第一确定单元用于基于目标资源消耗量,确定分布式服务器集群中的服务器集合,其中,服务器集合中的服务器的资源量大于或等于目标资源消耗量;第二确定单元用于基于目标类型,确定服务器集合中每个图像块对应的目标服务器,其中,目标服务器中的处理器的类型为目标类型。
118.本技术上述实施例中,第一处理模块包括:第一构建单元、第一处理单元、第一合并单元。
119.其中,第一构建单元用于构建第一有向无环图,其中,第一有向无环图包括:多个第一处理步骤对应的节点,多个第一处理步骤包括:对遥感图像进行切分的步骤,对多个图像块进行并行处理的步骤,及对多个图像块对应的子处理结果进行合并的步骤;第一处理单元用于通过每个图像块对应的目标服务器对每个图像块进行处理,得到每个图像块对应的子处理结果;第一合并单元用于基于第一有向无环图,将多个图像块对应的子处理结果进行合并,得到目标处理结果。
120.本技术上述实施例中,第一处理单元包括:构建子单元、处理子单元。
121.其中,构建子单元用于基于目标处理请求的处理类型,构建第二有向无环图,其中,第二有向无环图包括:多个第二处理步骤对应的节点;处理子单元用于按照第二有向无环图,通过每个处理步骤对应的处理算子对每个图像块进行处理,得到每个图像块对应的子处理结果。
122.本技术上述实施例中,该装置还包括:第二获取模块、第一存储模块、第一确定模块。
123.其中,第二获取模块用于获取每个图像块的目标执行状态;第一存储模块用于将目标执行状态存储至第一数据库;第一确定模块用于基于目标执行状态确定每个图像块是否执行正常,以及每个图像块是否执行完毕。
124.本技术上述实施例中,该装置还包括:清理模块、删除模块、第二存储模块。
125.其中,清理模块用于清理目标服务器的运行资源;删除模块用于从目标队列中删除目标处理请求;第二存储模块用于将目标处理结果存储至第二数据库。
126.本技术上述实施例中,该装置还包括:第一接收模块、第三存储模块、第一返回模块。
127.其中,第一接收模块用于接收客户端上传的第一处理请求;第三存储模块用于将第一处理请求对应的请求信息存储至第二数据库;第一返回模块用于返回提交成功响应至客户端。
128.本技术上述实施例中,该装置还包括:第三获取模块、第四获取模块、第二确定模块。
129.其中,第三获取模块用于获取第二数据库中未完成的第二处理请求;第四获取模块用于获取分布式服务器集群中所有服务器的资源总量,以及目标队列中所有处理请求的第一资源消耗量;第二确定模块用于基于资源总量和第一资源消耗量,确定是否将第二处理请求存储至目标队列。
130.本技术上述实施例中,第二确定模块包括:获取单元、第三确定单元、第四确定单元。
131.其中,获取单元用于获取第一资源消耗量和第二处理请求的第二资源消耗量之和,得到资源消耗总量;第三确定单元用于在资源总量大于或等于资源消耗总量的情况下,确定将第二处理请求存储至目标队列;第四确定单元用于在资源总量小于资源消耗总量的情况下,确定禁止将第二处理请求存储至目标队列。
132.本技术上述实施例中,该装置还包括:第三存储模块,用于按照任务调度策略,将第二处理请求存储至目标队列。
133.可选地,该装置还包括:第二接收模块、第五获取模块、第二返回模块。
134.其中,第二接收模块用于接收客户端上传的查询请求;第五获取模块用于获取第一数据库中查询请求对应的执行状态,以及第二数据库中查询请求对应的处理结果;第二返回模块用于返回查询请求对应的执行状态和处理结果至客户端。
135.需要说明的是,本技术上述实施例中涉及到的优选实施方案与实施例1提供的方案以及应用场景、实施过程相同,但不仅限于实施例1所提供的方案。
136.实施例4
137.根据本技术实施例,还提供了一种用于实施上述图像处理方法的图像处理装置,如图6所示,该装置600包括:接收模块602、切分模块604、读取模块606、处理模块608、发送模块610。
138.其中,接收模块用于接收客户端上传的目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;切分模块用于对遥感图像进行切分,得到多个图像块;读取模块用于从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;处理模块用于通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果;发送模块用于发送目标处理结果至客户端。
139.此处需要说明的是,上述接收模块602、切分模块604、读取模块606、处理模块608、发送模块610对应于实施例2中的步骤s402至步骤s410,五个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
140.实施例5
141.本技术的实施例还提供了一种图像处理系统,包括:
142.调度模块,用于获取目标处理请求,对遥感图像进行切分,得到多个图像块,其中,目标处理请求为对遥感图像进行处理的请求;
143.集群底座,与调度模块连接,用于从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;
144.执行模块,与调度模块连接,用于通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
145.需要说明的是,本技术上述实施例中涉及到的优选实施方案与实施例1提供的方案以及应用场景、实施过程相同,但不仅限于实施例1所提供的方案。
146.实施例6
147.本技术的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
148.可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
149.在本实施例中,上述计算机终端可以执行图像处理方法中以下步骤的程序代码:获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;对遥感图像进行切分,得到多个图像块;从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果。
150.可选地,图7是根据本技术实施例的一种计算机终端的结构框图。如图7所示,该计算机终端700可以包括:一个或多个(图中仅示出一个)处理器、存储器。
151.其中,存储器可用于存储软件程序以及模块,如本技术实施例中的图像处理方法
和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的图像处理方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端a。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
152.处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:基于目标资源消耗量,确定分布式服务器集群中的服务器集合,其中,服务器集合中的服务器的资源量大于或等于目标资源消耗量;基于目标类型,确定服务器集合中每个图像块对应的目标服务器,其中,目标服务器中的处理器的类型为目标类型。
153.可选的,上述处理器还可以执行如下步骤的程序代码:构建第一有向无环图,其中,第一有向无环图包括:多个第一处理步骤对应的节点,多个第一处理步骤包括:对遥感图像进行切分的步骤,对多个图像块进行并行处理的步骤,及对多个图像块对应的子处理结果进行合并的步骤;通过每个图像块对应的目标服务器对每个图像块进行处理,得到每个图像块对应的子处理结果;基于第一有向无环图,将多个图像块对应的子处理结果进行合并,得到目标处理结果。
154.可选的,上述处理器还可以执行如下步骤的程序代码:基于目标处理请求的处理类型,构建第二有向无环图,其中,第二有向无环图包括:多个第二处理步骤对应的节点;按照第二有向无环图,通过每个处理步骤对应的处理算子对每个图像块进行处理,得到每个图像块对应的子处理结果。
155.可选的,上述处理器还可以执行如下步骤的程序代码:获取每个图像块的目标执行状态;将目标执行状态存储至第一数据库;基于目标执行状态确定每个图像块是否执行正常,以及每个图像块是否执行完毕。
156.可选的,上述处理器还可以执行如下步骤的程序代码:清理目标服务器的运行资源;从目标队列中删除目标处理请求;将目标处理结果存储至第二数据库。
157.可选的,上述处理器还可以执行如下步骤的程序代码:接收客户端上传的第一处理请求;将第一处理请求对应的请求信息存储至第二数据库;返回提交成功响应至客户端。
158.可选的,上述处理器还可以执行如下步骤的程序代码:获取第二数据库中未完成的第二处理请求;获取分布式服务器集群中所有服务器的资源总量,以及目标队列中所有处理请求的第一资源消耗量;基于资源总量和第一资源消耗量,确定是否将第二处理请求存储至目标队列。
159.可选的,上述处理器还可以执行如下步骤的程序代码:获取第一资源消耗量和第二处理请求的第二资源消耗量之和,得到资源消耗总量;在资源总量大于或等于资源消耗总量的情况下,确定将第二处理请求存储至目标队列;在资源总量小于资源消耗总量的情况下,确定禁止将第二处理请求存储至目标队列。
160.可选的,上述处理器还可以执行如下步骤的程序代码:在确定将第二处理请求存储至目标队列之后,按照任务调度策略,将第二处理请求存储至目标队列。
161.可选的,上述处理器还可以执行如下步骤的程序代码:接收客户端上传的查询请求;获取第一数据库中查询请求对应的执行状态,以及第二数据库中查询请求对应的处理
结果;返回查询请求对应的执行状态和处理结果至客户端。
162.处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:接收客户端上传的目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;对遥感图像进行切分,得到多个图像块;从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果;发送目标处理结果至客户端。
163.采用本技术实施例,提供了一种图像处理的方法。首先获取目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求,然后对遥感图像进行切分,得到多个图像块,可以从目标处理请求中读取每个图像块的资源需求,并基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成,最后通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果,实现了降低图像处理成本的目的。容易注意到的是,通过对遥感图像进行切分,得到多个图像块,并将多个图像块分配给多台计算机进行处理,这样可以将需要高性能服务器处理的遥感图像分配给多个低性能的服务器进行处理,降低图像处理的成本,并且多个计算机可以对多个图像块进行并行处理,因此,可以提高图像处理的效率,进而解决了相关技术中通过高性能服务器对遥感图像进行处理,导致处理成本较高的技术问题。
164.本领域普通技术人员可以理解,图7所示的结构仅为示意,计算机终端也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图7其并不对上述电子装置的结构造成限定。例如,计算机终端a还可包括比图7中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图7所示不同的配置。
165.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
166.实施例7
167.本技术的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例所提供的图像处理方法所执行的程序代码。
168.可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
169.可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:基于目标资源消耗量,确定分布式服务器集群中的服务器集合,其中,服务器集合中的服务器的资源量大于或等于目标资源消耗量;基于目标类型,确定服务器集合中每个图像块对应的目标服务器,其中,目标服务器中的处理器的类型为目标类型。
170.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:构建第一有向无环图,其中,第一有向无环图包括:多个第一处理步骤对应的节点,多个第一处理步骤包括:对遥感图像进行切分的步骤,对多个图像块进行并行处理的步骤,及对多个图像块对应的子处理结果进行合并的步骤;通过每个图像块对应的目标服务器对每个图像块进行
处理,得到每个图像块对应的子处理结果;基于第一有向无环图,将多个图像块对应的子处理结果进行合并,得到目标处理结果。
171.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:基于目标处理请求的处理类型,构建第二有向无环图,其中,第二有向无环图包括:多个第二处理步骤对应的节点;按照第二有向无环图,通过每个处理步骤对应的处理算子对每个图像块进行处理,得到每个图像块对应的子处理结果。
172.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:获取每个图像块的目标执行状态;将目标执行状态存储至第一数据库;基于目标执行状态确定每个图像块是否执行正常,以及每个图像块是否执行完毕。
173.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:清理目标服务器的运行资源;从目标队列中删除目标处理请求;将目标处理结果存储至第二数据库。
174.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:接收客户端上传的第一处理请求;将第一处理请求对应的请求信息存储至第二数据库;返回提交成功响应至客户端。
175.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:获取第二数据库中未完成的第二处理请求;获取分布式服务器集群中所有服务器的资源总量,以及目标队列中所有处理请求的第一资源消耗量;基于资源总量和第一资源消耗量,确定是否将第二处理请求存储至目标队列。
176.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:获取第一资源消耗量和第二处理请求的第二资源消耗量之和,得到资源消耗总量;在资源总量大于或等于资源消耗总量的情况下,确定将第二处理请求存储至目标队列;在资源总量小于资源消耗总量的情况下,确定禁止将第二处理请求存储至目标队列。
177.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:在确定将第二处理请求存储至目标队列之后,按照任务调度策略,将第二处理请求存储至目标队列。
178.可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:接收客户端上传的查询请求;获取第一数据库中查询请求对应的执行状态,以及第二数据库中查询请求对应的处理结果;返回查询请求对应的执行状态和处理结果至客户端。
179.可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收客户端上传的目标处理请求,其中,目标处理请求为对遥感图像进行处理的请求;对遥感图像进行切分,得到多个图像块;从目标处理请求中读取每个图像块的资源需求,基于资源需求确定分布式服务器集群中每个图像块对应的目标服务器,其中,分布式服务器集群由多个不同性能的服务器组成;通过每个图像块对应的目标服务器对每个图像块进行处理,得到目标处理结果;发送目标处理结果至客户端。
180.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
181.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
182.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或
者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
183.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
184.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
185.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
186.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献