ภาพรวมของ ImageCollection

ImageCollection คือกองหรือลำดับรูปภาพ คุณสามารถโหลด ImageCollection ได้โดยวางรหัสเนื้อหา Earth Engine ลงในคอนสตรัคเตอร์ ImageCollection คุณจะดูรหัส ImageCollection ได้ในส่วนแคตตาล็อกข้อมูล ตัวอย่างเช่น หากต้องการโหลดคอลเล็กชันการสะท้อนแสงพื้นผิวของ Sentinel-2 ให้ทำดังนี้

เครื่องมือแก้ไขโค้ด (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 ทั้งหมดในแคตตาล็อกสาธารณะ มีมาก โดยปกติแล้ว คุณจะต้องกรองคอลเล็กชันตามที่แสดงที่นี่หรือที่นี่

นอกจากการโหลด ImageCollection โดยใช้รหัสคอลเล็กชัน Earth Engine แล้ว Earth Engine ยังมีวิธีการสร้างคอลเล็กชันรูปภาพด้วย ตัวสร้างคอนสตรัคเตอร์ ee.ImageCollection() หรือเมธอดที่สะดวก ee.ImageCollection.fromImages() จะสร้างคอลเล็กชันรูปภาพจากรายการรูปภาพ นอกจากนี้ คุณยังสร้างคอลเล็กชันรูปภาพใหม่โดยการผสานคอลเล็กชันที่มีอยู่ได้ด้วย เช่น

เครื่องมือแก้ไขโค้ด (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

นอกจากนี้ คุณยังสร้าง ImageCollection จาก GeoTiff ใน Cloud Storage ได้ด้วย เช่น

เครื่องมือแก้ไขโค้ด (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

ดูข้อมูลเพิ่มเติมเกี่ยวกับการโหลดรูปภาพจาก GeoTIFF ของ Cloud