基于Web的遥感影像在线分类实现技术研究
杨会元1,2,冯钟葵1,李山山1
(1.中国科学院 遥感与数字地球研究所,北京 100094;2.中国科学院大学,北京 100049)
摘要:随着遥感数据的社会化服务需求日益增长,如何以Web的方式向用户提供专业遥感影像处理及应用的产品服务成为一个研究的热点问题。本文基于Web RS概念,以及先进的网络技术与并行处理技术,提出了基于Web的遥感影像在线分类实现技术的解决方案。本研究是探索Web RS概念和遥感影像在线服务价值的一次有益尝试,可对于开拓我国遥感数据共享服务新型模式及提高社会化服务水平提供借鉴和支撑。
关键词:在线服务;在线分类;Web RS
doi:10.3969/j.issn.1000-3177.2015.01.017
中图分类号:TP751.1文献标识码:A
Implementation of Online Remote Sensing Image Classification
YANG Hui-yuan1,2,FENG Zhong-kui1,LI Shan-shan1
(1.InstituteofRemoteSensingandDigitalEarth,ChineseAcademyofSciences,Beijing100094;
2.UniversityofChineseAcademyofSciences,Beijing100049)
Abstract:With the growing demand for social service of remote sensing image,how to provide users professional products and services of remote sensing image processing and applications through the internet has become a hot issue.Based on Web RS,advanced network technology and parallel processing technology,this paper presents a technical solution for the implementation of web-based remote sensing image classification,which is not only an useful attempt to explore the concept of Web RS and the value of online services of remote sensing image,but also can help open up new model for remote sensing data sharing and improve the level of social services of remote sensing image.
Key words:online service;online classification;Web RS
1引言
大数据时代的来临、云概念的普及以及云环境下的存储和处理方式走向实用化,对遥感领域产生了深刻的影响,其中一个重要体现就是遥感的社会化服务,逐渐从传统的提供简单的数据拷贝服务向高级的定制遥感产品的方向发展[1]。因此,越来越多的研究者开始关注如何以Web的方式向用户提供专业的遥感影像处理与分析服务[2],使用户只需要浏览器就能对数据进行专业的处理与应用分析,从而免除了遥感应用处理对于用户的专业化需求。江西师范大学开发了鄱阳湖水情在线分析系统[3];NASA使用MODIS数据和在线影像分析技术实现全球洪水监测[4];张广耀等人设计了遥感影像地图在线服务系统[5];唐新明等人提出一种在线的遥感影像正射纠正方法[6]。在2013年ESRI提出Web RS[2]的概念,指出随着Web Service技术的成熟及在GIS中的成功应用,完全可以将专业的遥感影像处理与分析功能、业务分析模型和影像数据服务部署在服务器端,并以Web Service的方式发布,向用户提供除影像数据之外更多的专业化服务资源。可以看出,通过遥感技术与Web技术的结合,可以有效降低遥感应用的门槛,能够更好为社会大众服务。
遥感图像分类是将图像中每个像元根据其在不同波段的光谱亮度、空间结构特征或者其他信息,按照某种规则或算法划分为不同的类别[7]。随着遥感图像的时间分辨率、空间分辨率的不断提高,以及波段数的增加,遥感影像正在被应用到越来越多的领域。虽然不同的应用场合对遥感图像的处理有不同的要求,图像分类作为遥感数据应用处理的基础性需求,在很多的应用场景中发挥重要作用,比如矿山环境的监测、城市土壤覆盖信息的提取、道路与水体信息的提取、地震灾害分析等[8-12],图像分类是这些应用得以实现的重要的处理与分析环节。
常规的遥感图像分类过程,是由专业的遥感分析人员在单机上实现的,可以简单归纳为这样一个流程:用户将所需的遥感影像下载到本地,采用专业的遥感分析软件,如ENVI、PCI、ERDAS等,进行分类操作。这一过程的实现,需要用户自身具备进行遥感图像分类所需的计算资源、软件资源、专业软件的熟练操作能力以及进行遥感分析处理所需的专业知识背景,这使得遥感图像的分类应用受到限制,提高了遥感图像应用的门槛,不利于充分发挥遥感图像的使用价值,不符合遥感的社会化服务趋势。这也是遥感数据长期以来无法得到广泛应用的重要原因之一。
计算机技术的发展使得基于Web的遥感图像包括在线分类在内的各种应用成为可能,使得用户能够充分发挥服务器端的高性能硬件资源和海量、异源遥感影像资源的优势,使用户能够实时、批量、高效地获取遥感图像分类结果,有利于降低遥感影像的使用门槛,有利于资源整合和充分发挥遥感影像的使用价值,真正实现开放式的遥感信息发现和共享。
目前,基于Web的遥感图像在线分类尚处于初期阶段,相关的研究也较少。本文借鉴了先进的Web RS概念,针对遥感图像在线分类提出了解决方案,并且设计与实现了一个原型系统,从而证明该方案的可行性和有效性,对探索Web RS概念和遥感影像在线服务都是一次有益尝试。
2关键技术与解决方案
2.1技术流程
基于Web的遥感影像在线分类流程图如图1所示。首先是遥感影像的在线预览,用户向服务器请求预览所感兴趣的遥感影像;服务器端接收用户的请求,并创建用户感兴趣区域的Image Server服务,以供用户在线浏览;其次是用户进行在线分类的各种参数设置,包括分类方法和分类参数。用户设置完成相应的分类参数之后,就可以向服务器端发送分类请求,服务器端接收并解析用户的分类请求,处理完成后把结果返回给用户;最后是分类结果的精度评估,用户在得到分类结果后,可以请求对分类结果进行精度评估。
图1 遥感图像在线分类流程图
2.2关键技术点及其解决方案
针对遥感图像在线分类的流程,本文分析了其中的关键技术点并给出了解决方案。
2.2.1遥感影像的web预览
遥感影像在线预览所看到的影像不同于一般情况下所看到的快视图。快视图是对遥感影像采样后所生成的固定大小的图片(如常用的512×512或1024×1024),而遥感图像的在线分类过程中,需要使用并显示不进行采样的原始数据,此外,还包含缩放、漫游、波段组合以及图像透明度调整等功能。
针对遥感图像在线分类过程中对预览影像的特殊需求,一般是通过建立Image Server以服务的方式来实现遥感影像的Web预览的。创建影像服务的方式有多种,最常用的就是在服务器端为每幅遥感影像创建一个Image Server(静态创建),每个Image Server对应着一个特定的访问地址,这种创建方法操作简便,能满足大多数应用场景。但在线分类需要满足用户对影像数据库中的任一影像进行Web预览的要求,同时针对每一个Image Server,应该独立于影像数据库,也就是对影像数据库的任何变更操作不能影响到Image Server,进而影响到在线分类的正常运行。使用静态创建,用户只能看到已创建Image Server的影像,对于没有创建服务的影像,用户则不能查看;其次,创建大量的Image Server将消耗大量的服务端资源,同时对于数据服务器的每次变更需要修改对应的影像服务,这会对遥感影像在线分类方法的应用带来很大的限制,不符合日益扩增的遥感影像数据库的现实。因此,需要建立一种动态创建遥感影像服务的方法,以满足在线分类中用户对任一影像进行Web预览的要求,同时,也要满足所创建的影像服务对影像数据库保持独立性的要求。
遥感影像的动态创建就是指服务器端不主动为任何一幅遥感影像建立影像服务,而只在接收到用户请求后才会为指定的某一或某些遥感影像建立影像服务,以供用户的Web预览,并在用户预览之后关闭相应的服务。这对影像的在线分类将产生两个非常重要的作用:首先,服务器端不用再建立大量的遥感影像服务,同时所建立的有限的影像服务也只有有限的生命周期,这将大大节约服务器端的资源;其次,使得遥感影像数据库保持独立,对遥感影像数据库的扩充,修改等变化对影像服务没有影响,有利于用户充分利用服务器端的影像资源。
本文采用ArcGIS中的镶嵌数据集(Mosaic Dataset)来动态创建遥感影像服务。镶嵌数据集是ArcGIS 10.0新增的影像处理功能,主要用于管理和发布海量多分辨率、多传感器影像,对栅格数据提供了动态镶嵌和实时处理的功能,同时还可用作提供影像服务的源。
图2 遥感影像服务的动态创建
影像服务的动态创建过程如图 2所示,主要通过使用两个影像数据池(update和datapool)来完成动态创建和更新操作。其中,update池是用来存放将要创建影像服务的遥感影像,在创建完成之后,需要对该池进行清空;datapool池是用来存放与影像服务相关的数据。一般过程是:首先,扫描update文件夹下的遥感影像,并对其进行波段组合生成假彩色合成图像;其次,读取本地配置文件,获得镶嵌数据集信息,从镶嵌数据集中删除过期的数据(datapool下)及服务,在将合成后的图像移动到datapool文件夹中之后,清除镶嵌数据集中对应地理数据库中所有栅格图像数据,同时将合成图像添加到对应的镶嵌数据集地理数据库中,并建立影像金字塔;最后,定义无值区,使图像黑色无值区域不显示,删除update文件夹中所有产品数据文件,完成影像服务的动态创建。
2.2.2ROI选择
ROI区域的选择是监督分类的关键,因此解决ROI区域的选择问题,也即遥感影像的Web交互问题,是实现遥感图像在线分类中的一个重要步骤。
在基于Web的遥感影像在线分类中,要求用户仅通过浏览器就能够完成ROI区域的选择,与传统分类过程中的ROI选择相比,这是一个主要的不同点和难点。此外,还要求用户仅通过浏览器就能够对大量的样本数据进行存储和管理,包括修改、增加和删除等操作。假设有10类,每类有20个样本,那么就需要在浏览器端显示和管理总计200个样本,如何存储和管理这些本与在单机版的遥感分析软件中ROI区域的存储和管理模式也存在很大的不同。由于Web环境和传统单机版软件环境的差异,如何把上述的操作放到Web浏览器上来实现,是研究遥感影像在线分类实现方法中必须要考虑的另一问题。
在实际应用中,基于Web的ROI区域选择需要考虑更多的问题。首先是开发模式的不同,基于Web的ROI区域的选择采用的是B/S的开发模式,这就需要充分考虑浏览器与服务器间的网络通信问题,比如遥感影像的载入速度、与后台服务器的交互、页面的动态刷新以及异步交互等;其次,用户的浏览器可能是运行在各种平台上的,因此在开发过程中需要考虑跨平台的问题,可采用广泛支持的库函数等。
本文采用jQuery技术来实现ROI区域的选择。jQuery是一套跨浏览器的JavaScript库,能够简化HTML与JavaScript之间的操作,用来创建功能强大的动态网页及网络应用程序。此外,采用DataTables插件实现对用户选择区域的动态管理,例如,对用户选中的当前行进行点击定位、修改类名、删除选区以及添加新区域等操作。DataTables是一种基于jQuery的动态数据表格,可用来增强对HTML中Table的交互和控制,在本文系统中用来作为存放用户ROI区域数据的容器。
本文系统的这一模块包括以下功能:训练样区的选择、训练样区在表单中的动态添加、表单行的点击定位、训练样区的添加与删除和类别名的修改。该模块具有下面几点优势:①不同数据源的应用更灵活,如地形图、GIS线画图等,可根据地理信息进行叠加,有助于帮助用户更好地完成训练样本的选择;②选择过程的灵活性;③显示过程的灵活性,可以随时调整显示的波段组合。该模块的工作流程如图 3所示。
图3 ROI区域选择运行流程图
2.2.3分类的并行处理与负载均衡
在传统的分类过程中可不必考虑算法并行化与负载均衡问题。然而,基于Web的遥感图像在线分类所面对的是大量数据处理和多用户并发访问。因此,分类的并行化处理与负载均衡是必须要考虑问题。
遥感影像具有数据量大、时间分辨率和空间分辨率越来越高的特点,这对分类处理系统的计算速度提出了更高的要求。传统的单处理器串行算法很难满足计算速度的要求,而采用多处理器并行算法的并行处理,是一种在不降低运算精度的情况下的更为有效的方法。同时,当面对大量用户的并发访问时,如何有效且均衡地分配任务也是需要考虑的问题,从而既保证了一些节点不能过忙,也保证了一些节点不能过闲。
本文采用C语言并基于MPI(Message Passing Interface)编写。MPI是一种消息传递编程模型,并成为这种编程模型的代表和事实上的标准[13],且可以免费获取。
对于遥感图像处理中的数据划分方法和分类算法的并行化等问题,已有大量的文献可供参考[14-17]。在此基础上,本文采用MPI技术实现了几种分类算法的并行化,如:K-means和BP神经网络等。
文献中对负载均衡问题也有深入的研究和分析,并提出了改进方法[18-20]。本文工作中,由于图像被分成大小相等的块,每块处理所需的时间可以认为近似相等。因此,本文采用最常用的静态负载均衡方法来处理负载均衡问题,在进行任务分配时,主进程可以把任务平均分到每个计算节点上。
下面以K-means为例,展示基于MPI的分类并行化与负载均衡。本文使用了主从模式的设计思路,假设有N个从进程,主进程把待分类的影像划分为M×N个大小相等且互不相交的影像块(不足部分在边界补零),并生成初始化分类中心;从进程读取相应影像块,并根据初始分类中心进行分类处理;主进程接收分类结果,并更新聚类中心,同时判断聚类中心的变化是否小于阈值,如果大于阈值,则回到上一步进行迭代;如果小于阈值,则迭代完成,发送分类结果。分类并行化和负载均衡的工作流程如图 4所示。
图4 k-means算法并行与负载均衡
2.3系统架构
针对以上的技术流程和关键技术的解决方案,本文采用了如图 5所示的系统框架,它基于服务器/客户端体系结构进行设计,包含了3个层面:
①应用层是用户与服务器交互的接口,用户只需要通过浏览器就可以使用系统所提供的功能,如遥感影像的缩放、叠加显示、波段组合、透明度设置等。
②服务层用来接收用户的数据处理请求,验证并处理用户请求,并把结果返回给用户,如接收用户的分类参数设置和训练样本,进行遥感影像的分类,并把分类产品返回给用户,具有并发访问和负载均衡的能力。
③数据层为用户提供多源海量遥感数据产品,包括了系统级、精校正级、正射级以及融合产品等遥感数据产品。
图5 系统架构图
3实验与分析
本文设计并实现了一个简单的原型系统,该系统的用户交互界面如图 6所示。其中①为遥感影像显示区域,并能显示用户的训练样区;②用来调整遥感影像的透明度;③、④用来设置类名并显示、修改训练样本区域。
图6 用户交互界面
原型系统的服务器端采用4台HP ProLiant ML350 G6构成CLUSTER机群处理环境,安装RedHat Enterprise 6操作系统和MPICH-3.1平行计算平台,并选用Apache Tomcat 7.0作为Web服务器。实验数据选用了2013年9月1日北京地区Landsat-8遥感影像,影像大小为7651×7431像素,包含11个波段,数据大小为1.48G。
首先,测试基于Web的遥感影像在线分类的运行效率。实验中,采用4个计算节点,10个用户同时发送K-means分类请求,所用的时间从97s到153s不等。同样的分类参数,在一台安装Windows 7操作系统、处理器为2.4GHz4、内存4GB的个人机上,使用遥感分析软件ENVI进行分类处理,所需的时间在180s以上。可以看出,由于利用了服务器的高端硬件资源,以及采用了分类的并行处理和负载均衡,基于Web的遥感图像在线分类可以为用户提供更好的专业资源和计算资源。同时,考虑到传统分类过程在数据传输、加载等方面的开销,基于Web的遥感图像在线分类方式要远远优于传统的分类方式。
其次,对分类结果进行验证。实验中采用监督分类方法把遥感影像分为城市、植被、裸土和水体4类,每个类别所对应的训练样区数量如表 1所示。完成训练样区的选择之后,把训练样本发送到服务器端。服务器端在接收训练样本和分类参数之后,对遥感影像进行分类处理,得到的结果如图 7所示。同时,在同样的训练样区和输入参数条件下,使用 ENVI软件进行监督分类,两种方法得到的结果是一致的。由此可以证明,本文提出的遥感影像在线分类的工作方法是可行的。
表1 监督分类中ROI区域的样本数
图7 分类结果
4结束语
本文分析了基于Web的遥感图像在线分类过程中的关键技术,并给出了解决方案。根据以上解决方案,本文设计与实现了一个原型系统,并使用Landsat-8影像数据进行验证。结果表明,该解决方案是可行且有效的,这是对探索Web RS概念和遥感影像在线服务价值的一次有益尝试,可对于开拓我国遥感数据共享服务新型模式及提高社会化服务水平提供借鉴和支撑。
参考文献:
[1]罗名海.地理信息在线服务方式的发展[J].地理空间信息,2009,7(4):7-9.
[2]ESRI.ENVI for ArcGIS Server (ENVIES)影像在线分析技术[J].遥感技术与应用,2011,(6):3.
[3]吴玉燕,高丹,黄石明.鄱阳湖水生态监测和预警信息在线分析和发布系统[EB/OL].http://blog.sina.com.cn/s/blog_764b1e9d0100vin7.html,2011-11-06.
[4]DANIELA S,BRAKENRIDGE R G,POLICELLI F S,et al.Near real-time global satellite monitoring of flooding events[EB/OL].http://oas.gsfc.nasa.gov/floodmap/multimedia/NASA_OAS_NRTFloodMonitoring_AGUChapman17Feb2012_presentation.pdf.
[5]张广耀,汪小钦,邬群勇.遥感影像地图在线服务系统设计与实现[J].测绘科学,2012,37(1):74-76.
[6]唐新明,王华斌,李参海,等.一种遥感影像在线正射纠正方法和系统:中国,200910142524[P].2009-06-29.
[7]赵英时.遥感应用分析原理与方法[M].北京:科学出版社,2003.
[8]尹展,张建国,李宏斌.面向对象分类技术在高分辨率遥感影像信息提取中的应用研究[J].测绘与空间地理信息,2013,36(8):61-63.
[9]苏伟,李京,陈云浩,等.基于多尺度影像分割的面向对象城市土地覆被分类研究—以马来西亚吉隆坡市城市中心区为例[J].遥感学报,2007,11(4):521-530.
[10]胡进刚,张晓东,沈欣,等.一种面向对象的高分辨率影像道路提取方法[J].遥感技术与应用,2006,21(3):184-188.
[11]曹凯,江南,吕恒,等.面向对象的spot-5影像城区水体信息提取研究[J].国土资源遥感,2007,(2):27-30.
[12]王岩,王晓青,窦爱霞.面向对象遥感分类方法在汶川地震震害提取中的应用[J].地震,2009,29(3):54-60.
[13]任亚芬,李海涛,顾海燕.遥感影像高性能分类系统设计与实现[J].遥感信息,2011,26(5):27-30,37.
[14]蒋艳凰.遥感图像高精度并行监督分类技术研究[D].长沙:国防科学技术大学,2004.
[15]蒋利顺,刘定生.遥感图像k-means并行算法研究[J].遥感信息,2008,23(1):27-30.
[16]黄国满,郭建峰.分布式并行遥感图像处理中的数据划分[J].遥感信息,2001,16 (2):9-12.
[17]俞能海,杨扬.用于遥感图像分类的简化并行神经网络[J].电路与系统学报,2002,7(4):62-66.
[18]王霜,修保新,肖卫东.Web服务器集群的负载均衡算法研究[J].计算机工程与应用,2004,40(25):78-80.
[18]田绍亮,左明,吴绍伟.一种改进的基于动态反馈的负载均衡算法[J].计算机工程与设计,2007,28(3):572-573.
[20]郭成城,晏蒲柳.一种异构web服务器集群动态负载均衡算法[J].计算机学报,2005,28(2):179-184.