计算区域网平差 (数据管理)

摘要

计算对镶嵌数据集的校正。 该工具将创建一个解决方案表,可用于应用实际校正。

使用情况

  • 使用计算接合点工具的输出控制点作为此工具的输入控制点。

  • 此工具的输出解决方案表将用在应用区域网平差工具中。

  • 当将变换类型值设置为 RPCFrame 时,要求工具具有 ArcGIS Desktop Advanced 许可。

  • 变换类型参数指定为时,可以使用许多校正选项参数选项来优化区域网平差解决方案。 请参阅校正选项参数的可用设置。

参数

标注说明数据类型
输入镶嵌数据集

将进行校正的输入镶嵌数据集。

Mosaic Layer; Mosaic Dataset
输入控制点

包含连接点和地面控制点的控制点表。

此要素类通常是计算连接点工具的输出。

Feature Layer
变换类型

指定在校正镶嵌数据集时要使用的变换类型。

  • 零阶多项式零阶多项式将用于区域网平差计算。 当数据位于平坦区域时,通常使用此方法。
  • 一阶多项式一阶多项式(仿射)将用于区域网平差计算。 这是默认设置。
  • 有理多项式系数有理多项式系数 (RPC) 将用于变换中。 用于在元数据中包含 RPC 信息的卫星影像。该选项要求要有 ArcGIS Desktop Advanced 许可。
  • 帧照相机模型帧照相机模型将用于变换中。 用于在元数据中包含帧照相机信息的航空影像。该选项要求要有 ArcGIS Desktop Advanced 许可。
String
输出解决方案表

输出解决方案表包含校正。

Table
输出解决方案点
(可选)

输出解决方案点表。 该表将保存为面要素类。 此输出可能非常大。

Feature Class
最大残差
(可选)

在区域网平差计算中使用的阈值;残差大于阈值的点不会被使用。 当变换类型为零阶多项式一阶多项式帧照相机模型时,将应用此参数。 如果变换类型为有理多项式系数,则将自动确定消除无效点的适当阈值。

当变换类型为零阶多项式一阶多项式时,该参数的单位将为地图单位,且默认值将为 2。

当变换类型为帧照相机模型时,该参数的单位将为像素单位,且默认值将为 5。

Double
校正选项
(可选)

将用于对校正计算进行调整的附加选项。 要设置选项,请在列表框中输入关键字和相应的值。

  • 最小残差值将使用的最小残差值(阈值下限)。 当变换类型为零阶多项式一阶多项式时,该单位将为地图单位,且默认最小残差值将为 0。最小残差值和最大残差参数值用于检测产生严重错误的点,并将这些点从局域网平差计算中移除。
  • 最大残差因子如果未定义最大残差参数,则最大残差因子将用于生成最大(阈值上限)残差值。 在这种情况下,MaxResidualFactor * RMS 将用于计算阈值上限。最小残差值和最大残差参数值用于检测产生严重错误的点,并将这些点从局域网平差计算中移除。
Value Table
影像位置精度
(可选)

指定图像的几何精度级别。

仅当变换类型参数指定为有理多项式系数时,此参数才有效。

如果指定低精度,则控制点首先将通过初始三角测量改善;然后它将在区域网平差计算中使用。 中等精度和高精度选项不需要任何其他估算处理。

  • 高精度精度将小于等于 30 米。
  • 中等精度精度将介于 31 米到 100 米之间。 这是默认设置。
  • 低精度精度将大于 100 米。
  • 极高精度此影像是使用高精度的差分 GPS(例如 RTK 或 PPK)收集的。 此选项将在进行区域网平差期间保持影像位置固定。
String
输出校正质量表
(可选)

用来存储校正质量信息的输出表格。

仅当变换类型参数指定为有理多项式系数时,此参数才有效。

Table
按 DEM 优化
(可选)

一个输入 DEM,其中的高程将作为地面控制点进行采样,以在校正中优化图像网络的几何精度。

仅当变换类型参数指定为帧照相机模型时,此参数才有效。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer
DEM 的高程精度
(可选)

输入 DEM 的高程精度。 该精度值将用作校正中已采样地面控制点的权重。

仅当变换类型参数指定为帧照相机模型时,此参数才有效。

Double

arcpy.management.ComputeBlockAdjustment(in_mosaic_dataset, in_control_points, transformation_type, out_solution_table, {out_solution_point_table}, {maximum_residual_value}, {adjustment_options}, {location_accuracy}, {out_quality_table}, {DEM}, {elevation_accuracy})
名称说明数据类型
in_mosaic_dataset

