می توانید تصاویر را از Earth Engine در قالب GeoTIFF یا TFRecord صادر کنید. برای گزینه های خروجی بیشتر به پارامترهای پیکربندی مراجعه کنید.
راه اندازی مثال
با تعریف داده های تصویری که صادر می شود شروع کنید:
ویرایشگر کد (جاوا اسکریپت)
// Load a landsat image and select three bands. var landsat = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_123032_20140515') .select(['B4', 'B3', 'B2']); // Create a geometry representing an export region. var geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236]);
import ee import geemap.core as geemap
کولب (پایتون)
# Load a landsat image and select three bands. landsat = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_123032_20140515').select( ['B4', 'B3', 'B2'] ) # Create a geometry representing an export region. geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236])
سپس پارامترهای طرح ریزی را که در صادرات زیر استفاده می شود، تعریف کنید. ما از پارامتر crs
برای تعیین سیستم مختصات و از پارامتر crsTransform
برای تعیین دقیق شبکه پیکسل استفاده می کنیم. پارامتر crsTransform
فهرستی از پارامترها از یک ماتریس تبدیل افین به ترتیب ردیف اصلی [xScale, xShearing, xTranslation, yShearing, yScale, yTranslation]
است. مبدأ یک تصویر با مقادیر xTranslation
و yTranslation
و اندازه پیکسل تصویر با مقادیر xScale
و yScale
تعیین می شود. نمونه هایی از ماتریس های افین را ببینید.
ویرایشگر کد (جاوا اسکریپت)
// Retrieve the projection information from a band of the original image. // Call getInfo() on the projection to request a client-side object containing // the crs and transform information needed for the client-side Export function. var projection = landsat.select('B2').projection().getInfo();
import ee import geemap.core as geemap
کولب (پایتون)
# Retrieve the projection information from a band of the original image. # Call getInfo() on the projection to request a client-side object containing # the crs and transform information needed for the client-side Export function. projection = landsat.select('B2').projection().getInfo()
تنظیم scale
به عنوان میانبر، می توانید یک پارامتر scale
را مشخص کنید و Earth Engine یک پارامتر crsTransform
را برای شما محاسبه می کند. با این حال، صرفاً تنظیم مقیاس یک تصویر، مبدا طرح ریزی را مشخص نمی کند و ممکن است منجر به تغییر تصویر نسبت به تصویر دیگری با همان اندازه پیکسل شود!
دلیل تغییر پتانسیل این است که از پارامتر scale
برای پر کردن مقادیر xScale
و yScale
crsTransform
استفاده می شود، اما مقادیر xTranslation
و yTranslation
به گونه ای محاسبه می شوند که اگر بر مقادیر xScale
و yScale
مربوطه تقسیم شوند، باقیمانده صفر خواهد بود. این پارامترها یک شبکه پیکسلی را مشخص می کنند که مبدأ طرح ریزی در گوشه یک پیکسل است. این قرارداد با پارامترهای ترجمه استفاده شده توسط برخی از ارائه دهندگان داده، که از شبکههایی استفاده میکنند که از مبدأ طرحریزی جدا شدهاند، متفاوت است. به عنوان مثال، تصاویر Landsat ارائه شده توسط USGS از پارامترهای ترجمه استفاده می کنند که با 1/2 پیکسل از مبدأ طرح فاصله دارد (15m offset برای باندهای 30 متری) در حالی که تصاویر Sentinel-2 ارائه شده توسط ESA از پارامترهای ترجمه استفاده می کنند که با مبدأ طرح ریزی هماهنگ هستند. اگر crsTransform
مشخصشده در یک صادرات با crsTransform
تصویر اصلی مطابقت نداشته باشد، پیکسلهای خروجی مجدداً نمونهگیری میشوند (به طور پیشفرض با استفاده از نزدیکترین همسایه)، که باعث میشود تصویر حاصل نسبت به تصویر اصلی جابجا شود.
به طور خلاصه، اگر نیاز دارید پیکسل های تصویر صادر شده را با یک تصویر خاص مطابقت دهید، مطمئن شوید که از پارامترهای crs
و crsTransform
برای کنترل کامل شبکه استفاده کنید.
به درایو
برای صادرات یک تصویر به حساب Drive خود، از Export.image.toDrive()
استفاده کنید. به عنوان مثال، برای صادرات بخش هایی از یک تصویر Landsat، یک منطقه برای صادرات تعریف کنید، سپس Export.image.toDrive()
را فراخوانی کنید:
ویرایشگر کد (جاوا اسکریپت)
// Export the image, specifying the CRS, transform, and region. Export.image.toDrive({ image: landsat, description: 'imageToDriveExample_transform', crs: projection.crs, crsTransform: projection.transform, region: geometry });
import ee import geemap.core as geemap
کولب (پایتون)
# Export the image, specifying the CRS, transform, and region. task = ee.batch.Export.image.toDrive( image=landsat, description='imageToDriveExample_transform', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, ) task.start()
هنگامی که این کد اجرا می شود، یک کار صادراتی در تب وظایف ویرایشگر کد ایجاد می شود. برای شروع روی دکمه Run در کنار کار کلیک کنید. (در مورد Task Manager از قسمت Code Editor بیشتر بیاموزید). تصویر در حساب Drive شما با fileFormat
مشخص شده ایجاد می شود.
به فضای ذخیره سازی ابری
برای صادر کردن یک تصویر به سطل فضای ذخیرهسازی Google Cloud، از Export.image.toCloudStorage()
استفاده کنید. برای صادر کردن تصویر Landsat در مثال قبلی به جای Drive به Cloud Storage، از:
ویرایشگر کد (جاوا اسکریپت)
// Export the image to Cloud Storage. Export.image.toCloudStorage({ image: landsat, description: 'imageToCloudExample', bucket: 'your-bucket-name', fileNamePrefix: 'exampleExport', crs: projection.crs, crsTransform: projection.transform, region: geometry });
import ee import geemap.core as geemap
کولب (پایتون)
# Export the image to Cloud Storage. task = ee.batch.Export.image.toCloudStorage( image=landsat, description='imageToCloudExample', bucket='your-bucket-name', fileNamePrefix='exampleExport', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, ) task.start()
همانند صادرات به Drive، صادرات را از برگه Tasks شروع کنید. مکان سطل ذخیرهسازی ابری میتواند بر عملکرد و هزینههای ذخیرهسازی تأثیر بگذارد، برای اطلاعات بیشتر به بخش سؤالات متداول در مورد ملاحظات مکان مراجعه کنید.
به دارایی
برای صادر کردن یک تصویر به یک دارایی در پوشه دارایی های Earth Engine خود، از Export.image.toAsset()
استفاده کنید. برای مدیریت داراییهای Earth Engine یا بررسی میزان استفاده از سهمیه فضای ذخیرهسازی، از Asset Manager استفاده کنید. مثال زیر صادرات بخشهایی از تصویر Landsat را با استفاده از سیاستهای مختلف هرمی برای یک باند نشان میدهد. خطمشی هرمی نشان میدهد که Earth Engine چگونه نسخههای با وضوح پایینتر از دارایی را محاسبه میکند. درباره نحوه عملکرد Earth Engine با وضوح های متعدد در مقیاس سند بیشتر بیاموزید.
ویرایشگر کد (جاوا اسکریپت)
// Get band 4 from the Landsat image, copy it. var band4 = landsat.select('B4').rename('b4_mean') .addBands(landsat.select('B4').rename('b4_sample')) .addBands(landsat.select('B4').rename('b4_max')); // Export the image to an Earth Engine asset. Export.image.toAsset({ image: band4, description: 'imageToAssetExample', assetId: 'exampleExport', crs: projection.crs, crsTransform: projection.transform, region: geometry, pyramidingPolicy: { 'b4_mean': 'mean', 'b4_sample': 'sample', 'b4_max': 'max' } });
import ee import geemap.core as geemap
کولب (پایتون)
# Get band 4 from the Landsat image, copy it. band_4 = ( landsat.select('B4') .rename('b4_mean') .addBands(landsat.select('B4').rename('b4_sample')) .addBands(landsat.select('B4').rename('b4_max')) ) # Export the image to an Earth Engine asset. task = ee.batch.Export.image.toAsset( image=band_4, description='imageToAssetExample', assetId='projects/your-project/assets/exampleExport', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, pyramidingPolicy={ 'b4_mean': 'mean', 'b4_sample': 'sample', 'b4_max': 'max', }, ) task.start()
شما می توانید با استفاده از کلید '.default'
یک خط مشی هرمی پیش فرض برای هر باندی که به صراحت مشخص نشده است ارائه دهید. شما همچنین می توانید فقط کلید '.default'
را پاس کنید. برای مثال، برای پیشفرض کردن همه باندها به سیاست هرمی «نمونه»، از {'.default': 'sample'}
استفاده کنید.
پارامترهای پیکربندی
توجه داشته باشید که فرهنگ لغت پارامترهای پیکربندی ارسال شده به Export.image
شامل scale
(بر حسب متر) و ناحیه صادرات به عنوان ee.Geometry
است. تصویر صادر شده ناحیه مشخص شده را با پیکسل در مقیاس مشخص شده پوشش می دهد. اگر به صراحت مشخص نشده باشد، CRS خروجی از اولین باند تصویری که صادر می شود گرفته می شود.
همچنین می توانید dimensions
، crs
و/یا crsTransform
تصویر صادر شده را مشخص کنید. برای اطلاعات بیشتر در مورد crs
و crsTransform
به واژه نامه مراجعه کنید. به عنوان مثال، برای به دست آوردن یک بلوک از پیکسل ها که دقیقاً با منبع داده دیگری تراز شده است، dimensions
، crs
و crsTransform
را مشخص کنید. برای به دست آوردن بلوکی از پیکسل ها با اندازه از پیش تعریف شده (به عنوان مثال یک تصویر کوچک 256x256) که یک منطقه را پوشش می دهد، dimensions
و region
را مشخص کنید.
می توانید فرمت خروجی تصویر (اگر مقصد toAsset()
نباشد) با پارامتر fileFormat
(به طور پیش فرض 'GeoTIFF'
).
پارامتر formatOptions
سایر گزینههای پیکربندی با پارامتر formatOptions
تنظیم میشوند، که باید یک فرهنگ لغت باشد که توسط گزینههای قالب دیگر، مخصوص هر fileFormat
که در زیر توضیح داده شده است، کلید میخورد.
GeoTIFF
GeoTIFF بهینه سازی شده در فضای ابری
برای صادر کردن یک GeoTIFF بهینه سازی شده ابری ، یک جاوا اسکریپت تحت اللفظی برای formatOptions
ارسال کنید که در آن کلید cloudOptimized
روی true تنظیم شده است. ادامه مثال قبل:
ویرایشگر کد (جاوا اسکریپت)
// Export a cloud-optimized GeoTIFF. Export.image.toDrive({ image: landsat, description: 'imageToCOGeoTiffExample', crs: projection.crs, crsTransform: projection.transform, region: geometry, fileFormat: 'GeoTIFF', formatOptions: { cloudOptimized: true } });
import ee import geemap.core as geemap
کولب (پایتون)
# Export a cloud-optimized GeoTIFF. task = ee.batch.Export.image.toDrive( image=landsat, description='imageToCOGeoTiffExample', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, fileFormat='GeoTIFF', formatOptions={'cloudOptimized': True}, ) task.start()
GeoTIFF های بهینه سازی شده در فضای ابری را می توان از فضای ذخیره سازی ابری در یک Image
بارگیری مجدد کرد. برای جزئیات به اسناد نمای کلی Image
مراجعه کنید.
نوداده
مقدار Nodata GeoTIFF را با استفاده از کلید noData
در پارامتر formatOptions
تعیین کنید. به عنوان مثال:
ویرایشگر کد (جاوا اسکریپت)
// Set a nodata value and replace masked pixels around the image edge with it. var noDataVal = -9999; landsat = landsat.unmask(noDataVal); Export.image.toDrive({ image: landsat, description: 'imageNoDataExample', crs: projection.crs, scale: 2000, // large scale for minimal demo region: landsat.geometry(), // full image bounds fileFormat: 'GeoTIFF', formatOptions: { noData: noDataVal, } });
import ee import geemap.core as geemap
کولب (پایتون)
# Set a nodata value and replace masked pixels around the image edge with it. no_data_val = -9999 landsat = landsat.unmask(no_data_val) task = ee.batch.Export.image.toDrive( image=landsat, description='imageNoDataExample', crs=projection['crs'], scale=2000, # large scale for minimal demo region=landsat.geometry(), # full image bounds fileFormat='GeoTIFF', formatOptions={'noData': no_data_val}, ) task.start()
توجه داشته باشید که مقدار nodata باید در محدوده معتبر PixelType
تصویر باشد. میتوانید PixelType
با چاپ فراداده تصویر و مشاهده ویژگی data_type
باند اول بررسی کنید. همچنین میتوانید PixelType
تصویر را با فرستادن دادهها به یک نوع خاص با استفاده از روشهای تصویر toShort()
یا toInt()
تنظیم کنید.
TFRecord
صفحه قالب داده TFRecord را ببینید.
maxPixels
پارامتر maxPixels
برای جلوگیری از ایجاد ناخواسته صادرات بسیار بزرگ در نظر گرفته شده است. اگر مقدار پیشفرض برای تصویر خروجی مورد نظر شما بسیار کم است، میتوانید maxPixels
را افزایش دهید. به عنوان مثال:
Export.image.toDrive({ image: landsat, description: 'maxPixelsExample', crs: projection.crs, crsTransform: projection.transform, region: geometry, maxPixels: 1e9 });
صادرات فایل های بزرگ
اگر تصویر خروجی بزرگ باشد، به صورت چندین فایل صادر می شود. اگر به GeoTIFF(ها) صادر میکنید، تصویر به کاشیها تقسیم میشود. نام فایل هر کاشی به شکل baseFilename-yMin-xMin
خواهد بود که در آن xMin
و yMin
مختصات هر کاشی در کادر مرزی کلی تصویر صادر شده است.
اگر به TFRecord صادر میکنید، فایلها با -00000
، -00001
،... -0000N
برای فایلهای N+1 اضافه میشوند. اگر میخواهید استنتاج روی فایلها انجام دهید و پیشبینیها را بهعنوان تصویر به Earth Engine برگردانید، حفظ این نظم مهم است. برای جزئیات بیشتر به آپلود تصاویر به عنوان فایل های TFRecord مراجعه کنید.
صادرات تصاویر همانطور که در ویرایشگر کد ظاهر می شوند
برای صادر کردن تصاویری که بر روی صفحه نمایش داده شده در Earth Engine، تصاویر تجسمی ایجاد کنید همانطور که در تصاویر Visualization و بخش های Compositing و Mosaicking نشان داده شده است. از آنجایی که ویرایشگر کد از CRS 'EPSG:3857'
استفاده میکند، یک CRS از 'EPSG:3857'
را در صادرات مشخص کنید تا تصویری در همان تصویری که در نقشه ویرایشگر کد نمایش داده شده است، دریافت کنید. برای جزئیات در مورد تعیین وضوح و سیستم مختصات خروجی، به بخش پیکربندی صادرات تصویر مراجعه کنید.
می توانید تصاویر را از Earth Engine در قالب GeoTIFF یا TFRecord صادر کنید. برای گزینه های خروجی بیشتر به پارامترهای پیکربندی مراجعه کنید.
راه اندازی مثال
با تعریف داده های تصویری که صادر می شود شروع کنید:
ویرایشگر کد (جاوا اسکریپت)
// Load a landsat image and select three bands. var landsat = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_123032_20140515') .select(['B4', 'B3', 'B2']); // Create a geometry representing an export region. var geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236]);
import ee import geemap.core as geemap
کولب (پایتون)
# Load a landsat image and select three bands. landsat = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_123032_20140515').select( ['B4', 'B3', 'B2'] ) # Create a geometry representing an export region. geometry = ee.Geometry.Rectangle([116.2621, 39.8412, 116.4849, 40.01236])
سپس پارامترهای طرح ریزی را که در صادرات زیر استفاده می شود، تعریف کنید. ما از پارامتر crs
برای تعیین سیستم مختصات و از پارامتر crsTransform
برای تعیین دقیق شبکه پیکسل استفاده می کنیم. پارامتر crsTransform
فهرستی از پارامترها از یک ماتریس تبدیل افین به ترتیب ردیف اصلی [xScale, xShearing, xTranslation, yShearing, yScale, yTranslation]
است. مبدأ یک تصویر با مقادیر xTranslation
و yTranslation
و اندازه پیکسل تصویر با مقادیر xScale
و yScale
تعیین می شود. نمونه هایی از ماتریس های افین را ببینید.
ویرایشگر کد (جاوا اسکریپت)
// Retrieve the projection information from a band of the original image. // Call getInfo() on the projection to request a client-side object containing // the crs and transform information needed for the client-side Export function. var projection = landsat.select('B2').projection().getInfo();
import ee import geemap.core as geemap
کولب (پایتون)
# Retrieve the projection information from a band of the original image. # Call getInfo() on the projection to request a client-side object containing # the crs and transform information needed for the client-side Export function. projection = landsat.select('B2').projection().getInfo()
تنظیم scale
به عنوان میانبر، می توانید یک پارامتر scale
را مشخص کنید و Earth Engine یک پارامتر crsTransform
را برای شما محاسبه می کند. با این حال، صرفاً تنظیم مقیاس یک تصویر، مبدا طرح ریزی را مشخص نمی کند و ممکن است منجر به تغییر تصویر نسبت به تصویر دیگری با همان اندازه پیکسل شود!
دلیل تغییر پتانسیل این است که از پارامتر scale
برای پر کردن مقادیر xScale
و yScale
crsTransform
استفاده می شود، اما مقادیر xTranslation
و yTranslation
به گونه ای محاسبه می شوند که اگر بر مقادیر xScale
و yScale
مربوطه تقسیم شوند، باقیمانده صفر خواهد بود. این پارامترها یک شبکه پیکسلی را مشخص می کنند که مبدأ طرح ریزی در گوشه یک پیکسل است. این قرارداد با پارامترهای ترجمه استفاده شده توسط برخی از ارائه دهندگان داده، که از شبکههایی استفاده میکنند که از مبدأ طرحریزی جدا شدهاند، متفاوت است. به عنوان مثال، تصاویر Landsat ارائه شده توسط USGS از پارامترهای ترجمه استفاده می کنند که با 1/2 پیکسل از مبدأ طرح فاصله دارد (15m offset برای باندهای 30 متری) در حالی که تصاویر Sentinel-2 ارائه شده توسط ESA از پارامترهای ترجمه استفاده می کنند که با مبدأ طرح ریزی هماهنگ هستند. اگر crsTransform
مشخصشده در یک صادرات با crsTransform
تصویر اصلی مطابقت نداشته باشد، پیکسلهای خروجی مجدداً نمونهگیری میشوند (به طور پیشفرض با استفاده از نزدیکترین همسایه)، که باعث میشود تصویر حاصل نسبت به تصویر اصلی جابجا شود.
به طور خلاصه، اگر نیاز دارید پیکسل های تصویر صادر شده را با یک تصویر خاص مطابقت دهید، مطمئن شوید که از پارامترهای crs
و crsTransform
برای کنترل کامل شبکه استفاده کنید.
به درایو
برای صادرات یک تصویر به حساب Drive خود، از Export.image.toDrive()
استفاده کنید. به عنوان مثال، برای صادرات بخش هایی از یک تصویر Landsat، یک منطقه برای صادرات تعریف کنید، سپس Export.image.toDrive()
را فراخوانی کنید:
ویرایشگر کد (جاوا اسکریپت)
// Export the image, specifying the CRS, transform, and region. Export.image.toDrive({ image: landsat, description: 'imageToDriveExample_transform', crs: projection.crs, crsTransform: projection.transform, region: geometry });
import ee import geemap.core as geemap
کولب (پایتون)
# Export the image, specifying the CRS, transform, and region. task = ee.batch.Export.image.toDrive( image=landsat, description='imageToDriveExample_transform', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, ) task.start()
هنگامی که این کد اجرا می شود، یک کار صادراتی در تب وظایف ویرایشگر کد ایجاد می شود. برای شروع روی دکمه Run در کنار کار کلیک کنید. (در مورد Task Manager از قسمت Code Editor بیشتر بیاموزید). تصویر در حساب Drive شما با fileFormat
مشخص شده ایجاد می شود.
به فضای ذخیره سازی ابری
برای صادر کردن یک تصویر به سطل فضای ذخیرهسازی Google Cloud، از Export.image.toCloudStorage()
استفاده کنید. برای صادر کردن تصویر Landsat در مثال قبلی به جای Drive به Cloud Storage، از:
ویرایشگر کد (جاوا اسکریپت)
// Export the image to Cloud Storage. Export.image.toCloudStorage({ image: landsat, description: 'imageToCloudExample', bucket: 'your-bucket-name', fileNamePrefix: 'exampleExport', crs: projection.crs, crsTransform: projection.transform, region: geometry });
import ee import geemap.core as geemap
کولب (پایتون)
# Export the image to Cloud Storage. task = ee.batch.Export.image.toCloudStorage( image=landsat, description='imageToCloudExample', bucket='your-bucket-name', fileNamePrefix='exampleExport', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, ) task.start()
همانند صادرات به Drive، صادرات را از برگه Tasks شروع کنید. مکان سطل ذخیرهسازی ابری میتواند بر عملکرد و هزینههای ذخیرهسازی تأثیر بگذارد، برای اطلاعات بیشتر به بخش سؤالات متداول در مورد ملاحظات مکان مراجعه کنید.
به دارایی
برای صادر کردن یک تصویر به یک دارایی در پوشه دارایی های Earth Engine خود، از Export.image.toAsset()
استفاده کنید. برای مدیریت داراییهای Earth Engine یا بررسی میزان استفاده از سهمیه فضای ذخیرهسازی، از Asset Manager استفاده کنید. مثال زیر صادرات بخشهایی از تصویر Landsat را با استفاده از سیاستهای مختلف هرمی برای یک باند نشان میدهد. خطمشی هرمی نشان میدهد که Earth Engine چگونه نسخههای با وضوح پایینتر از دارایی را محاسبه میکند. درباره نحوه عملکرد Earth Engine با وضوح های متعدد در مقیاس سند بیشتر بیاموزید.
ویرایشگر کد (جاوا اسکریپت)
// Get band 4 from the Landsat image, copy it. var band4 = landsat.select('B4').rename('b4_mean') .addBands(landsat.select('B4').rename('b4_sample')) .addBands(landsat.select('B4').rename('b4_max')); // Export the image to an Earth Engine asset. Export.image.toAsset({ image: band4, description: 'imageToAssetExample', assetId: 'exampleExport', crs: projection.crs, crsTransform: projection.transform, region: geometry, pyramidingPolicy: { 'b4_mean': 'mean', 'b4_sample': 'sample', 'b4_max': 'max' } });
import ee import geemap.core as geemap
کولب (پایتون)
# Get band 4 from the Landsat image, copy it. band_4 = ( landsat.select('B4') .rename('b4_mean') .addBands(landsat.select('B4').rename('b4_sample')) .addBands(landsat.select('B4').rename('b4_max')) ) # Export the image to an Earth Engine asset. task = ee.batch.Export.image.toAsset( image=band_4, description='imageToAssetExample', assetId='projects/your-project/assets/exampleExport', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, pyramidingPolicy={ 'b4_mean': 'mean', 'b4_sample': 'sample', 'b4_max': 'max', }, ) task.start()
شما می توانید با استفاده از کلید '.default'
یک خط مشی هرمی پیش فرض برای هر باندی که به صراحت مشخص نشده است ارائه دهید. شما همچنین می توانید فقط کلید '.default'
را پاس کنید. برای مثال، برای پیشفرض کردن همه باندها به سیاست هرمی «نمونه»، از {'.default': 'sample'}
استفاده کنید.
پارامترهای پیکربندی
توجه داشته باشید که فرهنگ لغت پارامترهای پیکربندی ارسال شده به Export.image
شامل scale
(بر حسب متر) و ناحیه صادرات به عنوان ee.Geometry
است. تصویر صادر شده ناحیه مشخص شده را با پیکسل در مقیاس مشخص شده پوشش می دهد. اگر به صراحت مشخص نشده باشد، CRS خروجی از اولین باند تصویری که صادر می شود گرفته می شود.
همچنین می توانید dimensions
، crs
و/یا crsTransform
تصویر صادر شده را مشخص کنید. برای اطلاعات بیشتر در مورد crs
و crsTransform
به واژه نامه مراجعه کنید. به عنوان مثال، برای به دست آوردن یک بلوک از پیکسل ها که دقیقاً با منبع داده دیگری تراز شده است، dimensions
، crs
و crsTransform
را مشخص کنید. برای به دست آوردن بلوکی از پیکسل ها با اندازه از پیش تعریف شده (به عنوان مثال یک تصویر کوچک 256x256) که یک منطقه را پوشش می دهد، dimensions
و region
را مشخص کنید.
می توانید فرمت خروجی تصویر (اگر مقصد toAsset()
نباشد) با پارامتر fileFormat
(به طور پیش فرض 'GeoTIFF'
).
پارامتر formatOptions
سایر گزینههای پیکربندی با پارامتر formatOptions
تنظیم میشوند، که باید یک فرهنگ لغت باشد که توسط گزینههای قالب دیگر، مخصوص هر fileFormat
که در زیر توضیح داده شده است، کلید میخورد.
GeoTIFF
GeoTIFF بهینه سازی شده در فضای ابری
برای صادر کردن یک GeoTIFF بهینه سازی شده ابری ، یک جاوا اسکریپت تحت اللفظی برای formatOptions
ارسال کنید که در آن کلید cloudOptimized
روی true تنظیم شده است. ادامه مثال قبل:
ویرایشگر کد (جاوا اسکریپت)
// Export a cloud-optimized GeoTIFF. Export.image.toDrive({ image: landsat, description: 'imageToCOGeoTiffExample', crs: projection.crs, crsTransform: projection.transform, region: geometry, fileFormat: 'GeoTIFF', formatOptions: { cloudOptimized: true } });
import ee import geemap.core as geemap
کولب (پایتون)
# Export a cloud-optimized GeoTIFF. task = ee.batch.Export.image.toDrive( image=landsat, description='imageToCOGeoTiffExample', crs=projection['crs'], crsTransform=projection['transform'], region=geometry, fileFormat='GeoTIFF', formatOptions={'cloudOptimized': True}, ) task.start()
GeoTIFF های بهینه سازی شده در فضای ابری را می توان از فضای ذخیره سازی ابری در یک Image
بارگیری مجدد کرد. برای جزئیات به اسناد نمای کلی Image
مراجعه کنید.
نوداده
مقدار Nodata GeoTIFF را با استفاده از کلید noData
در پارامتر formatOptions
تعیین کنید. به عنوان مثال:
ویرایشگر کد (جاوا اسکریپت)
// Set a nodata value and replace masked pixels around the image edge with it. var noDataVal = -9999; landsat = landsat.unmask(noDataVal); Export.image.toDrive({ image: landsat, description: 'imageNoDataExample', crs: projection.crs, scale: 2000, // large scale for minimal demo region: landsat.geometry(), // full image bounds fileFormat: 'GeoTIFF', formatOptions: { noData: noDataVal, } });
import ee import geemap.core as geemap
کولب (پایتون)
# Set a nodata value and replace masked pixels around the image edge with it. no_data_val = -9999 landsat = landsat.unmask(no_data_val) task = ee.batch.Export.image.toDrive( image=landsat, description='imageNoDataExample', crs=projection['crs'], scale=2000, # large scale for minimal demo region=landsat.geometry(), # full image bounds fileFormat='GeoTIFF', formatOptions={'noData': no_data_val}, ) task.start()
توجه داشته باشید که مقدار nodata باید در محدوده معتبر PixelType
تصویر باشد. میتوانید PixelType
با چاپ فراداده تصویر و مشاهده ویژگی data_type
باند اول بررسی کنید. همچنین میتوانید PixelType
تصویر را با فرستادن دادهها به یک نوع خاص با استفاده از روشهای تصویر toShort()
یا toInt()
تنظیم کنید.
TFRecord
صفحه قالب داده TFRecord را ببینید.
maxPixels
پارامتر maxPixels
برای جلوگیری از ایجاد ناخواسته صادرات بسیار بزرگ در نظر گرفته شده است. اگر مقدار پیشفرض برای تصویر خروجی مورد نظر شما بسیار کم است، میتوانید maxPixels
را افزایش دهید. به عنوان مثال:
Export.image.toDrive({ image: landsat, description: 'maxPixelsExample', crs: projection.crs, crsTransform: projection.transform, region: geometry, maxPixels: 1e9 });
صادرات فایل های بزرگ
اگر تصویر خروجی بزرگ باشد، به صورت چندین فایل صادر می شود. اگر به GeoTIFF(ها) صادر میکنید، تصویر به کاشیها تقسیم میشود. نام فایل هر کاشی به شکل baseFilename-yMin-xMin
خواهد بود که در آن xMin
و yMin
مختصات هر کاشی در کادر مرزی کلی تصویر صادر شده است.
اگر به TFRecord صادر میکنید، فایلها با -00000
، -00001
،... -0000N
برای فایلهای N+1 اضافه میشوند. اگر میخواهید استنتاج روی فایلها انجام دهید و پیشبینیها را بهعنوان تصویر به Earth Engine برگردانید، حفظ این نظم مهم است. برای جزئیات بیشتر به آپلود تصاویر به عنوان فایل های TFRecord مراجعه کنید.
صادرات تصاویر همانطور که در ویرایشگر کد ظاهر می شوند
برای صادر کردن تصاویری که بر روی صفحه نمایش داده شده در Earth Engine، تصاویر تجسمی ایجاد کنید همانطور که در تصاویر Visualization و بخش های Compositing و Mosaicking نشان داده شده است. از آنجایی که ویرایشگر کد از CRS 'EPSG:3857'
استفاده میکند، یک CRS از 'EPSG:3857'
را در صادرات مشخص کنید تا تصویری در همان تصویری که در نقشه ویرایشگر کد نمایش داده شده است، دریافت کنید. برای جزئیات در مورد تعیین وضوح و سیستم مختصات خروجی، به بخش پیکربندی صادرات تصویر مراجعه کنید.