An ImageServer on the analyst's desk.

Register a COG and the in-process server exposes it through an ArcGIS REST ImageServer surface — exportImage, identify, computeHistograms, getSamples — with server-side raster math for spectral indices, sensor-aware rendering templates, AI object detection that returns FeatureSets, and mensuration with stated confidence. No pre-computation, no cloud, no per-analysis wait.

ArcGIS REST ImageServerNDVI · NDWI · NBR22 templates / 5 profiles YOLO-E → FeatureSetGEOINT reportingRPC mensuration
Standards-first exploitation

The REST surface your GIS clients already speak

The ImageServer facade is compatible with the ArcGIS JavaScript SDK and existing GIS infrastructure — the exploitation endpoints analysts expect, served from one workstation.

  • exportImage — rendered windows with a renderingRule raster function, from true color to burn severity.
  • identify — pixel values at a point, straight off the source raster.
  • computeHistograms & getSamples — statistics and sample extraction for quantitative work.
  • On-the-fly processing — GDAL-powered COG reads with range requests; no pre-computed derived products to manage.
  • Virtual composites — build mosaic, time-series, and auto-updating dynamic services over multiple COGs without duplicating data.
/arcgis/rest/services/{id}/ImageServer
# NDVI, computed server-side at request time
GET .../ImageServer/exportImage
    ?renderingRule={"rasterFunction":"NDVI",
      "rasterFunctionArguments":
        {"NIRBandId":8,"RedBandId":4}}

# exploitation surface
GET  .../ImageServer/identify
GET  .../ImageServer/computeHistograms
GET  .../ImageServer/getSamples
POST .../ImageServer/detectObjects   → FeatureSet
GET  .../ImageServer/dlModels
Spectral analysis

Band math without the band-math knowledge

Server-side raster functions and a curated template catalog turn multispectral COGs into analysis views in one call.

🌿

Spectral indices

NDVI, NDWI, NBR and more — including EVI, SAVI, MNDWI, NDBI, and NDSI — computed via server-side raster math on any registered COG.

🎨

22 rendering templates

Pre-configured visualizations spanning natural color, color infrared, vegetation health, water and moisture, burn severity (dNBR), urban, geology, snow/ice, and thermal views.

🛰️

5 sensor profiles

Sensor-aware defaults with automatic detection — Sentinel-2 (13 bands), Landsat 8/9 (11 bands with thermal), Landsat 7, and generic multispectral sources are recognized on registration.

🧩

VRT composites

createComposite builds mosaic, time-series, and band-composite virtual rasters as lightweight XML pointing at the source COGs — no data duplication, lazy reads.

🔁

Change detection

Stack temporal scenes into a time-series service and compare periods — including burn-severity mapping with dNBR between pre- and post-event imagery.

📂

Dynamic services

createDynamic watches a directory with a filename pattern and auto-refreshes the service as new scenes arrive.

AI object detection

From pixels to a FeatureSet

The YOLO-E detection pipeline is wired directly into the ImageServer: render a COG window to PNG, run zero-shot detection, geo-reference the pixel boxes back to polygon rings, and return a spec-conformant ArcGIS FeatureSet any Maps SDK client can draw.

  • One endpointPOST .../ImageServer/detectObjects with bbox, size, threshold, and classLabels; GET works too.
  • Two output modesf=json returns the FeatureSet; f=image returns an annotated PNG.
  • Model discoveryGET .../ImageServer/dlModels lists available detection models.
  • In-app workflow — the Image Exploitation viewer's Detect tool draws boxes on the image canvas while the geo-referenced polygons land on the map.
  • Fails safe — with the detection sidecar down, routes degrade to {available:false, detections:[]} and the app keeps working.
detection pipeline
// COG window → PNG → detect → geo-reference
POST .../ImageServer/detectObjects
{ "bbox": [...], "size": [...],
  "threshold": 0.5, "classLabels": [...] }

→ FeatureSet  (f=json · polygon rings + class + confidence)
→ PNG         (f=image · annotated)

// sidecar down? honest degrade:
{ "available": false, "detections": [] }
Report-ready output

Annotate it, measure it, publish it

Exploitation ends in a product — annotated graphics with measurements the reader can trust.

🖊️

GEOINT annotation & reporting

  • Callouts, arrows, and shapes drawn over the imagery
  • PNG export for quick-turn graphics
  • PDF report composition for finished products
📐

Mensuration

  • RPC-based image-to-ground and ground-to-image transforms
  • Height-from-shadow plus length and area measurement
  • CE/LE confidence reporting alongside every measurement

Exploit imagery where the mission lives.

Indices, detections, annotations, and mensuration on the same map as your radar tracks and blue force — served from one desktop, consumable by any ArcGIS REST client.