下载数据前准备工作:gee批量下载影像前,需要有谷歌邮箱,再通过谷歌邮箱注册gee账号,且在下载影像的过程中需要科学上网。
—、下载的代码:
需要修改的地方:1、自己的研究区。2、分辨率。3、传感器的名字(传感器要和分辨率对应)。
var roi = ee.FeatureCollection("users/shaoguo044/b").geometry(); //("users/....")更改shp文件路径,shp文件需要是zip格式,然后上传。
//批量下载函数
function exportImage(image, roi, fileName) {
Export.image.toDrive({
image: image,
description: "Drive-image-"+fileName,
fileNamePrefix: fileName+'_NDVI', //文件命名
folder: "MODIS_NDVI", //保存的文件夹
scale: 250, //分辨率
region: roi, //研究区
maxPixels: 1e13, //最大像元素,默认就好
crs: "EPSG:4326" //设置投影
});
}
//加载数据集
var data = ee.ImageCollection("MODIS/006/MOD13Q1"); //这里以MODIS NDVI 数据为例
Map.centerObject(roi, 4); //图层显示
//筛选数据
var data_selected = data.filterBounds(roi)
.filterDate("2021-1-1", "2021-12-31")
.select('NDVI'); //选择波段
print("data_selected", data_selected);
//生成列表,迭代下载
var indexList = data_selected.reduceColumns(ee.Reducer.toList(), ["system:index"]).get("list");
print("indexList", indexList);
indexList.evaluate(function(indexs) {
for (var i=0; i<indexs.length; i++) {
var image = data_selected.filter(ee.Filter.eq("system:index", indexs[i]))
.first()
.select('NDVI')
.toInt16() //设置数据类型
.clip (roi); //裁剪数据
exportImage(image, roi, indexs[i]); //保存图像至Google网盘
}
});
二、批量点击RUN的代码:
在所有任务窗口弹出后(即run窗口全部弹出),按F12进入控制台,然后将这些脚本粘贴到控制台,然后按ENTER键即可。
function runTaskList() {
var runButtons = document.querySelector('#task-pane').shadowRoot.querySelectorAll(".run-button")
runButtons.forEach(function(e) {e.click()})
}
runTaskList()
setTimeout(
function(){
var taskDialog = document.querySelectorAll("ee-image-config-dialog") //table的话-image-改成-table-
taskDialog.forEach(function(e) {e.shadowRoot.querySelector("ee-dialog").shadowRoot.querySelector("paper-dialog").querySelector(".ok-button").click()})
},5 * 1000 );