Query Exif Info

URL:
https://<root>/System/OrthomappingTools/GPServer/QueryExifnfo
Methods:
GET
Version Introduced:
10.8

Description

Query Exif Info diagram

The QueryExifInfo operation is a service tool that reads the Exif header metadata from single or multiple images in shared data store. The Exif metadata is usually stored in drone image files. Some common Exif metadata information are GPS locations, camera model, focal length, and more.

You must license your ArcGIS Server as an ArcGIS Image Server to use this resource.

Request parameters

ParameterDetails

inputImages

(Required)

The input images could be a single image path, list of image paths, or a folder path, or a list of folder paths.

The image server setup account should be granted “read” permission to the image file’s location.

The image file paths can also be server data store path, see the example below.

Example:

Use dark colors for code blocksCopy
1
2
3
4
5
6
\\servername\drone\imagefolder
/cloudStores/S3DataStore/yvwd13
/fileShares/drones/SampleEXIF/YUN_0040.jpg

["/fileShares/drones/SampleEXIF/DJI_0002.JPG", "/ fileShares /drones/SampleEXIF/YUN_0040.jpg"]
["/cloudStores/S3DataStore/yvwd13", "/cloudStores/S3DataStore/BogotaFarm"]

Note: /fileShares/drones…... or /cloudStores/S3DataStore…… are the data store items registered with ArcGIS Server. You can see the list of registered data store items on ArcGIS Server manager -> Site -> Data Stores page.

f

The response format. The default response format is html.

Values: html | json

Note

You can mix image file path and folder path together in an input list.

Response

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

Syntax:

Use dark colors for code blocksCopy
1
2
3
4
{
"jobId": "<unique job identifier>",
"jobStatus": "<job status>"
}

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

Use dark colors for code blocksCopy
1
https://<orthomapping tools url>/QueryExifInfo/jobs/<jobId>

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:

Use dark colors for code blocksCopy
1
https://<orthomapping tools url>/QueryExifInfo/jobs/<jobId>/results/outExifInfo?token=<your token>&f=json

The output JSON of all Exif metadata found in each input images. If no Exif metadata found in any of the input image, the output will be an error message “No Exif Info found”.

ParameterDescription

outExifInfo

The output JSON syntax for each image:

Example:

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
{
    cols:,
    rows:,
    planes:,
    cameraInfo:{
        model:,
        make:,
        focalLength:,
        acquisitionDate:,
        pixelSize:
    }
    exif: {},
    gps: {},
    xmp: {},
    long:,
    lat:,
    alt:,
    spatialReference:,
}
A sample output JSON:
{
 "paramName": "outExifInfo",
 "dataType": "GPString",
 "value": {
"/cloudStores/s3droneimagery_ds_hxuyrvjtmuta2xpl/YVWD_121/Images/YUN_0004.JPG": {
   "acquisitionDate": "2018-04-14",
   "cameraInfo": {
    "cols": 5472,
    "rows": 3648,
    "model": "E90",
    "make": "Yuneec"
   },
   "exif": {
    "DateTimeOriginal": "2018:04:14 19:29:02",
    "FocalLength": 8.3,
    "PixelXDimension": 5472,
    "PixelYDimension": 3648,
    "FocalPlaneResolutionUnit": "4",
    "FocalPlaneXResolution": 416.667
   },
   "gps": {},
   "xmp": {},
   "long": -117.09967169444444,
   "lat": 34.007919,
   "alt": 725.37,
   "spatialReference": 32611
  },
"/cloudStores/s3droneimagery_ds_hxuyrvjtmuta2xpl/YVWD_121/Images/YUN_0005.JPG": {
   "acquisitionDate": "2018-04-14",
   "cameraInfo": {
    "cols": 5472,
    "rows": 3648,
    "model": "E90",
    "make": "Yuneec"
   },
   "exif": {
    "DateTimeOriginal": "2018:04:14 19:29:06",
    "FocalLength": 8.3,
    "PixelXDimension": 5472,
    "PixelYDimension": 3648,
    "FocalPlaneResolutionUnit": "4",
    "FocalPlaneXResolution": 416.667
   },
   "gps": {},
   "xmp": {},
   "long": -117.0993416111111,
   "lat": 34.007897388888885,
   "alt": 725.49,
   "spatialReference": 32611
  }
}
}

Example usage

Below is a sample URL for QueryExifInfo .

Use dark colors for code blocksCopy
1
2
http://<orthomapping service tool url>/QueryExifInfo/submitJob?
imageCollection=/fileShares/droneimagefolder/IMG0001.jpg

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.