高光谱卫星遥感数据的分布式处理方法、系统及介质与流程

文档序号:17477176发布日期:2019-04-20 06:12阅读:255来源:国知局
高光谱卫星遥感数据的分布式处理方法、系统及介质与流程

本发明属于卫星遥感、卫星数据存储和大数据计算处理技术领域,涉及一种处理方法和系统,特别是涉及一种高光谱卫星遥感数据的处理方法、系统及计算机存储介质。



背景技术:

近些年来卫星技术的提高,卫星数据的数据量不断提高,达到tb级甚至pb级,而客户对卫星产品的查询和使用在准确易用、迅速响应等方面提出了更高的要求。这代表着传统的、小规模的、自动化程度不高的、串行的卫星数据处理方法难以满足客户数据量大、处理复杂、及时的卫星遥感图像和产品需求。现有的高光谱卫星遥感产品生产方法中,大部分都是进行小规模生产或者大量长时间生产,只能满足历史数据和产品的下载,无法达到实时进行处理。

因此,如何提供一种高光谱卫星遥感数据的处理方法、系统及计算机存储介质,以解决现有技术无法实时生产高光谱卫星图像和产品等缺陷,实已成为本领域技术人员亟待解决的技术问题。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种高光谱卫星遥感数据的处理方法、系统及计算机存储介质,用于解决现有技术无法实时生产高光谱卫星图像和产品的问题。

为实现上述目的及其他相关目的,本发明一方面提供一种高光谱卫星遥感数据的处理方法,在执行所述处理方法之前,客户端获取用户所选择的高光谱卫星遥感数据的需求和图像产品的产品参数,并创建分布式数据处理任务,以提交至卫星数据处理和产品生产平台处理高光谱卫星遥感数据;所述卫星数据处理和产品生产平台包括后台及与所述后台通信连接的包含多个计算节点的分布式计算平台;所述处理方法包括:s1,根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引,将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集,并将分布式数据集及卫星产品生产过程中所产生的卫星定标数据分发到各个计算节点;s2,若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像;s2',若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理,形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像;s2”,若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

于本发明的一实施例中,所述高光谱卫星遥感数据的需求包括用户感兴趣的地理区域、拍摄时间、高光谱卫星代号和/或卫星产品级别。

于本发明的一实施例中,所述0级卫星产品为一行多个光谱组成的图像数据;所述1级卫星产品为多行图像数据按顺序拼接处理后得到的多个光谱图像;所述1级卫星产品为多行图像数据按顺序拼接处理后得到的多个光谱图像。

于本发明的一实施例中,所述s2中解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值的步骤为:将高光谱卫星遥感数据中的两个字节转换成一个像素值,形成第一像素值集合。

于本发明的一实施例中,所述s2'中解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值的步骤包括:提取呈字节流的高光谱卫星遥感数据,根据高光谱卫星载荷协议,在各个计算节点上解析包括多个光谱谱段的高光谱卫星遥感数据;其中,所述包括多个光谱谱段的高光谱卫星遥感数据的类型为int类型数组。

于本发明的一实施例中,所述s2'中对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理,形成第二像素值集合的步骤包括:对所获取的卫星图像的像素值和卫星定标数据进行相对辐射定标,以消除同一光谱谱段下不同像素硬件下拍摄的像素值差异;包括:利用卫星定标数据或者图像遥感器的每个探测器的增益和偏移量,校正载荷暗电流及成像像元之间的观测数值差异;对所获取的卫星图像的像素值和卫星定标数据进行绝对辐射定标,以消除硬件导致的不同光谱谱段在所有像素上响应的差异;包括:通过各种标准辐射源,在不同的谱段建立成像光谱仪入瞳处的光谱辐射亮度值与成像光谱仪输出的数字量化值之间的定量关系;对定标后卫星图像的像素值和卫星定标数据进行去噪;包括若每个探测器所探测的地物具有相同的均衡式辐射分布,将每个探测器的均值、方差调整至一预设参考值。

于本发明的一实施例中,用户从所述1级卫星产品对应的图像中选取的指定区域数据为用户所选取的多个矩形区域的边界坐标和与矩形区域对应的地表覆盖类型标记。

于本发明的一实施例中,所述s2”中对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型的步骤包括:在对指定区域数据进行定标和去噪处理后,加入类型标记,以获取矩形区域内1级产品图像的所有像素值和对应的类型标记组合的分布式数据集;将组合的分布式数据集作为svm模型的训练样本,进行多次迭代训练,形成机器学习模型,并将机器学习模型分发至所有计算节点。