将进行校正的输入镶嵌数据集。

Mosaic Layer; Mosaic Dataset
in_control_points

包含连接点和地面控制点的控制点表。

此要素类通常是计算连接点工具的输出。

Feature Layer
transformation_type

指定在校正镶嵌数据集时要使用的变换类型。

  • POLYORDER0零阶多项式将用于区域网平差计算。 当数据位于平坦区域时,通常使用此方法。
  • POLYORDER1一阶多项式(仿射)将用于区域网平差计算。 这是默认设置。
  • RPC有理多项式系数 (RPC) 将用于变换中。 用于在元数据中包含 RPC 信息的卫星影像。该选项要求要有 ArcGIS Desktop Advanced 许可。
  • Frame帧照相机模型将用于变换中。 用于在元数据中包含帧照相机信息的航空影像。该选项要求要有 ArcGIS Desktop Advanced 许可。
String
out_solution_table

输出解决方案表包含校正。

Table
out_solution_point_table
(可选)

输出解决方案点表。 该表将保存为面要素类。 此输出可能非常大。

Feature Class
maximum_residual_value
(可选)

在区域网平差计算中使用的阈值;残差大于阈值的点不会被使用。 当变换类型为 POLYORDER0POLYORDER1Frame 时,将应用此参数。 如果变换类型为 RPC,则将自动确定消除无效点的适当阈值。

当变换类型为 POLYORDER0POLYORDER1 时,该参数的单位将为地图单位,且默认值将为 2。

当变换类型为 Frame 时,该参数的单位将为像素,且默认值将为 5。

Double
adjustment_options
[[name, value],...]
(可选)

将用于对校正计算进行调整的附加选项。

  • MinResidual将使用的最小残差值(阈值下限)。 当变换类型为 POLYORDER0POLYORDER1 时,该单位将为地图单位,且默认最小残差值将为 0。最小残差值和 maximum_residual_value 参数值用于检测产生严重错误的点,并将这些点从局域网平差计算中移除。
  • MaxResidualFactor如果未定义 maximum_residual-value 参数,则最大残差因子将用于生成最大(阈值上限)残差值。 在这种情况下,MaxResidualFactor * RMS 将用于计算阈值上限。最小残差值和 maximum_residual_factor 参数值用于检测产生严重错误的点,并将这些点从局域网平差计算中移除。

当针对变换类型选择时,以下列出了校正引擎的附加选项。 许多选项的规格由数据提供商提供。

其中包括以下选项:

  • CalibrateF - 校准传感器焦距,以便在区域网平差中使用。 对于焦距校准,分配值 1;对于无校准,分配值 0。 默认值为 0。
  • CalibratePP - 在区域网平差中校准主要点。 对于校准,分配值 1;对于无校准,分配值 0。 默认值为 0。
  • CalibrateP - 在区域网平差中校准径向畸变参数。 对于校准,分配值 1;对于无校准,分配值 0。 默认值为 0。
  • CalibrateK - 在区域网平差中校准切向畸变参数。 对于校准,分配值 1;对于无校准,分配值 0。 默认值为 0。

注:
通常会为大多数专业数字航空照相机(例如 UltraCam 或 DMC)提供校准参数(如透视数据)。 如果在照相机表中准备了照相机校准参数,则校准选项可以为 0。

  • APrioriAccuracyX - 包含机载位置定位系统提供的 x 坐标的精度。 单位必须与 PerspectiveX 匹配。 如果该值设置为 0,则在校正中不会对图像位置的 x 坐标进行校正。 对于大多数 UAV 数据,不建议这样做。
  • APrioriAccuracyY - 包含机载位置定位系统提供的 y 坐标的精度。 单位必须与 PerspectiveY 匹配。 如果该值设置为 0,则在校正中不会对图像位置的 y 坐标进行校正。 对于大多数 UAV 数据,不建议这样做。
  • APrioriAccuracyZ - 包含机载位置定位系统提供的 z 坐标的精度。 单位必须与 PerspectiveZ 匹配。 如果该值设置为 0,则在校正中不会对图像位置的 z 坐标进行校正。 对于大多数 UAV 数据,不建议这样做。
  • APrioriAccuracyXY - 包含元数据提供的平面坐标的精度。 单位必须与 PerspectiveX 匹配。 如果该值设置为 0,则在校正中不会对图像位置的平面坐标(x 和 y)进行校正。 对于大多数 UAV 数据,不建议这样做。
  • APrioriAccuracyXYZ - 包含元数据提供的图像位置的精度。 单位必须与 PerspectiveX 匹配。 如果该值设置为 0,则在校正中不会对图像位置进行校正。 对于大多数 UAV 数据,不建议这样做。
  • APrioriAccuracyOmega - 包含机载位置定位系统提供的 Omega 角的精度。 其单位为十进制度。
  • APrioriAccuracyPhi - 包含机载位置定位系统提供的 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyOmegaPhi - 包含机载位置定位系统提供的 Omega 或 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyKappa - 包含机载位置定位系统提供的 Kappa 角的精度。 其单位为十进制度。
  • ComputeAntennaOffset - 在校正中计算 GNSS 天线中心和照相机投影中心之间的偏移。 对于校准,分配值 1;对于无计算,分配值 0。 默认值为 0。
  • ComputeShift - 在光束法平差中计算飞行中的 GNSS 信号偏移。 0 表示未计算。 对于校准,分配值 1;对于无计算,分配值 0。 默认值为 0。
  • ComputeImagePosteriorStd - 计算校正后图像位置和方向的后验标准差。 对于计算,分配值 1;对于无计算,分配值 0。 默认值为 1。
  • ComputeSolutionPointPosteriorStd - 计算校正后解决方案点的后验标准差。 对于计算,分配值 1;对于无计算,分配值 0。 默认值为 0。

