NbrAnnulus

需要 Spatial Analyst 许可。

获得 Image Analyst 许可后可用。

摘要

用于定义环形邻域,将通过以地图单位或像元数指定内圆和外圆的半径来创建该邻域。

插图

FocalStatistics 函数的 NbrAnnulus 邻域
FocalStatistics 函数的 NbrAnnulus 邻域示例(内径 1 像元,外径 3 像元)。
BlockStatistics 函数的 NbrAnnulus 邻域
BlockStatistics 函数的 NbrAnnulus 邻域示例(内径 = 1 像元,外径 = 3 像元)。

说明

使用环形邻域对象的工具包括:块统计焦点统计点统计以及点密度

许可:

如果您拥有 Image Analyst 扩展模块许可,也可以使用该类,但仅限于焦点统计工具。

环由两个圆组成,一个圆位于另一个圆的内侧,从而构成圆环。 中心落在小圆半径之外,但落在大圆半径内的像元将包含在处理邻域中;因此,处于两个圆形之间的区域构成环形邻域。

使用环形对象时,如未指定 innerRadiusouterRadius,则将使用默认值。

innerRadius 必须小于或等于 outerRadius

半径以像元或地图单位为单位,并沿垂直于 x 轴或 y 轴的方向进行测量。 当以地图单位指定半径时,会将其转换为以像元为单位的半径。 所得的以像元为单位的半径会生成一个区域,该区域能够近似地表示出以原始的地图单位为半径时计算的区域。 环形包围的任何像元中心都将包含在邻域的处理中。

语法

NbrAnnulus ({innerRadius}, {outerRadius}, {units})
参数说明数据类型
innerRadius

The inner radius of an annulus neighborhood.

(默认值为 1)

Double
outerRadius

The outer radius of an annulus neighborhood.

(默认值为 3)

Double
units

Defines the units of the neighborhood.

  • CELLThe unit of measurement is in cells.
  • MAPThe units are in map coordinates.

(默认值为 CELL)

String

属性

属性说明数据类型
innerRadius
(可读写)

环形邻域的内半径。

Double
outerRadius
(可读写)

环形邻域的外半径。

Double
units
(可读写)

定义邻域单位。

  • CELL单位为像元的数量。
  • MAP单位位于地图坐标中。
String

代码示例

NbrAnnulus 示例 1(Python 窗口)

演示如何创建 NbrAnnulus 类以及如何在 Python 窗口的 BlockStatistics 工具中使用该类。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNbrA = BlockStatistics("block", NbrAnnulus(1, 2, "CELL"))
outNbrA.save("C:/sapyexamples/output/blstatnbra2")
NbrAnnulus 示例 2(独立脚本)

使用 NbrAnnulus 类执行 BlockStatistics 工具。

# Name: NbrAnnulus_Ex_02.py
# Description: Uses the NbrAnnulus object to execute BlockStatistics tool.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "block"

# Create the Neighborhood Object
innerRadius = 1
outerRadius = 3
myNbrAnnulus = NbrAnnulus(innerRadius, outerRadius, "MAP")

# Execute BlockStatistics
outBlkStats =  BlockStatistics(inRaster, myNbrAnnulus, "MINIMUM", "DATA")

# Save the output 
outBlkStats.save("C:/sapyexamples/output/blstat_Ann3")

相关主题