于本发明的一实施例中,所述s2”还包括:根据预测结果的预设地表覆盖类型与颜色的对应关系,将预测结果的数据集合中每个预测结果替换成与之对应的颜色,生成2级卫星产品对应的图像。

本发明另一方面提供一种高光谱卫星遥感数据的处理系统,在运行所述处理系统之前,客户端获取用户所选择的高光谱卫星遥感数据的需求和图像产品的产品参数,并创建分布式数据处理任务,以提交至卫星数据处理和产品生产平台处理高光谱卫星遥感数据;所述卫星数据处理和产品生产平台包括后台及与所述后台通信连接的包含多个计算节点的分布式计算平台;所述处理系统包括:检索模块,用于根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引;转换模块,用于将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集,并将分布式数据集及卫星产品生产过程中所产生的卫星定标数据分发到各个计算节点通过分发模块分发到各个计算节点;第一图像生成模块,用于若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像;第二图像生成模块,用于若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理,形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像;第三图像生成模块,用于若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

本发明最后一方面提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述高光谱卫星遥感数据的处理方法。

如上所述,本发明所述的高光谱卫星遥感数据的处理方法、系统及计算机存储介质,具有以下有益效果:

本发明所提供的高光谱卫星遥感数据的处理方法、系统及计算机存储介质针对卫星遥感数据处理和产品生产,通过将产品像素值写入图片步骤前的整个过程使用spark进行并行计算,极大提高了数据处理和产品生产的速度;而由于spark的计算中间结果保存在内存上,减少了硬盘数据读写的时间,使得本实施例中的处理方法运用到系统后能够做到实时完成计算处理。

附图说明

图1显示为本发明的高光谱卫星遥感数据的处理方法于一实施例中的流程示意图。

图2显示为本发明的高光谱卫星遥感数据的处理方法中s2'中对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理,形成第二像素值集合的流程示意图。

图3显示为本发明的高光谱卫星遥感数据的处理方法中s2”的流程示意图。

图4显示为本发明的高光谱卫星遥感数据的处理系统于一实施例中的原理结构示意图。

元件标号说明

4高光谱卫星遥感数据的处理系统

41检索模块

42转换模块

43分发模块

44第一图像生成模块

45第二图像生成模块

46第三图像生成模块

s1~s2”步骤

s21'~s23'步骤

s21”~s26”步骤

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

实施例一

本实施例提供一种高光谱卫星遥感数据的处理方法,在执行所述处理方法之前,客户端获取用户所选择的高光谱卫星遥感数据的需求和图像产品的产品参数,并创建分布式数据处理任务,以提交至卫星数据处理和产品生产平台处理高光谱卫星遥感数据;所述卫星数据处理和产品生产平台包括后台及与所述后台通信连接的包含多个计算节点的分布式计算平台;所述处理方法包括:

s1,根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引,将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集,将分布式数据集及卫星产品生产过程中所产生的卫星定标数据分发到各个计算节点;

s2,若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像;

s2',若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理,形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像;

s2”,若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

以下将结合图示对本实施例所提供的高光谱卫星遥感数据的处理方法进行详细描述。在执行本实施例所述高光谱卫星遥感数据的处理方法之前,高光谱卫星会使用像元线状排列的传感器进行拍摄,拍摄方式为卫星对着近似垂直于像元排列方向向前推扫,每次拍摄结果为一行像元拍摄的多个光谱像素值组成的数据集合。0级产品是一行多个光谱组成的数据,1级产品是多行数据按顺序拼接后处理得到的多个光谱图像,2级产品为对1级卫星产品图像进行地表覆盖分类预测的结果。

在执行所述高光谱卫星遥感数据的处理方法之前,用户在客户端上选择用户感兴趣的地理区域、拍摄时间、高光谱卫星代号和/或卫星产品级别等,进行高光谱卫星遥感数据查询。且在所述分布式计算平台控制模块内新建sparkcontext用于提交数据、任务和配置spark(分布式计算平台)计算的入口。

在本实施例中,所述分布式计算平台需新建sparkcontext,将用户所选择的高光谱卫星遥感数据的需求和图像产品的产品参数传送给包括多个计算节点的集群。

请参阅图1,显示为高光谱卫星遥感数据的处理方法于一实施例中的流程示意图。如图1所示,所述高光谱卫星遥感数据的处理方法具体包括以下几个步骤:

s1,根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引,将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集及卫星产品生产过程中所产生的卫星定标数据,并分发到各个计算节点。

