Интерполяция диффузии с барьерами (Diffusion Interpolation With Barriers) (Geostatistical Analyst)
Резюме
Использует ядро, которое основывается на уравнении теплопроводности, а также позволяет сочетать в качестве барьеров растровые и векторные наборы данных.
Использование
-
Абсолютный (Absolute) барьер объекта рассматривается с позиции неевклидовой геометрии, а не с позиции кратчайшего расстояния (линии видимости). При рассмотрении расстояния с позиции линии видимости подразумевается, что прямая линия, находящаяся между измеряемым положением и положением, для которого выполняется интерполяция, не пересекается с объектом барьера. Если расстояние вокруг барьера находится в пределах характеристик радиуса поиска, оно будет рассматриваться с позиции неевклидовой геометрии.
-
Время обработки зависит от сложности геометрии классов объектов барьеров. Для создания нового класса объектов путем сглаживая или удаления некоторых объектов, можно использовать инструменты из группы Генерализация (Generalization).
-
Параметр Входной растр кумулятивных барьеров (Input additive barrier raster) должен иметь значения того же порядка, что и координаты x,y.
-
Значение параметра Входной растр кумулятивных барьеров (Input cumulative barrier raster) должно быть одного порядка с координатами x,y. Если соседние ячейки имеют такие же значения, это значит, что в этом местоположении барьер отсутствует.
-
Параметр Входной растр барьеров потока (Input flow barrier raster) должен обладать значениями с тем же порядком, что и координаты x,y. Если соседние ячейки имеют такие же значения, это значит, что в этом местоположении барьер отсутствует. Также перемещение от высокого значения к низкому означает, что барьер отсутствует.
Значение NoData в барьерах растра приводит к тому же эффекту, что и абсолютный барьер.
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Входные точечные объекты, содержащие z-значения для интерполяции. | Feature Layer |
z_field |
Поле, в котором хранится значение высоты или величины для каждой точки. Это может быть числовое поле или поле Shape, если входные объекты содержат z-значения или m-значения. | Field |
out_ga_layer (дополнительно) |
Создаваемый геостатический слой. Этот слой является обязательными выходными данными, только если не запрошен выходной растр. | Geostatistical Layer |
out_raster (дополнительно) |
Выходной растр. Этот растр является обязательными выходными данными, только если не запрошен выходной геостатистический слой. | Raster Dataset |
cell_size (дополнительно) |
Размер ячейки, который будет использован при создании выходного растра. Это значение можно явно задать на вкладке Анализ растра (Raster Analysis) окна Настройки параметров среды (Environment Settings). Если не задано иное, используется наименьшее значение из ширины и высоты экстента входных точечных объектов во входной пространственной привязке, деленное на 250. | Analysis Cell Size |
in_barrier_features (дополнительно) |
Пространственные объекты абсолютных барьеров с использованием неевклидовых расстояний вместо расстояний по линии прямой видимости. | Feature Layer |
bandwidth (дополнительно) |
Применяется для задания максимального расстояния, при котором точки данных используются для интерполяции. С увеличением ширины полосы сдвиг проинтерполированных значений увеличивается, а дисперсия интерполяции уменьшается. | Double |
number_iterations (дополнительно) |
Количество итераций контролирует точность числового решения, поскольку модель решает уравнение диффузии в числовом виде. Чем больше это число, тем более точна интерполяция, но при этом время обработки дольше. Чем сложнее геометрия барьера и чем больше ширина полосы, тем больше итераций необходимо для вычисления точных проинтерполированных значений. | Long |
weight_field (дополнительно) |
Используется для усиления влияния наблюдаемого значения. Чем больше вес, тем больше точка влияет на интерполируемое значение. При совпадении точек наблюдения присвойте наибольший вес более достоверному измерению. | Field |
in_additive_barrier_raster (дополнительно) |
Расстояние пути от одной ячейки растра до другой основано на следующей формуле: (значение средней стоимости в соседних ячейках) x (расстояние между центрами ячеек). | Raster Layer |
in_cumulative_barrier_raster (дополнительно) |
Расстояние пути от одной ячейки растра до другой основано на следующей формуле: (разница между значениями стоимости в соседних ячейках) + (расстояние между центрами ячеек). | Raster Layer |
in_flow_barrier_raster (дополнительно) |
Барьер потока используется при интерполяции данных с предпочтительным направлением вариации данных, на основе следующей формулы: Индикатор (значения стоимости в соседней ячейке до > значения стоимости в соседней ячейке от) * (значения стоимости в соседней ячейке до – значения стоимости в соседней ячейке от) + (расстояние между центрами ячеек), где индикатор(истина) = 1 и индикатор(ложь) = 0. | Raster Layer |
Пример кода
Выполните интерполяцию точечных объектов, ограниченных барьером, в прямоугольный растр.
import arcpy
arcpy.env.workspace = "C:/gapyexamples/data"
arcpy.DiffusionInterpolationWithBarriers_ga("ca_ozone_pts", "OZONE", "outDIWB",
"C:/gapyexamples/output/diwbout", "2000",
"ca_outline", "", "10", "", "", "", "")
Выполните интерполяцию точечных объектов, ограниченных барьером, в прямоугольный растр.
# Name: DiffusionInterpolationWithBarriers_Example_02.py
# Description: Diffusion Interpolation with Barriers uses a kernel which is
# based upon the heat equation and describes the variation in
# temperature with time in a homogeneous medium.
# Requirements: Geostatistical Analyst Extension
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/gapyexamples/data"
# Set local variables
inPointFeatures = "ca_ozone_pts.shp"
zField = "ozone"
outLayer = "outDIWB"
outRaster = "C:/gapyexamples/output/diwbout"
cellSize = 2000.0
power = 2
inBarrier = "ca_outline.shp"
bandwidth = ""
iterations = 10
weightField = ""
addBarrier = ""
cumuBarrier = ""
flowBarrier = ""
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Execute DiffusionInterpolationWithBarriers
arcpy.DiffusionInterpolationWithBarriers_ga(inPointFeatures, zField, outLayer,
outRaster, cellSize, inBarrier,
bandwidth, iterations, weightField,
addBarrier, cumuBarrier, flowBarrier)