查看原文
其他

聚焦︱基于开源框架的生态环境要素遥感定量反演平台构建

The following article is from 地理信息世界GeomaticsWorld Author 地理信息世界

导读

当前,开源GIS软件已经广泛应用于国土、海洋、气象等多个行业,但在生态环境方面还未与RS进行很好的耦合。本文结合当前较为实用和流行的开源框架技术和插件技术,以MapWindow为基础,分析其组件库DotSpatial的框架体系,设计与搭建了生态环境要素遥感定量反演平台。该平台能够及时、准确地获取大范围环境影响因子,辅助决策部门进行生态环境管理。


生态环境所涉及的影响因子较多、信息量较大,各因子互相影响且都带有明显的时空分布特征,通过传统手段采集和处理的数据,在采样效率和分析效果方面难以满足实际应用的需求,无法支撑我们做出科学性和系统性的分析决策。遥感(Remote Sensing, RS)能获取长时间、大范围的观测数据,从采集点到区域,宏观、迅速、准确地反映出生态环境的特征和历史变化;地理信息系统(Geographic Information System, GIS)不仅能够对遥感以及其他手段采集的生态环境数据进行空间存储、管理,还可以对数据进行实时或多时相处理与分析,辅助决策部门制定有关生态环境问题的解决方案和防治措施。


商业软件平台的价格比较昂贵,且底层代码不开放,从而影响定量遥感平台的开发和功能扩展。在这种情况下,开源平台成为一种具有很大优势的选择,其底层源代码全部开放,开发人员可以根据自己的需求调整开发策略,对原始的功能模块进行调整,使得开发过程更加便捷。开源理念进入GIS和RS领域已有近30年的历史,国内外相关研究和应用机构相继开发出开源GIS/RS平台,利用这些开源平台,已有很多成功应用于各行业的实例。胡庆军等分析了主流开源GIS软件及其典型应用,并对开源GIS的应用和发展前景进行了展望。朱浩等以东营市河口区为例,使用开源GIS软件构建了不同气象灾害及综合气象灾害的分析模型。王连波使用开源软件架构实现了基于WebGIS的辽河河口湿地管理信息系统设计与开发。刘昌涛利用开源软件处理数据并于网上发布,实现了海洋数据的网络GIS功能。汪鹏等基于开源GIS软件,提出了构建与调用地理信息服务的体系框架,研究了服务构建和调用等关键技术,使用烟台市地图数据进行实验,取得了满意的效果。熊文兵等利用MapWinGIS,设计开发了广西生态质量气象评价业务系统,该系统从业务流程需要出发,实现了气候数据的分析处理,为生态质量气象评价业务工作提供了标准化的工作流程。


虽然开源GIS软件已经广泛应用于国土、海洋、气象等多个行业,但在生态环境方面还未与RS进行很好的耦合。气溶胶光学厚度(Aerosol Optical Depth,AOD)、悬浮泥沙浓度、叶绿素浓度等是研究生态环境要素定量遥感的重要参数,其中气溶胶状况对人们的生产和生活具有重要的影响,叶绿素浓度和悬浮泥沙浓度也是水体初级生产力和水体生态环境的重要影响因子。因此,在开源平台基础上建立基于GIS和RS的生态环境要素遥感定量反演平台的需求迫切。


本文选用开源平台作为生态环境要素遥感定量反演平台的基本框架。而插件式可以根据需求和资源的实际情况来调整框架结构,系统功能的增加或减少只需调整相关插件,易于进行结构调整、修改和维护,具有良好的可扩展性和兼容性。同时,插件由一系列小的功能结构组成,通过接口向外部提供服务,可以重复利用,更便于进行移植。由于平台涉及GIS和RS两方面的功能,各功能模块间除了基础数据处理外,交叉性较低,独立性较高,插件技术的优点可以满足本平台对模块独立性的要求。采用插件式开源框架搭建系统平台,允许第三方的开发者在无需对整个程序代码进行重新编译的情况下,通过开发插件对功能进行扩展,从而提高软件产品的开发效率,促进GIS和RS的发展和应用。


综上所述,本文在开源框架和插件技术的基础上,对开源GIS/RS平台进行了比较和分析,确定以MapWindow作为系统开发的基础平台。通过分析Dotspatial组件库的框架体系,对其功能模块进行抽取和修改,确定平台底层框架,在此基础上设计与搭建生态环境要素遥感定量反演平台。


一、插件式开源GIS/RS平台优缺点比较


通过对C/C#/C++系列的开源GIS/RS框架进行综合比较分析,确定平台的底层框架。C/C#/C++系列开源GIS/RS框架主要包括:GRASS、Quantum GIS、MapWindow、SharpMap、OSSIM、OPTICKS、OpenRS等。以上7种是使用的较多、功能较完善的开源GIS/RS平台对比见表1,经过对比和分析,选取MapWindow作为本文的底层平台,其优势在于:①系统框架轻巧易用且能够同时满足GIS和RS数据处理的需求,针对本平台来说,不存在大量冗余功能模块;②支持空间数据库信息存储,并且支持网络发布的调用;③具有较成熟的HydroDesktop模块,在环境信息管理和数据处理分析方面具有优势。


