在应用中,有些函数是需要imge类型才可以使用,所以需要imageCollection类型转为imge。下面以提取NDVI为例,介绍单波段二者类型的转化。
function NDVI_Sentinel2(image){
var ndvi = image.normalizedDifference(["B8","B4"]).rename('NDVI');
return image.addBands(ndvi.rename('NDVI'));
}
function NDWI_Sentinel2(image){
var ndwi = image.normalizedDifference(["B3","B8"]).rename('NDWI');
return image.addBands(ndwi.rename('NDWI'));
}
var scol= ee.ImageCollection("COPERNICUS/S2")
.filterDate('2022-04-01', '2022-05-15')
.map(NDVI_Sentinel2)
.map(NDWI_Sentinel2)
;
//通过求取某个波段的最值以及qualityMosaic函数来转换,转化的根本还是利用函数的返回值。
var min=scol.select("NDVI").min();
var mean=scol.select("NDVI").mean();
var max=scol.select("NDVI").max();
var image =scol.select("NDVI");
var QM=image.qualityMosaic('NDVI')
Map.addLayer(min,{},"min");
Map.addLayer(mean,{},"mean");
Map.addLayer(max,{},"max");
Map.addLayer(image,{},"image");
Map.addLayer(QM,{},"QM");
结果如下图所示:image是仅根据select函数选择的NDVI,得到的结果还是imageCollection,其余都成了image类型。由于qualityMosaic()是以最大值合成,所以在单波段情况下根max()的结果相同。
