نمای کلی تصویر

همان‌طور که در سند شروع به کار ذکر شده است، داده‌های شطرنجی به‌صورت اشیاء Image در Earth Engine نمایش داده می‌شوند. تصاویر از یک یا چند باند تشکیل شده‌اند و هر باند نام، نوع داده، مقیاس، پوشش، و طرح‌ریزی خاص خود را دارد. هر تصویر دارای فراداده‌ای است که به‌عنوان مجموعه‌ای از ویژگی‌ها ذخیره شده است.

سازنده ee.Image

تصاویر را می‌توان با جای‌گذاری شناسه دارایی Earth Engine در سازنده ee.Image بار کرد. می‌توانید شناسه‌های تصویر را در کاتالوگ داده پیدا کنید. برای مثال، به مدل ارتفاع دیجیتال (NASADEM):

ویرایشگر کد (جاوا اسکریپت)

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:

ویرایشگر کد (جاوا اسکریپت)

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 GeoTIFFs

می‌توانید از ee.Image.loadGeoTIFF() برای بار کردن تصاویر از Cloud Optimized GeoTIFFs در Google Cloud Storage استفاده کنید. برای مثال، مجموعه داده‌های عمومی Landsat که در Google Cloud میزبانی می‌شود حاوی این GeoTIFF است که با باند ۵ از صحنه Landsat 8 مطابقت دارد. می‌توانید این تصویر را از Cloud Storage بااستفاده از ee.Image.loadGeoTIFF() بار کنید:

ویرایشگر کد (جاوا اسکریپت)

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 تنظیم کنید، همان‌طور که در اینجا توضیح داده شده است.

یادداشت عملکرد: برای عملکرد بهینه، توصیه می‌کنیم «مرکز هزینه‌های کالای فروش‌شده» خود را به‌عنوان دارایی ثبت کنید، نه اینکه آن‌ها را مستقیماً با ee.Image.loadGeoTIFF() بار کنید. برای جزئیات و مقایسه، نمای کلی GeoTIFF بهینه‌سازی‌شده برای Cloud (COG) را ببینید.

تصاویر از آرایه‌های Zarr v2

می‌توانید از ee.Image.loadZarrV2Array() برای بار کردن تصویر از آرایه Zarr v2 در Google Cloud Storage استفاده کنید. برای مثال، مجموعه داده عمومی ERA5 که در Google Cloud میزبانی می‌شود حاوی این آرایه Zarr v2 است که با مقدار آب تبخیرشده از سطح زمین (به متر) مطابقت دارد. می‌توانید این آرایه را از Cloud Storage بااستفاده از ee.Image.loadZarrV2Array() بار کنید:

ویرایشگر کد (جاوا اسکریپت)

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 نیز ایجاد کنید. در زیر روش‌های ایجاد تصاویر، دریافت زیرمجموعه‌های باند، و دستکاری باندها نشان داده شده است:

ویرایشگر کد (جاوا اسکریپت)

// 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)