公告:所有在
2025 年 4 月 15 日之前注册使用 Earth Engine 的非商业项目都必须
验证是否符合非商业性质的资格条件,才能继续使用 Earth Engine。
ImageCollection 概览
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
ImageCollection
是图像的堆叠或序列。
通过集合 ID 构建
您可以通过将 Earth Engine 资产 ID 粘贴到 ImageCollection
构造函数中来加载 ImageCollection
。您可以在数据目录中找到 ImageCollection
ID。例如,如需加载 Sentinel-2 地表反射率集合,请执行以下操作:
Code Editor (JavaScript)
var sentinelCollection = ee.ImageCollection('COPERNICUS/S2_SR');
Python 设置
如需了解 Python API 以及如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
sentinel_collection = ee.ImageCollection('COPERNICUS/S2_SR')
此集合包含公开目录中的每张 Sentinel-2 图像。
有很多。通常,您需要按此处或此处所示过滤合集。
从图片列表构建
构造函数 ee.ImageCollection()
或便捷方法 ee.ImageCollection.fromImages()
可根据图片列表创建图片集合。您还可以通过合并现有图库来创建新的图库。例如:
Code Editor (JavaScript)
// Create arbitrary constant images.
var constant1 = ee.Image(1);
var constant2 = ee.Image(2);
// Create a collection by giving a list to the constructor.
var collectionFromConstructor = ee.ImageCollection([constant1, constant2]);
print('collectionFromConstructor: ', collectionFromConstructor);
// Create a collection with fromImages().
var collectionFromImages = ee.ImageCollection.fromImages(
[ee.Image(3), ee.Image(4)]);
print('collectionFromImages: ', collectionFromImages);
// Merge two collections.
var mergedCollection = collectionFromConstructor.merge(collectionFromImages);
print('mergedCollection: ', mergedCollection);
// Create a toy FeatureCollection
var features = ee.FeatureCollection(
[ee.Feature(null, {foo: 1}), ee.Feature(null, {foo: 2})]);
// Create an ImageCollection from the FeatureCollection
// by mapping a function over the FeatureCollection.
var images = features.map(function(feature) {
return ee.Image(ee.Number(feature.get('foo')));
});
// Print the resultant collection.
print('Image collection: ', images);
Python 设置
如需了解 Python API 以及如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# Create arbitrary constant images.
constant_1 = ee.Image(1)
constant_2 = ee.Image(2)
# Create a collection by giving a list to the constructor.
collection_from_constructor = ee.ImageCollection([constant_1, constant_2])
display('Collection from constructor:', collection_from_constructor)
# Create a collection with fromImages().
collection_from_images = ee.ImageCollection.fromImages(
[ee.Image(3), ee.Image(4)]
)
display('Collection from images:', collection_from_images)
# Merge two collections.
merged_collection = collection_from_constructor.merge(collection_from_images)
display('Merged collection:', merged_collection)
# Create a toy FeatureCollection
features = ee.FeatureCollection(
[ee.Feature(None, {'foo': 1}), ee.Feature(None, {'foo': 2})]
)
# Create an ImageCollection from the FeatureCollection
# by mapping a function over the FeatureCollection.
images = features.map(lambda feature: ee.Image(ee.Number(feature.get('foo'))))
# Display the resultant collection.
display('Image collection:', images)
请注意,在此示例中,ImageCollection
是通过将返回 Image
的函数映射到 FeatureCollection
而创建的。如需详细了解映射,请参阅“映射 ImageCollection”部分。如需详细了解地图项集合,请参阅 FeatureCollection 部分。
从 COG 列表构建
在 Cloud Storage 中使用 GeoTiff 创建 ImageCollection
。
例如:
Code Editor (JavaScript)
// All the GeoTiffs are in this folder.
var uriBase = 'gs://gcp-public-data-landsat/LC08/01/001/002/' +
'LC08_L1GT_001002_20160817_20170322_01_T2/';
// List of URIs, one for each band.
var uris = ee.List([
uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B2.TIF',
uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B3.TIF',
uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B4.TIF',
uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF',
]);
// Make a collection from the list of images.
var images = uris.map(ee.Image.loadGeoTIFF);
var collection = ee.ImageCollection(images);
// Get an RGB image from the collection of bands.
var rgb = collection.toBands().rename(['B2', 'B3', 'B4', 'B5']);
Map.centerObject(rgb);
Map.addLayer(rgb, {bands: ['B4', 'B3', 'B2'], min: 0, max: 20000}, 'rgb');
Python 设置
如需了解 Python API 以及如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# All the GeoTiffs are in this folder.
uri_base = (
'gs://gcp-public-data-landsat/LC08/01/001/002/'
+ 'LC08_L1GT_001002_20160817_20170322_01_T2/'
)
# List of URIs, one for each band.
uris = ee.List([
uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B2.TIF',
uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B3.TIF',
uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B4.TIF',
uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF',
])
# Make a collection from the list of images.
images = uris.map(lambda uri: ee.Image.loadGeoTIFF(uri))
collection = ee.ImageCollection(images)
# Get an RGB image from the collection of bands.
rgb = collection.toBands().rename(['B2', 'B3', 'B4', 'B5'])
m = geemap.Map()
m.center_object(rgb)
m.add_layer(rgb, {'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 20000}, 'rgb')
m
详细了解如何从 Cloud GeoTiff 加载图片。
从 Zarr v2 数组构建
通过沿更高维度截取图片切片,从 Cloud Storage 中的 Zarr v2 数组创建 ImageCollection
。
例如:
Code Editor (JavaScript)
var timeStart = 1000000;
var timeEnd = 1000048;
var zarrV2ArrayImages = ee.ImageCollection.loadZarrV2Array({
uri:
'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
proj: 'EPSG:4326',
axis: 0,
starts: [timeStart],
ends: [timeEnd]
});
print(zarrV2ArrayImages);
Map.addLayer(zarrV2ArrayImages, {min: -0.0001, max: 0.00005}, 'Evaporation');
Python 设置
如需了解 Python API 以及如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
time_start = 1000000
time_end = 1000048
zarr_v2_array_images = ee.ImageCollection.loadZarrV2Array(
uri='gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
proj='EPSG:4326',
axis=0,
starts=[time_start],
ends=[time_end],
)
display(zarr_v2_array_images)
m = geemap.Map()
m.add_layer(
zarr_v2_array_images, {'min': -0.0001, 'max': 0.00005}, 'Evaporation'
)
m
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-25。
[null,null,["最后更新时间 (UTC):2025-07-25。"],[[["\u003cp\u003eAn \u003ccode\u003eImageCollection\u003c/code\u003e in Earth Engine represents a sequence of images and can be loaded using an Earth Engine asset ID from the data catalog.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eImageCollection\u003c/code\u003es can be created using various methods, including \u003ccode\u003eee.ImageCollection()\u003c/code\u003e, \u003ccode\u003eee.ImageCollection.fromImages()\u003c/code\u003e, merging existing collections, or by mapping a function over a \u003ccode\u003eFeatureCollection\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eUsers often filter large \u003ccode\u003eImageCollection\u003c/code\u003es, such as the Sentinel-2 surface reflectance collection, to focus on specific images of interest.\u003c/p\u003e\n"],["\u003cp\u003eEarth Engine allows creating \u003ccode\u003eImageCollection\u003c/code\u003es from GeoTIFFs stored in Cloud Storage by mapping \u003ccode\u003eee.Image.loadGeoTIFF\u003c/code\u003e over a list of URIs.\u003c/p\u003e\n"]]],["`ImageCollection` can be loaded using Earth Engine asset IDs, like 'COPERNICUS/S2_SR'. Collections can be created using `ee.ImageCollection()` or `ee.ImageCollection.fromImages()`, which take lists of images. Existing collections can be merged with the `merge()` method. `ImageCollection`s are also created by mapping a function over a `FeatureCollection` that returns an `Image`. Images can also be imported from GeoTIFF files in Cloud Storage, mapped and then put into an `ImageCollection`.\n"],null,["# ImageCollection Overview\n\nAn `ImageCollection` is a stack or sequence of images.\n\nConstruct from a collection ID\n------------------------------\n\nAn `ImageCollection` can be loaded by pasting an Earth Engine\nasset ID into the\n`ImageCollection` constructor. You can find\n`ImageCollection` IDs in the [data catalog](/earth-engine/datasets). For example, to load the\n[Sentinel-2 surface reflectance\ncollection](/earth-engine/guides/datasets/catalog/COPERNICUS_S2_SR):\n\n### Code Editor (JavaScript)\n\n```javascript\nvar sentinelCollection = ee.ImageCollection('COPERNICUS/S2_SR');\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\nsentinel_collection = ee.ImageCollection('COPERNICUS/S2_SR')\n```\n\nThis collection contains every Sentinel-2 image in the public catalog.\nThere are a lot. Usually you want to filter the collection as shown [here](/earth-engine/guides/ic_info) or\n[here](/earth-engine/guides/ic_filtering).\n\nConstruct from an image list\n----------------------------\n\nThe constructor\n`ee.ImageCollection()` or the convenience method\n`ee.ImageCollection.fromImages()` create image collections from\nlists of images. You can also create new image collections by merging\nexisting collections. For example:\n\n### Code Editor (JavaScript)\n\n```javascript\n// Create arbitrary constant images.\nvar constant1 = ee.Image(1);\nvar constant2 = ee.Image(2);\n\n// Create a collection by giving a list to the constructor.\nvar collectionFromConstructor = ee.ImageCollection([constant1, constant2]);\nprint('collectionFromConstructor: ', collectionFromConstructor);\n\n// Create a collection with fromImages().\nvar collectionFromImages = ee.ImageCollection.fromImages(\n [ee.Image(3), ee.Image(4)]);\nprint('collectionFromImages: ', collectionFromImages);\n\n// Merge two collections.\nvar mergedCollection = collectionFromConstructor.merge(collectionFromImages);\nprint('mergedCollection: ', mergedCollection);\n\n// Create a toy FeatureCollection\nvar features = ee.FeatureCollection(\n [ee.Feature(null, {foo: 1}), ee.Feature(null, {foo: 2})]);\n\n// Create an ImageCollection from the FeatureCollection\n// by mapping a function over the FeatureCollection.\nvar images = features.map(function(feature) {\n return ee.Image(ee.Number(feature.get('foo')));\n});\n\n// Print the resultant collection.\nprint('Image collection: ', images);\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\n# Create arbitrary constant images.\nconstant_1 = ee.Image(1)\nconstant_2 = ee.Image(2)\n\n# Create a collection by giving a list to the constructor.\ncollection_from_constructor = ee.ImageCollection([constant_1, constant_2])\ndisplay('Collection from constructor:', collection_from_constructor)\n\n# Create a collection with fromImages().\ncollection_from_images = ee.ImageCollection.fromImages(\n [ee.Image(3), ee.Image(4)]\n)\ndisplay('Collection from images:', collection_from_images)\n\n# Merge two collections.\nmerged_collection = collection_from_constructor.merge(collection_from_images)\ndisplay('Merged collection:', merged_collection)\n\n# Create a toy FeatureCollection\nfeatures = ee.FeatureCollection(\n [ee.Feature(None, {'foo': 1}), ee.Feature(None, {'foo': 2})]\n)\n\n# Create an ImageCollection from the FeatureCollection\n# by mapping a function over the FeatureCollection.\nimages = features.map(lambda feature: ee.Image(ee.Number(feature.get('foo'))))\n\n# Display the resultant collection.\ndisplay('Image collection:', images)\n```\n\nNote that in this example an `ImageCollection` is created by\nmapping a function that returns an `Image` over a\n`FeatureCollection`. Learn more about mapping in the [Mapping over an ImageCollection section](/earth-engine/guides/ic_mapping). Learn\nmore about feature collections from the\n[FeatureCollection section](/earth-engine/guides/feature_collections).\n\nConstruct from a COG list\n-------------------------\n\nCreate an `ImageCollection` from GeoTiffs in Cloud Storage.\nFor example:\n\n### Code Editor (JavaScript)\n\n```javascript\n// All the GeoTiffs are in this folder.\nvar uriBase = 'gs://gcp-public-data-landsat/LC08/01/001/002/' +\n 'LC08_L1GT_001002_20160817_20170322_01_T2/';\n\n// List of URIs, one for each band.\nvar uris = ee.List([\n uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B2.TIF',\n uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B3.TIF',\n uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B4.TIF',\n uriBase + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF',\n]);\n\n// Make a collection from the list of images.\nvar images = uris.map(ee.Image.loadGeoTIFF);\nvar collection = ee.ImageCollection(images);\n\n// Get an RGB image from the collection of bands.\nvar rgb = collection.toBands().rename(['B2', 'B3', 'B4', 'B5']);\nMap.centerObject(rgb);\nMap.addLayer(rgb, {bands: ['B4', 'B3', 'B2'], min: 0, max: 20000}, 'rgb');\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\n# All the GeoTiffs are in this folder.\nuri_base = (\n 'gs://gcp-public-data-landsat/LC08/01/001/002/'\n + 'LC08_L1GT_001002_20160817_20170322_01_T2/'\n)\n\n# List of URIs, one for each band.\nuris = ee.List([\n uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B2.TIF',\n uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B3.TIF',\n uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B4.TIF',\n uri_base + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF',\n])\n\n# Make a collection from the list of images.\nimages = uris.map(lambda uri: ee.Image.loadGeoTIFF(uri))\ncollection = ee.ImageCollection(images)\n\n# Get an RGB image from the collection of bands.\nrgb = collection.toBands().rename(['B2', 'B3', 'B4', 'B5'])\nm = geemap.Map()\nm.center_object(rgb)\nm.add_layer(rgb, {'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 20000}, 'rgb')\nm\n```\n\n[Learn more about\nloading images from Cloud GeoTiffs](/earth-engine/guides/image_overview#images-from-cloud-geotiffs).\n\nConstruct from a Zarr v2 array\n------------------------------\n\nCreate an `ImageCollection` from a Zarr\nv2 array in Cloud Storage by taking image slices along a higher dimension.\nFor example:\n\n### Code Editor (JavaScript)\n\n```javascript\nvar timeStart = 1000000;\nvar timeEnd = 1000048;\nvar zarrV2ArrayImages = ee.ImageCollection.loadZarrV2Array({\n uri:\n 'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',\n proj: 'EPSG:4326',\n axis: 0,\n starts: [timeStart],\n ends: [timeEnd]\n});\n\nprint(zarrV2ArrayImages);\n\nMap.addLayer(zarrV2ArrayImages, {min: -0.0001, max: 0.00005}, 'Evaporation');\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\ntime_start = 1000000\ntime_end = 1000048\nzarr_v2_array_images = ee.ImageCollection.loadZarrV2Array(\n uri='gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',\n proj='EPSG:4326',\n axis=0,\n starts=[time_start],\n ends=[time_end],\n)\n\ndisplay(zarr_v2_array_images)\n\nm = geemap.Map()\nm.add_layer(\n zarr_v2_array_images, {'min': -0.0001, 'max': 0.00005}, 'Evaporation'\n)\nm\n```"]]