ArcGIS REST API

Compute Sensor Model

Description

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, solution, solution points, and flight path tables, though these tables are not published as portal items.

License:

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

Request parameters

ParameterDetails
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 case-sensitive keys: itemId, url, and uri.

Example:

{"itemId": <portal item id>}
{"url": <image service url}
{"serviceProperties":{"name":"testrasteranalysis",
  "serviceUrl":"https://<server name>/server/rest/services/Hosted/testrasteranalysis/ImageServer"},
  "itemProperties":{"itemId":"8cfbd3ec25584d0d8f4ed23b8ff7c43b", "folderId", "sdfwerfbd3ec25584d0d8f4",: }}
mode

(Optional)

The bundle block adjustment mode keyword. The following modes are supported:

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

(Optional)

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

  • 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 adjustments. The supported configurable parameters are used to compute mosaic dataset candidates after the adjustment.

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

f

The response format. The default response format is html.

Values: html | json

Note:
The ComputeSensorModel automatically determines the mode parameter based on the image collection type. 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, you use the jobId to retrieve the results. To track the status, you can make a request of the following form:

https://<orthomapping tools url>/ComputeSensorModel/jobs/<jobId>

The response, once the job request is complete, returns the result parameter, which can be accessed by making a request of the below form. The result parameter contains the output image collection url.

{"url": "https://<orthomapping tools url>/ComputeSensorModel/jobs/<jobId>/results/result"}

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:

https://<orthomapping tools url>/ComputeSensorModel/jobs/<jobId>/results/result?token=<your token>&f=json

Example usage

The following is a sample URL for ComputeSensorModel:

https://services.myserver.com/arcgis/rest/services/System/OrthomappingTools/GPServer/ComputeSensorModel/submitJob

JSON Request example

The result has properties for parameter name, data type, and value.

imageCollection={"itemId": "1780d648db3545bba8661ad98d824a4"}&
mode=QUICK&
locationAccuracy=High

JSON Response example

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