地形位置指数 (Spatial Analyst 工具)
汇总
用法
此工具的输出栅格包含每个像元的地形位置指数 (TPI) 值。 TPI 值是当前像元值与其邻域中所有像元的平均值之间的差值。
可用的邻域形状有环形(圆环或环)、圆形、矩形和楔形。 使用核文件可定义自定义邻域形状。
当指定圆形、环形或楔形邻域时,由于像元的中心必须位于在邻域中,因此在计算中可能不会考虑一些外部对角线像元。
不规则邻域类型需要指定核文件值。 核文件是一个 ASCII 文本文件,用于指定邻域的值和形状。 可以使用任何纯文本编辑器来创建此文件。 文件的扩展名必须是 .txt,且文件名中没有空格。
当输出栅格格式为 .crf 时,此工具支持金字塔栅格存储环境。 默认情况下,将在输出中创建金字塔。 对于任何其他输出格式,不支持此环境,并且不会创建金字塔。
有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。
参数
|
标注
|
说明
|
数据类型
|
|
输入表面栅格
|
输入表面栅格。
|
Raster Layer
|
|
邻域
(可选)
|
TPI 计算中将使用的处理像元周围的像元。 有多种预定义邻域类型可供选择,也可以定义自定义核。
选择邻域类型后,可设置其他参数来完全定义形状、大小和测量单位。 默认邻域是一个内半径为一个像元、外半径为三个像元的环形区域。
以下为可用邻域类型的形式:
环形,内半径,外半径,单位类型
由内半径和外半径定义的环或圆环形邻域。 半径的最小值为 1 个像元,并且外半径必须大于内半径。 最大内半径为 2046 个像元,最大外半径为 2047 个像元。 默认环形的内半径为 1 个像元,外半径为 3 个像元。
圆形,半径,单位类型
具有给定半径的圆形邻域。 最小半径为 1 个像元,最大值为 2047 个像元。 默认半径为 3 个像元。
矩形,高度,宽度,单位类型
由宽度和高度定义的矩形邻域。 宽度或高度的最小值为 1 个像元,最大值为 4096 个像元。 默认设置是宽度和高度为 3 个像元的正方形。
楔形,半径,起始角度,终止角度,单位类型
由半径、起始角度和终止角度定义的楔形邻域。 最小半径为 1 个像元,最大值为 2047 个像元。 楔形按逆时针方向从起始角延伸到终止角。 角度以度为单位进行指定,0 或 360 的值表示东方。 也可使用负角度。 默认楔形起始角度为 0 度,终止角度为 90 度,半径为 3 个像元。
不规则,核文件
带有通过已识别核文本文件设置的规范的自定义邻域。 核宽度或高度的最小值为 1 个像元,最大值为 4096 个像元。
对于环形、圆形、矩形和楔形邻域类型,参数的距离单位能够以像元单位或地图单位进行指定。 默认设置为“像元”单位。
对于不规则邻域类型,核文件中的第一行将以像元数来定义邻域的宽度和高度。 后续各行将指示如何处理与核中该位置相对应的输入值。 核文件中的值为 0 表示相应位置将不包括在计算中。 核文件中的值为 1 表示相应的输入像元将包含在运算中。
|
Neighborhood
|
返回值
|
标注
|
说明
|
数据类型
|
|
输出栅格
|
输出地形位置指数栅格。
|
Raster
|
TopographicPositionIndex(in_raster, {neighborhood})
|
名称
|
说明
|
数据类型
|
|
in_raster
|
输入表面栅格。
|
Raster Layer
|
|
neighborhood
(可选)
|
TPI 计算中将使用的处理像元周围的像元。 有多种预定义邻域类型可供选择,也可以定义自定义核。
选择邻域类型后,可设置其他参数来完全定义形状、大小和测量单位。 默认邻域是一个内半径为一个像元、外半径为三个像元的环形区域。
邻域的形状将由 Neighborhood 类进行定义。 可用的邻域类型有 NbrAnnulus、NbrCircle、NbrRectangle、NbrWedge 和 NbrIrregular。
以下为可用邻域类型的形式:
NbrAnnulus({innerRadius}, {outerRadius}, {units})
由内半径和外半径定义的环或圆环形邻域。 半径的最小值为 1 个像元,并且外半径必须大于内半径。 最大内半径为 2046 个像元,最大外半径为 2047 个像元。 默认环形的内半径为 1 个像元,外半径为 3 个像元。
NbrCircle({radius}, {units}
具有给定半径的圆形邻域。 最小半径为 1 个像元,最大值为 2047 个像元。 默认半径为 3 个像元。
NbrRectangle({width}, {height}, {units})
由宽度和高度定义的矩形邻域。 宽度或高度的最小值为 1 个像元,最大值为 4096 个像元。 默认设置是宽度和高度为 3 个像元的正方形。
NbrWedge({radius}, {startAngle}, {endAngle}, {units})
由半径、起始角度和终止角度定义的楔形邻域。 最小半径为 1 个像元,最大值为 2047 个像元。 楔形按逆时针方向从起始角延伸到终止角。 角度以度为单位进行指定,0 或 360 的值表示东方。 也可使用负角度。 默认楔形起始角度为 0 度,终止角度为 90 度,半径为 3 个像元。
NbrIrregular(inKernelFile)
带有通过已识别核文本文件设置的规范的自定义邻域。 核宽度或高度的最小值为 1 个像元,最大值为 4096 个像元。
对于不规则邻域类型,核文件中的第一行将以像元数来定义邻域的宽度和高度。 后续各行将指示如何处理与核中该位置相对应的输入值。 核文件中的值为 0 表示相应位置将不包括在计算中。 核文件中的值为 1 表示相应的输入像元将包含在运算中。
|
Neighborhood
|
返回值
|
名称
|
说明
|
数据类型
|
|
out_raster
|
输出地形位置指数栅格。
|
Raster
|
代码示例
TopographicPositionIndex 示例 1(Python 窗口)
本示例利用输入栅格中每个像元周围的环形邻域来计算 TPI 值。
from arcpy.sa import *
outTPI = TopographicPositionIndex("elevation.tif", "Annulus 1 3 CELL")
outTPI.save("C:/sapyexamples/output/tpiout01.tif")
TopographicPositionIndex 示例 2(独立脚本)
本示例利用输入栅格中每个像元周围的环形邻域来计算 TPI 值。
# Name: TopographicPositionIndex_standalone.py
# Description: Calculates the TPI.
# Requirements: Spatial Analyst extension
# Import system modules
import arcpy
from arcpy.sa import *
# Set environment settings
arcpy.env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation.tif"
inNeighborhood = "Circle 90 Map"
# Run the tool
outTPI = TopographicPositionIndex(inRaster, inNeighborhood)
# Save the output
outTPI.save("C:/sapyexamples/output/tpiout02.tif")
环境
自动提交, 像元大小, 像元大小投影方法, 压缩, 当前工作空间, 范围, 地理变换, 掩膜, 输出配置关键字, 输出坐标系, 金字塔, 临时工作空间, 捕捉栅格, 分块大小
许可信息
- 基本: 需要 Spatial Analyst
- 标准: 需要 Spatial Analyst
- 高级: 需要 Spatial Analyst