具体地,所述后台从hbase中根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引(即高光谱卫星遥感数据rowkey,rowkey为hbase数据表中每一行的名字或者说标志,是一个字符串),所述后台新建sparkcontext,将查询出预设数据库hbase中高光谱卫星遥感数据rowkey通过sparkcontext转换为数据类型为字节类型的分布式数据集rdd,及卫星产品生产过程中的其他输入数据通过sparkcontext分发到各个计算节点。在本实施例中,hbase为基于hadoop分布式集群的数据存储的数据库,主要存储形式为hbase数据表。在本实施例中,所述高光谱卫星遥感数据的需求包括用户感兴趣的地理区域、拍摄时间、高光谱卫星代号和/或卫星产品级别。

s2,若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并(collect操作)所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像。

在本实施例中,所述解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值的步骤是指:将高光谱卫星遥感数据中的两个字节转换成一个像素值。

s2',若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值(于本实施例中,获取的卫星图像的像素值为需要写入快视图的int类型数组rdd),对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理(于本实施例中,合并处理是指对int类型数组rdd执行collect操作),从各个计算节点返回的int类型数组rdd形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像。

在本实施例中,所述s2'中解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值的步骤包括:

提取呈字节流的高光谱卫星遥感数据,根据高光谱卫星载荷协议,在各个计算节点上解析包括多个光谱谱段的高光谱卫星遥感数据,从中选择rgb三个光谱谱段的像素值;其中,所述包括多个光谱谱段的高光谱卫星遥感数据的类型为int类型数组。

请参阅图2,显示为s2'中对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理,形成第二像素值集合的流程示意图。如图2所示,所述s2'中对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理,形成第二像素值集合的步骤包括:

s21',对所获取的卫星图像的像素值和卫星定标数据进行相对辐射定标,以消除同一光谱谱段下不同像素硬件下拍摄的像素值差异;s21'具体包括:利用卫星定标数据或者图像遥感器的每个探测器的增益(gain)和偏移量(bias或offset),校正载荷暗电流及成像像元之间的观测数值差异。

在本实施例中,相对辐射定标具体如公式(1)表示:

其中,ncal-i相对辐射定标后的探测器的数字计数值;dnraw-i表示原始的探测器采集的数字计数值;bi表示第i个探测器归一化后的偏移量,也就是载荷暗电流,单位dn;ngi表示第i个探测器归一化后的增益,其值通常接近1,单位dn。

ngi采用均匀场景法求得,采用全图像dn的均值来计算增益系数,设第i个探测元的dn值的列平均值为qi,则相对增益ngi和qi之间存在如公式(2)所示关系:

其中,n表示一排探测元的总数。

s22',对所获取的卫星图像的像素值和卫星定标数据进行绝对辐射定标,以消除硬件导致的不同光谱谱段在所有像素上响应的差异;包括:通过各种标准辐射源,在不同的谱段建立成像光谱仪入瞳处的光谱辐射亮度值与成像光谱仪输出的数字量化值之间的定量关系。

在本实施例中,绝对辐射定标具体如公式(3)表示:

l(λ)=gain*dn+bias公式(3)

其中,gain修正斜率,bias修正偏置。绝对定标实验后会得到每个波段的gain和bias。

s23',对定标后卫星图像的像素值和卫星定标数据进行去噪;包括若每个探测器所探测的地物具有相同的均衡式辐射分布,将每个探测器的均值、方差调整至一预设参考值。由于定标处理无法完全消除像元拍摄像素值的差异,因此需要对定标后的数据进行去噪。于本实施例中,采用矩匹配去噪算法对定标后卫星图像的像素值和卫星定标数据进行去噪。

在本实施例中,对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理的同时还会对数值越界等数据异常情况进行特殊处理。

s2”,若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

在本实施例中,在执行s2”之前,用户需在系统显示的1级高光谱卫星图像快视图上多次划出矩形区域,选择标记区域内属于什么地表覆盖类型,点击确定。

用户发送训练指令,后台向spark集群提交任务,开始训练svm模型。

训练完毕后,用户再次选择一个区域,作为需要预测得到地表覆盖情况的感兴趣区域,点击预测,获得区域内地表覆盖分布示意图,即高光谱卫星2级产品。

请参阅图3,显示为s2”的流程示意图。如图3所示,所述s2”具体包括以下几个步骤:

s21”,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据。在本实施例中,用户从所述1级卫星产品对应的图像中选取的指定区域数据为用户所选取的多个矩形区域的边界坐标和与矩形区域对应的地表覆盖类型标记。多个矩形区域的边界坐标和与矩形区域对应的类型标记作为之后训练的训练样本。

s22”,对所述指定区域数据进行定标和去噪处理(定标和去噪的过程与上述针对图像产品的产品类型需求为1级卫星产品的定标和去噪的处理相同,此处不再赘述),将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型。

