當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python ArcGIS generate_raster用法及代碼示例


本文簡要介紹 python 語言中 arcgis.raster.analytics.generate_raster 的用法。

用法:

arcgis.raster.analytics.generate_raster(raster_function, function_arguments=None, output_raster_properties=None, output_name=None, process_as_multidimensional=None, build_transpose=None, context=None, *, gis=None, future=False, **kwargs)

返回:

ra_generate_raster.png

該函數允許您在分布式服務器部署上執行柵格分析。

Parameter

Description

raster_function

必需的,用於對輸入柵格數據集執行分析的柵格函數。該值可以是預定義柵格函數(例如 NDVI)的字符串關鍵字、說明柵格函數鏈的 JSON 對象以及服務器已知的內置函數,或者柵格函數模板文件 (*.rft) 的內容.xml)。

請參閱在分布式服務器上執行的柵格分析函數的完整列表:Raster function objects

function_arguments

可選,指定柵格函數參數值的字典。它是可選的,因為參數值也可以在函數模板中定義。 function_arguments 參數支持所有柵格函數的 RasterInfo 參數。 RasterInfo 中存儲的信息允許您指定輸出柵格數據集的屬性,例如像元大小、範圍和無數據。

例子:

{“Raster”: {“url”: <image service url>}, “ResamplingType”: 1}

對於單獨指定輸入柵格,可以傳遞門戶項目。 (即名稱為 “Raster” 的參數)

output_raster_properties

可選字典,可用於設置輸出柵格的關鍵元數據屬性。

例子:

{“SensorName”: “Landsat 8”, “CloudCover”: 20}

output_name

可選字符串。如果未提供,則由該方法創建影像服務並將其用作輸出柵格。您可以從 GIS 中傳入現有的影像服務項目來使用它。或者,您可以傳入應通過此方法創建的輸出圖像服務的名稱,以用作工具的輸出。如果該名稱的服務已經存在,則會引發 RuntimeError

process_as_multidimensional

可選布爾值,如果設置為 True,則處理為多維,如果輸入是多維柵格。

build_transpose

可選布爾值,如果設置為 true,則會轉換輸出多維柵格。僅當 process_as_multidimensional 設置為 True 時才有效。

context

可選的字典,上下文包含影響任務執行的附加設置。

context 參數覆蓋通過arcgis.env 參數設置的值

此函數具有以下設置:

  • Extent(範圍):定義分析區域的邊界框。

    例子:

    {“extent”: {“xmin”: -122.68,
    “ymin”: 45.53,
    “xmax”: -122.45,
    “ymax”: 45.6,
    “spatialReference”: {“wkid”: 4326}}}
  • 輸出空間參考 (outSR):輸出柵格將投影到輸出空間參考中。

    例子:

    {“outSR”: {spatial reference}}

  • 捕捉柵格 (snapRaster):輸出柵格的像元將與指定的捕捉柵格對齊。

    例子:

    {‘snapRaster’: {‘url’: ‘<image_service_url>’}}

  • 掩碼(mask):在操作中隻考慮落在分析掩碼內的單元格。

    例子:

    {“mask”: {“url”: “<image_service_url>”}}

  • 像元大小(cellSize):輸出柵格將具有由像元大小指定的分辨率。

    例子:

    {‘cellSize’: 11} or {‘cellSize’: {‘url’: <image_service_url>}} or {‘cellSize’: ‘MaxOfIn’}

  • 並行處理因子(parallelProcessingFactor):控製光柵處理(CPU)服務實例。

    例子:

    具有指定數量的處理實例的語法示例:

    {“parallelProcessingFactor”: “2”}

    具有指定百分比的總處理實例的語法示例:

    {“parallelProcessingFactor”: “60%”}

  • 重采樣方法(resamplingMethod):輸出柵格將被重采樣到指定的方法。支持的值為:BILINEAR、NEAREST、CUBIC。

    例子:

    {‘resamplingMethod’: “NEAREST”}

gis

可選的 GIS 對象。如果未指定,則使用當前活動的連接。

future

僅關鍵字參數。可選的布爾值。如果為 True,則結果將是一個 GPJob 對象,並且結果將異步返回。

folder

僅關鍵字參數。可選的 str 或 dict。使用給定的文件夾名稱在門戶中創建一個文件夾(如果不存在),並將輸出保留在此文件夾中。 create_folder() 返回的字典也可以作為輸入傳入。

例子:

{‘username’: ‘user1’,
‘id’: ‘6a3b77c187514ef7873ba73338cf1af8’,
‘title’: ‘trial’}

tiles_only

僅關鍵字參數。可選的布爾值。在ArcGIS Online 中,此函數的默認輸出影像服務將是平鋪影像圖層。

要在 ArcGIS Online 上創建動態影像圖層作為輸出,請將 tiles_only 參數設置為 False。

函數將不支持ArcGIS Enterprise 上的tiles_only 參數,默認情況下會生成動態影像圖層。

output_raster:影像圖層項目

例子:

# Usage Example 1: Performs raster analysis on a distributed server deployment.

generate_raster_op = generate_raster(raster_function={"rasterFunction":"Grayscale"},
                                     function_arguments = {"Raster": {"url":<url>}
                                     output_name="output_name",
                                     process_as_multidimensional=True
                                     gis=gis,
                                     tiles_only=True)

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 arcgis.raster.analytics.generate_raster。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。