Come illustrato nella sezione Inizia
e nella sezione Informazioni sulle raccolte di immagini, Earth
Engine fornisce una serie di metodi di utilità per filtrare le raccolte di immagini.
Nello specifico, molti casi d'uso comuni sono gestiti da imageCollection.filterDate()
,
e imageCollection.filterBounds()
. Per i filtri generici, utilizza
imageCollection.filter()
con un ee.Filter
come argomento. L'esempio seguente mostra sia i metodi di praticità sia filter()
per identificare e rimuovere le immagini con copertura nuvolosa elevata da un ImageCollection
.
Editor di codice (JavaScript)
// Load Landsat 8 data, filter by date, month, and bounds. var collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA') .filterDate('2015-01-01', '2018-01-01') // Three years of data .filter(ee.Filter.calendarRange(11, 2, 'month')) // Only Nov-Feb observations .filterBounds(ee.Geometry.Point(25.8544, -18.08874)); // Intersecting ROI // Also filter the collection by the CLOUD_COVER property. var filtered = collection.filter(ee.Filter.eq('CLOUD_COVER', 0)); // Create two composites to check the effect of filtering by CLOUD_COVER. var badComposite = collection.mean(); var goodComposite = filtered.mean(); // Display the composites. Map.setCenter(25.8544, -18.08874, 13); Map.addLayer(badComposite, {bands: ['B3', 'B2', 'B1'], min: 0.05, max: 0.35, gamma: 1.1}, 'Bad composite'); Map.addLayer(goodComposite, {bands: ['B3', 'B2', 'B1'], min: 0.05, max: 0.35, gamma: 1.1}, 'Good composite');
import ee import geemap.core as geemap
Colab (Python)
# Load Landsat 8 data, filter by date, month, and bounds. collection = ( ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA') # Three years of data .filterDate('2015-01-01', '2018-01-01') # Only Nov-Feb observations .filter(ee.Filter.calendarRange(11, 2, 'month')) # Intersecting ROI .filterBounds(ee.Geometry.Point(25.8544, -18.08874)) ) # Also filter the collection by the CLOUD_COVER property. filtered = collection.filter(ee.Filter.eq('CLOUD_COVER', 0)) # Create two composites to check the effect of filtering by CLOUD_COVER. bad_composite = collection.mean() good_composite = filtered.mean() # Display the composites. m = geemap.Map() m.set_center(25.8544, -18.08874, 13) m.add_layer( bad_composite, {'bands': ['B3', 'B2', 'B1'], 'min': 0.05, 'max': 0.35, 'gamma': 1.1}, 'Bad composite', ) m.add_layer( good_composite, {'bands': ['B3', 'B2', 'B1'], 'min': 0.05, 'max': 0.35, 'gamma': 1.1}, 'Good composite', ) m