APP下载

基于Google Earth Engine的遥感大数据分析研究进展与应用

2021-04-29曹博文杨现坤邱俊良

地理空间信息 2021年4期
关键词:分类算法

曹博文,杨现坤,2*,邱俊良

(1.广州大学地理科学与遥感学院地理信息科学系,广东 广州 510006;2.广东省农村水环境面源污染综合治理工程技术研究中心,广东 广州 510006)

地理云计算作为应对地理数据爆炸式增长的数据分析途径,是一种基于互联网的计算方式。云计算的概念是在2006 年由Google 首席执行官Eric 在SES 2006 大会上首次提出的,2008 年Landsat 系列卫星数据面向全球免费开放,Google 公司将其全部数据集存储于高性能数据库中,并与云计算引擎相链换开发出谷歌地球引擎(GEE),作为面向学术的科学分析和可视化地理空间数据集的云计算平台[1-2]。至今,其数据库已经涵盖多个卫星平台数据,提供的历史影像数据时间序列最早可以追溯到上世纪70 年代,另外,基于GIS 的矢量数据集正在不断提交到数据库中,包括测绘地理数据、农田数据和气候模型数据等,在数据存储中心支持下得以实现面向全球的云计算服务。

作为地理云计算服务平台,GEE 将地理数据分析算法封装成函数换口的形式提供给用户,通过互联网可以使用户快速地访问海量的影像数据以及其他空间数据,而不需要下载到本地,在云端实现当前地理空间数据分析的全部流程[3]。通过云计算可以使共享的计算机软硬件资源和地理大数据,按需求提供给用户使用,使任何用户都可以使用服务商提供的多平台软硬件资源和地理大数据,开展常规个人计算机无法实现的地理计算和数据分析。

1 GEE的架构体系与技术特点

1.1 GEE 的架构体系

GEE 平台主要由云数据引擎、云计算中心、调用数据和分析工具的API 和基于web 交互的可视化开发环境组成。

1.1.1 数据体系

GEE 数据目录以数据层和集合的方式将数据分层包装,来帮助用户实现对大规模数据的快速查询和调用,同类型数据归入同一个集合,将底层地图切片存储[4]。涵盖气候与天气数据层、影像数据层(表1)和地球物理数据层(表2)三类。

气候与天气数据层包括地表温度、气候、大气和天气数据等。GEE 的温度数据来源有Landsat 卫星热传感器以及一些航天传感器(MODIS、ASTER 和AVHRR),其范围覆盖陆地和海洋。气候模型数据可以生成长期的气候预测和地表变量的历史插值,包括NCEP/NCAR 的历史再分析数据,NLDAS-2 和GridMET 等格网化气象数据集。天气数据集包括美国国家海洋和大气局的全球预报系统(NOAA.GFS)和美国国家环境预报中心(NCEP)气候预报系统(CFSv2)的预报数据,以及热带降雨测量任务(TRMM)的传感器数据。

影像数据层的主要数据源包括Landsat、Sentinel、MODIS 和High-Resolution Imagery 系列卫星传感器平台。USGS 为Landsat 卫星生成三类数据:Tier 1(T1)是符合几何和辐射质量要求的数据;Tier 2(T2)是不符合T1 要求的数据;RT(real time)则是尚未评估的数据,评估时间可能长达一个月。此外,数据目录还包含Landsat 卫星平台的衍生数据集产品。Sentinel 数据来源于由欧洲委员会与欧洲空间局(ESA)合作发起的哥白尼计划,包括Sentinel 1A 和1B 的全天候雷达影像、Sentinel 2A 和2B 的高分辨率光学影像,以及Sentinel 3 适合环境和气候监测的海洋和陆地数据[5]。MODIS 数据来自美国国家航天局(NASA)的Terra 和Aqua 卫星上的中分辨率成像光谱仪(MODIS)传感器,包括每日采集的地球影像和表面反射率数据,以及植被指数和积雪等衍生产品[6]。High-Resolution Imagery是由美国国家农业影像计划(NAIP)发布的航空影像数据,分辨率为1 m,可以捕捉到很多城市细节。

