1 / 14
GeoFMV Desktop Add-Ons

AI-Enhanced Full Motion Video
for Desktop GIS

QGIS 4.x Plugin & ArcGIS Pro Add-In ยท MISB ST 0601 ยท YOLOv11 ยท No proprietary licenses required

Open Source Dual Platform Air-Gap Ready STANAG 4609
The Problem

Manual FMV exploitation is a bottleneck

Intelligence teams spend hours scrubbing through video to find targets. Existing tools require expensive extensions, are tied to specific platforms, or lack AI automation entirely.

๐Ÿ’ธ

License Cost

ArcGIS Image Analyst add-on costs thousands per seat โ€” often for analysts who only need FMV.

๐ŸŒ

Manual Review

Frame-by-frame scrubbing to spot objects of interest. No automation, no AI, no workflow.

๐Ÿ”’

Cloud Restrictions

Classified or contested environments cannot send video to cloud AI services. Air-gap is mandatory.

The Solution

GeoFMV: AI-enhanced FMV, right inside your GIS

A dual-platform add-on that brings automated AI detection, live map sync, and structured analyst review to both QGIS 4.x and ArcGIS Pro โ€” without Image Analyst.

146
MISB ST 0601 Tags
2
Platforms
5 Hz
Map Sync Rate
0
Proprietary Ext. Required
4
Export Formats
Air-gap ready. Local ONNX inference runs entirely on-device with DirectML/CUDA acceleration โ€” no internet connection needed.
Platform 1

QGIS 4.x Plugin

Pure Python + PyQt6 + PyQGIS. Installs from the QGIS Plugin Manager. Cross-platform: Windows, macOS, Linux.

Stack

Python 3.12 ยท PyQt6 ยท PyQGIS ยท OpenCV-Python ยท ONNX Runtime (GPU) ยท FFmpeg subprocess

Key Classes

GeofmvDockWidget ยท KlvParser ยท FootprintLayerManager ยท OnnxDetector ยท OpenRouterClient

AI Integration

QgisAuthManager for API keys ยท ONNX Runtime DirectML on Windows ยท VideoCapture frame extraction

Distribution

QGIS Plugin Repository ZIP ยท Git clone install ยท No compiled binaries required

Platform 2

ArcGIS Pro Add-In โ€” No Image Analyst

C# / .NET 8 / ArcGIS Pro SDK 3.5. Windows only. Distributed as a signed .esriAddinX package. Does not require the Image Analyst extension.

Stack

C# 12 ยท .NET 8 ยท ArcGIS Pro SDK 3.5 ยท LibVLCSharp ยท OpenCvSharp4 ยท Microsoft.ML.OnnxRuntime

Key Classes

GeofmvDockPane ยท KlvParser ยท FootprintFeatureClassManager ยท OnnxDetector

Video Player

LibVLCSharp replaces VideoLayer. Handles MPEG-TS, H.264/H.265, RTSP streams.

Credential Storage

Windows Credential Manager via Windows.Security.Credentials.PasswordVault for API keys.

AI Detection

Dual-Mode AI Pipeline

Every extracted frame travels through the same 5-step pipeline regardless of which AI mode is active.

Local Mode

ONNX Runtime

YOLOv11 / custom ONNX models ยท DirectML (Windows) ยท CUDA (Linux) ยท ~30ms/frame ยท Air-gap safe

Remote Mode

OpenRouter API

QWEN3-VL ยท Llama-3.2-Vision ยท ERNIE 4.5 ยท GPT-4.1-mini ยท Base64 frame encoding ยท Falls back to local

Pipeline: Frame Extract โ†’ Pre-process โ†’ AI Inference โ†’ NMS Post-process โ†’ Georeferencing โ†’ VMTI Output
Standards Compliance

Full MISB / STANAG Stack

StandardCoverageNotes
STANAG 4609โœ” FullMPEG-TS container, H.264/H.265, KLV metadata mux
MISB ST 0601โœ” 146 tagsRound-trip fidelity, BER length, checksum verification
MISB ST 0102โœ” PartialSecurity metadata preservation (read/pass-through)
MISB EG 0104โœ” CompliantPredator UAV compatibility
MISB ST 0903โœ” FullVMTI export with VObject/VTrack series
OGC Moving Featuresโœ” GeoJSON-MFTrajectory export format
Analytics Layer

DuckDB WASM โ€” 7 Extension Ecosystem

