NbrAnnulus

Summary

Defines an annulus neighborhood which is created by specifying an inner and outer circles' radii in either map units or number of cells.

Illustration

NbrAnnulus neighborhood neighborhood for FocalStatistics function
NbrAnnulus neighborhood example for the FocalStatistics function (inner radius 1 cell, outer radius 3 cells).
NbrAnnulus neighborhood for BlockStatistics function
NbrAnnulus neighborhood example for the BlockStatistics function (inner radius = 1 cell, outer radius = 3 cells).

Discussion

Tools that use neighborhood annulus object: Block Statistics, Focal Statistics, Point Statistics, and Point Density.

License:

This class is also available if you have an Image Analyst extension license, but only for the Focal Statistics tool.

The annulus shape is comprised of two circles, one inside the other to make a donut shape. Cells with centers that fall outside the radius of the smaller circle but inside the radius of the larger circle will be included in processing the neighborhood; therefore, the area that falls between the two circles constitutes the annulus neighborhood.

When the annulus object is used and the innerRadius or the outerRadius are not specified, then default values are provided.

The innerRadius must be less than or equal to the outerRadius.

The radius is identified in cells or map units, measured perpendicular to the x- or y-axis. When the radii is specified in map units, they are converted to radii in cell units. The resulting radii in cell units produces an area that most closely represents the area calculated by using the original radii in map units. Any cell center encompassed by the annulus will be included in the processing of the neighborhood.

Syntax

NbrAnnulus ({innerRadius}, {outerRadius}, {units})
ParameterExplanationData Type
innerRadius

The inner radius of an annulus neighborhood.

(The default value is 1)

Double
outerRadius

The outer radius of an annulus neighborhood.

(The default value is 3)

Double
units

Defines the units of the neighborhood.

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

(The default value is CELL)

String

Properties

PropertyExplanationData Type
innerRadius
(Read and Write)

The inner radius of the annulus neighborhood.

Double
outerRadius
(Read and Write)

The outer radius of the annulus neighborhood.

Double
units
(Read and Write)

Defines the units of the neighborhood.

  • CELLThe units are the number of cells.
  • MAPThe units are in map coordinates.
String

Code sample

NbrAnnulus example 1 (Python window)

Demonstrates how to create a NbrAnnulus class and use it in the BlockStatistics tool within the Python window.

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 example 2 (stand-alone script)

Implements the BlockStatistics tool using the NbrAnnulus class.

# 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")

Related topics