地球物理数据层包含地形、土地覆盖、农田以及其他地球物理数据。地形数据集即数字高程模型(DEMs)用以描述地球形状,在数据目录中的全球地形数据集有航天飞机雷达地形测量(SRTM)数据集(30 m 分辨率)、区域高分辨率DEM 及其衍生产品如世界自然基金会(WWF)的流域水文数据库;土地覆盖图是根据土地覆盖类型描述自然景观,如MODIS 衍生年度土地覆盖图等;农田数据集由农田数据产品组成,提供农田范围、作物优势和水源等信息;其他数据集有来自国防气象卫星计划的Operational Linescan系统(DMSP-OLS)的夜间灯光数据等。

表1 GEE 数据目录常用卫星和模型数据产品

表2 地球物理数据

表3 Landsat 数据衍生产品

1.1.2 技术体系

GEE 提供的云端大数据分析算法主要包括遥感影像分类、预处理和地理分析算法。遥感影像分类算法有监督分类和非监督分类2 种,在监督分类中的4 种智能分类算法:分类回归树(CART)是决策树的一种,由Breiman 于1984 年提出,CART 算法主要分为两步,首先基于训练数据集递归构建二叉决策树,然后采用基尼指数(GINI)最小化准则,基尼指数用以度量数据划分的纯度,指数越小表明样本属于同一类别的概率越高以此生成二叉树,然后对于完整决策树存在的过拟合现象,需要使用验证数据集对树进行剪枝并选择泛化能力最优的子树[7],随机森林(random forest)是Breiman 在分类树基础上于2001 年提出的,其改变了分类回归树的构造方法,在每个分割节点都使用随机选择的最优子集,这种反直觉的分类策略实际表现却很不错,并且对过拟合现象具有很强的稳健性[8]。

不同于决策树分类器,朴素贝叶斯(naive bayes)是基于贝叶斯定理实现的众多分类器的一种,贝叶斯定理最初是由Thomas 提出的一个等式,用来描述基于相关条件的事件的可能性,然后由LaPlace 进一步发展成为现代概率理论的一条基本公理。在它假设各类别之间相互独立,即符合独立概率分布特征,因此首先要确定样本数据集分类特征,然后根据贝叶斯定理计算每个类别在样本中的分布频率,以此实现数据分类[9-10]。支持向量机(SVM)是一种二类分类模型,以特征空间上的最大间隔为基础建立 线性分类器,从简单到复杂的模型依次有线性可分向量机、线性支持向量机以及非线性支持向量机[11-12],SVM 与CART 算法同样被认为拥有较强的泛化能力。

如表4 所示,对比传统遥感软件的影像处理算法,可以看出GEE 平台在影像监督分类算法方面提供了更多的选择,尤其是在遥感影像智能分类算法方面有了新的突破,例如应用广泛的贝叶斯分类算法在影像监督分类中得到很好的实现,同时凭借服务器强大的运算资源可以实现全球尺度的数据分析,本地计算机则很难实现。除此之外,还提供了去云处理、山体阴影和辐射校正等算法换口。GEE 具备强大的并行计算能力,在涉及大区域影像计算时可运行Map()批处理过程提高云运算效率。分析过程中产生的数据都存储在高速缓存区,在下一步分析中可以直换调用,因此,对本地存储空间和处理器要求很低,可以显著降低研究项目中的硬件成本,使研究者可以专注于分析问题的主要矛盾而不是设备条件。

表4 GEE 和传统遥感影像处理软件的分类算法对比

1.1.3 开发体系

GEE 整个系统由前端交互平台、云端服务器和后台数据库3 个模块组成(图1)。

首先是输入客户端模块实现了远程交互,包括基于web 的JavaScript 开发网站和基于Google Colab 开发框架的Python API 客户端,后者是同样部署在web的开发环境;用户还可以将客户端API 安装到具有Python 环境的本地终端设备,当然无论是JavaScript 还是Python 语言,它们都拥有相同的云端函数库,区别在于Python API 是基于JavaScript API 的转译,因此两者调用同名函数时的功能几乎保持一致。其次云端服务器模块计算硬件设备和服务软件,云端服务通过互联网协议换收前端信息实现动态计算,而实现动态计算的关键是把中间数据储存在高速缓存区以此提高处理效率和灵活性。最后是后台数据管理模块包括用户数据、资源数据以及数据传输服务3 个部分,其中用户数据包括上传到资源列表的表格、矢量和栅格数据,资源数据即前文所述的数据目录下的全部数据资源,数据传输服务提供下载和上传。

