计算照相机模型 (数据管理)

摘要

通过原始影像的 EXIF 标头估计并优化外部和内部照相机模型。 之后,该模型将应用于镶嵌数据集且可以选择使用工具生成的高分辨率数字表面模型 (DSM) 实现更好的正射校正。

这对于外部和内部相机模型粗糙或未定义的 UAV 和 UAS 图像特别有用。

使用情况

  • 典型的工作流可能包括运行计算照相机模型工具两次:第一次选中估计照相机模型参数并指定输出控制点表参数值,第二次选中优化照相机模型参数并将第一次运行的输出用作输入连接点表参数值。 此工作流的目的是首先快速估计照相机模型,然后创建更加准确的照相机模型。

  • GPS 位置精度参数设置为极高 GPS 精度时,将校正影像的方向参数,并且 GPS 测量值将保持固定。 此外,选择此选项时,不需要地面控制点 (GCP)。 GCP 将在平差中标记为检测点。

参数

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

将在其上构建和计算相机模型的镶嵌数据集。

建议您先针对输入镶嵌数据集运行应用区域网平差工具。

Mosaic Dataset; Mosaic Layer
输出 DSM
(可选)

从镶嵌数据集中调整后的图像生成的 DSM 栅格数据集。 如果选中了应用校正,则此 DSM 将用于替代几何函数中的 DEM,以实现更好的正射校正。

Raster Dataset
GPS 位置精度
(可选)

指定输入图像的精度级别。 此工具将在邻域内搜索影像以计算匹配点并自动根据精度级别应用校正策略。

  • 高 GPS 精度GPS 精度介于 0 到 10 米之间,该工具可使用最多 4 x 3 张图像。
  • 中等 GPS 精度GPS 精度为 10 到 20 米,该工具最多使用 4 x 6 图像。
  • 低 GPS 精度GPS 精度介于 20 到 50 米之间,该工具可使用最多 4 x 12 张图像。
  • 极低 GPS 精度GPS 精度大于 50 米,该工具可使用最多 4 x 20 张影像。
  • 极高 GPS 精度影像是使用高精度的差分 GPS(例如 RTK 或 PPK)收集的。 此选项将在进行区域网平差期间保持影像位置固定。
String
估计照相机模式
(可选)

指定是否通过将镶嵌数据集源分辨率乘以八来计算平差,以估计照相机模型。 在此级别下计算平差将加快速度但会降低精度。

  • 选中 - 将估计照相机模型。 这是默认设置。
  • 未选中 - 将不会估计照相机模型。
Boolean
细化照相机模式
(可选)

指定是否在镶嵌数据集分辨率下计算平差,以优化照相机模型。 在此级别下计算平差可提供最精确的结果。

  • 选中 - 将在源分辨率下计算平差,以优化照相机模型。 这是默认设置。
  • 未选中 - 将不会优化照相机模型。 使用此选项可加快速度,因此最好在不需要在源分辨率下执行计算时使用。
Boolean
应用校正
(可选)

指定是否将已计算的平差应用于输入镶嵌数据集。

  • 选中 - 已计算的平差将应用于输入镶嵌数据集。 这是默认设置。
  • 未选中 - 已计算的平差将不会应用于输入镶嵌数据集。
Boolean
最大残差
(可选)

要将计算出的控制点保持为有效控制点时所容许的最大残差值。 默认值为 5。

Double
初始连接点分辨率
(可选)

估计照相机模型时用于生成连接点的分辨率因子。 默认值为 8,也就是源像素分辨率的八倍。

对于仅有较小要素差异的影像(例如农田),可以使用较低的值(例如 2)。

Double
输出控制点表
(可选)

可选的控制点要素类。

Feature Class
输出解决方案表
(可选)

可选的校正解决方案表。 该解决方案表包含校正误差的均方根 (RMS) 和解决方案矩阵。

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

可选的解决方案点要素类。 该解决方案点是用于生成校正解决方案的最终控制点。

Feature Class
输出飞行路径
(可选)

可选的飞行路径线要素类。

Feature Class
最大区域重叠
(可选)

要将两个图像视为重复项的二者之间的重叠百分比。

例如,如果该值为 0.9,则意味着如果一个影像的 90% 被另一个影像覆盖,则系统会将其视为重复项并将其移除。

Double
最小控制点覆盖范围
(可选)

用于指示图像上的控制点覆盖范围的百分比。 如果覆盖范围小于最小百分比,则系统将无法解析该图像并将其移除。 默认值为 0。

Double
移除偏离带状区域的影像
(可选)

用于指定当图像偏离航线条带过远时,是否自动将这些图像移除。

  • 未选中 - 将不移除图像。 这是默认设置。
  • 选中 - 将移除偏离航线条带过远的图像。