表1 开源GIS/RS平台优缺点比较


二、系统设计及实现


2.1 系统概要设计


概要设计主要内容是明确系统的软件结构和数据结构。软件结构设计是将系统按功能进行模块划分,建立模块间的层次结构、调用关系、接口以及人机交互界面等。数据结构设计包括确定数据特征的描述、结构特性以及数据库的设计。


本平台基于DotSpatial进行开发,软件结构设计的主要任务是对DotSpatial自身架构和插件的组织方式进行调整和修改:舍弃冗余功能模块,包括雷达数据和GPS数据处理模块等;优化使用频繁的模块,包括遥感影像处理模块等。通过优化系统结构,增强软件的易用性和用户友好性。


数据结构设计针对不同来源、不同格式的数据进行分类处理,系统涉及的数据类型主要包括遥感影像数据、GIS空间数据和非空间数据。其中遥感影像数据主要是环境(HJ)卫星影像、TM(Landsat Thematic Mapper)影像、MODIS(Moderate Resolution Imaging Spectroradiometer)影像,这些影像以文件的方式进行管理和使用。GIS空间数据和非空间数据采用数据库进行管理,数据库可以选择PostgreSQL,PostgreSQL本身不支持空间数据的管理,但是在其基础上扩展形成的PostGIS数据库则支持空间数据管理。


2.1.1 系统结构


平台采用当前较为流行的三层体系结构,即应用表现层、业务逻辑层和数据存储层,如图1所示。应用表现层是指用户界面的显示,是应用程序和用户进行交互的接口。业务逻辑层是指应用程序的业务处理,包括平台的数据访问、数据管理与遥感影像处理等。数据存储层主要包括数据的存储与管理,数据的组织以及数据库与平台的接口等。



图1 程序系统结构


DotSpatial作为基础框架是整个平台的核心,所有的算法和模型最终都汇集到此框架中。大部分GIS数据处理和分析功能都在DotSpatial的框架中实现,而遥感数据处理涉及的各类算法和模型则通过编程实现后进行封装处理,生成动态链接库(Dynamic Link Library,DLL),最终通过在平台中调用DLL的方式加载各遥感影像处理功能插件。


2.1.2 插件设计


插件设计的主要内容是利用不同的插件实现气溶胶光学厚度反演、水色要素反演等功能模块,这样的组织架构方便后续对平台功能进行有效扩展。插件借助平台的接口与应用程序进行通信,应用程序框架启动时自动加载插件,用户在之后的操作过程中调用插件实现对数据的处理。DotSpatial系统本身带有插件管理器,可以实现对新加入插件的管理,用户通过菜单、工具栏按钮调用功能插件的过程都要通过插件管理器的许可。


2.2 系统功能模块设计及实现


根据系统框架设计,确定平台共由以下4个功能模块组成:数据管理模块、GIS信息查询模块、遥感数据预处理模块和遥感定量反演模块。由于水色要素反演与气溶胶光学厚度反演的实现方法大致相同,本文对数据管理、GIS信息查询、遥感数据预处理和水色要素反演4个功能模块进行简要介绍,在此仅对气溶胶光学厚度反演模块实现方法进行详细介绍并予以验证。


1)数据管理、查询模块:此功能模块通过对DotSpatial的基本框架进行修改和调整来实现,包括界面的风格和各功能模块的组织形式,为系统各功能的实现提供基础,如图2所示。


图2 数据显示、属性表编辑器、要素识别界面


数据查询模块包括依据属性查询图形和依据图形查询属性两部分,两种功能在DotSpatial的底层框架中已有基础,但仍需根据实际需求稍加改进。DotSpatial框架中对属性表的操作非常全面,包括字段的增删以及信息统计等,这些都为深层次的查询提供了基础。


2)遥感数据预处理模块:预处理包括针对HJ卫星数据和TM数据的辐射定标,本文以HJ卫星数据为例进行介绍。HJ卫星数据的定标参数是根据中国资源卫星应用中心在敦煌绝对辐射校正场和青海湖辐射校正场试验获取的数据。利用绝对定标系数将HJ卫星CCD影像DN 值转换为辐亮度影像的公式(1)如下。



式中,A 为绝对定标系数增益,L 0为绝对定标系数偏移量,可以通过查询遥感影像的元数据获取,转换后辐亮度单位为


经过辐射定标,得到L为辐亮度,接下来需要将辐亮度转化为表观反射率,转化方法如公式(2)所示:



