3D 经验贝叶斯克里金法 (地统计分析)

需要 Geostatistical Analyst 许可。

摘要

使用经验贝叶斯克里金方法插值 3D 点。 所有点必须具有 x 坐标、y 坐标和 z 坐标以及要插值的测量值。 输出是一个 3D 地统计图层,该图层可将其自身计算并渲染为给定高程处的 2D 样带。 可以使用范围滑块更改图层的高程,并且图层将进行更新以显示新高程的插值预测。

3D 插值具有以下潜在应用:

  • 海洋学家可以创建海洋中不同深度处的溶氧和盐度地图。
  • 大气科学家可以针对整个大气层的污染和温室气体创建模型。
  • 地质学家可以预测地下地质特征,例如矿物浓度和孔隙度。

了解有关 3D 经验贝叶斯克里金法的详细信息

插图

经验贝叶斯克里金法 3D 工具插图
显示了插值的 3D 点。

使用情况

  • 通过以下方式可提供输入要素:

    • 3D 点要素,其高程存储为 Shape.Z 中的几何属性
    • 2D 点要素,其高程存储在属性字段中

    建议您提供 3D 点要素,因为可以自动完成所有单位和单位转换。 可以使用依据属性实现要素转 3D 工具将具有高程字段的 2D 点要素转换为 3D 点要素。

  • 可以使用 3D GA 图层转 NetCDF 工具将 3D 地统计图层可视化为体素图层。 可以预测至 3D 中的目标点以及导出到任何高程处的栅格和要素等值线。 也可以同时导出高程不同的多个栅格,并将其保存为多维栅格数据集。

  • 所有输入要素必须位于投影坐标系中。 如果点存储在具有纬度和经度坐标的地理坐标系中,则必须使用投影工具对点进行投影,才能使用此工具。

  • Standard3D 搜索邻域用于计算预测。 应用高程膨胀因子参数后,将在拉伸的坐标系中计算用于查找邻域的所有距离。 有关详细信息,请参阅数据值的水平和垂直变化

参数

标注说明数据类型
输入要素

包含要内插的字段的输入点要素。

Feature Layer
高程字段

包含每个输入点的高程值的输入要素字段。

如果高程值存储为 Shape.Z 中的几何属性,则建议您使用该字段。 如果高程值存储在属性字段中,则高程值必须表示距海平面的距离。 正值表示海平面以上的距离,负值表示海平面以下的距离。

Field
值字段

包含将进行插值的测量值的输入要素字段。

Field
输出地统计图层

将显示插值结果的输出地统计图层。

Geostatistical Layer
高程字段单位
(可选)

高程字段的单位。

如果提供 Shape.Z 作为高程字段,则单位将自动匹配垂直坐标系的 z 单位。

  • 美国测量英寸高程以美制英寸为单位。
  • 美国测量英尺高程以美制英尺为单位。
  • 美国测量码高程以美制码为单位。
  • 美国测量英里高程以美制英里为单位。
  • 美国测量海里高程以美制海里为单位。
  • 毫米高程以毫米为单位。
  • 厘米高程以厘米为单位。
  • 分米高程以分米为单位。
  • 高程以米为单位。
  • 千米高程以千米为单位。
  • 国际英寸高程以国际英寸为单位。
  • 国际英尺高程以国际英尺为单位。
  • 国际码高程以国际码为单位。
  • 法定英里高程以法定英里为单位。
  • 国际海里高程以国际海里为单位。
String
测量错误字段
(可选)

输入要素的字段包含每个点的测量误差值。 该值应对应于各点测量值的标准差。 如果每个点的测量误差值不同,请使用此字段。

产生不稳定测量误差的常见原因是测量数据时所用的设备不同。 一个设备可能比另一个精确,即其测量误差更小。 例如,一个温度计舍入到最接近的度,而另一个温度计舍到最接近的度的十分之一。 通常,测量误差范围由测量设备的制造商会提供,或通过实践经验获得。

如果没有测量误差值或测量误差值未知,请将此参数留空。

Field
半变异函数模型类型
(可选)

用于插值的半变异函数模型。

  • 使用幂半变异函数模型。
  • 线性使用线性半变异函数模型。
  • 薄板样条函数使用薄板样条半变异函数模型。
  • 指数使用指数半变异函数模型。
  • 消减函数使用消减半变异函数模型。
  • K-Bessel使用 K-Bessel 半变异函数模型。
String
变换类型
(可选)

应用于输入要素的变换类型。

  • 不应用转换。 这是默认设置。
  • 经验法应用具有“经验”基本函数的“乘偏斜”变换。
  • 对数经验应用具有“对数经验”基本函数的“乘偏斜”变换。 所有数据值必须为正。 如果选择此选项,则所有预测均为正。
