โ˜… New

From drone photos to orthomosaic + DSM.

The processing leg of the UAS loop. 3D Map Explorer drives photogrammetry two ways: a local OpenDroneMap CLI sidecar that turns a folder of photos into an orthomosaic + DSM entirely on your workstation, and a WebODM / NodeODM cloud import that pulls finished products from a remote processing node. Air-gapped SfM when you need it, elastic cloud when you don't.

OpenDroneMap CLIOrthomosaicDSM / DTM WebODM / NodeODM importProfile managementAir-gapped option
Path 1 ยท Local ODM sidecar

Air-gapped SfM on your own hardware

OdmCliHost spawns the standalone OpenDroneMap CLI - the open-source photogrammetry toolchain behind WebODM/NodeODM - as a pure subprocess. No HTTP sidecar, no Docker requirement on the desktop. ODM is not bundled: install it, put it on PATH or set Ortho:OdmPath, or drop the tree into runtimes/win-x64/odm/. The health probe uses odm --version (ODM, unlike some tools, answers it).

  • Drone photos โ†’ orthomosaic + DSM/DTM via Structure-from-Motion / Multi-View Stereo.
  • Pure CLI subprocess - no in-process HTTP sidecar to keep alive.
  • Version banner parsed best-effort from --version so the UI can flag a missing/stale install.
  • Output served straight into the platform's raster pipeline - viewable, analyzable, servable as tiles.
local ODM sidecar
# photos in โ†’ orthomosaic + DSM out
$ odm --project-dir ./sortie-12 \
      --orthophoto-resolution 5 \
      --dsm
โ†’ odm_orthophoto.tif
โ†’ dsm.tif
โ†’ loaded as raster layer, served as tiles
Path 2 ยท WebODM cloud import

Pull finished products from a remote node

When the workstation isn't the right place to grind a 2,000-photo sortie, process on a WebODM / NodeODM node and import the results. WebOdmService manages connection profiles (credentials stored, never echoed in list responses), browses projects and tasks, and imports assets back into the platform.

๐Ÿ”Œ

Connection profiles

Named profiles - base URL, username, password (secrets held, not listed).

โœ…

Probe / test

POST /profiles/{id}/test โ†’ reachability + project count.

๐Ÿ“

Browse projects

List projects + tasks per profile; pull thumbnails to preview.

โฌ‡๏ธ

Asset import

POST /import - bring the orthomosaic/DSM into the platform's raster pipeline.

๐Ÿ”

Secret-safe

Profile list omits passwords; insecure-skip-verify available for self-signed nodes.

๐Ÿ–ผ๏ธ

Thumbnails

Per-task thumbnail fetch for quick visual QA before importing.

REST API surface ยท WebODM import

Drive cloud import from your own tools

CapabilityEndpointNotes
Capability discoveryGET /api/webodm/capabilities{ available, configured, reason }
Profiles CRUDGET ยท POST ยท DELETE /api/webodm/profiles[/{id}]Connection profiles
Test profilePOST /api/webodm/profiles/{id}/testProbe โ†’ ok + projectCount
List projectsGET /api/webodm/profiles/{id}/projects
List tasksGET โ€ฆ/projects/{pid}/tasksPer-project task list
Task thumbnailGET โ€ฆ/tasks/{tid}/thumbnailPreview image
Import assetsPOST /api/webodm/importPull orthomosaic/DSM into the platform

Local processing reflects OdmCliHost; cloud import reflects WebOdmRoutes / WebOdmService. OpenDroneMap is not bundled - install separately from opendronemap.org. Output quality depends on photo overlap, GPS accuracy (pair with RTK/PPK), and ODM version.

Part of the UAS loop

Plan โ†’ Preflight โ†’ Fly โ†’ Process โ†’ Exploit

Close the loop - photos in, map out

Local ODM CLI sidecar for air-gapped SfM, or WebODM cloud import for elastic scale. Either way the orthomosaic lands in the platform's raster pipeline.