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


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。