NbrWeight

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

Краткая информация

Определяет взвешенную окрестность, которая создается с помощью файла описания со значениями, на которые умножаются ячейки, входящие в окрестность.

Иллюстрация

Окрестность NbrWeight для функции FocalStatistics
Пример окрестности NbrWeight для функции FocalStatistics.
Окрестность NbrWeight для функции BlockStatistics
Окрестность NbrWeight для функции BlockStatistics.

Обсуждение

Инструменты, которые используют объект взвешенной окрестности: Статистика по блокам и Фокальная статистика.

Лицензия:

Этот класс также доступен, если у вас есть лицензия модуля Image Analyst, но только для инструмента Фокальная статистика.

Взвешенная окрестность задается с помощью файла описания. Файл описания весов задаёт, какие положения ячейки будут включены в окрестность, а также веса, которые будут использования при умножении значений клеток на входной растр.

Для фокальных инструментов положение x,y обрабатываемой ячейки в пределах окрестности по отношению к верхнему левому углу окрестности, определяется следующими уравнениями:

x = (ширина + 1)/2 y = (высота + 1)/2

Если число входных ячеек четное, координаты x,y округляются методом отбрасывания дробной части.

Файл описания:

  • Керн-файл представляет собой текстовый файл ASCII, который определяет значения и форму взвешенной окрестности.

  • Первая строка задает ширину и высоту окрестности (количество ячеек в направлении x, за которым следует пробел и количество ячеек в направлении y).

  • Последующие строки содержат значения для каждого положения ячейки окрестности. Значения вводятся в той же конфигурации, в которой они появляются в представляемой ими окрестности. Положительные, отрицательные и десятичные значения являются корректными опциями в качестве весов. Пробел между значениями является обязательным.

  • Для местоположений в окрестности, которые не участвуют в вычислениях, используйте для соответствующего местоположения в керн-файле значение, равное 0.

Синтаксис

NbrWeight (inKernelFile)
ПараметрОписаниеТип данных
inKernelFile

An ASCII text file that defines the shape of the neighborhood and the weight of each cell in that neighborhood. A value of 0 for a cell position indicates that the cell is not a member of the neighborhood, and a number at a corresponding cell's position indicates that the cell value be included as a member of the neighborhood. The nonzero value will also serve as the weight to multiply the corresponding cell value.

File

Свойства

СвойствоОписаниеТип данных
inKernelFile
(чтение и запись)

inKernelFile - это текстовый файл ASCII, который задает форму окрестности и вес каждой ячейки в этой окрестности. Значение 0 для положения ячейки указывает на то, что ячейка не является участником окрестности, а число в соответствующем положении ячейки указывает, что значение ячейки должно быть включено в качестве участника окрестности. Ненулевое значение также будет служить весом для его умножения на соответствующее значение ячейки.

String

Пример кода

NbrWeight, пример 1 (окно Python)

Иллюстрирует создание класса NbrWeight и его использование в инструменте BlockStatistics в окне Python.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNbrWF = BlockStatistics("block", NbrWeight("weight.txt"))
outNbrWF.save("C:/sapyexamples/output/blstatsnbrwf2")
NbrWeight, пример 2 (автономный скрипт)

Работа инструмента BlockStatistics с использованием класса NbrWeight.

# Name: NbrWeight_Ex_02.py
# Description: Uses the NbrWeight 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
inWeightFile = "C:/data/weight.txt"
myNbrWeight = NbrWeight(inWeightFile)

# Execute BlockStatistics
outBlStats =  BlockStatistics(inRaster, myNbrWeight, "MINIMUM", "DATA")

# Save the output 
outBlStats.save("C:/sapyexamples/output/blstat_wght3")

Связанные разделы