googleearth引擎:将MODIS图像从GEE导出到aws3bu

2024-06-06 23:30:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在进行一个使用MODIS数据集的机器学习项目。由于我的电脑不能满足项目的计算要求,我选择了一台AWS服务器。现在的问题是地球引擎正在将图像导出到googledrive或Google云存储,但我希望它们能够导出到我的S3存储桶中。在

我遇到过一些建议将数据下载到本地存储然后上传到s3bucket的答案。考虑到庞大的数据集和我糟糕的数据速度,我要花很长时间才能做到。因此,我想直接使用地球引擎将它们导出到我的S3桶中。在

我已经看过导出发生的文档(ee.batch.Export.image)。我正在考虑编写一个函数,将Geotiff图像导出到aws3bucket,而不是googledrive或云存储。在

p.S

  • 我已经用Amazon MODIS公共数据集进行了验证,我想要的数据集(MOD09A1和其他一些)不是由Amazon提供的。在
  • 我的电脑上安装了Windows 10

Tags: 数据项目图像引擎服务器机器aws地球
1条回答
网友
1楼 · 发布于 2024-06-06 23:30:16

MODIS图像已经在aws3上了(https://aws.amazon.com/public-datasets/modis/

然而,对于任何其他数据集来说,这是一个有趣的问题,这里有一些事情需要考虑

1)目前,Google Earth引擎只能在谷歌云存储桶(GCS)上写入内容,该存储桶(GCS)最多可免费使用5GB,或者谷歌硬盘(Google Drive)也有15GB的限制,包括你的gmail。因此,要想在推送aws3之前将这些图像下载到本地驱动器,您需要确保GCS或驱动器上有足够的可用空间。在

2)Google Earth引擎不导出元数据,如果超过一定的文件大小限制(请记住某些事项),Google Earth引擎会拆分一个较大的GeoTiff,以防在上传到AWS之前将分割的图像拼接成单个图像。也可以将属性作为元数据导出为CSV或kml文件。在

3)一旦知道GCS或Google Drive中有足够的缓冲空间,理想的方法是

  • 从EE推到Drive/GCS
  • 从Drive/GCS拉到local,然后推到AWS(如果您想使用Google的网络速度而不是客户机资源来实现这一点,您可以在always free model from Google下启动一个小微实例)
  • 另一种不使用客户机资源的方法是使用web集成 服务,例如,Zapier可以帮助您将驱动器链接到AWS,当新文件进来时,它们会被复制到AWS,您可以使用新文件作为触发器)。[我没有尝试过,但我知道可以使用Zapier或IFTTT来完成。

  • 定期检查你的云存储,并在文件复制到GCS时删除。你基本上可以检查文件或文件夹是否同步,然后删除GCS/驱动器上的文件,再次释放空间并重复此过程。

我相信其他人可能会有一些其他伟大的建议,但这只是我这样做的方式。希望有帮助

山姆

相关问题 更多 >