[关闭]
@novachen 2020-03-31T06:58:31.000000Z 字数 5441 阅读 2208

全球卫星数据快速采集软件——空天数源ADB(AerospaceDataBox)

空天数源 数据采集 LANDSAT SENTINEL 哨兵


简介

高效能的常用遥感数据收集下载软件
1)同时抓取多个数据源(USGS, ESA, GOOGLE)
2)界面操作简单傻瓜
3)采用多线程、分布式,下载速度快


目前,陆地卫星数据和哨兵卫星数据无疑是全世界应用最广泛的两种光学卫星数据,这两种卫星数据成像质量稳定可靠,且数据均可以在互联网免费公开获取,因此,深受广大科研工作者和产业应用从业者的欢迎。

而这两种卫星数据的获取通常是以用户在数据中心网页上进行查询检索下载。这种数据获取方式对于数据量较小的用户可以满足数据使用需要。但当用户需要进行长时间序列获取或者空间大尺度数据获取时,由于要获取的数据景数非常大,使用Http方式在网页上下载就耗时耗力,且Http协议对于大文件传输并不可靠。在下载过程中如果出现中断,就需要重新进行手动干预,重新进行下载。

Google Earth Engine(GEE)的出现,在一定程度上解决了大批量数据计算需求的问题。GEE比较适合通用算法的长时间序列叠加空间大尺度范围数据计算,但当用户数据处理过程需要依赖一些特定步骤或者算法依赖库的时候,使用GEE就很不方便。

为了解决目前科学研究人员和企业应用研发人员进行大批量数据获取的需求,我们研发了一套全球范围陆地卫星和哨兵数据的快速获取软件--“空天数源”。“空天数源”软件提供全球范围内Landsat卫星和Sentiel卫星产品数据的快速采集。

软件当前版本具备以下两类中分辨率数据的采集能力:一是美国地质调查局(USGS)公开发布的Landsat系列卫星,具体包括Landsat1、Landsat2、Landsat3,Landsat4、Landsat5、Landsat7、Landsat8。二是欧洲航天局(ESA)所发布的Sentinel系列卫星,具体有Sentienl-1、Sentienl-2、Sentienl-3。数据采集的空间覆盖全球,时间范围覆盖了卫星的全生命周期。

软件整体基于云架构设计,用户通过可视化的地图界面进行下载条件设置,创建下载任务。单个账号创建下载任务后,可以使用软件进行分布式多节点协同下载。软件下载迅速便捷,并且提供了对下载数据的MD5校验,保证了所下载数据的完整性和可靠性。

1 软件功能介绍

软件整体分为服务器端程序和客户端下载软件,其中客户端下载软件的主要功能有数据下载任务创建、数据下载任务管理、数据自动下载及验证、数据下载作业监视、已下载数据查询检索等。服务器端程序主要功能是从美国USGS、欧空局、Google等卫星数据中心采集最新的卫星数据Metadata至服务器端数据库,为客户端程序提供元数据的查询检索。同时服务器端也为客户端进行下载服务提供了RESTFul API。

整个软件的结构图如下图所示:

图 1软件整体结构图

1.1 客户端下载软件功能介绍

“空天数源”数据下载软件客户端是一款绿色的桌面软件,软件使用Java语言开发,可以跨平台运行,在Windows、Linux,Mac下均可以使用。从网站上下载软件后,进行简单配置后就可以使用,配置的信息主要有三项:

下面分别介绍软件的数据下载功任务创建和数据下载等核心功能。

1.1.1 下载任务创建

创建下载任务,共需要填写或者选择以下四类信息:

设置好上述四类下载条件信息后,就可以进行下载任务创建。

图 2创建下载任务示例

任务创建成功后,在系统界面会提示创建的下载任务数据条目数信息。与此同时,后台下载进程则会自动启动,开始下载该任务的数据。

1.1.2 下载任务管理

创建好下载任务后,就可以进入到下载任务管理界面浏览已经创建的下载任务列表。下载任务管理界面分为左右两栏,左侧时下载任务的分类。当前版本的任务分为三类:Landsat卫星系列和Sentinel系列,Sentinel系列又根据数据来源的不同分为Google和ESA两类。

图 3下载任务管理分类目录树

图 4下载任务管理-任务列表界面

右侧为下载任务列表表格。该表格信息包含了以下内容:任务名、任务详情、已下载数据量、数据总量、下载状态、任务添加时间、对该任务的操作。对列表中的每一项任务,用户可以进行下面几种操作:

图 5查看下载任务空间范围

1.1.3 数据下载作业监视

数据下载作业监控界面也分为三类Landsat数据下载监控、Sentinel数据下载监控(Google),Sentinle数据下载监控(ESA)。下载作业列表中会显示每条下载作业的下载状态,对于下载失败和下载成功的数据,都可以点击“重新下载按钮”进行再次下载。

