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


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