GeoAI object detection in ArcGIS uses deep learning models — trained in ArcGIS Pro or externally with PyTorch — to find and outline features in imagery, drone photography or LiDAR point clouds. Models are run with the ArcGIS Image Analyst tools on a GPU workstation or distributed on ArcGIS Image Server. Output is standard feature classes, so detections go straight into your geodatabase, review workflow and asset register.
Every model is delivered with its training data, an independent test set and a written accuracy report per class, so you can judge where it can be trusted and where a human still reviews.
What problem does this solve?
Imagery has stopped being the constraint. Entities in the UAE hold high-resolution satellite coverage, run drone flights over corridors and sites, and have LiDAR from mobile mapping or aerial surveys. What has not scaled is turning that imagery into features. Counting palm trees, outlining building footprints, finding solar panels, locating manholes and street furniture, mapping informal storage yards — these are still done by analysts drawing polygons, and the backlog grows faster than the team. By the time a layer is complete it is describing the city as it was two years ago.
Deep learning is the obvious answer and also the most commonly mis-scoped project in GIS. The demonstrations look effortless: a pretrained model, a few clicks in ArcGIS Pro, buildings appearing across a scene. Real projects run into the parts the demonstration skipped. Somebody has to label several hundred to several thousand examples of the target class, consistently, in the same imagery conditions as the production data. Somebody has to decide what counts as an object — is a covered car park a building? Somebody has to buy or borrow a GPU. And somebody has to accept that a detection is a suggestion until a human confirms it.
The third problem is what happens after inference. A shapefile of ninety thousand detections with confidence scores is not an asset register. Without deduplication against existing features, a review workflow, an owner for rejected detections and a route into the maintenance or planning system, the output becomes another layer nobody trusts. Models also drift: a model trained on winter imagery at 10 cm resolution behaves differently on summer imagery at 30 cm, and nobody notices until the counts look odd.
How the solution works
ArcGIS provides the whole chain in one place. Training samples are labelled in ArcGIS Pro against the same imagery the model will see in production, exported as image chips in a standard format, and used to train an object-detection, classification or segmentation model with the arcgis.learn module — either from scratch, by fine-tuning a pretrained backbone, or by starting from an Esri pretrained model from ArcGIS Living Atlas and adapting it to local conditions. Trained models are packaged as a deep learning package (.dlpk) and run with the Image Analyst tools: Detect Objects Using Deep Learning, Classify Pixels Using Deep Learning and Classify Objects Using Deep Learning. Point-cloud classification for LiDAR follows the same pattern with the 3D Analyst tools.
Because the tools are standard geoprocessing tools, inference fits the automation you already have: a Python toolbox or scheduled ArcPy job runs it over a tile index on a GPU workstation, or ArcGIS Image Server distributes it across raster analytics nodes for city-scale coverage. Swedish Technology builds the parts around the model that decide whether the project succeeds — a labelling standard and quality checks on the training data, a held-out test area that the model never sees during training, a written accuracy report with precision, recall and IoU per class, post-processing to deduplicate and snap detections to your schema, a review application where an inspector accepts or corrects each detection, and a feedback loop that turns corrections into the next training round. Segmentation and change detection use the same pipeline: instead of drawing boxes the model produces per-pixel classes, and comparing two dates produces a change layer that flags new construction, encroachment or vegetation loss for review.
- 1Input Define the target classes precisely and collect the source data: satellite or aerial imagery, drone orthomosaics, oblique or vehicle-mounted camera frames, or LiDAR point clouds, with their resolution, capture dates and coordinate system recorded.
- 2Capture Label training samples in ArcGIS Pro against representative areas — different densities, lighting, seasons and sensors — and export them as image chips with the Export Training Data For Deep Learning tool. A separate area is held back untouched as the test set.
- 3Processing Train or fine-tune the model with arcgis.learn on a GPU, tune the learning rate and augmentation, and measure precision, recall and IoU per class on the held-out area rather than on the training data.
- 4Integration Package the model as a .dlpk and run inference from ArcGIS Pro, a scheduled ArcPy job or ArcGIS Image Server raster analytics; post-process detections — non-maximum suppression, confidence threshold, minimum size, deduplication against existing features and snapping to the target schema.
- 5Action Detections land in a review feature class where an inspector accepts, edits or rejects each one; accepted features move into the production layer and can raise a work order, a planning case or an inspection task in the downstream system.
- 6Reporting Counts, area, change between dates and model performance are reported to dashboards; rejected detections and corrections are fed back into the next training round, and each production run records the model version used.
Reference architecture
Treat the model as one replaceable component inside a data pipeline that you can audit, rerun and improve.
| Layer | What it contains |
|---|---|
| Data & imagery | Mosaic datasets or image services for imagery, LAS datasets for LiDAR, a tile index defining the processing units, and a catalogue recording sensor, resolution, capture date and processing level for every source. |
| Training data management | Labelling standard and class definitions, sample feature classes with versioning, exported chip libraries, and a held-out test area that is never used for training; corrections from review are stored as a growing labelled set. |
| Model layer | arcgis.learn models (object detection, pixel classification, instance segmentation, point-cloud classification, change detection) or externally trained PyTorch models wrapped as a .dlpk; a model registry recording version, training data, hyper-parameters and measured accuracy. |
| Inference layer | GPU workstation with ArcGIS Pro and Image Analyst for pilots and small areas; ArcGIS Image Server raster analytics with GPU nodes for city-scale runs; scheduled ArcPy jobs to run inference over the tile index and record progress. |
| Review & QA | Review feature class with status and confidence, a web review application (Experience Builder or a field app) for accept/reject/edit, sampling-based QA on accepted detections, and rules preventing duplicate features in the production layer. |
| Integration & security | Publication into the enterprise geodatabase and portal layers, hand-off to EAM or planning systems through the integration service, role-based access to imagery and detections, and audit logging of every model run. |
Deployment options: Training and inference run on-premise on GPU hardware (a single workstation-class GPU for pilots, server GPUs for production) or in a UAE-region private cloud. No imagery has to leave the environment; models, weights and the Python environment can be installed from an internal mirror for air-gapped sites.
Key capabilities
Object detection from imagery
Features such as trees, vehicles, solar panels, manholes or storage units are located and counted across an area instead of sampled by hand.
custom developmentBuilding and land-cover segmentation
Footprints and land-cover classes are extracted as polygons, giving planning teams a current base layer.
custom developmentDrone and UAV survey processing
A flight over a corridor or site produces a reviewed feature layer within days rather than weeks of digitising.
custom developmentLiDAR point-cloud classification
Ground, vegetation, wires, poles and structures are separated automatically to support clearance and asset studies.
custom developmentChange detection between dates
New construction, encroachment or removed features are flagged for review rather than found by chance.
custom developmentDistributed inference on ArcGIS Image Server
City-scale coverage is processed in scheduled runs on your own hardware, with progress and run history.
custom developmentReview workflow with feedback loop
Inspectors confirm or correct detections, and corrections improve the next model version.
availableAccuracy reporting per class
Managers know which classes are reliable enough for automated use and which still need full review.
availableIntegrations
Detections only create value when they reach the system that acts on them, so the pipeline ends in your geodatabase and your operational systems, not in an export folder.
| System | Integration point & data exchanged | Direction |
|---|---|---|
| ArcGIS Enterprise / Image Server | Imagery served as image services, raster analytics for distributed inference, and detections published as hosted feature layers. | bi-directional |
| Enterprise geodatabase | Reviewed detections written into production feature classes with editor tracking, versioning and deduplication rules. | outbound |
| IBM Maximo | Confirmed defects or new assets raise work orders and asset records through Maximo REST/OSLC. → ArcGIS – IBM Maximo Integration | outbound |
| SAP PM / S/4HANA | Detected asset changes reconciled against equipment and functional-location records, with notifications created for confirmed findings. → ArcGIS – SAP Integration (PM/EAM, S/4HANA) | bi-directional |
| Review and field applications | Experience Builder or field apps used by inspectors to accept, correct or reject detections in the office and on site. → ArcGIS Experience Builder Custom Widgets | bi-directional |
| Scheduled processing | ArcPy and ArcGIS Notebook jobs orchestrate inference over the tile index, write run logs and trigger alerts on failure. → ArcGIS Python Toolbox & ArcPy Automation | internal |
Industry use cases
Municipality — urban planning
Building footprint and land-cover extraction from recent imagery to update the base map, plus change detection between two dates to flag unpermitted construction for inspection.
Roads & transport authority
Extraction of road furniture — signs, lighting columns, guardrails, markings — from vehicle-mounted cameras and LiDAR to build and maintain an asset inventory.
Utilities
Vegetation encroachment near overhead lines detected from LiDAR and imagery, producing a prioritised clearance list rather than a full corridor survey.
Environment & agriculture
Tree and palm counts, canopy area and health indicators tracked across seasons to support irrigation planning and green-cover reporting.
Oil & gas / industrial sites
Detection of equipment, storage tanks and yard changes from drone flights, supporting site audits and turnaround planning.
Security & compliance
Detection of unauthorised structures, encroachment or land-use change in restricted corridors, reviewed before any enforcement action.
UAE & GCC considerations
Imagery is frequently classified or restricted in the GCC, so GeoAI projects here are on-premise projects: training and inference run on the entity's own GPU hardware or in a locally hosted private cloud, and no imagery is uploaded to an external service. That is a practical constraint on tooling — model weights, Python packages and CUDA components must be installable from an internal mirror for air-gapped sites, which we plan for rather than discover late. Local conditions also change what the model must learn: dense date-palm canopies, sand-coloured surfaces with low contrast, strong shadows from high-rise towers, dust events that degrade imagery, and construction sites that change monthly. Pretrained models built on North American or European imagery need fine-tuning on local samples before their accuracy figures mean anything here. Reporting and review interfaces are normally required in Arabic and English, and government procurement typically expects the training data, model files and accuracy evidence to be delivered to the entity rather than retained by the vendor.
Implementation approach
- 1Scoping (1 week) Define the classes precisely with examples and edge cases, confirm the imagery available and its resolution, and agree what accuracy would make the output useful in the downstream process.
- 2Data assessment Review imagery quality, coverage, capture dates and existing digitised features; identify whether existing features can seed the training set and how much labelling is genuinely needed.
- 3Proof of concept (3–6 weeks) Label a representative sample, train a first model, and measure precision, recall and IoU on a held-out area. The deliverable is a written accuracy report including failure examples, not a demonstration.
- 4Decision point Go/no-go based on measured accuracy against the agreed threshold. Some classes are not viable at the available resolution, and saying so early is cheaper than proving it in production.
- 5Scale-up Expand training data to cover the conditions found across the full area, retrain, and set up inference on the tile index with the chosen execution surface (workstation or Image Server).
- 6Review workflow Build the review application, deduplication rules and the route into the geodatabase and downstream systems; define who owns rejected detections.
- 7Production run & validation First full run with a sampled QA check on accepted detections, run logs and a recorded model version for every output feature.
- 8Hand-over & retraining plan Training data, model files, code, accuracy report and a documented schedule for retraining when imagery sources, seasons or sensors change.
Security & deployment
GeoAI is normally deployed entirely inside the entity's network because the imagery itself is the sensitive asset. Training and inference run on on-premise GPU hardware or in a UAE-region private cloud, with model weights, Python packages and GPU drivers installed from an internal mirror where the environment is air-gapped. Access to imagery, detections and review applications follows the portal's role-based permissions, so an inspector sees only their area. Every inference run records the model version, parameters, input tiles and operator, and every accepted detection keeps a link to that run, which matters when a detection later supports an enforcement or spending decision. Model files and training data are delivered to the client and stored in their repository, not held by the vendor.
Limitations & prerequisites
- Accuracy is bounded by imagery resolution: an object that is three pixels across cannot be reliably detected regardless of the model, so resolution requirements must be fixed before any modelling starts.
- Training data is the main cost and schedule risk — several hundred to several thousand consistently labelled examples per class, covering the range of conditions in the production area.
- Pretrained models built on other regions usually underperform on GCC imagery until fine-tuned on local samples; published accuracy figures do not transfer.
- Detections are suggestions with confidence scores, not verified facts; a human review step is required wherever the output drives enforcement, spending or safety decisions.
- Models drift when the sensor, resolution, season or processing chain changes; retraining and periodic accuracy re-measurement must be budgeted, not treated as a one-off project.
- GPU hardware is required for practical training and for large-area inference; CPU-only inference is possible but too slow for city-scale work.
- Some classes remain genuinely hard — objects under canopy or shadow, partially occluded features, and classes whose definition varies between departments.
- Change detection is sensitive to differences in capture angle, lighting and orthorectification between dates; without consistent inputs it produces false change.
Manual digitising vs GeoAI vs field survey
GeoAI is not a replacement for surveying — it changes where human effort is spent.
| Criterion | Manual digitising | GeoAI detection + review | Field survey |
|---|---|---|---|
| Coverage speed | Slow; scales with analyst hours | Fast after training; scales with GPU | Slowest; scales with crews |
| Positional accuracy | Good, limited by imagery | Good, limited by imagery and post-processing | Highest |
| Attribute detail | Whatever is visible | Class and confidence, plus derived measures | Full inspection detail |
| Up-front effort | Low | High — labelling and validation | Medium — mobilisation |
| Cost per repeat cycle | Same every cycle | Low once the model exists | Same every cycle |
| Consistency across operators | Varies | Consistent by construction | Varies |
| Confidence for enforcement use | Analyst judgement | Needs human confirmation | Defensible |
| Best for | Small areas, one-off tasks | Repeated city-scale inventories and change monitoring | Verification and detailed condition data |
The usual production pattern is GeoAI for coverage, human review for confirmation, and field survey targeted only at what the first two flagged as uncertain or important.
FAQ
Labelling effort dominates: number of classes, how many samples each needs, and how variable the imagery is. After that come GPU hardware or cloud GPU time, the review workflow, and integration into downstream systems. Model training itself is usually the smallest line item.
A scoped proof of concept on one class in a defined area typically takes 3–6 weeks including labelling, and ends with measured accuracy on a held-out area. Production scale-up, review workflow and integration usually add 2–4 months depending on area size and the number of classes.
As a planning figure, several hundred labelled examples per class for a simple, high-contrast object and a few thousand for variable or small ones. Existing digitised features can often seed the set, which is why we check your current layers before quoting labelling effort.
It depends on the class and imagery, and any number quoted before a proof of concept is guesswork. Well-defined, well-resolved objects commonly reach high precision with recall that improves as training data grows; small, occluded or ambiguous classes do not. We report precision, recall and IoU per class on data the model has never seen, including the failure cases.
Not to start. A GPU workstation with ArcGIS Pro and the Image Analyst extension is enough for training and for pilot-scale inference. Image Server with raster analytics becomes worthwhile when you need repeated city-scale processing within a fixed window.
Yes, and in the GCC it usually must. Training and inference run on your own GPU hardware, and the Python environment, model weights and drivers can be installed from an internal mirror. No imagery leaves your network at any stage.
Yes. Drone orthomosaics give the resolution needed for small assets such as road furniture and defects, and LiDAR supports point-cloud classification for vegetation clearance, poles and structures. The model must be trained on the same kind of data it will run on — mixing sources without retraining degrades results.
You do. Training samples, exported chips, model files, code and the accuracy report are delivered into your environment. Swedish Technology can retrain and maintain the models under a support agreement, but the assets remain yours.
Have imagery and a feature you keep digitising by hand?
Send a sample area with existing digitised features. We run a scoped proof of concept and report measured precision and recall on data you have not shown the model — including the cases where it fails.
Request a GeoAI Proof of ConceptSources & evidence
- Esri — Deep learning in ArcGIS Pro (Image Analyst) — official tool documentation
- Esri — arcgis.learn module (ArcGIS API for Python)
- Esri — Deep learning with ArcGIS Image Server raster analytics
- Esri — Export Training Data For Deep Learning tool reference
- NIST — AI Risk Management Framework
Vendor and product names are trademarks of their respective owners; references are for technical context and do not imply partnership, certification or endorsement unless stated on the vendor's official pages.