Compute Sensor Model

Compute Sensor Model diagram

The ComputeSensorModel operation is a service that computes the bundle block adjustment for the image collection and applies the frame transformation to the images. It also generates the control point table, solution table, solution points table, and flight path table. These tables are not published as portal items.

Licensing

License:

As of ArcGIS 10.5, you must license your ArcGIS Server as an ArcGIS Image Server to use this resource.

This operation is supported at 10.6.1 and later.

Request URL

http://<orthomapping service tool url>/ComputeSensorModel/submitJob?
imageCollection={"itemId": "780d648db3545bba8661ad98df824a4"}&
mode=QUICK&locationAccuracy=High

Request parameters

The following table lists the parameters with syntax and details for each.

ParameterDescription

imageCollection

The image collection (mosaic dataset) name or url.

The image service must exist before calling this service to compute sensor model.

Syntax: A JSON object supports three keys, itemId, url and uri. These keys are case sensitive.

Example:

{"itemId": “<portal item id>”}
{“url”: “<image service url>”}
{“uri”: “<cloud raster uri or shared data path>”}

mode

(Optional)

This is the bundle block adjustment mode keyword. At the 10.6.1 release, the following three modes are supported:

  • Quick—Computes tie points and adjustment at one-eighth of the source imagery resolution.
  • Full—Adjusts the images using the Quick mode solution at full resolution of the source imagery.
  • Refine—Computes tie points and adjustment of the source imagery at full resolution.
  • RPC—Uses the rational polynomial coefficients associated with satellite images to compute tie points and adjustment of the source imagery at full resolution.

locationAccuracy

(Optional)

This parameter allows you to specify the GPS location accuracy level of the source image. It determines how far the tool will search for neighboring matching images for calculating tie points and block adjustments. It has the following options:

  • 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.
  • VeryLow—GPS accuracy is more than 50 meters, and the tool uses a maximum of 4 by 20 images.

context

Used to configure additional client settings for block adjustment.

The supported configurable parameters are used to compute mosaic dataset candidates after the adjustment.

Example:

{
"computeCandidate": False,
"maxoverlap": 0.6,
"maxloss": 0.05,
}

f

The response format. The default response format is html.

Values: html | json

Note:
  • The ComputeSensorModel tool automatically determines the mode parameter based on the image collection type as follows:
  • For UA and drone images, the client can configure the adjustment mode from Quick, Full, and Refine.
  • For aerial images, the mode is always Full, and point accuracy is honored.
  • For satellite images, only the RPC adjustment mode is supported.

Response

When you submit a request, the task assigns a unique job ID for the transaction.

Syntax:

{ "jobId": "<unique job identifier>", "jobStatus": "<job status>" }

After the initial request is submitted, you can use the jobId to periodically check the status of the job and messages as described in Checking job status. Once the job has successfully completed, use the jobId to retrieve the results. To track the status, you can make a request of the following form:

http://<Orthomapping service tool url>/ComputeSensorModel/jobs/<jobId>

Accessing results

When the status of the job request is esriJobSucceeded, you can access the results of the analysis by making a request of the following form:

http://<Orthomapping service tool url>/ComputeSensorModel/jobs/<jobId>/results/result?token=<your token>&f=json

ParameterDescription

result

The output image collection URL.

Example:

{"url": 
"http://<Orthomapping service tool url>/ComputeSensorModel/jobs/<jobId>/results/result"}

The result has properties for parameter name, data type, and value. The content of value is always the image service URL. For example:

{
    "paramName": "result",
    "dataType": "GPString",
    "value": {
       "url": "https://<server name>/arcgis/rest/services/Hosted/<service name>/ImageServer"
    }
}