An embedded OLAP engine in the browser. Query detection archives, spatial data, and cloud storage without a server.

spatial

ST_Read, GeoParquet, GeoJSON, FlatGeobuf, WMS layers

httpfs

S3, Azure Blob, GCS, HTTPS with range-request support

zipfs

ZIP archives, KMZ, 3TZ 3D Tiles metadata exploration

sqlite_scanner

GeoPackage, Survey123, Fulcrum field-collection databases

postgres_scanner

PostGIS, Supabase, ArcGIS Enterprise SDE joins

iceberg

Apache Iceberg time-travel queries on S3/ADLS detection archives

Features

Capability Matrix

FeatureQGIS 4.xArcGIS Pro
STANAG 4609 / KLV parsingโœ”โœ”
Live map footprint sync (5 Hz)โœ”โœ”
Local ONNX AI inferenceโœ”โœ”
Remote OpenRouter AIโœ”โœ”
DJI telemetry mux โ†’ STANAGโœ”โœ”
Analyst review workflowโœ”โœ”
VMTI ST 0903 exportโœ”โœ”
Image Analyst license requiredโœ˜โœ˜
Georeferencing Engine

Pixel โ†’ World Coordinate Pipeline

Every AI detection bounding box is converted to a geographic point using a two-stage algorithm.

Primary โ€” Homography

4+ Ground Control Points extracted from KLV tags. OpenCV findHomography() maps pixel coords to world space. Applied when GCPs are available and spread.

Fallback โ€” Ray-Casting

Slant range from Tag 21 + sensor angles (Tags 17/18/10/11) project a ray from sensor altitude to ground plane. CEP โ‰ค 15 m.

Result: Each detection is stored as a WGS-84 point with confidence score, class label, review status, and source frame timestamp.
Interoperability

4 Export Formats + Filters

FormatUse CaseAnalyst Filter
GeoPackage (.gpkg)Primary QGIS/ArcGIS exchangeโœ” Status, Class, Confidence, Time
GeoJSON (.geojson)Web mapping, REST APIsโœ” Status, Class
KML (.kml)Google Earth, legacy viewersโœ” Class, Time range
Shapefile (.shp)Legacy GIS compatibilityโœ” Status
VMTI ST 0903NATO FMV tools, mission systemsโœ” Accepted detections only
GeoTIFF MosaicOrthorectified scene reconstructionโ€“
Use Cases & Personas

Who Uses GeoFMV?

๐ŸŽ–

ISR Analyst

Exploits STANAG 4609 feeds from UAVs. Uses AI detection + review workflow to locate targets 10ร— faster than manual scrubbing.

๐ŸŒ

GIS Professional

Ingests DJI drone footage for infrastructure inspection. Uses DuckDB analytics to query detections against asset databases.

๐Ÿš’

First Responder

Situational awareness from body-cam or aerial video during emergencies. Exports KML/GeoPackage for command dashboards.

Getting Started

Install in 3 Steps

1

QGIS โ€” Plugin Manager

Plugins โ†’ Manage โ†’ Search "GeoFMV" โ†’ Install. Or: install from ZIP file (Plugins โ†’ Install from ZIP).

2

ArcGIS Pro โ€” Add-In Manager

Project โ†’ Add-In Manager โ†’ Add From File โ†’ select GeoFMV.esriAddinX. Restart ArcGIS Pro.

3

Open an FMV file

Click the GeoFMV toolbar button. Drag and drop any STANAG 4609 .ts file โ€” or a DJI MP4 + CSV pair โ€” and press Play.

Roadmap

What's Next

Done
MISB ST 0601 parser (146 tags) โ€” full KLV round-trip, checksum, BER length encoding
Done
Dual-mode AI โ€” ONNX Runtime local + OpenRouter remote with shared georeferencing pipeline
Done
Analyst review workflow โ€” accept / reject / reclassify + status-filtered export
Beta
DJI telemetry multiplexor โ€” DJI CSV โ†’ STANAG 4609 MPEG-TS conversion
Q3 2026
MOSSE / CSRT object tracking โ€” frame-to-frame track association, VMTI VTrack series output
Q3 2026
Multispectral / NDVI FMV โ€” thermal + LWIR band support, false-colour rendering
Q4 2026
Web viewer โ€” DuckDB WASM analytics dashboard for team-level detection review
Navigate: โ†โ†’ arrows ยท Space next ยท F fullscreen