همانطور که در سند شروع به کار ذکر شد، داده های شطرنجی به عنوان اشیاء Image
در Earth Engine نشان داده می شوند. تصاویر از یک یا چند باند تشکیل شده اند و هر باند نام، نوع داده، مقیاس، ماسک و طرح خود را دارد. هر تصویر دارای ابرداده ای است که به عنوان مجموعه ای از ویژگی ها ذخیره می شود.
ee.Image
سازنده تصویر
تصاویر را می توان با چسباندن شناسه دارایی Earth Engine در سازنده ee.Image
بارگذاری کرد. می توانید شناسه های تصویر را در کاتالوگ داده ها بیابید. به عنوان مثال، به یک مدل ارتفاعی دیجیتال ( NASADEM ):
ویرایشگر کد (جاوا اسکریپت)
var loadedImage = ee.Image('NASA/NASADEM_HGT/001');
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');
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);
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');
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);
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)