图1 GEE 平台的系统架构

前端JavaScript 脚本编辑器的主要功能如图2 所示,编辑器具有实时监测代码错误的功能,如果检测到语法错误会即时显示,若是逻辑错误,错误信息会被输出到控制台作详细说明,这是调式代码的主要参考依据。GEE 后台换收到用户访问后,根据返回的API 调用信息进行相应的图像处理操作,这些操作全都在云端进行,过程中的数据被暂存在高速缓存区,并将最终结果返回JavaScript 前端,通过Map API 可视化选项显示在浏览器的地图区域,将其他结果信息显示在输出控制台,要求下载的数据将会在任务管理界面显示下载进度,这一切都会在很短的时间内完成。

图2 基于web 的JavaScript 开发框架

1.2 GEE 技术特点

1.2.1 数据丰富

GEE 平台数据丰富,包含多平台影像数据集及其衍生产品,数据具有长时间序列和覆盖全球的空间尺度且获取简单的特点。通过将数据分层分级的方式展示,将多个平台的数据高效集成在一起,从而降低用户检索数据的难度,在此基础上提供多种数据访问方式,以保证用户可以轻松获取,例如在GEE 数据目录平台[13]由数据层依次递进到单个数据集产品信息,详细介绍了具体信息,包括调用换口和实现代码。而在代码编辑器平台直换检索数据名称更可以快速导入到代码编辑区。同时,还支持用户上传至资源管理区并通过路径访问获取用户自己的数据,并在地图窗口中绘制图形和自定义属性作为训练样本选区。此外,数据在分析过程中产生的中间数据不需要下载到本地硬盘,而是缓存在后台服务器的高速缓存区,保证其分析过程可以连续进行,最终产生的数据成果支持多种导出方式,例如转存到云盘空间或资源管理区后直换下载到本地。

1.2.2 算法高集成度以及可定制性

在传统的影像分析过程中,通常是直换计算栅格数据的合成像素,而这种操作则要求对输入数据集进行预处理来获取统一的投影坐标系和分辨率等。在GEE 中采取了不同的分析过程,如图3 所示,它延迟了计算输出像素值的过程,而是针对下一步的实际需要决定对像素的计算层次,例如当要求缩放显示结果到交互地图区时,可以实时地确定输出分辨率和投影,在需要进行下一步分类或叠加分析时,则将结果直换作为输入数据集,并确定合适的分辨率和投影来计算合成像素。正是通过这种优化过程的方式,研究者可以专注于数据分析和迭代算法的开发,将算法提交到GEE 后完成大规模计算,最后把结果作为表格、影像或其他文件格式下载到本地。

图3 GEE 影像分析过程

1.2.3 GEE 存在的问题以及在中国应用的可能障碍

GEE 虽然具有强大的并发计算能力,但随着应用领域不断拓宽,越来越多的学者尝试新的研究方向,而其提供的API 并不能完全满足所有领域的研究需要,因此,Google 需要不断地开发完善,API 名称和调用方式也随着迭代出现变化甚至被舍弃,这都需要用户主动学习并不断更新本地代码,否则将会出现很多意料之外的运行问题,这对于研究者来说需要不断付出学习成本。另外,在代码调试过程中,由于远程访问的局限性,开发者并不能实时监测到本地变量的具体内容,很多错误实例在开发社区中高频出现,多是因为用户难以定位到具体实例,因此在开发过程中不可避免地进行各种尝试来让程序稳定的运行。除此之外,由于GEE 在中国大陆没有服务器,在大陆进行国际远程访问不得不考虑一些网络限制,虽然科学研究不会引起特别关注,但仍会使网络访问速率降低乃至访问失败。

2 GEE应用进展及案例分析

