ภาพรวมรูปภาพ

ดังที่ได้กล่าวไว้ในเอกสารเริ่มต้นใช้งาน ข้อมูลแรสเตอร์จะแสดงเป็นออบเจ็กต์ Image ใน Earth Engine รูปภาพประกอบด้วย แถบอย่างน้อย 1 แถบ และแต่ละแถบจะมีชื่อ ประเภทข้อมูล สเกล มาสก์ และการฉายภาพของตัวเอง รูปภาพแต่ละรูปมีข้อมูลเมตาที่จัดเก็บเป็นชุดพร็อพเพอร์ตี้

ee.Image เครื่องมือสร้าง

คุณโหลดรูปภาพได้โดยการวางรหัสชิ้นงาน Earth Engine ลงในตัวสร้าง ee.Image คุณจะพบรหัสรูปภาพในแคตตาล็อกข้อมูล เช่น ไปยังแบบจำลองระดับความสูงเชิงดิจิทัล (NASADEM)

ตัวแก้ไขโค้ด (JavaScript)

var loadedImage = ee.Image('NASA/NASADEM_HGT/001');

การตั้งค่า Python

ดูข้อมูลเกี่ยวกับ Python API และการใช้ geemap เพื่อการพัฒนาแบบอินเทอร์แอกทีฟได้ที่หน้าสภาพแวดล้อม Python

import ee
import geemap.core as geemap

Colab (Python)

loaded_image = ee.Image('NASA/NASADEM_HGT/001')

โปรดทราบว่าการค้นหารูปภาพผ่าน เครื่องมือค้นหาในเครื่องมือแก้ไขโค้ด จะเหมือนกัน เมื่อนำเข้าชิ้นงาน ระบบจะเขียนโค้ดการสร้างรูปภาพให้คุณในส่วนการนำเข้าของ โปรแกรมแก้ไขโค้ด นอกจากนี้ คุณยังใช้รหัสชิ้นงานส่วนตัวเป็นอาร์กิวเมนต์ของตัวสร้างee.Imageได้ด้วย

รับ ee.Image จาก ee.ImageCollection

วิธีมาตรฐานในการดึงรูปภาพออกจากคอลเล็กชันคือการกรองคอลเล็กชันโดยใช้ ตัวกรองตามลำดับความเฉพาะเจาะจงที่ลดลง ตัวอย่างเช่น หากต้องการนำภาพออกจาก คอลเล็กชันการสะท้อนพื้นผิวของ Sentinel-2 ให้ทำดังนี้

ตัวแก้ไขโค้ด (JavaScript)

var first = ee.ImageCollection('COPERNICUS/S2_SR')
                .filterBounds(ee.Geometry.Point(-70.48, 43.3631))
                .filterDate('2019-01-01', '2019-12-31')
                .sort('CLOUDY_PIXEL_PERCENTAGE')
                .first();
Map.centerObject(first, 11);
Map.addLayer(first, {bands: ['B4', 'B3', 'B2'], min: 0, max: 2000}, 'first');

การตั้งค่า Python

ดูข้อมูลเกี่ยวกับ Python API และการใช้ geemap เพื่อการพัฒนาแบบอินเทอร์แอกทีฟได้ที่หน้าสภาพแวดล้อม Python

import ee
import geemap.core as geemap

Colab (Python)

first = (
    ee.ImageCollection('COPERNICUS/S2_SR')
    .filterBounds(ee.Geometry.Point(-70.48, 43.3631))
    .filterDate('2019-01-01', '2019-12-31')
    .sort('CLOUDY_PIXEL_PERCENTAGE')
    .first()
)

# Define a map centered on southern Maine.
m = geemap.Map(center=[43.7516, -70.8155], zoom=11)

