一种基于云计算的遥感卫星数据解压缩处理系统及方法与流程

文档序号:20039038发布日期:2020-02-28 11:40阅读:676来源:国知局
一种基于云计算的遥感卫星数据解压缩处理系统及方法与流程

本发明涉及一种卫星遥感图像原始数据解压缩处理系统及方法,属于遥感数据处理领域,适用于遥感卫星图像处理。



背景技术:

卫星下传的原始数据都是组包成约定格式的压缩码流,地面必须配置去格式解压缩设备来完成相应的逆处理,以恢复出原始图像数据。

目前国产遥感卫星原始数据解压缩主要采用单节点单步处理的方式,每个专用节点负责一个图像虚拟信道数据的解压缩。从数据获取开始,经过帧同步、解扰、格式解析、数据分割、解压缩、图像拼接、数据回放等步骤,完成对原始数据的解压缩处理。随着我国遥感卫星技术的发展,卫星数传码率以及星载压缩编码器性能均大幅提高。使用单节点单步流程处理高速数传码流,运算量极大,单节点易出现系统问题,可靠性和效率极低。为了保证数据解压缩的可靠性,专用节点只能降低解压缩的速率,无法满足用户对遥感影像的实时获取需求,且增加了系统维护成本。



技术实现要素:

本发明要解决的技术问题是:本发明采用云计算架构,克服单节点模式的性能瓶颈问题,提供一种基于云计算的遥感卫星数据解压缩系统及方法,解决了目前遥感卫星数据解压缩处理时效性差,可靠性低的问题。本发明在面对海量遥感数据解压缩有巨大的性能及可靠性优势,无需进行降速解压缩,即可高效可靠完成整轨双通道原始数据的解压缩处理;同时其性能可以通过增加云计算节点的方式进一步提高,具有较高的扩展性。

本发明所采用的技术方案是:一种基于云计算的遥感卫星数据解压缩处理系统,包括输入格式组件、分块读取组件、数据划分组件、解压缩mapper组件、解压缩shuffle组件、解压缩reducer组件、原始数据解压缩组件、图像拼接组件;

输入格式组件:根据设置的原始数据分块大小和位置,将原始数据切割成分块数据,调用分块读取组件,生成可供解压缩mapper组件处理的原始分块数据键值对<key,value>,并分发至各个map处理节点;

数据划分组件:记录各个原始分块数据的大小和位置;

分块读取组件:根据原始分块数据,生成key值和value值,组合成原始分块数据键值对<key,value>;

解压缩mapper组件:接收原始分块数据键值对,进行数据提取操作,同时调用原始数据解压缩组件,将原始分块数据解压缩,生成图像块数据,并将其重新组织成键值对<key,value>的形式;

解压缩shuffle组件:接收图像块数据键值对,按照图像幅号以及幅内块号进行排序,输出至解压缩reducer组件;

解压缩reducer组件:接收排序后的图像块数据,调用图像拼接组件进行图像数据的拼接、辅助数据恢复和数据校验;

原始数据解压缩组件:以原始分块数据为单位进行数据解压缩,输出解压缩后数据;

图像拼接组件:将具有同一幅号的图像块和辅助数据块按照块号进行排序,并进行拼接,最终形成符合卫星数据格式规范的图像数据和辅助数据。

一种基于云计算的遥感卫星数据解压缩处理方法,包括步骤如下:

(1)根据每颗遥感卫星的原始数据格式特征,确定用于并行计算的输入数据分块长度,调用数据划分组件,生成原始数据分割信息描述文件;

(2)根据输入的原始数据分割信息描述文件,调用输入格式组件、分块读取组件、数据划分组件,进行原始数据的划分,将原始数据分割为原始分块数据键值对<key,value>的集合,同时分配各原始分块数据存储的数据节点;

(3)hadoop平台根据各map节点的负载与原始分块数据的存储位置,将各个原始分块数据键值对分配至最优的map处理节点进行运算;

(4)各解压缩mapper组件处理原始分块数据键值对,进行数据提取操作,同时调用原始数据解压缩组件,将原始分块数据解压缩,生成图像块数据,并重新组合成图像块数据键值对<key,value>的形式,处理结果以数据流的方式传输到解压缩shuffle组件;如果节点出现异常错误,则调度到其他节点重新运算;

(5)解压缩shuffle组件接收数据流,按照图像幅号以及幅内块号将键值对排序后,以数据流的方式传输至各解压缩reducer组件;

(6)各解压缩reducer组件将具有同一幅号的图像块和辅助数据块按照块号进行排序,对同一幅号的图像数据和辅助数据进行拼接,同时进行校验,最后生成遥感卫星各个类型传感器完整的图像数据和辅助数据。

分割信息描述文件结构如下:

<split>

<id>分块序号</id>

<start>起始坐标</start>

<end>结束坐标</end>

</split>

其中,id为数据分块序号,start为数据分块起始字节值,end为数据分块结束字节值。

所述输入格式组件:根据设置的原始数据分块大小和位置,将原始数据切割成分块数据,调用分块读取组件,生成可供解压缩mapper组件处理的原始分块数据键值对<key,value>,并分发至各个map处理节点。

所述数据划分组件:记录各个原始分块数据的大小和位置。

所述分块读取组件:根据原始分块数据,生成key值和value值,组合成原始分块数据键值对<key,value>。

本发明与现有技术相比的优点在于:

