当前位置:   article > 正文

gee批量下载数据&&Google Drive下载大文件_gee直接下载数据到文件夹

gee直接下载数据到文件夹

目录

Google Earth Engine 申请教程:

shp上传

数据下载代码

区域裁剪(裁剪对代码执行效率影响极大)

批量RUN

Google Drive下载大文件

Google Drive→MultCloud→百度网盘

IDM

其他

参考


在进行gee批量下载modis(NDVI)数据时,发现不同的裁剪区域(不止面积大小,还有内外边界复杂度等)对代码执行的效率极大,选择简单的区域边界可提高代码运行效率。

在google earth engine下载大文件时,由于浏览器下载限制或者网速过慢,必须采用一些其他方法。

Google Earth Engine 申请教程

Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

shp上传

Asset中上传shp时,需要上传.shp  .dbf  .shx  (.prj)  文件,有的文件.prj不需要

数据下载代码

  1. var province = ee.FeatureCollection("users/gis418670826/province_ALL"),
  2. country = ee.FeatureCollection("users/gis418670826/country");
  3. // 按区域进行裁剪
  4. // 方法一:按(7015)到(14055)的矩形区域进行裁剪
  5. //var roiChina = ee.Geometry.Rectangle(70, 15,140, 55);
  6. // 方法二:按中国国界进行裁剪
  7. //var roiChina = ee.FeatureCollection(country)
  8. // 方法三:按中国省界组成国界进行裁剪
  9. //var roiChina = ee.FeatureCollection(province);
  10. // 方法二的改进:求包含中国国界的矩形要素
  11. var country = ee.FeatureCollection(country).geometry()
  12. var roiChina = country.bounds()
  13. Map.centerObject(roiChina, 2)
  14. Map.addLayer(roiChina)
  15. // 设置时间范围
  16. var timeStart = '2020-01-01'
  17. var timeEnd = '2022-01-01'
  18. // 选择数据
  19. var dateSet = ee.ImageCollection('MODIS/006/MOD13A2')
  20. .filterDate(timeStart, timeEnd);
  21. var images = dateSet.select('NDVI');
  22. print(dateSet)
  23. // 查看数据中含有多少幅影像(NDVI是单波段),getInfo把object转化为number
  24. var num = images.size().getInfo();
  25. print(num)
  26. // 把ImageCollection转化为List
  27. var list = images.toList(num);
  28. print(list);
  29. for (var i=0; i<num; i++){
  30. // 把List转化为Image,方便一幅一幅导入云盘
  31. var image = ee.Image(list.get(i));
  32. var type = image.bandNames().get(0).getInfo();
  33. // 设置每幅影像的名称
  34. var nameOut = ee.String(type+'_')
  35. .cat(image.id().getInfo())
  36. .getInfo();
  37. print(nameOut)
  38. // 设置输出文件夹的名称,例如NDVI_2000
  39. var time = image.id().getInfo().substring(0, 4);
  40. var folder = type + '_' + time;
  41. print(folder);
  42. // 将数据下载到Google云盘上
  43. Export.image.toDrive({
  44. image: image, // 要下载的影像
  45. description: nameOut, // 下载任务描述
  46. fileNamePrefix: nameOut, // 文件的名称
  47. folder: folder, // 选择要下载到云盘的哪个文件夹
  48. region: roiChina, // 裁剪区域
  49. scale: 1000, // 分辨率,默认值是1000m
  50. crs: 'EPSG:4326', //坐标是坐标系84
  51. maxPixels: 1e13 // 下载数据的最大像元数
  52. });
  53. }
  54. // function runTaskList() {
  55. // var tasklist = document.getElementsByClassName('awaiting-user-config');
  56. // for (var i = 0; i < tasklist.length; i++)
  57. // tasklist[i].children[2].click();
  58. // }
  59. // function confirmAll() {
  60. // var ok = document.getElementsByClassName('goog-buttonset-default goog-buttonset-action');
  61. // for (var i = 0; i < ok.length; i++)
  62. // ok[i].click();
  63. // }
  64. // runTaskList();
  65. // confirmAll();

区域裁剪(裁剪对代码执行效率影响极大)

  1. // 方法一:按(7015)到(14055)的矩形区域进行裁剪
  2. var roiChina = ee.Geometry.Rectangle(70, 15,140, 55);
  3. // 方法二:按中国国界进行裁剪
  4. //var roiChina = ee.FeatureCollection(country)
  5. // 方法三:按中国省界组成国界进行裁剪
  6. //var roiChina = ee.FeatureCollection(province);

 这里有三个不同的范围,

一:边界平滑的矩形:                速度最快                54.8 MB                

二:中国国界                              速度较快                45.2 MB                

三:各省份组成的国界                速度很慢                45.2 MB                不推荐使用

凭感觉来说推荐第一种,因为第二种还是有零碎的面,第三种是真的慢

国界→矩形

我们可以使用bounds()得到完全包含中国国界的矩形区域

  1. var country = ee.FeatureCollection(country).geometry()
  2. var roiChina = country.bounds()

批量RUN

打开浏览器控制台(F12-Console),粘贴代码即可批量点击RUN

  1. runTasks = function() {
  2. const evt = new MouseEvent('click', {bubbles: true, cancelable: true, ctrlKey: true})
  3. $$('.run-button' ,$$('ee-task-pane')[0].shadowRoot).forEach(function(e) {
  4. e.dispatchEvent(evt)
  5. })
  6. }
  7. runTasks()

Google Drive下载大文件

Google Drive→MultCloud→百度网盘

MultCloud:MultCloud | Best Free Multiple Cloud Storage Manager

国内可访问!!!

在云盘之间传输文件、保持两个云服务同步、在一个地方管理所有的云盘账号。

免费帐户每月获得MultCloud提供的30GB数据流量,以将文件从一个云盘传输到其他云盘。

不行就使用临时邮箱白嫖把

IDM

安装教程:IDM安装 注册 使用详细教程_哔哩哔哩_bilibili

使用教程:Google Drive(谷歌网盘)下载超大文件方法 - 知乎

注:如果是选择了多个文件之后,drive会进行自动压缩形成临时压缩包,下载的文件是没有办法进行断点续传的。

其他

Google Drive 大文件下载技巧 - 知乎

参考

Google Drive下载大文件问题解决办法_yiteeee的博客-CSDN博客

Google Earth Engine批量导出时批量点RUN_CannonJia的博客-CSDN博客

Google Earth Engine(GEE)批量下载GDDP和MODIS产品 - 灰信网(软件开发博客聚合)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/1010718
推荐阅读
相关标签
  

闽ICP备14008679号