Skip To Content

Compute Camera Model

Summary

Estimates the exterior camera model and interior camera model from the EXIF header of the raw image and refines the camera models. The model is then applied to the mosaic dataset with an option to use a tool-generated, high-resolution digital surface model (DSM) to achieve better orthorectification.

This is especially helpful for UAV and UAS images, where the exterior and interior camera models are coarse or undefined.

Usage

  • A typical workflow might include running the Compute Camera Model tool twice: once with the Estimate Camera Model option and specifying an Output Control Point Table, and a second time using the Refine Camera Model option and using the output from the first run as the Input Tie Point Table. The goal of this workflow is to first make a quick estimate of the camera model, and then create a more accurate camera model.

Syntax

ComputeCameraModel_management (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})
ParameterExplanationData Type
in_mosaic_dataset

The mosaic dataset on which to build and calculate the camera model.

Although not mandatory, it is recommended that the Apply Block Adjustment tool has been previously run on the input mosaic dataset.

Mosaic Dataset; Mosaic Layer
out_dsm
(Optional)

A digital surface model raster dataset generated from the adjusted images in the mosaic dataset. If apply_adjustment is set to APPLY, this DSM will be used to replace the DEM in the geometric function to achieve better orthorectification.

Raster Dataset
gps_accuracy
(Optional)

The accuracy level of your input images. The tool will search for images in the neighborhood to compute matching points and automatically apply an adjustment strategy based on the accuracy level.

  • HIGH GPS accuracy is 0 to 10 meters, and the tool uses a maximum of 4 by 3 images.
  • MEDIUM GPS accuracy of 10 to 20 meters, and the tool uses a maximum of 4 by 6 images.
  • LOW GPS accuracy of 20 to 50 meters, and the tool uses a maximum of 4 by 12 images.
  • VERY_LOW GPS accuracy is more than 50 meters, and the tool uses a maximum of 4 by 20 images.
String
estimate
(Optional)

Estimates the camera model by computing the adjustment based on eight times the mosaic dataset's source resolution. Computing adjustment at such levels will be faster but less accurate.

  • ESTIMATEThe camera model will be estimated. This is the default.
  • NO_ESTIMATEThe camera model will not be estimated.
Boolean
refine
(Optional)

Computes the adjustment at the mosaic dataset resolution. Computing adjustment at this level will provide the most accurate result.

  • REFINEThe adjustment will be computed at the source resolution. This is the default.
  • NO_REFINEThe adjustment will not be computed at the source resolution. This option will be faster, so it is a good option when you do not need the computation to be performed at the source resolution.
Boolean
apply_adjustment
(Optional)

Choose whether to apply the adjusted transformation to the mosaic dataset.

  • APPLYApply the calculated adjustment to the input mosaic dataset. This is the default.
  • NO_APPLYDo not apply the calculated adjustment to the input mosaic dataset.
Boolean
maximum_residual
(Optional)

The maximum residual value allowed to keep a computed control point as a valid control point. The default is 5.

Double
initial_tiepoint_resolution
(Optional)

Defines the resolution factor at which tie points are generated when estimating the camera model. The default value is 8, which means eight times the source pixel resolution.

For images with only minor differentiation of features, such as agriculture fields, a lower value such as 2 can be used.

Double
out_control_points
(Optional)

The optional control points feature class.

Feature Class
out_solution_table
(Optional)

The optional adjustment solution table. The solution table contains the Root Mean Square (RMS) of the adjustment error and solution matrix.

Table
out_solution_point_table
(Optional)

The optional solution point feature class. The solution points are the final controls points used to generate the adjustment solution.

Feature Class
out_flight_path
(Optional)

The optional flight path line feature class.

Feature Class
maximum_overlap
(Optional)

The percentage of overlap between two images needed to consider them duplicates.

For example, if the value is 0.9, it means if an image is 90 percent covered by another image, it will be considered a duplicate and removed.

Double
minimum_coverage
(Optional)

A percentage indicating the control point's coverage on an image. If the coverage is below the minimum percentage, the image will be unresolved and removed. The default is 0.2, which is 20 percent.

Double
remove
(Optional)

Controls whether images will be automatically removed if they are too far from the flight strip.

  • NO_REMOVEUse all images. This is the default.
  • REMOVERemove images that are too far away from the flight strip.
Boolean
in_control_points
(Optional)

The tie point table used to compute the camera model. If a tie point table is not specified, the tool will compute its own tie points and estimate the camera model.

Feature Class
options
[options,...]
(Optional)

Additional options for the adjustment engine. These options are only for use by third-party adjustment engines.

Value Table

Code sample

ComputeCameraModel example 1 (Python window)

This is a Python example for the ComputeCameraModel tool.

import arcpy 

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

Licensing information

  • ArcGIS Desktop Basic: No
  • ArcGIS Desktop Standard: No
  • ArcGIS Desktop Advanced: Yes