【GEE学习第一期】GEE介绍、注册及基本使用
- GEE基本介绍
- GEE架构
- 编辑语言:JavaScript
- GEE注册
- GEE平台界面
- GEE编辑器
- API区详解
- GEE环境配置
- 本地Python环境配置
- 在线Python环境配置
- 参考
GEE基本介绍
地球引擎代码编辑器(Google Earth Engine, GEE) 是一个基于 Web 的平台,提供对大型地理空间数据库(通常为栅格格式)的访问权限,并且是 Google 服务器上的分布式计算环境,可让您快速提出问题并开发可测试的工作流程。
(1) 谷歌云平台
整个GEE是基于Google Cloud云平台的一整套API开发环境。因此整个数据的处理全部都是在Google Cloud平台上实现的,无需本地机器参与运算。一般开发流程是在线/离线编辑代码,然后提交服务器端运行,完成之后会输出给我们一些结果。这个思路适合离线本地开发不太一样的。处理的时候,整个算法还有数据都是在云端的,所以不要想着用本地Python环境就可以离线开发或使用GEE。它本身只是一个包装好的API供你调用,核心是云端的服务器。这点需要注意。正式因为这种本地-服务器端的差别,所以GEE也专门有自己的变量类型,基本是ee.xxx形式。我们在写代码的时候要区分JS自己的类型和GEE的数据类型。
(2) 函数化编程
由于整个GEE是在云端的,所以官方建议尽可能所有操作都可并行,这样可以大大提升执行效率。这点是有点类似于CUDA的编程思想。简而言之就是对于很多重复的操作,你要做的就是定义好这个操作本身,然后循环遍历的工作就交给系统就好,他会自动并行帮你完成。官方文档中对于常见的循环、条件判断、累加三个操作进行了举例。
GEE免费的内容:
- 每个人固定的免费使用的云计算能力
- Google Drive中的15G的免费存储空间
- Google Assets最大是250G容量,最多可以传10000个文件
- Google Fusion Tables(这个在2019年12月将要作废,但是目前很多项目中依然在使用,所以还是需要了解)
- 免费使用GEE上所有公开的影像、矢量等数据
- 其他等等
GEE架构
GEE架构如下:
Google Earth Engine支持(Python和JavaScript)两种语言的接口。
【注意】这里需要说明的一下就是很多人想要直接使用本地的影像数据,目前Google Earth Engine是做不到的,从它的系统接口中可以看到我们需要将相关的数据上传到Assets中或者GoogleCloud中。
编辑语言:JavaScript
GEE 代码编辑器中的所有脚本都是用 JavaScript (JS) 编写的。
如果您不熟悉这种编程语言,请不要害怕!JS 有大量的在线资源,而 GEE 实际上对遵守所有规则相当宽松。
例如,JS 的标准协议是以分号 ( 结束每个命令。但是,如果您碰巧忘记了一个,GEE 会在(经常)顺利运行您的代码时提醒您。
JavaScript 编辑器将:
- 键入时格式化并突出显示代码
- 在有问题的代码下划线,提供修复和其他提示以获得正确的语法
- 自动补全引号、方括号和圆括号对
- 为地球引擎功能提供代码完成提示
JavaScript与GEE的区别:
- 最主要的区别一个是客户端语言,一个是服务器端语言。比如:四则运算不一致,GEE需要使用封装的add()等方法。
- GEE调用getInfo()方法可以变为JavaScript对象,但是非常不推荐使用这个方法。我们编码错误很多问题都是由于使用getInfo()造成的。
GEE注册
注册谷歌账号添加辅助邮箱(教育邮箱)后去注册GEE账号;完成上述操作,等待注册成功邮件。
GEE平台界面
GEE官网-Google Earth Engine
GEE文档地址-Welcome to Google Earth Engine
GEE数据搜索网址-A planetary-scale platform for Earth science data & analysis
GEE编辑器
代码编辑界面如下:
API区详解
GEE环境配置
本地Python环境配置
常见错误的解决方案。
1、ImportError: No module named xxxx。这个错误是需要pip安装缺少的python第三方的包。
2、ee.Initialize初始化失败,上网全局设置问题。
3、如果全局设置依然失败,那么先打开https://code.earthengine.google.com/,然后登陆自己的账
号,之后在重新调用初始化的方法在次测试。
4、其它错误比如缺少相关模块之类,这个可以根据错误搜索Google即可。
在线Python环境配置
针对本地python环境配置会出现各种问题,如果只是想学习GEE的python版相关内容,我推荐是直接使用Google Drive中在线的python环境来学习。
参考
1、CSDN博客-GEE初学者笔记之快速上手篇
2、CSDN博客-【GEE 学习】GEE注册及快速入门:一篇懂哇
3、知乎-GEE环境配置-GEE学习笔记 六:GEE的本地python环境搭建
4、知乎-GEE环境配置-GEE学习笔记 五十:Windows安装GEE环境配置错误补充篇