String
子集大小
(可选)

子集的大小。 在进行处理前,输入数据将自动划分为子集。 此参数可以控制每个子集中的点数。

Long
局部模型区域重叠系数
(可选)

表示本地模型(也称子集)之间重叠程度的系数。

每个输入点均可落入多个子集中,重叠系数指定了各点将落入的子集的平均数。 重叠系数值越高,则输出表面就越平滑,但处理时间也越长。 值必须介于 1 和 5 之间。 将使用的实际重叠通常将大于此值,因此每个子集将包含相同数量的点。

Double
模拟半变异函数的数量
(可选)

每个本地模型模拟的半变异函数的数量。

使用的模拟越多,则模型计算越稳定,但模型所用的计算时间也会越长。

Long
趋势的移除阶数
(可选)

指定垂直方向上趋势移除的顺序。

对于大多数 3D 数据,点值的垂直变化快于其水平变化。 移除垂直方向的趋势将有助于缓解这一情况并稳定计算。

  • 不会移除垂直趋势。 这是默认设置。
  • 一阶将移除一阶垂直趋势。
String
高程膨胀因子
(可选)

这是一个常量值,在构造子集和模型评估之前,需要将其乘以高程字段值。 对于大部分 3D 数据,点值的垂直变化快于其水平变化,并且该因子将对点的位置进行拉伸,以使一个垂直距离单位在统计上等于一个水平距离单位。 返回插值结果之前,点的位置将移回其原始位置。 需要进行此校正才能准确估计半变异函数模型以及搜索邻域参数的正确邻域。 高程膨胀因子没有单位,无论输入点的 x、y 或 z 坐标单位如何,都将提供相同的结果。

如果没有为此参数提供值,则将使用最大似然估计在运行时计算一个值。 该值将打印为地理处理消息。 运行时计算的值将介于 1 至 1000 之间。 但是,您可以提供 0.01 至 1,000,000 之间的值。 如果计算的值等于 1 或 1000,则可以提供该范围之外的值,并根据交叉验证来选择值。

Double
搜索邻域
(可选)

指定将用于预测新位置值的相邻要素的数量和方向。

Standard3D

  • 最大相邻要素数 - 将用于估计未知位置值的最大相邻要素数/扇区。
  • 最小相邻要素数 - 将用于估计未知位置值的最小相邻要素数/扇区。
  • 扇区类型 - 3D 邻域的几何。 扇区可用于确保在预测位置周围的每个方向上使用相邻要素。 所有扇区类型均由正多面体形成。
    • 1 扇区(球体)- 将使用来自所有方向的最近相邻要素。
    • 4 扇区(四面体)- 将空间划分为 4 个区域,并且在每个区域中都将使用相邻要素。
    • 6 扇区(立方体)- 将空间划分为 6 个区域,并且在每个区域中都将使用相邻要素。
    • 8 扇区(八面体)- 将空间划分为 8 个区域,并且在每个区域中都将使用相邻要素。
    • 12 扇区(十二面体)- 将空间划分为 12 个区域,并且在每个区域中都将使用相邻要素。
    • 20 扇区(二十面体)- 将空间划分为 20 个区域,并且在每个区域中都将使用相邻要素。
  • 半径 - 搜索邻域的半径长度。
Geostatistical Search Neighborhood
默认输出高程
(可选)

输出地统计图层参数值的默认高程。

地统计图层将绘制为给定高程处的水平面,并且此参数将指定此高程。 创建后,可以使用范围滑块来更改地统计图层的高程。

Double
输出表面类型
(可选)

用于存储插值结果的表面类型。

  • 预测可通过内插值生成的预测表面。
  • 预测的标准误差 标准误差表面可通过内插值的标准误差生成。
  • 概率输出表面为值超过或未超过某一特定阈值的概率曲面。
  • 分位数输出表面为可对预测分布指定分位数进行预测的分位数表面。
String
分位数值
(可选)

用于生成输出图层的分位数。

Double
概率阈值类型
(可选)

指定是否计算值超过或不超过指定阈值的概率。

  • 超出计算该值超过阈值的概率。 这是默认设置。
  • 未超出计算该值不超过阈值的概率。
String
概率阈值
(可选)

概率阈值。 如果未提供值,将使用输入数据的中值(第 50 个分位数)。

Double

arcpy.ga.EmpiricalBayesianKriging3D(in_features, elevation_field, value_field, out_ga_layer, {elevation_units}, {measurement_error_field}, {semivariogram_model_type}, {transformation_type}, {subset_size}, {overlap_factor}, {number_simulations}, {trend_removal}, {elev_inflation_factor}, {search_neighborhood}, {output_elevation}, {output_type}, {quantile_value}, {threshold_type}, {probability_threshold})
名称说明数据类型
in_features

