■ 鄢俊洁 瞿建华 范霖
为了解决不同气象数据间的应用接口,并突破传统C/S架构应用软件的限制,设计了一种基于服务的,能支持多源、多尺度、多形态的气象数据和卫星遥感数据自动化生产与发布的集成技术解决方案。基于该方案所建立的多源气象卫星数据集成显示应用平台(ShinetekView),能很好地实现数据的云端发布和轻量级客户端应用,并能采用分布式的数据管理方式及组件式的结构设计,实现对新的数据的扩展。
近些年来,气象卫星资料在时间分辨率、空间分辨率、光谱分辨率上有了大幅度的提高,但是大数据量、非常频繁的资料,给数据的使用带来了新的挑战。首先,要解决的是高分辨率数据的应用问题。在传统的卫星资料应用软件中,大多采用C/S结构设计,资料需要先下载到本地,才可以开始进行数据的处理和应用产品的分析。目前,我国风云三号D星(FY-3D)的 MERSI的5 min L1B数据的数据量已经达到2 G,风云四号(FY-4)试验星全圆盘观测的L1B数据量达到3 G,同时频次非常高,5 min就可以完成一次中国区域的观测。在如此大的数据量下,如何便利地使用数据,是目前迫切需要解决的问题。其次,气象数据种类的增加,带来了这些数据的融合使用问题。每增加一类数据,需要开发一套新的应用软件。不仅增加了系统的复杂性,同时对于使用用户来说也会非常地不便利。
随着计算机技术的逐步发展,目前云平台、大数据等应用日益广泛,对于传统的气象数据的应用同样提出了挑战,利用强大的计算机资源和IT技术,优化和提高气象数据的应用效率和应用效果,是迫切需要解决的问题。因此,如何解决大数据量及不同类型数据的综合显示问题,是目前多源气象数据应用的一个重点。
为了解决大数据高效使用和多源数据应用两个关键问题,设计了多源气象卫星数据集成显示应用平台(ShinetekView,以下简称应用平台)。应用平台设计上采用面向服务架构,可以实现数据的云服务和轻量级客户端应用;同时,采用分布式管理,可根据实际业务量进行配置;在结构设计上采用组件式设计,在需要新增一种资料或者一种产品时,只需要增加对应的中间件即可,解决了扩展性问题。
从系统架构设计上,整个应用平台分为三层:数据处理层、数据服务层、应用展示层(图1)。
图1 应用平台总体架构图
在数据处理层上,首先为了保证系统的可扩展性和一致性,要对输入的气象数据和卫星遥感数据进行标准化处理,包括对数据的文件名、文件格式、存储方式和数据管理等方面,生成系统内部定义的统一数据格式。然后将标准化后的气象数据和卫星遥感数据根据类型的不同处理成影像、矢量、高程三种数据类型。目前支持对风云系列卫星遥感数据、碳卫星遥感数据以及数值天气预报数据的处理。
在数据服务上,采用文件系统与关系型数据库的统一管理模式,通过关系型数据库与文件系统对各类型数据统一存储、管理与访问,通过在存储、数据库服务器、数据库、中间件、应用系统等多个方面的优化设计来保证系统在存储、管理与访问上的效率。
在应用展示上,采用标准、开放的OGC(Open geospatial consortium)服务,包括WMS(Web map service)、WFS(Web feature service)以及WCS(Web coverage service),矢量、栅格及影像数据都可以在客户端通过标准化的接口进行访问。同时可以根据需要定制发布策略,实现无人工干预的全自动化气象及卫星遥感产品的实时发布。
从系统技术架构上,应用平台分为应用层和支撑层两部分。支撑层是所有的数据、服务的基础,包括数据的获取、产品处理、遥感分析、专题图制作等多种功能。支撑层采用REST API的方式进行接口封装,为应用层提供接口。在应用层,主要解决的是数据的可视化、地图服务、人机交互操作的相应问题等。在应用层,采用了BootStrap的UI设计框架进行了界面的设计,采用了D3框架进行了数据可视化设计。同时,采用Openlayers框架进行GIS服务设计,采用国际通用接口,能很好地支撑目前所有发布的地图服务,例如天地图、google地图、Bing地图等。此外,采用cesium进行三维显示设计,解决了在近景下的三维地形的可视化和分析。图2为应用平台的技术架构图。基于这个技术架构,系统解决了遥感影像数据与WebGIS服务的结合,为遥感产品基于B/S架构的应用提供了基础。
图2 应用平台技术架构图
在应用平台设计中,要解决多源数据的问题。在平台中,涉及的气象数据包括三种类型:卫星数据、观测数据、数值预报数据。目前气象卫星数据包括极轨卫星系列和静止卫星系列。极轨卫星系列能提供全球的观测数据,静止卫星数据能提供高时间分辨率的分析。目前,应用平台解决的卫星数据主要来自于风云二号、风云三号、风云四号、NPP、TERRA、AQUA等卫星。数值预报数据主要包括温度、压强、湿度、风场等要素,作为数据分析的辅助基础。观测数据主要为站点观测数据,为离散场数据。在应用平台中,首先需要解决多源数据的标准化问题,其次需要解决大数据量的快速显示问题。
在数据标准化中,需要解决的问题主要包括数据本身的接口的统一、数据管理方式的统一和数据所使用的调色板的统一。
首先,在数据接口上,使用的数据包括风云系列卫星遥感产品数据(FY-3C、FY-3D、FY-4A等)、多种数值预报产品数据(T639数据、NCEP数据、ECMWF数据等)、其他卫星遥感产品数据(NPP、NOAA、Himawari-8等),产品类型包括云图影像、云检测、云相态、云顶高度、降水估计、水体监测、火点监测、地表温度、对流初生、海表温度、陆表温度、植被指数等。其他类型数据还涉及地理信息数据等。根据数据的类型和级别,首先将数据分为格点数据和离散数据。各类卫星数据、数值预报数据等都属于格点数据,而地理信息数据、观测数据、特殊的卫星产品(例如火点)属于离散数据。对于卫星遥感数据,采用金字塔技术,根据数据的分辨率,建立金字塔。数值预报数据虽然同样为格点数据,但是其分辨率低,数据量相对小。因此,在数值预报数据上,采用数据流进行处理,采用一定的编码方式,能快速地进行网络交换。离散数据采用通用的地理空间信息数据交换格式接口进行编码。
在数据管理上,由于种类多,数据的空间分辨率、时间分辨率也不一样。按照级别进行分类分为一级、二级、三级等,并通过统一的方式进行管理。通过对元数据的提取,按照卫星名称、仪器名称、数据级别、投影类型、观测时间、空间分辨率、产品名等,对数据的命名、存储的目录、数据结构进行规范化设计,以实现对卫星数据的标准化处理。由于静止卫星和极轨卫星的时间分辨率相差较大,在此处设计中对数据的开始观测及结束观测时间进行的提取,很好地解决了极轨卫星一天一次而静止卫星几分钟一次的集中显示问题。
最后,遥感产品的应用除了数据本身以外,显示需要用到数据的调色板。一般来说,遥感产品的调色板主要分为渐变型、分段型、分段渐变以及混合型等多种。为了能进行统一管理,采用分层结构对调色板进行的定义,能实现所有类型的产品的调色要求。调色板在结构设计上考虑了卫星数据的特殊性,将数据级别、产品名称、产品量纲加入到设计中,除此以外,还考虑了遥感产品通常使用的偏移和放大系数。
在数据管理上,为了实现数据的分布式管理,平台将所有气象及卫星遥感数据抽象成一个具有数据类型、数据资源路径、调色板资源路径、数据时间轴资源路径等属性的产品对象,并且通过配置进行管理。这个对象可以通过配置的方式,进行各类数据的包括名称、分辨率、显示方式、数据存放地址等所有信息的配置,一方面解决了多源数据在不同地址存放的问题,另一方面,解决了系统的扩展性和兼容性问题,能方便地进行数据的添加。
以下就是风云四号归一化植被指数产品的配置信息示例:
数据访问方案采用面向资源的RESTful架构形式,任何数据资源(包括图像、文件等)在该架构中都有一个对应的URL来标识,用户想要获取数据就必须通过资源所对应的URL来操作,而这些操作中数据是以它们的某种表现形式来传输的,比如Html、JSON、JPEG等。除了上例中描述的对影像产品分块数据资源的获取形式外,还可通过RESTfulAPI对数据进行加工处理,为用户提供诸如GEOjson、KML等多种数据类型。
首先,在应用平台设计上,由于采用了国际通用接口,因此能直接使用国际及国内发布的各类地图服务。其次,用户能通过平台直接获取产品的结果,产品结果以通用数据格式GeoTiff的方式提供给用户,方便用户进一步的应用。
除此以外,平台还用组件的方式提供给用户专题图、动画等数据的获取服务。在不同的功能模块的实现上,应用平台采用面向服务的方式,设计了组件式的结构。在数据处理层,设计了数据获取组件,在增加一种数据的情况下,可以根据数据的类型、分辨率、级别等进行扩展。在数据服务层,设计了空间分析、专题图制作、典型事件、动画等组件,为遥感数据的进一步应用分析提供工具。
平台硬件环境:至少一台数据服务设备和一台数据处理设备。单机配置要求超过5CORE,内存10 G以上。根据所使用的数据的种类的多少进行硬件平台的扩充。以风云四号产品集成应用显示为例,平台配备了CPU8CORE,内存32 G,带宽2 Gbps的环境。
平台软件环境:操作系统为Linux(ubuntu 16以上或者centos 6以上版本);浏览器为Chrome、IE 10以上。
应用平台作为一个整体解决方案,提供给用户的是一套结合了后端处理服务,前端应显示用的整套系统。图3为系统结构图。
图3 应用平台实现整体结构图
服务端为自动处理,前台显示端的操作和数据的请求进行数据的交换。前台显示端通过Web提供给用户使用。图4为平台主界面,主要分为四个区:视图区(中间)、时间轴(下方)、产品选择控制区(左下角)、应用控制面板区(右上角)。
目前平台已经实现了对多种数据的处理和应用,按照展示方式的不同主要分为以下几类:
1)栅格数据的平面、球面展示。在风云三号数据的展示中,采用2D平面的方式展示全球的数据,在3D中采用三维远景球面展示全球数据,并且能快速移动、放大缩小(图5)。
2)栅格数据的流场展示。在风云四号的数据展示中,将数值预报风场叠加到风云四号的产品上,通过流场的展示效果,非常好地展示了台风的移动情况、水汽的输送情况等(图6)。
图4 应用平台展示界面
图5 风云三号D星MERSI真彩色图2D显示效果
图6 风云四号云图叠加数值预报风场显示效果
3)快速的云图动画。对于静止卫星而言,高频次的观测后的云图动画能很好地分析天气现象,特别是强对流天气。在风云四号、Himawari-8的数据展示中,按照时间先后进行各类产品的动画展示。
4)叠加地形的三维近景展示。在碳卫星中,采用三维的叠加地形方式进行二氧化碳产品的展示(图7)。
图7 碳卫星CO2浓度产品叠加地形的三维近景展示
综上所述,应用平台已经实现了对多种数据的处理和使用,在风云三号实时业务系统、风云四号省级用户站、Himawari-8的省级用户站中也得到业务应用。
基于以上系统架构和关键问题的解决方案,研制开发出来的多源气象卫星数据集成显示应用平台(ShinetekView),很好地实现了包括风云三号卫星、风云四号卫星、碳卫星在内的多种卫星资料的综合显示,除此以外能进行数值预报数据、实测数据的叠加分析。同时能支持二维、三维远景、三维近景的多种显示方式。
ShinetekView是一种支持多源、多尺度、多形态的气象数据和卫星遥感数据自动化生产发布的集成方案,为未来多源数据的遥感应用提供了一个简洁易用的平台。
深入阅读
黄梦雄, 朱勤东, 赵跃, 2013. 基于REST 和AJAX 的WebGIS 设计与实现. 测绘与空间地理信息, 36(7): 58-66.
卢乃锰, 谷松岩, 2016. 气象卫星发展回顾与展望, 遥感学报,20(5): 832-841.
卢乃锰, 郑伟, 王新, 等, 207. 气象卫星及其产品在天气气候分析和环境灾害监测中的应用概述, 海洋气象学报, 37(1) : 20-30.
张黎明, 闫浩文, 2010. 基于OGC规范的WebGIS设计与应用. 测绘与空间地理信息, 34(6): 41-43.
张鹏, 郭强, 陈博洋, 等, 2016. 我国风云四号气象卫星与日本Himawari-8/9 卫星比较分析. 气象科技进展, 6(1): 72-75.
Advances in Meteorological Science and Technology2018年6期