当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python ArcGIS classify用法及代码示例


本文简要介绍 python 语言中 arcgis.raster.analytics.classify 的用法。

用法:

arcgis.raster.analytics.classify(input_raster, input_classifier_definition, additional_input_raster=None, output_name=None, context=None, *, gis=None, future=False, **kwargs)

返回:

output_raster:影像图层项目

ra_classify.png

分类函数将根据输入栅格和从 train_classifier 函数生成的分类器定义字典创建像素类别。

Parameter

Description

input_raster

必需的 ImageryLayer 对象。

input_classifier_definition

必需的字典。

从train_classifier 函数生成的分类器定义字典。

例子:

{“EsriClassifierDefinitionFile”:0,
“FileVersion”:3,”NumberDefinitions”:1,
“Definitions”:[…]}

additional_input_raster

可选的 ImageryLayer 对象。这可以是分段栅格。

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):输出栅格将投影到输出空间参考中。

    例子:

    {“outSR”: {spatial reference}}

  • 捕捉栅格 (snapRaster):输出栅格的像元将与指定的捕捉栅格对齐。

    例子:

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

  • 像元大小(cellSize):输出栅格将具有由像元大小指定的分辨率。

    例子:

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

  • 并行处理因子(parallelProcessingFactor):控制光栅处理(CPU)服务实例。

    例子:

    具有指定数量的处理实例的语法示例:

    {“parallelProcessingFactor”: “2”}

    具有指定百分比的总处理实例的语法示例:

    {“parallelProcessingFactor”: “60%”}

  • 重采样方法(resamplingMethod):输出栅格将按照指定的方法进行重采样。

    支持的值有:双线性、最近的、三次的。

    例子:

    {‘resamplingMethod’: “Nearest”}

  • processAsMultidimensional - 指定是否将输入作为多维栅格进行处理。

    • False - 输入不会作为多维栅格处理。如果输入是多维的,则只处理当前显示的切片。

    • True - 输入将作为多维栅格进行处理,所有切片都将被处理以生成新的多维栅格。

    例子:

    {‘processAsMultidimensional’: True}

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 参数,默认情况下会生成动态影像图层。

例子:

# Usage Example 1: Classifies a raster based on an Esri Classifier Definition dictionary and raster data inputs.

classifier = {
    'EsriClassifierDefinitionFile': 0,
    'FileVersion': 3,
    'NumberDefinitions': 1,
    'Definitions': [...],
    }

raster = gis.content.search('image_tif')[0].layers[0]

classify_op = classify(input_raster=raster,
                       input_classifier_definition=classifier,
                       gis=gis)

# Usage Example 2: Performs classification such that the output raster is projected onto the specified spatial reference.

classify_op = classify(input_raster=raster,
                       input_classifier_definition=classifier,
                       context={"outSR":{spatial reference}}
                       gis=gis)

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 arcgis.raster.analytics.classify。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。