Skip to main content

NbrAnnulus

汇总

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

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.

  • CELL—The unit of measurement is in cells.

  • MAP—The 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 run 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")

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

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