环宇易易研科技
GEE培训教程1:背景基础介绍
1. GEE是什什么?
GEE全称Google Earth Engine,它是⼀一个集科学分析以及地理理信息数据可视化的综合
性平台,它⾯面向的对象是科研⼈人员、教育⼈人员、⾮非营利利性机构、企业以及政府机构等。
它本身存储了了近40年年来主要公开遥感影像数据集,⽐比如Landsat系列列产品、Modis系列列产
品、Sentinel系列列产品等,还有就是各种⽓气象数据等。通过GEE提供的各种API以及其他
的⼯工具可以⽅方便便的查看、计算、分析⼤大范围的各种影像数据。
来源:https://earthengine.google.com/faq/
2. GEE怎么收费?
原⽂文内容:
Earth Engine is free for research, education, and nonprofit use.
For commercial applications, we offer paid commercial licenses.
Please contact for details(earthengine-commercial@google.com).
来源:https://earthengine.google.com/faq/
就是说GEE对⽤用于科学研究、教育以及⾮非盈利利⽬目的的⽤用途是免费的。对于商业⽤用途需要联系
GEE官⽅方,购买他们提供的商业许可。
3. GEE的免费内容有哪些?
每个⼈人固定的免费使⽤用的云计算能⼒力力
Google Drive中的15G的免费存储空间
Google Assets最⼤大是250G容量量,最多可以传10000个⽂文件
Google Fusion Tables(这个在2019年年12⽉月将要作废,但是⽬目前很多项⽬目中依
然在使⽤用,所以还是需要了了解)
免费使⽤用GEE上所有公开的影像、⽮矢量量等数据
其他等等
4. GEE的系统架构
@知乎 ⽆无形的⻛风
1
环宇易研科技
环宇易易研科技
简单的说⼀一下GEE的系统架构设计,这些内容都是GEE官⽅方在其论⽂文中公开的内容。GEE的
在线编辑器器或者第三⽅方的APP通过调⽤用(JavaScript/Python)版的库,然后通过REST
API接⼝口将调⽤用信息传⼊入云端。云端通过调⽤用存储内的数据计算,同时将计算结果缓存,然
后将结果返回到前台。简单的流程就是这样,了了解⼀一下即可。这⾥里里需要说明的⼀一下就是很多
⼈人想要直接使⽤用本地的影像数据,⽬目前GEE是做不不到的,我们需要将相关的数据上传到
Assets中或者Google Cloud中。
5. GEE⽀支持的语⾔言
JavaScript
Python
这次讲解以JavaScript为主。
6. GEE官⽹网
⽹网址:https://earthengine.google.com/
7. GEE的官⽅方英⽂文⽂文档
@知乎 ⽆无形的⻛风
2
环宇易研科技
环宇易易研科技
⽂文档地址:https://developers.google.com/earth-engine/
主要包含⼏几个⽅方⾯面:
指南:详细讲解GEE相关的各个⽅方⾯面知识,包括⼀一些主要的函数使⽤用⽅方法以及GEE相
关⼯工作原理理、常⻅见错误等等;
参考⽹网⻚页:
API详细⽂文档,包含全部的JavaScript版的GEE的所有函数以及参数的详细
介绍;
GEE中公开的⼀一个⽮矢量量数据;
TUTORIALS:GEE官⽅方做的⼀一些官⽅方教程,包括⽂文字教程和视频教程,当然都是英
⽂文的;
EDU:GEE官⽅方做的在全球各地做的⼀一些培训的教程资料料;
DATA CATALOG:GEE数据集官⽹网,查询GEE中的相关数据介绍、使⽤用示例例;
在GEE的官⽅方⽂文档中有⾮非常丰富的英⽂文资料料,只要仔细挖掘,可以学到⾮非常多的知识。
8. GEE官⽅方论坛
这个论坛是⾮非常重要的⼀一个地⽅方,在这⾥里里你可以向GEE的官⽅方⼈人员直接提交相关问题求助,
同时论坛中还有很多⼤大佬级别的⼈人物可以帮助你解决相关问题。同时通过这个论坛你也可以
学习到很多GEE官⽅方学习不不到的知识、GEE使⽤用技巧等。
论坛地址:
https://groups.google.com/forum/#!forum/google-earth-engine-
developers
@知乎 ⽆无形的⻛风
3
环宇易研科技
环宇易易研科技
论坛⽅方便便了了⼤大家求助各种问题,但是作为⼀一个技术论坛还是有⼀一些论坛礼仪需要注意,毕竟
没有⼈人愿意帮助⼀一个⾮非常“傲慢⽆无礼”的⼈人:
论坛是英⽂文论坛,求助问题请使⽤用英⽂文来描述和回答相关问题;
在论坛需求帮助时候请先在搜索框内搜索你想要问的问题,查看是否存在相关类似的
问题;
求助时候请分享你的代码链接,不不要只使⽤用截图或者⽚片段代码,同时将代码中使⽤用的
资源设置为“任何⼈人都可读”,这样别⼈人在帮助你的时候可以更更⽅方便便调试你的代码,
找出错误的原因。;
在论坛中不不要求助涉及到你有版权或者隐私的代码,因为论坛是⼀一个开放的地⽅方,所
以没有办法保证你的隐私或者有版权的代码不不被泄露露;
求助问题请使⽤用“敬语”,不不要命令别⼈人或者⽆无理理取闹。因为在论坛中帮助你的每⼀一
个⼈人都是在⽆无私的帮助你,要最起码的尊重别⼈人;
求助的问题被解决后请点击解决问题,⽅方便便别⼈人查看问题处理理进度;
9. GEE在线编辑器器
编辑器器地址:https://code.earthengine.google.com/
GEE在线编辑器器分为⼏几⼤大部分:
上侧搜索区
搜索框:⽤用来搜索地点和资源;
帮助按钮:包含了了关于GEE相关的⼀一些基本内容的URL,⽐比如资源信息的地
址、⽤用户指导等等信息;
@知乎 ⽆无形的⻛风
4
环宇易研科技
环宇易易研科技
账号信息按钮:登陆登出;
左侧Git存储库区:⾃自⼰己编写的所有⽂文件都在这⾥里里。
Scripts:git代码存储库,主要包括:Owner(⽤用户⾃自⼰己的代码库)、
Writer(他⼈人分享给⽤用户的代码库,⽤用户可读可写)、Reader(他⼈人分享
给⽤用户的代码库,⽤用户只能读不不能写)、Examples(官⽅方提供的代码例例
⼦子)、Archive(他⼈人分享的⼀一些⼯工程);
Docs:GEE的API⽂文档,这个是⾮非常重要的内容。在编写代码过程中,如果不不
知道如何使⽤用相关函数⽅方法,可以通过这个地⽅方来查找;
Assets:我们⾃自⼰己上传的栅格影像数据和⽮矢量量数据存放地点,我们可以在这
⾥里里创建⽂文件夹或者影像集合(ImageCollection)来存放我们的数据,这个
后续会专⻔门讲解如何上传使⽤用这些数据;
中间代码编辑区:编写代码核⼼心区域
Get Link:这个很重要,我们在⾃自⼰己编写代码时候可能不不会使⽤用它,但是我
们在咨询别⼈人问题时候就需要点击这个按钮,⽣生成代码链接。这样别⼈人就可以
⽅方便便的通过这个代码链接来调试你的相关代码,查询相关问题。
Save:保存代码,它分为两种⽅方式保存。⼀一种是普通的Save,就是直接保存
现有的代码到指定的⽂文件中;另外⼀一种是Save as,这个是是将现有的代码
另存为⼀一份新的代码。
Run:运⾏行行代码,它也分为两种⽅方式运⾏行行。⼀一种是直接运⾏行行,没有显示运⾏行行分
析(Profiler);另外⼀一种是Run with profiler,相⽐比第⼀一种⽅方式这种
运⾏行行代码⽅方式会将代码运⾏行行中的详细信息显示出来。通过这个图我们可以分析
是那些步骤耗费了了内存,那些步骤耗时最⻓长,然后依此来调试优化代码。
注:这个是在2018年年底GEE做的⼀一次更更新,之前profiler是可以⼀一直显示的。
Reset:重制代码运⾏行行结果或者直接将运⾏行行代码从代码编辑区移除。
发布APP:将⾃自⼰己编写的代码发布成为APP,这样可以使的⾮非GEE⽤用户可以直
接使⽤用我们编写好的⼯工具,后续我会详细介绍如何发布APP以及发布APP的限
制等内容。
设置:这个就是代码编辑区域设置,就两项内容:是否提示错误信息;是否⾃自
动补全⽐比如双引号、括号等内容。
右侧输出显示内容区:显示程序运⾏行行结果内容。
Interspector:当想要查看某点各种信息(位置、波段等),可以点击显
示这个分⻚页,然后在地图上点击想要查看的点。
Console:输出显示程序运⾏行行结果。
Tasks:各种任务列列表,包括上传任务列列表信息、导出任务列列表信息。
下侧地图展示区:在地图上展示计算的影像、⽮矢量量等结果。
左侧⽮矢量量绘制按钮列列表
右侧切换不不同底图按钮列列表
@知乎 ⽆无形的⻛风
5
环宇易研科技
环宇易易研科技
10. GEE数据展示官⽹网
数据官⽹网:https://developers.google.com/earth-engine/datasets/
11. GEE多⼈人协作
GEE在多⼈人协作⽅方⾯面有以下特点
设置代码库、资源的权限
查看代码修改历史
更更新到不不同版本代码
快速分享代码
例例⼦子:查看修改代码相关的权限
1)将⿏鼠标放置在⽂文件上,出现的三个按钮分别是:查看回滚历史记录、编辑⽂文件名称、删
除⽂文件。
2)查看回滚历史信息,罗列列了了修改⽇日期、修改⼈人员等
@知乎 ⽆无形的⻛风
6
环宇易研科技
环宇易易研科技
3)⿏鼠标放到指定的历史记录上可以看到“Compare”按钮,这个是对⽐比历史和当前⽂文件信息
下⾯面的按钮第⼀一个是回滚到指定版本。
4)设置代码库访问权限,⿏鼠标放到指定的代码库上,出现的按钮依次是:查看回滚历史、
代码库相关设置、删除。
点击设置按钮
@知乎 ⽆无形的⻛风
7
环宇易研科技
环宇易易研科技
如果这个代码库想要所有⼈人都可以访问,那么选上“Anyone can read”;如果只想添加
特定的⼈人,那么将其登陆GEE使⽤用的邮箱通过点击Add加⼊入,同时设置权限,那么这个代码
库就是指定的⼈人可以访问;默认的时候个⼈人的代码库都是是私有的,只有⾃自⼰己能访问。
13. GEE发布APP
官⽅方APP地址:https://www.earthengine.app/
代码示例例,这个是使⽤用splitPanel做的⼀一个展示对⽐比内容的代码,
参考代码: 教程1(demo01.js)。
链
接:https://code.earthengine.google.com/c7192e4e2e16b3574454fd49155
@知乎 ⽆无形的⻛风
8
环宇易研科技