# Add the image layer to the map and display it.
m.add_layer(
    first, {'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 2000}, 'first'
)
display(m)

โปรดทราบว่าการจัดเรียงจะเกิดขึ้นหลังจากตัวกรอง หลีกเลี่ยงการจัดเรียงทั้งคอลเล็กชัน

รูปภาพจาก Cloud GeoTIFF

คุณใช้ ee.Image.loadGeoTIFF() เพื่อโหลดรูปภาพจาก GeoTIFF ที่ปรับให้เหมาะกับ Cloud ใน Google Cloud Storage ได้ ตัวอย่างเช่น ชุดข้อมูล Landsat สาธารณะที่โฮสต์ใน Google Cloud มี GeoTIFF นี้ซึ่งสอดคล้องกับแถบที่ 5 จากฉาก Landsat 8 คุณโหลดรูปภาพนี้จาก Cloud Storage ได้โดยใช้ ee.Image.loadGeoTIFF():

ตัวแก้ไขโค้ด (JavaScript)

var uri = 'gs://gcp-public-data-landsat/LC08/01/001/002/' +
    'LC08_L1GT_001002_20160817_20170322_01_T2/' +
    'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF';
var cloudImage = ee.Image.loadGeoTIFF(uri);
print(cloudImage);

การตั้งค่า Python

ดูข้อมูลเกี่ยวกับ Python API และการใช้ geemap เพื่อการพัฒนาแบบอินเทอร์แอกทีฟได้ที่หน้าสภาพแวดล้อม Python

import ee
import geemap.core as geemap

Colab (Python)

uri = (
    'gs://gcp-public-data-landsat/LC08/01/001/002/'
    + 'LC08_L1GT_001002_20160817_20170322_01_T2/'
    + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF'
)
cloud_image = ee.Image.loadGeoTIFF(uri)
display(cloud_image)

โปรดทราบว่าหากต้องการโหลด Cloud Optimized GeoTIFF ที่คุณส่งออกจาก Earth Engine ไปยัง Cloud Storage อีกครั้ง เมื่อส่งออก ให้ตั้งค่าcloudOptimizedเป็น true ตามที่อธิบายไว้ที่นี่

รูปภาพจากอาร์เรย์ Zarr v2

คุณใช้ ee.Image.loadZarrV2Array() เพื่อโหลดรูปภาพจาก อาร์เรย์ Zarr v2 ใน Google Cloud Storage ได้ ตัวอย่างเช่น ชุดข้อมูล ERA5 สาธารณะที่โฮสต์ใน Google Cloud มีอาร์เรย์ Zarr v2 นี้ ซึ่งสอดคล้องกับปริมาณน้ำเป็นเมตรที่ระเหยจากพื้นผิวโลก คุณโหลดอาร์เรย์นี้จาก Cloud Storage ได้โดยใช้ ee.Image.loadZarrV2Array() ดังนี้

ตัวแก้ไขโค้ด (JavaScript)

var timeStart = 1000000;
var timeEnd = 1000010;
var zarrV2ArrayImage = ee.Image.loadZarrV2Array({
  uri:
      'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
  proj: 'EPSG:4326',
  starts: [timeStart],
  ends: [timeEnd]
});
print(zarrV2ArrayImage);
Map.addLayer(zarrV2ArrayImage, {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 = 1000010
zarr_v2_array_image = ee.Image.loadZarrV2Array(
    uri='gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
    proj='EPSG:4326',
    starts=[time_start],
    ends=[time_end],
)

display(zarr_v2_array_image)

m.add_layer(
    zarr_v2_array_image, {'min': -0.0001, 'max': 0.00005}, 'Evaporation'
)
m

รูปภาพคงที่

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

ตัวแก้ไขโค้ด (JavaScript)

// Create a constant image.
var image1 = ee.Image(1);
print(image1);

// Concatenate two images into one multi-band image.
var image2 = ee.Image(2);
var image3 = ee.Image.cat([image1, image2]);
print(image3);

// Create a multi-band image from a list of constants.
var multiband = ee.Image([1, 2, 3]);
print(multiband);

// Select and (optionally) rename bands.
var renamed = multiband.select(
    ['constant', 'constant_1', 'constant_2'], // old names
    ['band1', 'band2', 'band3']               // new names
);
print(renamed);

// Add bands to an image.
var image4 = image3.addBands(ee.Image(42));
print(image4);

การตั้งค่า Python

ดูข้อมูลเกี่ยวกับ Python API และการใช้ geemap เพื่อการพัฒนาแบบอินเทอร์แอกทีฟได้ที่หน้าสภาพแวดล้อม Python

import ee
import geemap.core as geemap

Colab (Python)

# Create a constant image.
image_1 = ee.Image(1)
display(image_1)

# Concatenate two images into one multi-band image.
image_2 = ee.Image(2)
image_3 = ee.Image.cat([image_1, image_2])
display(image_3)

# Create a multi-band image from a list of constants.
multiband = ee.Image([1, 2, 3])
display(multiband)

# Select and (optionally) rename bands.
renamed = multiband.select(
    ['constant', 'constant_1', 'constant_2'],  # old names
    ['band1', 'band2', 'band3'],  # new names
)
display(renamed)

# Add bands to an image.
image_4 = image_3.addBands(ee.Image(42))
display(image_4)