Google Earth Engine(GEE)—有JS和python为什么GEE还要使用rgee?
基本 rgee - 第一步
2020-01-01 941 words
5 mins read
1. 什么是谷歌地球引擎?
谷歌地球引擎是一个计算平台,允许用户在谷歌的基础设施上运行地理空间分析。与平台交互的方式有以下几种:
- discover
- 代码编辑器
- Javascript 客户端库
- Python客户端库
- R 客户端库
本网站重点介绍最后一个,您可以使用 R 客户端库向地球引擎服务器和开发Web 应用程序发送/接收消息。
3. 组件:
地球引擎的主要组成部分是:
数据集:公开可用的遥感图像和其他数据的 PB 级存档。探索数据目录。
计算能力:谷歌的计算基础设施针对地理空间数据的并行处理进行了优化。
WEB REST API/客户端库:用于向地球引擎服务器发出请求。
代码编辑器:一个在线集成开发环境 (IDE),用于使用 Javascript API 对复杂空间分析进行快速原型设计和可视化。
5. 为什么用 rgee 而不是代码编辑器(Javascript)?
基于Tyler Erickson 演示的简短比较。
代码编辑器 | rgee |
---|---|
易于上手 | 易于在脚本之间共享代码。 |
分享脚本很简单 | 更轻松地过渡到 Web 应用程序 ( Shiny )。 |
内置身份验证 | 对 R 用户更友好的 I/O API。 |
有限的输入/输出功能 | 许多绘图选项 |
无法与其他 JS 库集成 | 需要一些rgee(和维护)! |
6. 安装
rgee只依赖于reticulate和processx。因此,用户应该确保这两个软件包都可以安装在他们的系统上。安装rgee运行如下:
remotes::install_github("r-spatial/rgee")
rgee有两种类型的依赖项:在rgee安装之前必须满足的严格依赖项和解锁所有rgee I/0 功能的凭据依赖项。
如果没有满足严格的依赖关系,则rgee 将无法工作。组成该组的依赖项是:
-
已激活 Earth Engine 的 Google 帐户
-
Python >= v3.5
-
EarthEngine Python API(Python 包)
地球引擎账号的激活因用户而异,详情请查看谷歌地球引擎官网。如果您不计入 Python 环境或 EarthEngine Python API 版本,我们强烈建议您运行:
-
library(rgee)
-
ee_install(py_env = "rgee") # 这个只在第一次安装就好了
该函数将实现以下六项任务:
-
删除以前定义的同名 Python 环境(如果存在)。
-
创建一个新的 Python 环境。
-
设置环境变量 EARTHENGINE_PYTHON 和 EARTHENGINE_ENV。这些变量将被用于定义网状环境变量RETICULATE_PYTHON加载rgee时。
-
安装 rgee Python 依赖项:Earth Engine Python API和 Numpy。
-
交互式菜单以确认是否重新启动 R 会话以查看更改。
但是,rgee::ee_install() 的使用不是强制性的。您可以依靠自己的自定义安装。这也是允许的。如果您是 Rstudio v.1.4 > 用户,本教程将帮助您使用 R 会话正确设置 Python 环境,而无需rgee::ee_install()。考虑到您设置的 Python Environment 必须安装了Earth Engine Python API和Numpy。
另一方面,凭证依赖项 仅用于将数据从 Google Drive 和 Google Cloud Storage 移动到您的本地环境。这些依赖项不是强制性的。但是,它们将帮助您在 R 和 Earth Engine 之间创建无缝连接。组成该组的依赖项如下所示:
-
Google 云存储凭据
-
Google 云端硬盘凭据
请参阅下一节以了解如何正确设置这两个凭据。
-
library(rgee)
-
#ee_reattach() # 重新附加ee作为保留字
-
#多种初始化功能可以一起用
-
-
# 只初始化地球引擎
-
ee_Initialize()
-
ee_Initialize(email = 'csaybar@gmail.com') # 使用参数 email 不是强制性的
-
-
# 初始化地球引擎和GD
-
ee_Initialize(email = 'csaybar@gmail.com', drive = TRUE)
-
-
# 初始化地球引擎和GCS
-
ee_Initialize(email = 'csaybar@gmail.com', gcs = TRUE)
-
-
# 初始化地球引擎和, GD and GCS
-
ee_Initialize(email = 'csaybar@gmail.com', drive = TRUE, gcs = TRUE)
如果 Google 帐户已通过验证并授予权限,您将被定向到身份验证令牌。复制此令牌并将其粘贴到新出现的 GUI 中。与 Earth Engine 和 Google Drive 不同,Google Cloud Storage 需要手动设置其凭据(link1和link2)。在所有情况下,用户凭据始终存储在:
ee_get_earthengine_path()
请记住,您只需授权一次,下次会话就不需要了。
-
viz <- list(
-
max = 4000,
-
min = 0,
-
palette = c("#000000","#5AAD5A","#A9AD84","#FFFFFF")
-
)
使用 Map$addLayer 以交互方式可视化地图
-
Map$addLayer(
-
eeObject = srtm,
-
visParams = viz,
-
name = 'SRTM',
-
legend = TRUE
-
)
最后加载到的结果!
文章来源: blog.csdn.net,作者:此星光明2021年博客之星云计算Top3,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_31988139/article/details/119967991
- 点赞
- 收藏
- 关注作者
评论(0)