(1)本发明利用云计算技术,将大规模的遥感卫星原始数据划分为可并行处理的数据分块,进行高速并行解压缩处理,由于并行处理的数据量小,处理时间远小于常规的单步流程处理时间,大幅度提高了数据处理的时效性。

(2)本发明将每个数据分块分配至云计算集群不同的服务器节点进行解压缩处理,大大降低了每台服务器节点的运算量,系统稳定性及可靠性大幅提高。

(3)本发明通过增加云计算集群服务器节点的方式可提高系统性能,具有较高的扩展性。本发明经过多颗遥感卫星数据的测试,本发明算法解压缩性能完全可以满足未来遥感卫星海量原始数据对解压缩时效性和稳定性的需求。

(4)本发明按照遥感数据分割描述文件与数据压缩帧格式对各传感器图像原始数据进行并行粒度划分,使其能够并行处理;采用优化后的map-reduce计算模型对分割后的原始数据分块进行高速并行解压缩处理,一个传感器图像数据可由多个节点并行解压缩处理,依次完成数据解压缩、图像数据排序、图像数据拼接,形成完整的图像数据。

附图说明

图1为基于云计算的高性能解压缩算法模块图;

图2为基于云计算的遥感卫星解压缩方法流程图。

具体实施方式

下面结合附图对本发明进行进一步说明。

先定义本发明涉及的概念。

云计算:云计算的核心思想为“分而治之”,通过将海量数据细分为m份,映射到m个节点进行计算,期间经历数据的迭代运算,汇总中间数据到n个节点计算最终结果,利用大规模数据并行加速程序运行。

mapreduce模型:mapreduce是一种编程模型,用于大规模数据集的并行计算。该模型先指定一个map函数,把输入的键值对(key,value)集合映射成一组新的键值对集合,将具有相同key值的value集合传递至reduce函数,reduce函数合并value值,模型最终输出一个合并精简过的键值对集合。

解压缩:通过一定的算法从遥感卫星下传的带格式原始数据中解码恢复出原始图像数据。

针对遥感卫星原始数据的特点以及mapreduce云计算模型,重新设计了mapreduce的底层框架,形成基于云计算的高性能解压缩算法模块,如图1所示,该算法模块独立于卫星型号和数据类型,可支持多型号卫星、多种帧格式数据的分块处理,数据处理速度快,稳定性高。

一种基于云计算的遥感卫星数据解压缩处理系统,包括输入格式组件、分块读取组件、数据划分组件、解压缩mapper组件、解压缩shuffle组件、解压缩reducer组件、原始数据解压缩组件、图像拼接组件。每个模块组件都具备输入流和输出流。各组件功能如下:

输入格式组件:根据设置的原始数据分块大小和位置,将原始数据切割成分块数据,调用分块读取组件,生成可供解压缩mapper组件处理的原始分块数据键值对<key,value>,并分发至各个map处理节点。

其中,key表示序号,value表示数值;

分块读取组件:根据原始分块数据,生成key值和value值,组合成原始分块数据键值对<key,value>。

数据划分组件:记录各个原始分块数据的大小和位置。

解压缩mapper组件:接收原始分块数据键值对,进行数据提取操作,同时调用原始数据解压缩组件,将原始分块数据解压缩,生成图像块数据,并将其重新组织成键值对<key,value>的形式。

解压缩shuffle组件:接收图像块数据键值对,按照图像幅号以及幅内块号进行排序,输出至解压缩reducer组件。

解压缩reducer组件:接收排序后的图像块数据,调用图像拼接组件进行图像数据的拼接、辅助数据恢复和数据校验的工作。

原始数据解压缩组件:以原始分块数据为单位进行数据解压缩,输出解压缩后数据。

图像拼接组件:将具有同一幅号的图像块和辅助数据块按照块号进行排序,并进行拼接,最终形成符合卫星数据格式规范的图像数据和辅助数据。

基于云计算的遥感卫星数据解压缩方法,包括步骤如下,如图2所示:

(1)根据每颗遥感卫星的原始数据格式特征,确定用于并行计算的输入数据分块长度,调用数据划分组件,生成原始数据分割信息描述文件。分割信息描述文件结构如下:

<split>

<id>分块序号</id>

<start>起始坐标</start>

<end>结束坐标</end>

</split>

id为数据分块序号,start为数据分块起始字节值,end为数据分块结束字节值。

(2)根据输入的原始数据分割信息描述文件,调用原始数据划分组件(输入格式组件、分块读取组件、数据划分组件),进行原始数据的划分,将原始数据分割为原始分块数据键值对<key,value>的集合,同时分配各原始分块数据存储的数据节点。

(3)hadoop平台根据各map节点的负载情况与原始分块数据的存储位置,将各个原始分块数据键值对分配至最优的map处理节点进行运算。

(4)各解压缩mapper组件处理原始分块数据键值对,完成辅助数据提取、解压缩的工作,并重新组合成图像块数据键值对<key,value>的形式,处理结果以流的方式传输到解压缩shuffle组件;如果节点出现异常错误,则调度到其他节点重新运算。

(5)解压缩shuffle组件接收数据流,按照图像幅号以及幅内块号将键值对排序后,以流的方式传输到各解压缩reducer组件。

(6)解压缩reducer组件将具有同一幅号的图像块和辅助数据块按照块号进行排序,同一幅号的图像数据和辅助数据进行拼接,同时进行校验,最后生成卫星各个类型传感器完整的图像数据和辅助数据。

本发明未详细说明部分属于本领域技术人员公知技术。

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