Ask satellite imagery anything. Get answers you can check.

SatQuery AI is an agentic vision-language assistant for remote sensing. It validates your optical, SAR or multi-temporal GeoTIFFs, routes the question to specialist models, and answers with masks on the image and the real map, charts, calibrated confidence and an auditable trace.

3

input configurations

12

registered tools

8

routed task types

5

real Sentinel test scenes

SatQuery consoleText-guided grounding
Hyderabad · Sentinel-2 · 07 Jan 2025
geo-validatoragent-controllerrs-grounderspectral-indicessatquery-vlm

Hussain Sagar Lake · 4.11 km² · MNDWI 0.72

0confidence

Why an agent

One question box instead of a dozen single-task tools

Operational questions rarely fit one model. Water under monsoon cloud needs SAR; “what changed?” needs two dates; “where is it?” needs grounding. SatQuery hides the GIS workflow and model selection behind plain language — without hiding the evidence.

Today

  • A separate model for classification, detection, VQA and change detection
  • Users must know sensor characteristics, band maths and GIS workflows
  • Optical fails under cloud and at night; SAR alone confuses tarmac and water
  • Black-box answers with no evidence, confidence or audit trail

With SatQuery AI

  • One natural-language interface over single, optical–SAR and bi-temporal inputs
  • Inputs validated automatically: format, CRS, co-registration, time gap
  • The controller picks, sequences and parameterises remote-sensing specialists
  • Every answer ships masks, maps, charts, calibrated confidence and a trace

Capabilities

Every mandatory task, on real imagery

Each card opens the console with a real Sentinel scene loaded and the question already asked.

How the agent works

Validate, route, plan, execute, aggregate, answer

The controller is a LangGraph state machine over a typed tool registry. Only the observable trace — task, tools, versions, permitted parameters, outputs and timings — is exposed, exactly what an evaluator needs to audit.

01 · Validate

Checks format, CRS, bands, grid and acquisition time for every file; for pairs, footprint overlap, co-registration and the time gap. Incompatible inputs are rejected before any model runs.

geo-validator@1.2.0 → 2/2 files valid · GeoTIFF EPSG:32643 · co-registered (IoU 1.000)

Real data, real places

Tested on Sentinel-1 and Sentinel-2 scenes over India

Three sites, five GeoTIFFs and ten yearly epochs, read from the Copernicus archive. Click a site to fly to its footprint on a real basemap.

Loading map…
Real basemap · test-scene footprints

Hyderabad — Hussain Sagar

Sentinel-2 L2A · 07 Jan 2025 · 702 × 786 px

VQA · captioning · grounding

Analyse

Mumbai — Bandra · Kurla · CSMIA

Sentinel-2 + Sentinel-1 · 06/07 Jan 2025 · co-registered

optical–SAR fusion · SAR VQA

Analyse

Navi Mumbai International Airport

Sentinel-2 L2A · 2017 → 2026 · 10 yearly epochs

change description · change VQA · trend

Analyse

Every scene is a real, georeferenced GeoTIFF read from the Copernicus archive. Footprints and overlays sit exactly where the pixels are on Earth.

Remote-sensing adaptation

Adapted to satellite data — not a generic VLM

The vision-language core is fine-tuned on BigEarthNet.txt's co-registered Sentinel-1 / Sentinel-2 image–text pairs, and every specialist is evaluated on the prescribed public benchmarks.

SatQuery-VLM

Base model
Qwen2-VL-2B-Instruct
Adapter
LoRA · r 16 · α 32 · dropout 0.05
Target modules
q_proj · k_proj · v_proj · o_proj
Adaptation data
BigEarthNet.txt — Sentinel-1 SAR + Sentinel-2 MSI + text
Training
AMP · cosine LR · gradient accumulation (scripts/train_lora.py)
Data prep
scripts/setup_bigearthnet_data.py → VQA / caption pairs

Evaluation protocol

scripts/evaluate.py
BenchmarkTasksMetrics
VRSBenchCaptioning · grounding · VQABLEU-4, METEOR, CIDEr · Acc@0.5 IoU · accuracy
RSVQA (LR / HR)Single-image VQAOverall and per-question-type accuracy
CDVQAChange-based VQAOverall accuracy by question type
ISRO / SAC setCartosat-2S + RISAT pairs, all tasksTask scores, normalised then combined

Benchmark loaders for VRSBench, RSVQA and CDVQA ship in scripts/benchmark_loaders; scores are reported on the prescribed test splits.

Requirement coverage

Problem statement → where to see it

RequirementHow SatQuery AI meets itSee it
Input upload & compatibility checkinggeo-validator reads every GeoTIFF: format, CRS, bands, grid, acquisition time; pairs are checked for footprint overlap, co-registration and time gapConsole → inputs
Remote-sensing adaptationSatQuery-VLM = Qwen2-VL-2B-Instruct + LoRA (r 16, α 32) trained on BigEarthNet.txt Sentinel-1/2 image–text pairsAdaptation ↓
Single-image VQAPresence, counting, proportion and attribute answers grounded in spectral evidenceHyderabad scene
Captioning / text-guided groundingScene captions naming major objects; referring expressions resolved to mask + box on image and map“Highlight the water body”
Change description / change-VQAPost-classification + change-vector analysis, transition matrix, change-VQA and a 10-epoch trendNavi Mumbai 2017→2026
Optical–SAR paired analysisSAR segmentation + evidence-level fusion with disagreement map and per-pixel inspectorMumbai optical + SAR
Agentic orchestration & auditable traceValidate → route → plan → execute → aggregate → answer; every step logs tool, version, permitted params, output and timeTool registry
Visual evidence, confidence, reportsOverlays on image and real map, calibrated confidence with its components, PDF / GeoJSON / JSON exportsAny answer card
FormatsGeoTIFF / TIFF for geospatial data; PNG / JPEG accepted and flagged for public benchmark samples onlyValidator rules

Bring a GeoTIFF. Ask a question.

Load one of the real test scenes or drop your own — the agent validates it, picks the tools and shows its work.