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


Python ArcGIS linear_spectral_unmixing用法及代碼示例

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

用法:

arcgis.raster.analytics.linear_spectral_unmixing(input_raster, input_spectral_profile, value_option=[], output_name=None, context=None, *, gis=None, future=False, **kwargs)

返回:

output_raster:影像圖層項目

執行亞像素分類並計算單個像素的端元豐度分數。 ArcGIS Image Server 10.8 及更高版本中可用的函數。

Parameter

Description

input_raster

必需的 ImageryLayer 對象。輸入柵格。傳送門物品可以通過。

input_spectral_profile

必需的字典或字符串。類頻譜輪廓信息。

value_option

可選的字符串列表。指定用於定義輸出像素值的選項。

  • SUM_TO_ONE:每個像素的類值以十進製格式提供,所有類的總和等於 1。例如,Class1 = 0.16; 2 類 = 0.24; 3 類 = 0.60。

  • NON_NEGATIVE:不會有負輸出值。

output_name

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

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

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

context

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%”}

gis

僅關鍵字參數。可選的 GIS 對象。運行該工具的 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 參數,默認情況下會生成動態影像圖層。

示例 1:

# Usage Example 1: This example calculates the fractional abundance of classes from a classifier definition file (.ecd)
# located in a datastore registered with the raster analytics server and generates a multiband raster.

unmixing_output = linear_spectral_unmixing(input_raster=input_layer,
                                           input_spectral_profile="/fileShares/Mdim/SpectralUnmixing_json.ecd",
                                           output_name="linear_spectral_unmixing",
                                           gis=gis,
                                           folder="linear_spectral_unmixing")

示例 2:

# Usage Example 2: This example calculates the fractional abundance of classes from a dictionary and generates a multiband raster.

input_spectral_profile_dict = {"EsriEndmemberDefinitionFile":0,"FileVersion":1,"NumberEndmembers":3,"NumberBands":7,
                               "Endmembers":[{"EndmemberID":1,"EndmemberName":"urban","SpectralProfile":[88,42,48,38,86,115,59]},
                                             {"EndmemberID":2,"EndmemberName":"vegetation","SpectralProfile":[50,21,20,35,50,110,23]},
                                             {"EndmemberID":3,"EndmemberName":"water","SpectralProfile":[51,20,14,9,7,116,4]}]}

unmixing_outputs = arcgis.raster.analytics.linear_spectral_unmixing(input_raster=multidimensional_lyr_input,
                                                                    input_spectral_profile=input_spectral_profile_dict,
                                                                    value_option=["SUM_TO_ONE","NON_NEGATIVE"],
                                                                    output_name="linear_spectral_unmixing",
                                                                    gis=gis,
                                                                    folder={'username': 'user1', 'id': '6a3b77c187514ef7873ba73338cf1af8', 'title': 'trial'})

相關用法


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