如需获取存储在 FeatureCollection
中的多个区域中的图片统计信息,您可以使用 image.reduceRegions()
一次缩减多个区域。reduceRegions()
的输入为 Image
和 FeatureCollection
。输出是另一个 FeatureCollection
,其中 reduceRegions()
输出被设置为每个 Feature
的属性。
在本例中,系统会将每个地图项几何图形中 Landsat 7 年度复合波段的均值添加为输入地图项的属性:
Code Editor (JavaScript)
// Load input imagery: Landsat 7 5-year composite. var image = ee.Image('LANDSAT/LE7_TOA_5YEAR/2008_2012'); // Load a FeatureCollection of counties in Maine. var maineCounties = ee.FeatureCollection('TIGER/2016/Counties') .filter(ee.Filter.eq('STATEFP', '23')); // Add reducer output to the Features in the collection. var maineMeansFeatures = image.reduceRegions({ collection: maineCounties, reducer: ee.Reducer.mean(), scale: 30, }); // Print the first feature, to illustrate the result. print(ee.Feature(maineMeansFeatures.first()).select(image.bandNames()));
import ee import geemap.core as geemap
Colab (Python)
# Load input imagery: Landsat 7 5-year composite. image = ee.Image('LANDSAT/LE7_TOA_5YEAR/2008_2012') # Load a FeatureCollection of counties in Maine. maine_counties = ee.FeatureCollection('TIGER/2016/Counties').filter( ee.Filter.eq('STATEFP', '23') ) # Add reducer output to the Features in the collection. maine_means_features = image.reduceRegions( collection=maine_counties, reducer=ee.Reducer.mean(), scale=30 ) # Print the first feature, to illustrate the result. display(ee.Feature(maine_means_features.first()).select(image.bandNames()))
请注意,系统已向 FeatureCollection
添加了按波段名称键控的新属性,以便在每个 Feature
几何图形中存储复合体的均值。因此,print 语句的输出应如下所示:
Feature (Polygon, 7 properties) type: Feature geometry: Polygon, 7864 vertices properties: Object (7 properties) B1: 24.034822192925134 B2: 19.40202233717122 B3: 13.568454303016292 B4: 63.00423784301736 B5: 29.142707062821305 B6_VCID_2: 186.18172376827042 B7: 12.064469664746415