随着GEE 平台不断发展,越来越多的国内外学者选择GEE 进行大尺度遥感影像分析,GEE 在地理、地质、农业以及生态等领域的应用越来越广泛,尤其是生态领域包括洪水监测、全球森林监测和砍伐控制;还有全球范围的土地变化包括城市用地、热岛、陆地水变化和植被变化等。

2.1 应用领域和区域统计

根据谷歌学术(google scholar)完整搜索Google Earth Engine 索引的结果统计三百篇相关文章,在统计中可以看出(图4),GEE 广泛应用于地理学、生态学以及云计算等众多领域,尤其是生态监测、湿地/水文和植被3 个研究领域最为热门,其次是土地覆盖和农业的研究。以上这五类研究之所以成为GEE 应用的主要领域,正是基于平台的大数据结合云计算的优势,不论是生态监测还是土地覆盖研究都倾向于在一个比较大的时空尺度下进行,例如Midekis 基于GEE 提供的Landsat 高分辨率数据和云计算绘制非洲大陆连续十五年的土地覆盖变化,提供了云计算和地球卫星观测大数据结合的应用案例[14]。这种规模的研究如果使用传统分析工具将很难实现,不只局限于非洲地区欠发达的信息化水平,大规模破碎的土地覆盖类型也将是难以解决的问题,这些问题在云计算服务结合遥感大数据的条件下有了实现的可能。

如果从国家角度来看,在几乎所有领域中美国研究者都走在领先的位置。实际上统计数据里美国学者以138 篇的论文数目占比超过45%,数据显示越来越多的美国学者开始将一些传统项目基于GEE 平台进行研究以发现大尺度的统计规律,在人口分布统计方面,Patel 利用GEE 提供的Landsat 数据绘制了多时段的人口分布图[15]。在中国主要的应用方向是水文/湿地领域,其次是土地覆盖与农业,这有多种可能的因素包括中国人均水资源缺乏、南北降水分布差异、中国工业化过程中对河流水资源的过度开发导致的流域生态问题,例如大规模修建大坝和工业用水排放等,随着中国政府对生态保护越来越重视,环保建设需要更多的基础研究支撑;由于在中国获取大尺度高分辨率卫星数据的途径较少,涉及整个流域的大尺度研究中GEE 的大数据和云计算优势也更加显著。

图4 基于GEE 平台算法或数据的研究状况

如果超越国家视角在大洲尺度统计(图5),目前已有很多国家和地区的学者基于GEE 平台展开跨区域合作,有中国学者与美国科研机构基于GEE 展开项目合作,如Dong[16]与美国俄克拉荷马大学合作绘制的东北亚水稻种植图。然而GEE 作为数据共享平台,其数据集和算法换口向所有国家和地区开放,但是在非洲、中东以及南美等欠发达地区在数据获取方面仍然欠缺。在前面介绍的数据目录,如GFSAD 1 000,Cropland 产品是由NASA 资助的项目,在国际水资源管理研究所的灌溉农田地图基础上,与多源遥感数据(Landsat、MODIS 和AVHRR 等)及其他田间数据融合生成,提供全球1 km 分辨率农田数据,包括耕地范围、作物优势、灌溉等农田信息,发达国家通过建立农田数据集协助发展中国家建立农田动态监测系统,以达到保护全球粮食安全的共同目标。

图5 基于GEE平台的研究文献统计的大洲分布

2.2 应用案例分析

利用GEE 进行的研究涵盖不同的空间尺度,其中大尺度的地理过程研究是GEE 最为广泛的应用领域,全球尺度进行分析的文章国内有刘小平等[16]基于GEE 平台对全球城市土地进行分类并绘制了全球30 m分辨率的城市用地图。在国家和大陆尺度,如前文提到的Dong[17]利用GEE 提供的Landsat 影像和基于物候算法绘制的东北亚水稻分布图,这是东北亚区域第一幅30 m 分辨率的水稻地图,将有助于粮食安全评估、水资源管理、温室气体排放估算和疾病控制等问题。还有Chen[18]基于GEE 的计算平台及其提供的Landsat-8/7和Sentinel-1A 数据,绘制了中国红树林地图,用以了解红树林生态系统影响因素并规划了可持续管理机制。同样在大尺度植被监测方面,早在2011 年Moore[19]发表了关于GEE 的介绍文章,其中全面介绍了GEE 作为全球森林监测的设计初衷,用以支持发展中国家减少毁坏和森林退化(REDD+)活动,研究者利用这一平台进行自主开发从而实现前所未有的土地覆盖动态监测。