具体地,在对指定区域数据进行定标和去噪处理后,加入类型标记,以获取矩形区域内1级产品图像的所有像素值和对应的类型标记组合的分布式数据集。

将组合的分布式数据集作为svm模型的训练样本,进行多次迭代训练,形成机器学习模型,并将机器学习模型分发至所有计算节点。

在本实施例中,支持向量机模型(svm模型)的基本模型:特征空间上的最大间隔线性分类器;svm模型的核心为寻找最优超平面;svm模型的核函数用于在多类线性不可分的情况引入,变成非线性分类器。

在高光谱2级产品生产过程中,一个坐标点上的多个谱段像素值组成的向量为特征空间上的一个点,根据特征空间上点的分布,划出超平面进行分割。多次迭代训练的过程是寻找超平面的过程,预测的过程是根据超平面进行分类的过程。

s23”,再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据(例如,每一种地表覆盖区域)。

s24”,对所述感兴趣区域数据进行定标和去噪处理(定标和去噪的过程与上述针对图像产品的产品类型需求为1级卫星产品的定标和去噪的处理相同,此处不再赘述)。

s25”,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合。

s26”,根据预测结果的数据集合,生成2级卫星产品对应的图像。

具体地,根据预测结果的预设地表覆盖类型(例如,预设的地表覆盖类型)与颜色的对应关系,将预测结果的数据集合中每个预测结果替换成与之对应的颜色,生成2级卫星产品对应的图像。

本实施例还提供一种计算机存储介质(亦称为计算机可读存储介质),其上存储有计算机程序,该计算机程序被处理器执行时实现上述高光谱卫星遥感数据的处理方法。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

本实施例所述高光谱卫星遥感数据的处理方法针对卫星遥感数据处理和产品生产,通过将产品像素值写入图片步骤前的整个过程使用spark进行并行计算,极大提高了数据处理和产品生产的速度;而由于spark的计算中间结果保存在内存上,减少了硬盘数据读写的时间,使得本实施例中的处理方法运用到系统后能够做到实时完成计算处理。

实施例二

本实施例提供一种高光谱卫星遥感数据的处理系统,在运行所述处理系统之前,客户端获取用户所选择的高光谱卫星遥感数据的需求和图像产品的产品参数,并创建分布式数据处理任务,以提交至卫星数据处理和产品生产平台处理高光谱卫星遥感数据;所述卫星数据处理和产品生产平台包括后台及与所述后台通信连接的包含多个计算节点的分布式计算平台;所述处理系统包括:

检索模块,用于根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引;

转换模块,用于将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集,并将分布式数据集及卫星产品生产过程中所产生的卫星定标数据分发到各个计算节点通过分发模块分发到各个计算节点;

第一图像生成模块,用于若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像;

第二图像生成模块,用于若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理,形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像;

第三图像生成模块,用于若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

需要说明的是,应理解以下处理系统的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现,也可以全部以硬件的形式实现,还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如:x模块可以为单独设立的处理元件,也可以集成在下述处理系统的某一个芯片中实现。此外,x模块也可以以程序代码的形式存储于下述处理系统的存储器中,由下述处理系统的某一个处理元件调用并执行以下x模块的功能。其它模块的实现与之类似。这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以下各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。以下这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),一个或多个微处理器(digitalsingnalprocessor,简称dsp),一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。当以下某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

请参阅图4,显示为高光谱卫星遥感数据的处理系统于一实施例中的原理结构示意图。如图4所示,所述高光谱卫星遥感数据的处理系统4包括检索模块41、转换模块42、分发模块43、第一图像生成模块44、第二图像生成模块45及第三图像生成模块46。

所述检索模块41用于根据用户对高光谱卫星遥感数据的需求,检索符合需求的高光谱卫星遥感数据的索引。

与所述检索模块41耦合的转换模块42用于将检索到的高光谱卫星遥感数据的索引转换成为对应的分布式数据集,将分布式数据集及卫星产品生产过程中所产生的卫星定标数据通过所述分发模块43将数据分发到各个计算节点。

与所述检索模块41、转换模块42、分发模块43耦合的第一图像生成模块44用于若对图像产品的产品类型需求为0级卫星产品时,根据所述分布式数据集在数据库中并行查找与0级卫星产品对应的高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值,合并(collect操作)所获取的卫星图像的像素值,形成第一像素值集合,按照数据时间顺序将所述第一像素值集合中的像素值拼接为0级卫星产品对应的图像。

