usgscsm_cam_test

This program is shipped with the USGSCSM library in the bin directory. It can perform several operations involving CSM camera models, such as:

  • Load a camera model, whether in the original ISD format, model state representation, or GXP .sup file

  • Export the camera as a model state file

  • Compute projections from pixels in the camera to the ground and back, and measure the discrepancy with the original pixels.

Example (load a camera model and save the model state):

usgscsm_cam_test --model input.json --output-model-state out_state.json

Example (perform per-pixel operations):

usgscsm_cam_test --model camera.json --sample-rate 100 \
   --height-above-datum 320.3 --subpixel-offset 0.57

Example (modify a GXP .sup with new model state):

usgscsm_cam_test --model camera.json --modify-sup-file gxp_file.sup

Command line options

--model <string (default: “”)>

Input CSM model (in ISD, model state, or GXP .sup file format).

--output-model-state <string (default: “”)>

If specified, save the model state to this file.

--sample-rate <integer (default: 0)>

If positive, select pixels in the camera at the intersection of every one out of this many rows and columns, and perform projections to the ground and back.

--subpixel-offset <double (default: 0.0)>

Add this value to every pixel row and column to be sampled.

--height-above-datum <double (default: 0.0)>

Let the ground be obtained from the datum for this camera by adding to its radii this value (the units are meters).

--desired-precision <double (default: 0.001)>

Use this value for operations (ground-to-image and image-to-ground) which need a precision value. Measured in pixels.

--modify-sup-file <string (default: “”)>

Input GXP .sup file to be modified by inputted CSM model. This will override the existing .sup file’s SENSOR_STATE.

--help <no value>

Print the usage message.