图 6数据下载作业监控

另外,在软件界面的右上角,显示了所有下载任务的下载速度信息。

图 7所有任务总体下载速度

2 使用软件进行数据下载的说明

2.1 下载保存目录创建规则说明

在使用软件进行数据下载之前,首先需要配置下载的根目录。这个目录可以是本地系统磁盘目录,例如Windows系统环境下,配置下载的根目录为:d:\rootdir\datadir,下载的根目录也可以配置为系统挂载的有写权限的NAS存储目录,例如:\\10.5.5.12\ rootdir\datadir。在进行数据下载时,软件会在该配置目录下创建一个名称为downloading的临时下载目录,所有下载任务的数据都会首先保存在该目录下。当一条数据下载结束后,会对下载的数据进行MD5校验,查看该数据是否下载完整,验证通过后,会将该数据移动到成功下载目录中(文件夹名称为“downloadsuccess”),同时将临时下载目录中的数据删除。成功下载目录也是由软件自动创建,这个下载成功的目录规则是:配置的根目录\任务名称\卫星名称\downloadsuccess。

以Windows环境为例,如果配置的根目录是:d:\rootdir\datadir,要下载的任务名称是“BeiJing_Landsat8_2019”,下载的卫星是Landsat8,那么该任务最终成功下载的数据存放目录为:d:\rootdir\datadir\ BeiJing_Landsat8_2019\Landsat8\downloadsuccess。

在使用软件下载过程中,配置的下载根目录下名称为“downloading”的文件夹下所有数据不能删除,否则会导致下载失败。但成功下载目录“downloadsuccess”下的目录,可以随时进行拷贝删除等操作。在关闭软件的情况下,临时下载目录和成功下载目录则可以任意删除,当软件再次启动后,会根据配置文件自动创建临时下载目录和成功下载目录。

2.2 软件启动和停止说明

启动软件的文件为软件目录中的“start.bat”文件,启动软件后,会首先检查配置文件是否正确,如果尚未进行配置,则会提示用户进行安装目录、用户账号等的配置。在配置完成并再次启动软件后,用户则可以进行下载任务的创建,任务创建完毕后,软件会自动启动后台下载进程进行数据下载。在软件使用过程中,可以随时关闭软件。关闭软件后,后台下载进程也随之停止。当再次启动软件后,下载进程也会自动启动,开始继续下载之前尚未下载完成的数据。

如果进行了软件配置文件的修改,则需要关闭软件后,重新启动,修改的配置才会生效。

2.3 软件多线程下载说明

对于Landsat数据下载和从Google上下载Sentinel-2数据这两种任务,单个线程下载数据的速度一般在8M/B以上(100M带宽情况下),因此对这两种任务,软件目前只支持单线程下载。

当创建的任务是从ESA SCI Hub上进行Sentinel-1、Sentinel-2和Sentinel-3数据的下载时,软件启动的线程数是根据在配置文件里配置的ESA网站账号数来确定。例如在配置文件中配置了2个ESA SCI Hub的账号,软件在下载数据时,会启动4个下载线程进行并行下载。

线程数Thread_Number=ESA账号数*2。这里的下载线程数是配置的用户账号2倍,是由于ESA SCI Hub对于单个账号同时进行数据下载的最大连接数是2。

2.4 软件分布式多节点下载说明

软件支持对单个用户创建的下载任务进行分布式多计算机节点下载,目前对每个用户可以进行软件安装布署的计算机节点数并没有做限制。例如,软件用户名为user1的用户在一台计算机上布署软件创建了下载任务后,又在另外2台计算机上也布署了本软件。则user1将会有3个计算机节点协同下载自己的下载任务。这三个计算节点的配置文件里,软件的用户账号需保持一致,但存储目录可以根据该计算机节点的磁盘存储单独设定。需要注意的是,在配置文件里,“esadownloadworkerset”这个配置项的配置,三个计算节点必须不同,否则,三个计算机节点中有两个节点的下载连接会被ESA数据中心服务器拒绝导致下载失败。下图是user1用户三个计算机节点进行数据下载的示意图。

图 8多节点分布式协同下载

图中,user1创建了三个下载任务,这三个下载任务分别是Landat下载任务Task1,从ESA上下载Sentinle数据Task2,从Google上下载Sentinel数据Task3。在这三个计算机上,每个下载软件的配置文件里,软件账号和密码均配置为user1,“esadownloadworkerset”均配置了一个ESA账号。当三个计算机上的下载软件启动后,则每个节点会启动4个下载线程。分别是Task1任务一个下载线程,Task2任务两个下载线程,Task3任务一个下载线程。因此,用户user1使用三台计算机,同时可以使用软件下载12个数据文件,以加快自己的数据获取速度。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注