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

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

ee.Image سازنده تصویر

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

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

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

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

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

توجه داشته باشید که یافتن یک تصویر از طریق ابزار جستجوی Code Editor معادل است. هنگامی که دارایی را وارد می کنید، کد ساخت تصویر برای شما در بخش واردات ویرایشگر کد نوشته می شود. همچنین می توانید از شناسه دارایی شخصی به عنوان آرگومان سازنده 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');

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

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 های بهینه سازی شده در ابر در Google Cloud Storage استفاده کنید. به عنوان مثال، مجموعه داده عمومی Landsat میزبانی شده در Google Cloud حاوی این GeoTIFF است که مربوط به باند 5 از یک صحنه Landsat 8 است. می توانید این تصویر را از فضای ذخیره سازی ابری با استفاده از 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);

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

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() بارگیری کنید:

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

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');

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

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

تصاویر ثابت

علاوه بر بارگذاری تصاویر با شناسه، می‌توانید از ثابت‌ها، فهرست‌ها یا دیگر اشیاء موتور زمین مناسب نیز تصاویر ایجاد کنید. موارد زیر روش‌هایی را برای ایجاد تصاویر، دریافت زیر مجموعه‌های باند و دستکاری باندها نشان می‌دهد:

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

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

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

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