- URL:
- https://<rasteranalysis-url>/ExportTrainingDataforDeepLearning
- Methods:
GET
- Version Introduced:
- 10.7
Description
The Export
service generates training sample image chips from the input imagery data with labeled vector data or classified images. The output of this service tool is the data store string where the output image chips, labels, and metadata files will be stored.
Request parameters
Parameter | Details |
---|---|
(Required) | The image that will be classified. This can be specified as the portal item ID, image service URL, cloud raster dataset, shared raster dataset, a feature service with image attachments, or a raster dataset or image collection in the data store. At least one type of input must be provided in the JSON object. If multiple inputs are provided, Syntax: JSON object describes the Example:
|
(Required) | The output location for training sample data. This can be specified as the output folder name, a file share raster data store path, a file share data store path, or a shared file system path. Example:
|
(Required) | The labeled data, either in a feature service or an image service. Vector inputs should follow a training sample format as generated by the ArcGIS Pro Training Sample Manager; raster inputs should follow a classified raster format as generated by the Classify Raster tool. Syntax: JSON object describes the Example:
|
| Specifies the raster format that will be used for the image chip outputs. Values: Example:
|
| The size of the image chips. This is specified as a name value pair for x and y dimension values. Syntax: A JSON object describes the Example:
|
| The distance to move in the x and y directions when creating the next image chip. This is specified as a name value pair for x and y dimension values. When stride is equal to the tile size, there will be no overlap. When stride is equal to half the tile size, there will be 50 percent overlap. Syntax: A JSON object describes the Example:
|
| Specifies the format of the output metadata labels. If the input training sample data is a feature class layer, such as a building layer or standard classification training sample file, use the Options:
PASCAL_VOC_rectangles example
|
| The field that contains the class values. If no field is specified, the system searches for a Example:
|
| The radius for a buffer around each training sample to delineate a training sample area. This allows you to create circular polygon training samples from points. Example:
|
| A polygon feature class that delineates the area where image chips will be created. Only image chips that fall completely within the polygons will be created. Example:
|
| The rotation angle that will be used to generate additional image chips. An image chip will be generated with a rotation angle of 0, which means no rotation. It will then be rotated at the specified angle to create an additional image chip. The same training samples will be captured at multiple angles in multiple image chips for data augmentation. The default rotation angle is 0. Example:
|
| Specifies the type of reference system to be used to export the image tiles, either Values: |
| Specifies how raster items in an image service will be processed. When Values: |
| Specifies whether the pixels around each object or feature in each image tile will be darkened. This parameter applies only when the metadata format is set to Values: |
| Specifies whether the exported tiles will be cropped so that they are all the same size. This parameter applies only when the metadata format is set to Values: |
| An additional input imagery source that will be used for image translation methods. This parameter is valid when the Syntax: JSON object describes the Example:
|
| The training sample data collected that contains classes for instance segmentation. The input can also be a point feature class without a class value field or an integer raster without any class information. This parameter is only valid when the Example:
|
| The minimum overlap percentage for a feature to be included in the training data. If the percentage overlap is less than the value specified, the feature will be excluded from the training chip and will not be added to the label file. The percent value is expressed as a decimal. For example, to specify an overlap of 20 percent, use a value of 0.2. The default value is 0, which means that all features will be included. This parameter improves performance of the tool and also improves inferencing. The speed is improved because fewer training chips are created. Inferencing is improved because the model is trained to only detect large patches of objects and ignores small corners of features. This parameter is only honored when the Example:
|
| Contains settings that affect task processing. This parameter has the following settings:
|
|
The response format. The default response format is html. Values: |
Additional KITTI metadata format information
The table below describes the 15 values in the KITTI metadata format. Only 5 of the possible 15 values are used in the tool: the class name (in column 1) and the minimum bounding rectangle composed of four image coordinate locations (columns 5–8). The minimum bounding rectangle encompasses the training chip used in the deep learning classifier.
Column | Name | Description |
---|---|---|
1 | Class value | The class value of the object listed in the |
2–4 | Unused | |
5–8 | Bbox | The two-dimensional bounding box of objects in the image, based on a 0-based image space coordinate index. The bounding box contains the four coordinates for the left, top, right, and bottom pixels. |
9–15 | Unused |
Example usage
The following is a sample GET request URL for Export
:
https://machine.domain.com/webadaptor/rest/services/System/RasterAnalysisTools/GPServer/ExportTrainingDataforDeepLearning?inputRaster={"itemId":89964029c5354407a4f817187144be42}&outputLocation=/rasterStores/myrasterstore/rooftoptrainingsamples&inputClassData={"itemId":66b1f5fa24b14217a1129f8ab688386a}&chipFormat=TIFFtileSize={"x":256,"y":256}&strideSize={"x":128,"y":128}&metadataFormat=KITTI_rectangles&classValueField=&bufferRadius=1&inputMaskPolygons=&rotationAngle=0&referenceSystem=MAP_SPACE&processAllRasterItems=false&blackenAroundFeature=false&fixChipSize=true&f=pjson
The following is a sample POST request URL for Export
:
POST /webadaptor/rest/services/System/RasterAnalysisTools/GPServer/ExportTrainingforDeepLearning HTTP/1.1
HOST: machine.domain.com
Content-Type: application/x-www-form-urlencoded
Content-Length: []
inputRaster={"itemId":89964029c5354407a4f817187144be42}&outputLocation=/rasterStores/myrasterstore/rooftoptrainingsamples&inputClassData={"itemId":66b1f5fa24b14217a1129f8ab688386a}&chipFormat=TIFFtileSize={"x":256,"y":256}&strideSize={"x":128,"y":128}&metadataFormat=KITTI_rectangles&classValueField=&bufferRadius=1&inputMaskPolygons=&rotationAngle=0&referenceSystem=MAP_SPACE&processAllRasterItems=false&blackenAroundFeature=false&fixChipSize=true&f=pjson
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 job
to periodically review the status of the job and messages as described in Checking job status. Once the job has successfully completed, use job
to retrieve the results. To track the status, you can make a request of the following form:
https://<raster analysis tools url>/ExportTrainingDataforDeepLearning/jobs/<jobId>
When the status of the job request is esri
, you can access the results of the analysis by making a request of the following form:
https://<raster analysis tools url>/ExportTrainingDataforDeepLearning/jobs/<jobId>/results/outLocation
JSON Response example
The response returns the out
parameter, which provides the output location of the training data and has properties for parameter name, data type, and value. The content of the value is always the output data store item's item
value or URL.
{
"paramName": "outLocation",
"dataType": "GPString",
"value": {
"uri": "/rasterStores/myrasterstore/rooftops"
}
}