式中,ρ为表观反射率,L为表观辐亮度,d为日地距离,ESUN为太阳平均辐射强度,太阳天顶角θ可以通过查询遥感影像的元数据获取。


需要输入的参数包括原始影像、元数据和波段,设置参数并选择影像的输出路径后进行处理,参数设置及运算结果如图3所示。


图3 HJ卫星数据辐射定标参数设置及处理结果界面


3)本文中水色要素反演包括悬浮泥沙浓度反演和叶绿素浓度反演两部分。悬浮泥沙浓度反演模型选择经验/半经验模型,包括指数模型、负指数模型、线性模型。其中R 为遥感因子,SS 为悬浮泥沙浓度,a、b、c、d为常数。叶绿素浓度反演模块基于三波段模型的叶绿素A 浓度反演模型,使用3个特征波段的组合,利用统计方法反演叶绿素A浓度。


反演算法使用C++语言实现后,经过封装编译生成动态链接库,最终以插件的形式添加至平台。悬浮泥沙浓度反演与叶绿素浓度反演的界面与流程相似,以幂指数模型反演悬浮泥沙浓度为例进行介绍,反演参数及结果的界面如图4所示。


图4 幂指数模型反演悬浮泥沙浓度设置及结果加载界面


4)气溶胶光学厚度的反演原理是:在预处理得到表观反射率的基础上,采用结构函数法结合6S(Second Simulation of Satellite Signal in the Solar Spectrum)辐射传输模型计算得到的查找表,针对城市等亮地表区域进行反演。


结构函数法作用于一组包含一张较高清晰度的影像,先通过近似假设或者地基观测的方式估计出这幅影像的气溶胶光学厚度,然后依据这幅影像的表观反射率的分布状况(即结构函数)推算该组中其余影像的气溶胶光学厚度。反演算法实现后,需要对其进行封装编译处理,生成包含全部反演过程的DLL,将其拷贝至系统平台的debug文件夹下的bin文件夹中,之后在系统中对DLL进行加载。通过DLL调用的方式可以避免将算法实现的大量源代码植入系统平台中,保证了系统框架的简洁性和轻巧性。


另外,DotSpatial整套类库是基于.NET平台使用C #语言编写完成的。本文遥感影像处理算法使用C++编程实现,通过使用DLL的方式解决了两种语言的兼容性问题。但是由于通过DLL调用的方式涉及到多语言和跨平台调用,因此要注意函数的输入和输出参数都要保持为标准类型,即函数的参数和返回值都需要设定为C++和C#可识别的类型。


调用DLL的准备工作完成后,便可在定量遥感平台中进行调用并实现该功能,结构函数法实现气溶胶光学厚度反演的设置及结果加载界面如图5所示。


图5 气溶胶光学厚度反演设置及结果加载界面


2.3 气溶胶光学厚度反演验证


以气溶胶光学厚度反演为例验证本平台的可靠性,选取CE318(全自动太阳光度计)实测数据对2012年09月18日、2012年09月19日、2012年09月20日、2012年09月28日、2012年10月02日使用HJ-1A/B卫星CCD传感器反演的武汉市气溶胶光学厚度进行验证,反演结果与实测数据对比见表2,通过平均偏差(BIAS )和相关系数(R)两个统计量检验反演效果,见公式(3)和公式(4)。


表2 HJ-1A/B卫星反演AOD与CE318实测AOD对比



式中,HJ 为HJ-1A/B卫星CCD传感器反演的气溶胶光学厚度,CE 为CE318观测的气溶胶光学厚度,N为匹配的样本对数。


如图6所示,平台反演气溶胶光学厚度与CE318实测数据的平均误差为0.051 1,相关系数在0.99以上,误差较小且与实测数据具有很好的相关性,证明了反演结果的准确度和可靠性。


图6 HJ-1A/B卫星反演AOD与CE318实测AOD散点图


三、结语


本文结合当前较为实用和流行的开源框架技术和插件技术,对C语言系列的开源GIS/RS平台进行了比较和分析,确定以MapWindow为基础,在其组件库DotSpatial上进行开发。通过对DotSpatial的功能模块进行抽取和修改,缩减和增加相应功能的插件,实现了数据管理、GIS信息查询、遥感数据预处理、遥感定量反演4个功能模块,并以气溶胶光学厚度反演模块为例进行了验证,结果表明反演具有较高的精度。生态环境要素遥感定量反演平台的构建避免了商业软件平台昂贵的价格和难以扩展的开发环境,实现了遥感数据的气溶胶光学厚度、悬浮泥沙浓度、叶绿素浓度反演和显示,能够及时、准确地获取大范围环境影响因子,辅助决策部门进行生态环境管理。后续研究可以增加空间分析、数据库及网络发布等模块,以增强系统功能、实现业务化信息处理和发布。

责任编辑:林冬娜、邓小云

文章来源:地理信息世界GeomaticsWorld


点击查看联盟会员单位详


: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存