与所述检索模块41、转换模块42、分发模块43耦合的第二图像生成模块45用于若对图像产品的产品类型需求为1级卫星产品时,根据所述分布式数据集在数据库中并行查找与1级卫星产品对应的0级高光谱卫星遥感数据,在各个节点上解析对应的高光谱卫星遥感数据,以获取卫星图像的像素值(于本实施例中,获取的卫星图像的像素值为需要写入快视图的int类型数组rdd),对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪、合并处理(于本实施例中,合并处理是指对int类型数组rdd执行collect操作),从各个计算节点返回的int类型数组rdd形成第二像素值集合,按照数据时间顺序将所述第二像素值集合中的像素值拼接为1级卫星产品对应的图像。

所述第二图像生成模块45具体用于提取呈字节流的高光谱卫星遥感数据,根据高光谱卫星载荷协议,在各个计算节点上解析包括多个光谱谱段的高光谱卫星遥感数据;其中,所述包括多个光谱谱段的高光谱卫星遥感数据的类型为int类型数组。

所述第二图像生成模块45具体用于对所获取的卫星图像的像素值和卫星定标数据进行相对辐射定标,以消除同一光谱谱段下不同像素硬件下拍摄的像素值差异;s21’具体包括:利用卫星定标数据或者图像遥感器的每个探测器的增益(gain)和偏移量(bias或offset),校正载荷暗电流及成像像元之间的观测数值差异;对所获取的卫星图像的像素值和卫星定标数据进行绝对辐射定标,以消除硬件导致的不同光谱谱段在所有像素上响应的差异;包括:通过各种标准辐射源,在不同的谱段建立成像光谱仪入瞳处的光谱辐射亮度值与成像光谱仪输出的数字量化值之间的定量关系;对定标后卫星图像的像素值和卫星定标数据进行去噪;包括若每个探测器所探测的地物具有相同的均衡式辐射分布,将每个探测器的均值、方差调整至一预设参考值。由于定标处理无法完全消除像元拍摄像素值的差异,因此需要对定标后的数据进行去噪。于本实施例中,采用矩匹配去噪算法对定标后卫星图像的像素值和卫星定标数据进行去噪。

在本实施例中,所述第二图像生成模块45还用于对所获取的卫星图像的像素值和卫星定标数据进行定标、去噪处理的同时还会对数值越界等数据异常情况进行特殊处理。

与所述检索模块41、转换模块42、分发模块43和第二图像生成模块45耦合的第三图像生成模块46用于若对图像产品的产品类型需求为2级卫星产品时,接收用户从所述1级卫星产品对应的图像中选取的指定区域数据,对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据,对所述感兴趣区域数据进行定标和去噪处理,利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成;根据预测结果的数据集合,生成2级卫星产品对应的图像。

所述第三图像生成模块46具体用于接收用户从所述1级卫星产品对应的图像中选取的指定区域数据。在本实施例中,用户从所述1级卫星产品对应的图像中选取的指定区域数据为用户所选取的多个矩形区域的边界坐标和与矩形区域对应的地表覆盖类型标记。多个矩形区域的边界坐标和与矩形区域对应的类型标记作为之后训练的训练样本;对所述指定区域数据进行定标和去噪处理,将定标和去噪处理后的指定区域数据作为训练样本,训练机器学习模型;再接收用户从所述1级卫星产品对应的图像中选取的感兴趣区域数据;对所述感兴趣区域数据进行定标和去噪处理;利用所述机器学习模型对定标和去噪处理后的感兴趣区域中像素值进行预测,用预测结果所对应的颜色替换感兴趣区域中的原像素值,将替换后的像素值作为预测结果,对所述预测结果进行合并,以形成预测结果的数据集合;以上所有数据计算过程都在分布式计算集群中完成。根据预测结果的数据集合,生成2级卫星产品对应的图像。

本发明所述的高光谱卫星遥感数据的处理方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本发明的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本发明的保护范围内。

本发明还提供一种高光谱卫星遥感数据的处理系统,所述高光谱卫星遥感数据的处理系统可以实现本发明所述的高光谱卫星遥感数据的处理方法,但本发明所述的高光谱卫星遥感数据的处理方法的实现装置包括但不限于本实施例列举的高光谱卫星遥感数据的处理系统的结构,凡是根据本发明的原理所做的现有技术的结构变形和替换,都包括在本发明的保护范围内。

综上所述,本发明所提供的高光谱卫星遥感数据的处理方法、系统及计算机存储介质针对卫星遥感数据处理和产品生产,通过将产品像素值写入图片步骤前的整个过程使用spark进行并行计算,极大提高了数据处理和产品生产的速度;而由于spark的计算中间结果保存在内存上,减少了硬盘数据读写的时间,使得本实施例中的处理方法运用到系统后能够做到实时完成计算处理。本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

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