M1chaelTran/Train

★ 0Forks 0GitHub ↗Compare

README

Train — Karst Cave & Void Detection from Satellite Imagery

An early-stage research and engineering project to explore whether an AI model, built by fine-tuning an existing open-source Earth-observation foundation model, can help detect buried subsurface caves and voids in karst / limestone terrain using open-source satellite imagery.

Core premise (and its honest caveat)

Optical satellites cannot see underground. What we can realistically detect from space are the surface and near-surface signals that correlate with karst voids: ground subsidence/deformation (InSAR), surface karst morphology (sinkholes, dolines, uvalas), thermal anomalies, topographic depressions, and vegetation/moisture anomalies. This project treats "cave detection" as detecting these observable proxies and flagging areas of elevated probability — not as literally imaging a buried chamber. Confirmation always requires airborne LiDAR, geophysics, or ground survey.

Approach at a glance

  1. Learn from known caves. Use registries of known karst caves as positive training labels, paired with matched negative (non-karst / no-cave) controls.
  2. Fine-tune an open-source foundation model. Start from a pretrained geospatial model (e.g. Prithvi-EO, Clay, SatMAE, Satlas) rather than training from scratch.
  3. Multi-modal input. Fuse Sentinel-1 SAR/InSAR + Sentinel-2 multispectral + DEM + thermal where useful.
  4. Infer on new regions. Apply the trained model to unsurveyed karst areas to produce ranked candidate locations for follow-up.

Repository layout

docs/
  methodology.md                        Distilled, actionable plan (start here)
research/
  01-prior-art-competitive-survey.md    Is anyone already doing this? (verdict: no)
  02-data-sufficiency.md                Enough open data to train + validate? (verdict: yes)
  03-methodology-deep-research.md        Verified deep-research report (feasibility, models, pipeline)

Findings so far

Question Verdict
Already solved by an existing tool? No — open problem; buried voids are physics-limited from satellite.
Enough open data to train? Yes — proxy labels (sinkholes/dolines) are abundant, far above fine-tuning needs.
Enough open data to validate / run? Yes retrospectively; imagery is free and global. Confirming novel finds needs fieldwork.

Recommended stack: fine-tune Prithvi-EO-2.0 (or Clay) with LoRA via TerraTorch, framed as segmentation of surface proxies, validated with spatial block cross-validation. See docs/methodology.md.

Status

🔬 Research phase complete. Problem space, data sources, candidate models, and a realistic pipeline are documented. Next step (engineering: data-download + label assembly + fine-tuning pipeline) begins only on explicit go-ahead.

Note on sensitivity: precise cave locations can be legally protected and ecologically/culturally sensitive (e.g. bat habitats, archaeology). This project handles location data responsibly and does not aim to publish precise coordinates of vulnerable sites.

Contributors

claude

Issues