包含要内插的字段的输入点要素。

Feature Layer
elevation_field

包含每个输入点的高程值的输入要素字段。

如果高程值存储为 Shape.Z 中的几何属性,则建议您使用该字段。 如果高程值存储在属性字段中,则高程值必须表示距海平面的距离。 正值表示海平面以上的距离,负值表示海平面以下的距离。

Field
value_field

包含将进行插值的测量值的输入要素字段。

Field
out_ga_layer

将显示插值结果的输出地统计图层。

Geostatistical Layer
elevation_units
(可选)

高程字段的单位。

如果提供 Shape.Z 作为高程字段,则单位将自动匹配垂直坐标系的 z 单位。

  • INCH高程以美制英寸为单位。
  • FOOT高程以美制英尺为单位。
  • YARD高程以美制码为单位。
  • MILE_US高程以美制英里为单位。
  • NAUTICAL_MILE高程以美制海里为单位。
  • MILLIMETER高程以毫米为单位。
  • CENTIMETER高程以厘米为单位。
  • DECIMETER高程以分米为单位。
  • METER高程以米为单位。
  • KILOMETER高程以千米为单位。
  • INCH_INT高程以国际英寸为单位。
  • FOOT_INT高程以国际英尺为单位。
  • YARD_INT高程以国际码为单位。
  • MILE_INT高程以法定英里为单位。
  • NAUTICAL_MILE_INT高程以国际海里为单位。
String
measurement_error_field
(可选)

输入要素的字段包含每个点的测量误差值。 该值应对应于各点测量值的标准差。 如果每个点的测量误差值不同,请使用此字段。

产生不稳定测量误差的常见原因是测量数据时所用的设备不同。 一个设备可能比另一个精确,即其测量误差更小。 例如,一个温度计舍入到最接近的度,而另一个温度计舍到最接近的度的十分之一。 通常,测量误差范围由测量设备的制造商会提供,或通过实践经验获得。

如果没有测量误差值或测量误差值未知,请将此参数留空。

Field
semivariogram_model_type
(可选)

用于插值的半变异函数模型。

  • POWER使用幂半变异函数模型。
  • LINEAR使用线性半变异函数模型。
  • THIN_PLATE_SPLINE使用薄板样条半变异函数模型。
  • EXPONENTIAL使用指数半变异函数模型。
  • WHITTLE使用消减半变异函数模型。
  • K_BESSEL使用 K-Bessel 半变异函数模型。
String
transformation_type
(可选)

应用于输入要素的变换类型。

  • NONE不应用转换。 这是默认设置。
  • EMPIRICAL应用具有“经验”基本函数的“乘偏斜”变换。
  • LOGEMPIRICAL应用具有“对数经验”基本函数的“乘偏斜”变换。 所有数据值必须为正。 如果选择此选项,则所有预测均为正。
String
subset_size
(可选)

子集的大小。 在进行处理前,输入数据将自动划分为子集。 此参数可以控制每个子集中的点数。

Long
overlap_factor
(可选)

表示本地模型(也称子集)之间重叠程度的系数。

每个输入点均可落入多个子集中,重叠系数指定了各点将落入的子集的平均数。 重叠系数值越高,则输出表面就越平滑,但处理时间也越长。 值必须介于 1 和 5 之间。 将使用的实际重叠通常将大于此值,因此每个子集将包含相同数量的点。

Double
number_simulations
(可选)

每个本地模型模拟的半变异函数的数量。

使用的模拟越多,则模型计算越稳定,但模型所用的计算时间也会越长。

Long
trend_removal
(可选)

指定垂直方向上趋势移除的顺序。

对于大多数 3D 数据,点值的垂直变化快于其水平变化。 移除垂直方向的趋势将有助于缓解这一情况并稳定计算。

  • NONE不会移除垂直趋势。 这是默认设置。
  • FIRST将移除一阶垂直趋势。
String
elev_inflation_factor
(可选)

这是一个常量值,在构造子集和模型评估之前,需要将其乘以高程字段值。 对于大部分 3D 数据,点值的垂直变化快于其水平变化,并且该因子将对点的位置进行拉伸,以使一个垂直距离单位在统计上等于一个水平距离单位。 返回插值结果之前,点的位置将移回其原始位置。 需要进行此校正才能准确估计半变异函数模型以及搜索邻域参数的正确邻域。 高程膨胀因子没有单位,无论输入点的 x、y 或 z 坐标单位如何,都将提供相同的结果。

如果没有为此参数提供值,则将使用最大似然估计在运行时计算一个值。 该值将打印为地理处理消息。 运行时计算的值将介于 1 至 1000 之间。 但是,您可以提供 0.01 至 1,000,000 之间的值。 如果计算的值等于 1 或 1000,则可以提供该范围之外的值,并根据交叉验证来选择值。