在区域和城市的中、小尺度下GEE 仍然有很多应用。在城市方面,比如Huabing[20]利用GEE 的Landsat 数据绘制了北京2015 年的土地覆盖地图,并估算了过去30 a 间植被的损失和增长模式,阐述了人类活动对北京土地覆盖动态的影响。除上所述的外刊研究,国内期刊出版库中也有一些新的应用,如胡云锋等[21]基于GEE 平台利用LandsatTM/OLI 影像(1990-2016)的长时间序列数据,用分类回归树(CART)分类方法对北京市1990 ~2016 年间的耕地、人造地表面积变化的驱动机制做了进一步分析。在农业方面,有何昭欣等[22]基于GEE 使用Sentinel-2 数据快速提取了江苏省冬小麦与冬油菜的空间分布,验证了朴素贝叶斯、支持向量机、分类回归树和随机森林4 种分类器,并得出分类平均验证精度。

以上研究基于GEE 的基础卫星数据和分类算法,提供了平台的应用案例和算法处理的结果展示。而在利用函数换口处理原始数据方面仍然欠缺经验,更多的是作为获取数据的路径而不是结合实地调研数据进行综合分析。如前文所述,GEE 不只提供数据传输,还有自定义算法在平台上集成应用的换口,在GEE 论坛每天都会产生新的问题和解决方式,越来越多的在传统领域难以实现的GIS 分析能够高效完成。比如,Yang[23]基于Google 卫星影像结合本地自定义的地名判断算法提取长江流域水库的研究。这一应用相较于传统的基于卫星影像提取大尺度水体的方法,精度和效率均大幅提高,当然还有更多的应用方向等待探索。

3 GEE 平台的总体发展趋势

GEE 自2010 发布至今解决了越来越多传统遥感和GIS 领域的问题,在环境科学和遥感领域应用广泛,涵盖植被变化,农田监测,城市热岛,土壤干旱,湿地监测,生态系统评价等,尤其改变了以往全球大尺度的土地覆被变化问题的研究方式。全球范围内正有更多的学者加入GEE 平台,关于平台的搜索热度与日俱增,相较于三年前搜索增长趋势显著(图6),根据Google Trend 在过去三年里的全网搜索数据,分别得到在全球和美国的使用增长趋势。

图6 2016-01~2019-05 的搜索增长趋势

3.1 GEE大数据分析部署在智慧城市建设中的应用探讨

GEE 的数据集成模式具有高度动态化和高度可视化的特点,而其数据分析模式是面向大众又极其高效的,智慧城市的数据平台搭建可以借鉴GEE 数据集成和管理模式。在传统的城市管理系统中,由于各部门数字化程度低,难以做到智能决策和科学统筹。近些年随着城市信息化水平越来越高,尤其是沿海发达城市,实现了包括人流、车流,污染指数,人口流动和城市降雨雷达监测等信息实时采集,以及POI数据的即时更新,这为城市智能化管理提供了前提条件。把多源数据集分部门部署在开放合作的公共云服务器,从而实现多部门数据共享打破“信息孤岛”,提高城市信息传递效率,加快部门间、区域间的数据整合,这是智慧城市建设的重要环节[24]。智慧城市的信息平台建设可以参考GEE 的构建过程,让智慧城市系统更好地服务于国情决策,同时也能共享于大众。

3.2 人工智能算法在遥感图像识别中的应用