Boolean
输入连接点表
(可选)

用于计算照相机模型的连接点表。 如果未指定连接点表,则该工具将计算其自己的连接点并估计照相机模型。

Feature Class
其他选项
(可选)

用于校正引擎的其他选项。 许多选项的规格由数据提供商提供。

其中包括以下选项:

  • CalibrateF - 将校准传感器焦距,以便在区域网平差中使用。 对于焦距校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibratePP - 将校准区域网平差中的主要点。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibrateP - 将校准区域网平差中的径向畸变参数。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibrateK - 将校准区域网平差中的切向畸变参数。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • EstimateOPK - 将校准 Omega、Phi 和 Kappa 角度,以定义图像坐标系和投影坐标系之间的旋转。 指定值 0 以使用 UAV 元数据中的方向角(滚动角、仰俯角和偏航角)作为区域网平差中的高度初始值。 可以使用值 1 以估计方向角,并使用估计的方向角作为区域网平差中的高度初始值。 默认值为 1。
    注:

    对于大多数 DJI 和 Skydio 照相机,建议值为 0。

  • APrioriAccuracyX - 元数据提供的 x 坐标的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyY - 元数据提供的 y 坐标的精度。 单位必须与 PerspectiveY 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyZ - 元数据提供的 z 坐标的精度。 单位必须与 PerspectiveZ 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyXY - 元数据提供的平面坐标的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyXYZ - 元数据提供的图像位置的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyOmega - 机载位置定位系统 (POS) 提供的 Omega 角的精度。 其单位为十进制度。
  • APrioriAccuracyPhi - 机载位置定位系统 (POS) 提供的 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyOmegaPhi - 机载位置定位系统 (POS) 提供的 Omega 或 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyKappa - 机载位置定位系统 (POS) 提供的 Kappa 角的精度。 其单位为十进制度。
  • ComputeImagePosteriorStd - 将计算校正后图像位置和方向的后验标准差。 对于计算,分配值 1;对于不计算,分配值 0。 默认值为 1。
  • ComputeSolutionPointPosteriorStd - 将计算校正后解决方案点的后验标准差。 对于计算,分配值 1;对于不计算,分配值 0。 默认值为 0。

Value Table

派生输出

标注说明数据类型
输出照相机模型

输出照相机模型。

Mosaic Dataset; Mosaic Layer

arcpy.management.ComputeCameraModel(in_mosaic_dataset, {out_dsm}, {gps_accuracy}, {estimate}, {refine}, {apply_adjustment}, {maximum_residual}, {initial_tiepoint_resolution}, {out_control_points}, {out_solution_table}, {out_solution_point_table}, {out_flight_path}, {maximum_overlap}, {minimum_coverage}, {remove}, {in_control_points}, {options})
名称说明数据类型
in_mosaic_dataset

将在其上构建和计算相机模型的镶嵌数据集。

建议您先针对输入镶嵌数据集运行应用区域网平差工具。

Mosaic Dataset; Mosaic Layer
out_dsm
(可选)

从镶嵌数据集中调整后的图像生成的 DSM 栅格数据集。 如果 apply_adjustment 设置为 APPLY,则此 DSM 将用于替代几何函数中的 DEM,以实现更好的正射校正。

Raster Dataset
gps_accuracy
(可选)

指定输入图像的精度级别。 此工具将在邻域内搜索影像以计算匹配点并自动根据精度级别应用校正策略。

  • HIGHGPS 精度介于 0 到 10 米之间,该工具可使用最多 4 x 3 张图像。
  • MEDIUMGPS 精度为 10 到 20 米,该工具最多使用 4 x 6 图像。
  • LOWGPS 精度介于 20 到 50 米之间,该工具可使用最多 4 x 12 张图像。
  • VERY_LOWGPS 精度大于 50 米,该工具可使用最多 4 x 20 张影像。
  • VERY_HIGH影像是使用高精度的差分 GPS(例如 RTK 或 PPK)收集的。 此选项将在进行区域网平差期间保持影像位置固定。
String
estimate
(可选)

指定是否通过将镶嵌数据集源分辨率乘以八来计算平差,以估计照相机模型。 在此级别下计算平差将加快速度但会降低精度。

  • ESTIMATE将估计照相机模型。 这是默认设置。
  • NO_ESTIMATE将不会估计照相机模型。
Boolean
refine
(可选)

指定是否在镶嵌数据集分辨率下计算平差,以优化照相机模型。 在此级别下计算平差可提供最精确的结果。

  • REFINE将在源分辨率下计算平差,以优化照相机模型。 这是默认设置。
  • NO_REFINE将不会优化照相机模型。 使用此选项可加快速度,因此最好在不需要在源分辨率下执行计算时使用。
Boolean
apply_adjustment
(可选)

