Quiero hacer una colección de imágenes Landsat que esté totalmente libre de nubes sobre un conjunto de polígonos. Tengo alrededor de 300 polígonos (todos dentro de una sola baldosa Landsat). He encontrado este que está haciendo exactamente lo que quiero sobre un solo polígono, pero no puedo averiguar cómo conseguir que funcione sobre un conjunto de polígonos (que se cargan como una clase de característica).
Esto es lo que he intentado hacer para modificar la solución de la pregunta publicada anteriormente, donde imgcollection es mi Landsat TOA Image Collection y fc es mi feature class de polígonos. Yo estaba tratando de usar el mapa y el clip juntos para seleccionar todos los polígonos en la clase de características para cada imagen (basado en las respuestas en este pregunta relacionada).
var combine = imgcollection.map(function(imgcollection) { return
imgcollection.clip(fc); });
Después de esta línea, he intentado continuar con la solución de la primera pregunta, pero no funciona. El error que obtengo es el siguiente, que me confunde. Estoy tratando de utilizar la variable "combinar" como la geometría - ¿Estoy entendiendo mal esto y en realidad el uso de otra cosa?
ImageCollection (Error)
Image.reduceRegion, argument 'geometry': Invalid type. Expected:
Geometry. Actual: ImageCollection.
EDIT: código completo
var fc = ee.FeatureCollection('ft:omit');
var imgcollection = ee.ImageCollection("LANDSAT/LC08/C01/T1_RT_TOA");
var combine = imgcollection.map(function(img) { return img.clip(fc); });
var withCloudiness = combine.map(function(image) {
var cloud = ee.Algorithms.Landsat.simpleCloudScore(image).select('cloud');
var cloudiness = cloud.reduceRegion({
reducer: 'mean',
geometry: combine,
scale: 30,
});
return image.set(cloudiness);
});
var filteredCollection = withCloudiness.filter(ee.Filter.lt('cloud', 10));
print(filteredCollection);