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


Python ArcGIS compute_change_raster用法及代碼示例


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

用法:

arcgis.raster.analytics.compute_change_raster(input_from_raster, input_to_raster, compute_change_method='DIFFERENCE', from_classes=None, to_classes=None, filter_method='CHANGED_PIXELS_ONLY', transition_class_colors='AVERAGE', output_name=None, context=None, from_class_name_field_name=None, to_class_name_field_name=None, *, gis=None, future=False, **kwargs)

返回:

輸出影像圖層項

函數計算兩個柵格數據集之間的絕對、相對或分類差異。 ArcGIS Image Server 10.9 及更高版本中可用的函數。

Parameter

Description

input_from_raster

必需的 ImageryLayer 對象。要分析的初始或較早柵格。

input_to_raster

必需的 ImageryLayer 對象。要分析的最終或稍後的柵格。這是將與初始柵格進行比較的柵格。

compute_change_method

可選字符串。指定要在兩個柵格之間執行的計算類型。

  • DIFFERENCE - 將計算柵格中像素值之間的數學差異或減法。這是默認設置。

  • RELATIVE_DIFFERENCE - 將計算像素值的差異,考慮到被比較的值的數量。

  • CATEGORICAL_DIFFERENCE - 將計算兩個分類或專題柵格之間的差異,其中輸出包含兩個柵格之間發生的類轉換。

  • SPECTRAL_EUCLIDEAN_DISTANCE - 兩個多波段柵格之間的歐幾裏德距離,

    其中每個像素被視為一個向量。值越大表示圖像之間的變化越大。

  • SPECTRAL_ANGLE_DIFFERENCE - 兩個多波段柵格之間的頻譜角,其中

    每個像素都被視為一個向量。角度越大表示圖像之間的變化越大。

  • BAND_WITH_MOST_CHANGE - 造成每個像素之間變化最大的波段

    兩個多波段柵格。

例子:

“DIFFERENCE”

from_classes

可選字符串或列表。來自 input_from_raster 參數的類名將包含在計算中。如果沒有提供類,則將包括所有類。

當 compute_change_method 參數設置為 CATEGORICAL_DIFFERENCE 時,將使用此參數。

例子:

[“Water”, “Developed”]

to_classes

可選字符串或列表。來自 input_to_raster 參數的類名將包含在計算中。如果沒有提供類,則將包括所有類。

當 compute_change_method 參數設置為 CATEGORICAL_DIFFERENCE 時,將使用此參數。

例子:

[“Water”, “Developed”]

filter_method

可選字符串。指定要在輸出柵格中分類的像素。

當 compute_change_method 參數設置為 CATEGORICAL_DIFFERENCE 時,將使用此參數。

  • ALL - 所有像素都將在輸出中分類。這是默認設置。

  • CHANGED_PIXELS_ONLY - 隻有更改類別的像素才會在輸出中分類。所有未更改類別的像素將被分組到一個名為“其他”的類中。

  • UNCHANGED_PIXELS_ONLY - 隻有沒有改變類別的像素才會在輸出中分類。所有更改類別的像素都將成為名為“其他”的類別中的組。

例子:

“ALL”

transition_class_colors

可選字符串。指定要在輸出柵格中分類的像素。

當 compute_change_method 參數設置為 CATEGORICAL_DIFFERENCE 時,將使用此參數。

  • AVERAGE - 對輸出類使用 from 類和 to 類的顏色平均值。這是默認設置。

  • FROM_COLOR - 使用來自類的顏色作為輸出。

  • TO_COLOR - 使用 to 類的顏色作為輸出。

例子:

“AVERAGE”

output_name

可選字符串。如果未提供,則由該方法創建影像服務並將其用作輸出柵格。您可以從 GIS 中傳入現有的影像服務項目來使用它。

或者,您可以傳入應通過此方法創建的輸出圖像服務的名稱,以用作工具的輸出。

如果該名稱的服務已經存在,則會引發 RuntimeError

context

上下文包含影響任務執行的其他設置。

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

此函數具有以下設置:

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

    例子:

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

    Example:

    {“outSR”: {spatial reference}}

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

    Example:

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

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

    Example:

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

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

    Example:

    Syntax example with a specified number of processing instances:

    {“parallelProcessingFactor”: “2”}

    Syntax example with a specified percentage of total processing instances:

    {“parallelProcessingFactor”: “60%”}

from_class_name_field_name

可選字符串。在input_from_raster 中存儲類名的字段。該函數會自動搜索要使用的 CLASSNAME 字段或 CLASS_NAME 字段。如果輸入不包含這些標準字段名稱,請使用此參數示例:“CLASSES”

to_class_name_field_name

可選字符串。在input_to_raster 中存儲類名的字段。該函數會自動搜索要使用的 CLASSNAME 字段或 CLASS_NAME 字段。如果輸入不包含這些標準字段名稱,請使用此參數示例:“CLASSES”

gis

可選的地理信息係統。運行此工具的 GIS 。如果未指定,則使用活動 GIS。

future

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

tiles_only

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

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

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

folder

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

例子:

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

例子:

# Usage Example 1:

compute_change_raster_op = compute_change_raster(input_from_raster=input_from_raster,
                                                 input_to_raster=input_to_raster,
                                                 from_classes="Class1",
                                                 to_classes="Class2",
                                                 filter_method="ALL",
                                                 gis=gis)

相關用法


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