指定是否将已计算的平差应用于输入镶嵌数据集。

  • APPLY已计算的平差将应用于输入镶嵌数据集。 这是默认设置。
  • NO_APPLY已计算的平差将不会应用于输入镶嵌数据集。
Boolean
maximum_residual
(可选)

要将计算出的控制点保持为有效控制点时所容许的最大残差值。 默认值为 5。

Double
initial_tiepoint_resolution
(可选)

估计照相机模型时用于生成连接点的分辨率因子。 默认值为 8,也就是源像素分辨率的八倍。

对于仅有较小要素差异的影像(例如农田),可以使用较低的值(例如 2)。

Double
out_control_points
(可选)

可选的控制点要素类。

Feature Class
out_solution_table
(可选)

可选的校正解决方案表。 该解决方案表包含校正误差的均方根 (RMS) 和解决方案矩阵。

Table
out_solution_point_table
(可选)

可选的解决方案点要素类。 该解决方案点是用于生成校正解决方案的最终控制点。

Feature Class
out_flight_path
(可选)

可选的飞行路径线要素类。

Feature Class
maximum_overlap
(可选)

要将两个图像视为重复项的二者之间的重叠百分比。

例如,如果该值为 0.9,则意味着如果一个影像的 90% 被另一个影像覆盖,则系统会将其视为重复项并将其移除。

Double
minimum_coverage
(可选)

用于指示图像上的控制点覆盖范围的百分比。 如果覆盖范围小于最小百分比,则系统将无法解析该图像并将其移除。 默认值为 0。

Double
remove
(可选)

用于指定当图像偏离航线条带过远时,是否自动将这些图像移除。

  • NO_REMOVE将不移除图像。 这是默认设置。
  • REMOVE将移除偏离航线条带过远的图像。
Boolean
in_control_points
(可选)

用于计算照相机模型的连接点表。 如果未指定连接点表,则该工具将计算其自己的连接点并估计照相机模型。

Feature Class
options
[options,...]
(可选)

用于校正引擎的其他选项。 许多选项的规格由数据提供商提供。

其中包括以下选项:

  • CalibrateF - 将校准传感器焦距,以便在区域网平差中使用。 对于焦距校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibratePP - 将校准区域网平差中的主要点。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibrateP - 将校准区域网平差中的径向畸变参数。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • CalibrateK - 将校准区域网平差中的切向畸变参数。 对于校准,分配值 1;对于不校准,分配值 0。 默认值为 1。
  • EstimateOPK - 将校准 Omega、Phi 和 Kappa 角度,以定义图像坐标系和投影坐标系之间的旋转。 指定值 0 以使用 UAV 元数据中的方向角(滚动角、仰俯角和偏航角)作为区域网平差中的高度初始值。 可以使用值 1 以估计方向角,并使用估计的方向角作为区域网平差中的高度初始值。 默认值为 1。
    注:

    对于大多数 DJI 和 Skydio 照相机,建议值为 0。

  • APrioriAccuracyX - 元数据提供的 x 坐标的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyY - 元数据提供的 y 坐标的精度。 单位必须与 PerspectiveY 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyZ - 元数据提供的 z 坐标的精度。 单位必须与 PerspectiveZ 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyXY - 元数据提供的平面坐标的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyXYZ - 元数据提供的图像位置的精度。 单位必须与 PerspectiveX 匹配。 对于大多数 UAV 数据,不建议使用此选项。
  • APrioriAccuracyOmega - 机载位置定位系统 (POS) 提供的 Omega 角的精度。 其单位为十进制度。
  • APrioriAccuracyPhi - 机载位置定位系统 (POS) 提供的 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyOmegaPhi - 机载位置定位系统 (POS) 提供的 Omega 或 Phi 角的精度。 其单位为十进制度。
  • APrioriAccuracyKappa - 机载位置定位系统 (POS) 提供的 Kappa 角的精度。 其单位为十进制度。
  • ComputeImagePosteriorStd - 将计算校正后图像位置和方向的后验标准差。 对于计算,分配值 1;对于不计算,分配值 0。 默认值为 1。
  • ComputeSolutionPointPosteriorStd - 将计算校正后解决方案点的后验标准差。 对于计算,分配值 1;对于不计算,分配值 0。 默认值为 0。

Value Table

派生输出

名称说明数据类型
out_mosaic_dataset

输出照相机模型。

Mosaic Dataset; Mosaic Layer

代码示例

ComputeCameraModel 示例 1(Python 窗口)

这是 ComputeCameraModel 工具的 Python 示例。

import arcpy 

arcpy.ComputeCameraModel_management("c:\data\fgdb.gdb\md", "output_DSM.tif", 
                                    "HIGH", "ESTIMATE", "REFINE", "APPLY", "5")

许可信息

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

相关主题