Double
search_neighborhood
(可选)

使用 SearchNeighborhoodStandard3D 类指定相邻要素的数量和方向。

Standard3D

  • radius - 搜索邻域的半径长度。
  • nbrMax - 用于估计未知位置值的最大相邻要素数/扇区。
  • nbrMin - 用于估计未知位置值的最小相邻要素数/扇区。
  • sectorType - 3D 邻域的几何。 扇区可用于确保在预测位置周围的不同方向上使用相邻要素。 所有扇区类型均由正多面体形成。
    • ONE_SECTOR - 将使用来自所有方向的最近相邻要素。
    • FOUR_SECTORS - 将空间划分为 4 个区域,并且在每个区域中都将使用相邻要素。
    • SIX_SECTORS - 将空间划分为 6 个区域,并且在每个区域中都将使用相邻要素。
    • EIGHT_SECTORS - 将空间划分为 8 个区域,并且在每个区域中都将使用相邻要素。
    • TWELVE_SECTORS - 将空间划分为 12 个区域,并且在每个区域中都将使用相邻要素。
    • TWENTY_SECTORS - 将空间划分为 20 个区域,并且在每个区域中都将使用相邻要素。
Geostatistical Search Neighborhood
output_elevation
(可选)

out_ga_layer 参数值的默认高程。

地统计图层将绘制为给定高程处的水平面,并且此参数将指定此高程。 创建后,可以使用范围滑块来更改地统计图层的高程。

Double
output_type
(可选)

用于存储插值结果的表面类型。

有关输出表面类型的详细信息,请参阅插值模型可以生成何种类型的输出表面

  • PREDICTION可通过内插值生成的预测表面。
  • PREDICTION_STANDARD_ERROR 标准误差表面可通过内插值的标准误差生成。
  • PROBABILITY输出表面为值超过或未超过某一特定阈值的概率曲面。
  • QUANTILE输出表面为可对预测分布指定分位数进行预测的分位数表面。
String
quantile_value
(可选)

用于生成输出图层的分位数。

Double
threshold_type
(可选)

指定是否计算值超过或不超过指定阈值的概率。

  • EXCEED计算该值超过阈值的概率。 这是默认设置。
  • NOT_EXCEED计算该值不超过阈值的概率。
String
probability_threshold
(可选)

概率阈值。 如果未提供值,将使用输入数据的中值(第 50 个分位数)。

Double

代码示例

EmpiricalBayesianKriging3D 示例 1(Python 窗口)

使用 EmpiricalBayesianKriging3D 函数插值 3D 点要素类。

import arcpy
arcpy.ga.EmpiricalBayesianKriging3D("my3DLayer", "Shape.Z", "myValueField", "myGALayer", "METER", "",
                                    "POWER", "NONE", 100, 1, 100, "NONE", "",
                                    "NBRTYPE=Standard3D RADIUS=10000 NBR_MAX=15 NBR_MIN=10 SECTOR_TYPE=ONE_SECTOR",
                                    "", "PREDICTION", 0.5, "EXCEED", None)
EmpiricalBayesianKriging3D 示例 2(独立脚本)

使用 EmpiricalBayesianKriging3D 函数插值 3D 点要素类。

# Name: EBK3D_Example_02.py
# Description: Interpolates 3D points.
# Requirements: Geostatistical Analyst Extension
# Author: Esri

# Import system modules
import arcpy

# Set local variables
in3DPoints = "C:/gapyexamples/input/my3DPoints.shp"
elevationField = "Shape.Z"
valueField = "myValueField"
outGALayer = "myGALayer"
elevationUnit = "METER"
measurementErrorField = "myMEField"
semivariogramModel = "LINEAR"
transformationType = "NONE"
subsetSize = 80
overlapFactor = 1.5
numSimulations = 200
trendRemoval = "FIRST"
elevInflationFactor = 20
radius = 10000
maxNeighbors = 15
minNeighbors = 10
sectorType = "FOUR_SECTORS"
searchNeighborhood = arcpy.SearchNeighborhoodStandard3D(radius, maxNeighbors, minNeighbors, sectorType)
outputElev = 1000
outputType = "PREDICTION"

# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")

# Execute Empirical Bayesian Kriging 3D
arcpy.ga.EmpiricalBayesianKriging3D(in3DPoints, elevationField, valueField, outGALayer, elevationUnit, myMEField,
                                    semivariogramModel, transformationType, subsetSize, overlapFactor, numSimulations,
                                    trendRemoval, elevInflationFactor, searchNeighborhood, outputElev, outputType)

许可信息

  • Basic: 需要 Geostatistical Analyst
  • Standard: 需要 Geostatistical Analyst
  • Advanced: 需要 Geostatistical Analyst

相关主题