gee ee.ImageCollection.iterate
时间: 2024-10-10 08:09:06 浏览: 38
在Google Earth Engine (GEE) 中,`ee.ImageCollection.iterate()` 是一个迭代器函数,它用于遍历给定的影像集合中的每个图像,并为每个图像应用提供的处理函数。这个函数非常有用,当你需要对集合中的每个元素执行相同的操作时,比如计算某种统计数据、添加新属性等。
基本语法如下:
```javascript
function iterateFunction(image, index) {
// 这里编写处理单个图像的代码
// image: 当前正在处理的图像
// index: 图像在集合中的索引
return processedImage; // 返回处理后的图像
}
ee.ImageCollection.collectionName.iterate(iterateFunction, initialValue);
```
这里的 `iterateFunction` 是一个接受两个参数(图像和索引)的匿名函数,`initialValue` 可选,通常设置为初始状态,如空值 `null`,如果不需要初始值则留空。
举个例子,假设你想对一个影像集合计算每个图像的NDVI(归一化植被指数),你可以这样写:
```javascript
var ndviFn = function(image) {
var ndvi = image.normalizedDifference(['B8', 'B4']);
return ndvi.rename('ndvi');
};
var collection = ee.ImageCollection('LANDSAT/LT05/C01/T1_SR').filterDate('2019-01-01', '2019-12-31');
var ndviCollection = collection.iterate(ndviFn, null);
```
`ndviCollection` 将是一个新的 ImageCollection,其中每个图像都有一个名为 'ndvi' 的新波段。
阅读全文