3D Map Explorer fuses IHO-standard electronic charting, satellite & terrestrial AIS, Signal K own-ship telemetry, radar and air tracks, SAR/optical imagery exploitation, and a coverage-aware dark-vessel detection chain into a single Common Operating Picture — with anomaly analytics, evidence adjudication, and port-call inference. No cloud. No data leaving the machine.
Maritime operators juggle a chart viewer, a track table, an imagery workbench, a comms client, and a feed manager — stovepiped tools that don't share a picture. 3D Map Explorer collapses the stack into one Common Operating Picture that serves Situational Awareness and Command, Control & Communications from the same local server.
Every source, one living map — charted, styled, and queryable.
From raw feeds to adjudicated, calibrated anomaly events.
Alerts, adjudication, and interoperability out of the analyst's way.
Vessels that go dark on AIS are the hardest maritime problem — and the domain of cloud analytics suites and billion-dollar primes. 3D Map Explorer runs the full chain — detect → associate → fuse → adjudicate — on a single air-gapped workstation, benchmarked code-verified against nine commercial and defense competitors.
YOLOv8-OBB / RT-DETR vessel detection over Sentinel-1 SAR and Sentinel-2 / Landsat / Planet optical. CFAR fallback when weights are absent; Satlas secondary detector.
AIS reports ↔ imagery detections via Mahalanobis gating, Hungarian assignment, and full JPDA — the same math the enterprise fusion engines use.
Evidence fusion composes AIS + SAR/EO + receiver coverage + sensor detectability into calibrated confidence tiers. Missing modality = zero evidence, never a guess.
Analyst evidence drawer: cost decomposition, provenance, counter-evidence. Confirm / reject / escalate / relabel — every decision persisted to the GPKG evidence store.
Chart ingestion runs on embedded GDAL 3.13 — no external tools, no cloud tile services, nothing leaves the machine. Cells land in a GeoPackage, render as MVT vector tiles, and style through a Mapbox GL style endpoint the SDK consumes natively.
Base cells plus update files (.001+), exchange sets, zips — applied automatically. Inland ENC (IENC) and NATO AML ride the same pipeline. One table per S-57 object class, verbatim attributes, light sectors and coverage derived.
Time-aware dynamic products queryable by point and polygon: bathymetric surfaces register as COG + DEM; water level and currents expose value queries and vector-arrow overlays.
Raster nautical charts convert in-process and drape under the vector picture. DNC/VPF is architected behind a capability gate — drop in an OGDI-capable GDAL build and it lights up, with the capabilities endpoint always reporting the truth.
Original artwork (not the IHO PresLib): 41 master SVG symbols across 96 catalogued classes, safety/shallow/deep contour shading, soundings in meters/feet/fathoms, SCAMIN-derived zoom bands, and base ⊂ standard ⊂ other display categories.
An in-house ITU-R M.1371 AIS decoder (message types 1/2/3/5/18/24 with multi-fragment reassembly) sits at the center, fed by four receiver kinds — from a $30 software-defined radio to commercial satellite constellations. Latest state and full history persist to an on-device DuckDB archive; every vessel streams to the map over SSE.
Detection is table stakes; explanation is the product. Every alert carries its evidence, its probability, and its provenance — and flows to the analyst through the same adjudication workflow, whether it fired from a deterministic rule or the fused evidence engine.
NGA World Port Index (~3,700 ports) drives an arrival/departure state machine — AtSea → Approaching → InPort → Departed — with dwell time, visit confidence, and voyage timelines. ETA is dead-reckoned with a COG-cone ±30° confidence and destination fuzzy-matching (LOCODE + Levenshtein).
A persistent 30-day (configurable) AIS history with an investigation timeline: dual-handle scrubber, variable-speed playback, area/vessel/time query, and CSV / GeoJSON export for the report or the prosecutor.
A vessel-particulars registry in GeoPackage: operator file import (CSV/JSON), OFAC SDN and EU consolidated sanctions lists, AIS Type 5/24 auto-accumulation, and MMSI+IMO watchlist joins that enrich the live vessel table and the evidence drawer.
The maritime picture rides on a full imagery-intelligence workstation: an ArcGIS Maps SDK 5.x 3D globe with global terrain, and an analysis stack no maritime SaaS competitor ships on a laptop.
SceneView with DEM terrain, quantized meshes, 3D Tiles, I3S, point clouds — and dynamic 2D projected views (polar stereographic, gnomonic, LCC) for theater-scale pictures.
Sentinel-1 amplitude with speckle filtering, full interferometric chains (SNAP + SNAPHU) producing displacement COGs, SICD reads for commercial SAR, Pauli decompositions.
FMV/KLV exploitation: metadata parsing, mosaicking, telestration, and continuous AI object detection across drone and surveillance feeds.
ImageServer with spectral indices, supervised/unsupervised classification (SAM, MaxLik, k-means, RF/SVM/XGBoost), change detection, and OBIA segmentation.
3D mesh viewsheds, line-of-sight, BVLOS corridors, range rings/fans, elevation profiles — coastal sensor-site and watcher-position problems solved on-device.
MGRS, GARS, USNG, UTM, DD/DMS with graticule overlays and gridded-reference-graphic builders — the defense-coordinate suite, built in.
Sixty-five REST/SSE endpoints across four API families — every one serving the same local truth. If your system speaks OGC, MVT, CoT, GeoJSON, or plain SQL, it already integrates.
Full TAK client (STOMP mTLS + UDP multicast) with purpose-built bridges: AIS vessels published as CoT markers, dark-vessel High/GhostAisHigh tier alerts pushed to the tactical net — opt-in, throttled per MMSI.
HQ-to-boat by design: 3D Map Explorer as the shore exploitation seat, Field Sentinel afloat as the offline-first ECS with S-63 charts, SAR patterns, and boarding-report forms — bridged over the marine_server / Signal K seam (integration in final testing).
STAC catalog search plus SkyWatch, SkyFi, Planet, and Copernicus CDSE tasking — bring your own keys, pull tasked imagery straight into the detection chain. Fully optional; fully offline without it.
Every archive, chart package, and evidence store is queryable through an in-process DuckDB spatial hub — SQL joins across AIS history, charts, and detections without exporting anything.
OGC API Features/Records, MVT tiles, FeatureServer and ImageServer facades — QGIS and ArcGIS Pro connect to the live maritime picture as just another GIS service.
Anomalies, activities, registry, and ports persist as valid GeoPackages — open in any GIS, archived by any standard backup, admissible as structured data.
Scored against nine maritime-intelligence vendors — Kongsberg, Systematic SitaWare, Windward, Spire/Kpler, HawkEye 360, Esri, Palantir, Thales — in a living capability matrix where every 3D Map Explorer claim maps to inspected code, not marketing.
| Capability | Cloud SaaS analytics | Defense primes | 3D Map Explorer |
|---|---|---|---|
| Dark-vessel detection chain on one air-gapped seat | Cloud only | Program scale & price | ✅ Detect → JPDA → fusion → adjudication |
| SAR + optical vessel detection, on-device | Buys detections | Enterprise only | ✅ YOLO/CFAR over Sentinel-1/2, Landsat, Planet |
| Coverage-aware AIS gap scoring | ✅ | Undocumented | ✅ Per-receiver satellite/terrestrial/mixed decay |
| AIS spoofing / identity-manipulation detection | ✅ | Undocumented | ✅ IdentityConflict + 11-rule engine |
| Analyst adjudication workflow | ✅ | AllSource-class seats | ✅ Evidence drawer, persisted decisions |
| ENC + S-100 charting built in | None | S-57 display | ✅ S-57/IENC/AML + S-102/104/111 + BSB |
| 3D globe + terrain + viewshed | None | Limited | ✅ Full IMINT stack |
| TAK / CoT tactical interop | None | Stovepiped links | ✅ CoT in/out + AIS & dark-vessel bridges |
| Air-gapped / DDIL operation | SaaS only | ✅ | ✅ By design — everything local |
| Single-seat licensing | $10s–100s k/yr | Program contracts | ✅ One desktop license |
Five workstreams shipped in 2026, each behind a review gate and a dedicated test suite. The roadmap ahead is public, specific, and tracked in the capability matrix — including the gaps we choose not to paper over.
aisstream.io WebSocket + Kpler/Spire GraphQL receiver kinds, key masking, persisted receivers, coverage-class per receiver.
GeoPackage registry, OFAC SDN + EU consolidated importers, AIS Type 5/24 auto-accumulation, MMSI+IMO watchlist joins, live enrichment.
30-day archive with retention guards, replay query API, timeline panel with 1×–300× playback, CSV/GeoJSON export.
Five activity types including the dark-gap → rendezvous composite, 24-hour rolling windows, SSE alerting, adjudication.
NGA World Port Index store, arrival/departure state machine with hysteresis, dwell + confidence, dead-reckoning ETA with COG-cone, voyage timelines, ports overlay.
HQ-to-boat loop: 3DME detections → Field Sentinel afloat COP → boarding reports → 3DME adjudication, over the marine_server / Signal K seam.
Month-scale per-vessel baselines over the WS3 archive — operating-area clusters and deviation analytics on top of Welford streaming statistics.
EEZ/TSS/MPA/cable-corridor reference data (turning "loitering" into "loitering in a cable corridor"), AIS message expansion (type 27 long-range, AtoN spoofing), own-ship into the CPA/TCPA picture, metocean (GRIB, harmonic tides), SAPIENT interface.
A single .NET 10 Windows application with an in-process geospatial server. Every analysis, decoder, tile renderer, and detection model runs on the machine in front of you.
No cloud dependency anywhere in the chain. Offline geocoding, local tiles, local models. Denied, disconnected, intermittent, and limited (DDIL) is the primary mode, not an afterthought.
Runs on a analyst laptop or a TOC workstation. No per-query pricing, no data egress, no vendor cloud seeing your picture.
Feeds, archives, evidence, and decisions persist locally as GeoPackages and DuckDB — standard formats, standard backup, no lock-in.
A Helm chart exists to scale the dark-vessel backend (fusion, track processing, GPU inference) to Kubernetes — for the day one seat becomes a program.
Thirty-minute guided demo: ingest an ENC cell, light up satellite AIS, replay a dark-gap, run the detection chain, and adjudicate the evidence — all on one machine, disconnected.