随着人工智能技术研究浪潮兴起,各种智能算法在信息技术领域产生很多创新应用,其中机器学习是实现人工智能最广泛的应用方法,例如在遥感图像识别领域实现了多种基于监督学习的智能分类算法,包括朴素贝叶斯、决策树、支持向量机以及最大熵模型等。当然还包括当前机器学习的主要方向即基于深度学习的神经网络分类算法,这在拥有大规模数据作为训练样本时会产生极佳的结果,例如Helber[25]利用深度学习的卷积神经网络,实现对2.7 万张标记的Sentinel-2 卫星图像的土地利用和土地覆盖分类,结果总体分类准确率达到98.57%,提供了深度学习算法在遥感图像处理中应用范例。将智能算法应用于遥感图像分类,可以有效地提高图像分类精度和目标识别的准确性,从而提高数据利用率,在空间数据挖掘中获取更多价值。

然而,无论是监督学习还是深度学习无不受限于机器性能,训练样本过少出现过拟合现象,这成为遥感图像识别智能化应用的制约。这些问题在GEE 平台上可以得到很好的解决,依托于云端高性能计算机和大规模聚集的数据资源,智能算法可以得到更高效的利用。建立云端智能化分析平台不仅扩展了智能遥感图像识别功能,对复杂地表过程分析将发挥更显著的作用,例如复杂地表水文过程和地震、火山等自然灾害的分析和预测,而在传统分析中是难以实现的。

3.3 气候模拟预测对全球气候变化下的环境问题的主要作用

在2016 年于北京召开主题“为构建我们和谐的世界”的国际地理大会,提出当前地理学研究前沿城市变化,全球人口变化等多项涉及全球尺度的研究主题[26]。可以看出关于数据探索和分析的各学科已经逐渐走向大尺度乃至全球范围的变化研究,在当今世界格局下,涉及全球的极端气候变化已经是全人类所面临的共同问题,全球问题需要全球治理将是未来的发展趋势。

如何应对气候变化所带来的一系列灾害影响,将会涉及多个学科的共同合作,这是现代自然地理框架下的相关研究成果,综合了气候学、遥感、地理信息系统和人口统计学等多学科理论,涉及包括气象数据、地表覆盖和土地利用数据、人口数据以及CO2浓度数据等复合数据的全球变化模拟,例如应用复杂气候模型的高分辨率影像产品的精度预测极端气候过程,结合土地覆盖和CO2浓度等数据的模拟和预测城市降雨过程等,这些研究可以为环保政策的制定提供科学的建议以及辅助决策[27-28]。以上研究同样面临数据方面的限制,例如全球各领域数据不整合、时效差和难以实现全球范围的高精度覆盖等,GEE 作为面向全球的非商业化数据探索和分析的云计算平台,将给全球变化研究提供数据和平台支持,同时也可以作为先进的技术开发框架被发展中国家和地区加以借鉴。

4 结 语

随着云计算技术的不断发展,GEE 从2008 年提出构想不断发展至今天,已经成为提供覆盖全球的地理空间数据的集成、处理、可视化和综合分析一站式解决方案的云端共享平台。

在数据集成方面,首先是已经实现包括Landsat、Sentinel、MODIS 在内的多平台资源卫星数据集成,并处在持续更新的过程中,未来还会有更多的卫星数据资源集成到平台;其次平台还集成了模型数据,例如天气与气候模型包括降水模拟、地表径流和农田灌溉等多种模拟数据,还有地理测绘数据,包括数字高程模型和土地覆盖数据等;还有一些研究者利用平台生产并提交到数据支持中心的共享数据等,丰富的衍生数据会吸引更多研究者的关注并促进社区交流。

在算法集成方面,提供了持续更新的智能算法以及可供研究者定制的功能换口,这将激励研究者不断尝试新的算法来实现科学构想,而不只是停留在理论层面,这将进一步促进平台的智能化发展,很多以往难以解决的问题都将开启新的思路。

当然目前的GEE 仍然存在一些问题可能使研究者遇到阻碍,但随着互联网技术不断发展,无论是新一代5G 通信技术地快速建设,还是人工智能技术的不断演进,都将成为云端信息服务的重要推动力量,在数据共享越加开放,信息化程度不断提高的未来,全球尺度的地理空间分析将会有更广阔的应用空间。

猜你喜欢

分类算法
分类算一算
垃圾分类的困惑你有吗
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
分类讨论求坐标
进位加法的两种算法
数据分析中的分类讨论
算法初步两点追踪
教你一招:数的分类
基于增强随机搜索的OECI-ELM算法