GEE学习笔记 六十七:【GEE之Python版教程一】GEE学习背景介绍

    相信很多人都对GEE已经比较熟悉了(只是不熟悉GEE的Python的API而已),这里只是做一个简单的总结概括一下GEE相关内容。

1、GEE学习基本要求

    目前市面上无论出现什么新的技术,总会出现一种课程或者资料《xxx天零基础精通xxx》。其实做了这么多年的研发,对于这些内容只能评价一句话:“害人不浅!”。学习任何东西都是一个循序渐进的过程,我们不可能跨越基础直接成为大师级别的人物。所以学习GEE有几个基本的要求:

(1)必须懂得编程,最好之前学习过某一门编程语言。

(2)目前GEE支持的接口包括JavaScript版和Python版,之前介绍的都是JavaScript版本,这里介绍Python版。虽然是分成了两个版本,但是这两个版本的接口大部分是通用的。

(3)如果不会这两门编程语言,学习GEE首先必须要学习JavaScript或者Python。不推荐零编程基础的人直接学习编写GEE,否则很多基础的编程问题都无法解决。

(4)多练习,学习GEE没有捷径可走,只有多练习才能掌握相关内容。

(5)会用梯子(具体是什么网上搜索)。

 

2、GEE是什么?

    GEE全称Google Earth Engine,它是一个集科学分析以及地理信息数据可视化的综合性平台,它面向的对象是科研人员、教育人员、非营利性机构、企业以及政府机构等。它本身存储了近40年来主要公开遥感影像数据集,比如Landsat系列产品、Modis系列产品、Sentinel系列产品等,还有就是各种气象数据等。通过GEE提供的各种API以及其他的工具可以方便的查看、计算、分析大范围的各种影像数据。

来源:https://earthengine.google.com/faq/

 

3、GEE相关的网站

(1)官方网站:https://earthengine.google.com/

(2)官方教程:https://developers.google.com/earth-engine/

(3)在线编辑器:https://code.earthengine.google.com/

(4)官方数据网站:https://developers.google.com/earth-engine/datasets/

(5)官方论坛:https://groups.google.com/forum/#!forum/google-earth-engine-developers

(6)GEE的源码GitHub链接:https://github.com/google/earthengine-api

(7)GEE的Python版API文档(个人版):https://gee-python-api.readthedocs.io/en/latest/index.html

 

    具体这些链接地址,如果不熟悉的人可以都逐一打开看一下,熟悉的只要记住这些地址就可以了,我们在开发中要不断的使用这些内容。这里需要注意一下是最后这个文档,这个不是官方的文档,是我自己编译的GEE的Python版API文档。

 

4、GEE学习方法分享

(1)官方文档是最权威的资料,要多查看多练习其中的内容

 

(2)编写代码过程中如果不知道相关API如何做,我们首先要想到的是去API文档中查找相关内容

 

(3)学习过程中要多登录官方论坛查看别人的问题,同时自己尝试去解决,如果解决不了可以查看别人解决思路,通过不断解决问题学习相关内容。

 

(4)自己遇到任何问题首先第一个要到论坛搜索一下有没有别人遇到相关问题,第二步使用Google搜索查找是否有相关问题,最后在论坛中发帖咨询或者在群里问一下别人。这里我要纠正一下很多人的一个毛病,遇到问题首先自己从来不考虑就直接找别人询问,其实这样过分依赖询问别人就会造成自己解决能力会越来越低。

 

(5)不断编码练习才是进步王道!

 

5、JavaScript版和Python版API异同

(1)编程语言不一致。JavaScript版通常是在在线编辑器使用,但是Python版我们通常是在本地编写代码使用,如果本地配置环境有问题,那么就只能使用在线版的了(后面会讲解如何配置在线版的Python编辑器)。

 

(2)两者API的内容有大约60%-70%是一致的,这点可能很多人会迷惑,我简单解释一下。我们使用的Python版的API其实不能算是纯Python版的API,GEE它的最原生的API就是JavaScript版的Restful API接口,但是由于很多人都是使用Python做开发,所以GEE推出了Python版本的API接口。这个接口是对JavaScript版本的接口做了二次封装,然后通过绑定等相关技术使得Python可以调用JavaScript相关代码。在此基础上Python版本做了一些新的接口,但同时也保留了JavaScript大部分的接口内容。

 

举一个简单的python代码例子,比如我要计算一个列表的和,可以写如下代码

    其实如果你要找python源码中内容,在ee.ee_list.List()中并没有 reduce 方法,同时在python版的API中也没有Reducer相关的内容,但是我们这里可以直接和在JavaScript中一样直接按照JavaScript的API接口方式写代码,也就是写成 xxx.reduce(ee.Reducer.sum()) 这种形式。

 

这就是Python版GEE接口第一部分相关背景的介绍,下一章我们会介绍Python开发环境的搭建配置。


大家如果有问题需要交流或者有项目需要合作,可以微信联系我,加微信好友请留言加上“GEE”。

知乎专栏:https://zhuanlan.zhihu.com/c_123993183

CSDN:https://blog.csdn.net/shi_weihappy

### GEE (Google Earth Engine) 学习教程与笔记 #### 关于 Google Earth Engine 的简介 Google Earth Engine个基于云计算的地球观测数据处理平台,提供了丰富的卫星影像和其他地理空间数据集。它允许用户通过编程接口执行大规模的空间数据分析和可视化操作[^1]。 #### 初学者入门资源 对于初学者来说,可以从官方文档入手,这是最权威的信息来源之。同时,结合些第三方制作的教学视频可以更直观地理解其基本概念和功能[^4]。例如,在哔哩哔哩网站上存在由特定 UP 主发布的教学视频《带你入门 Google Earth Engine》,这些内容能够帮助新手快速掌握基础技能。 #### 文字学习笔记推荐 两篇详细的博客文章分别从不同角度介绍了如何开始使用该工具: - **沐-Google Earth Engine 系列学习笔记()** 提供了个全面概述,涵盖了从认识这个平台到实际动手尝试各个阶段所需知道的内容; - 另篇名为“Google Earth Engine 学习笔记——介绍和入门”的博文则强调了其实用价值以及简单易学的特点,并指出这是个完全免费向公众开放使用的强大云端GIS解决方案[^2]。 #### 实践练习材料获取途径 如果倾向于实践型学习方式,则可考虑利用现成的例子来进行模仿训练。“EarthEngine-Py-Notebooks”是个包含超过三百六十份Jupyter Notebook样例文件集合的开源项目,位于GitCode平台上可供下载查阅。该项目不仅展示了多种应用场景下的具体实现方法,还支持交互式地图绘制等功能特性展示[^3]。 ```python import ee ee.Authenticate() ee.Initialize() # 加载 Landsat8 图像集合 dataset = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR') \ .filterDate('2020-01-01', '2020-12-31') \ .filterBounds(ee.Geometry.Point(-73.995, 40.75)) def cloudMask(image): qa = image.select('pixel_qa') mask = qa.bitwiseAnd(1 << 3).eq(0) and qa.bitwiseAnd(1 << 5).eq(0) return image.updateMask(mask) composite = dataset.map(cloudMask).median().clip(ee.Geometry.Point(-73.995, 40.75)) print(composite.getInfo()) ``` 上述代码片段演示了如何加载Landsat 8图像并创建无云合成图的过程。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值