Value Table
location_accuracy
(可选)

指定图像的几何精度级别。

仅当 transformation_type 参数指定为 RPC 时,此参数才有效。

  • HIGH精度将小于等于 30 米。
  • MEDIUM精度将介于 31 米到 100 米之间。
  • LOW精度将大于 100 米。
  • VERY_HIGH此影像是使用高精度的差分 GPS(例如 RTK 或 PPK)收集的。 此选项将在进行区域网平差期间保持影像位置固定。

如果指定 LOW,则控制点首选将通过初始三角测量改善;然后它将在区域网平差计算中使用。 中等精度和高精度选项不需要任何其他估算处理。

String
out_quality_table
(可选)

用来存储校正质量信息的输出表格。

仅当 transformation_type 参数指定为 RPC 时,此参数才有效。

Table
DEM
(可选)

一个输入 DEM,其中的高程将作为地面控制点进行采样,以在校正中优化图像网络的几何精度。

仅当 transformation_type 参数指定为 Frame 时,此参数才可用。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer
elevation_accuracy
(可选)

输入 DEM 的高程精度。 该精度值将用作校正中已采样地面控制点的权重。

仅当 transformation_type 参数指定为 Frame 时,此参数才可用。

Double

代码示例

ComputeBlockAdjustment 示例 1(Python 窗口)

这是 ComputeBlockAdjustment 工具的 Python 示例。

import arcpy
arcpy.ComputeBlockAdjustment_management(
     "c:/BD/BD.gdb/redQB", "c:/BD/BD.gdb/redQB_tiePoints",
     "POLYORDER1", "c:/BD/BD.gdb/redQB_solution")
ComputeBlockAdjustment 示例 2(独立脚本)

这是 ComputeBlockAdjustment 工具的 Python 脚本。

#compute block adjustment, case 2

import arcpy
arcpy.env.workspace = "c:/workspace"

#Compute block adjustment
mdName = "BD.gdb/redlandsQB"
in_controlPoint = "BD.gdb/redlandsQB_tiePoints"
out_solutionTable = "BD.gdb/redlandsQB_solution"

arcpy.ComputeBlockAdjustment_management(mdName, in_controlPoint, 
     "POLYORDER1", out_solutionTable)
ComputeBlockAdjustment 示例 3(独立脚本)

这是 ComputeBlockAdjustment 工具的 Python 脚本。

#compute block adjustment, case 3

import arcpy
arcpy.env.workspace = "c:/workspace"

#Compute block adjustment specifying an output point table and 
#an setting an adjustment option
mdName = "BD.gdb/redlandsQB"
in_controlPoint = "BD.gdb/redlandsQB_tiePoints"
out_solutionTable = "BD.gdb/redlandsQB_solution"
out_solutionPoint = "BD.gdb/redlandsQB_solutionPoint"
engineOption = "_BAI c:/workspace/bai.txt; _BAO c:/workspace/bao.txt"

arcpy.ComputeBlockAdjustment_management(mdName, in_controlPoint, 
     "POLYORDER1", out_solutionTable, out_solutionPoint,"0.5", 
     engineOption)

许可信息

  • Basic: 否
  • Standard: 需要 ArcGIS Reality
  • Advanced: 是

相关主题