You are browsing as a guest. Sign up (or log in) to start making projects!

chronovisor

  • 2 Devlogs
  • 18 Total hours

Chronovisor is a satellite-based archaeology tool. You point it at any coordinates on Earth and it pulls real imagery from Google Earth Engine, runs spectral analysis on vegetation and thermal patterns, cross-references soil composition, seismic activity, water tables, and known archaeological databases, then fuses all of that into a single score that says "this spot has archaeological potential" or "nah, probably nothing."

Open comments for this post

7h 37m 31s logged

Today was about giving the satellite engine a skeleton key.

The satellite engine could see, but it couldn’t understand. Day 2 was all about layering context on top of context until patterns start to surface.


Environmental Layer First

  • ISRIC SoilGrids v2.0: Pulled clay percentage, sand, silt, pH, and organic carbon. Every number comes with uncertainty bounds because soil data is never clean.
  • USGS Earthquake Catalogs: If a location has had 20+ quakes, that’s active fault territory and anything buried is scrambled.
  • WorldPop Population Density: Tells you whether you’re looking at farmland or wilderness.
  • Water Table Depth: Estimated from elevation. Shallow groundwater rots organic material; deep water means preservation.

Archaeological Databases

  • Wikidata & Pleiades: Hit Wikidata SPARQL directly for Pleiades entries—that’s every known archaeological site in the ancient world.
  • GBIF Species Occurrence: Cross-referenced with GBIF data (civilizations cluster near water and arable land, and species distribution proves it).
  • NOAA World Magnetic Model: Plugged in NOAA’s WMM for IGRF magnetic field calculations—buried structures distort local magnetic fields.
  • NASA VIIRS Nighttime Lights (VNP46A2): Added night light data to map modern human activity patterns.
  • Geospatial Helpers: Integrated OpenTopography DEM availability checks, geocoding via Nominatim, and full site suitability scoring based on known site proximity, climate, and magnetic anomalies.

Web Archive Evidence

  • Wayback Machine CDX API: Search by place name and coordinates, running archaeological keyword matching across archived pages.
  • OSM Overpass: Querying historic and heritage feature tags.
  • Building Density Analysis: Sparse buildings in a fertile area = something’s off.

Cross-Reference Engine

Pleiades, Wikidata, GBIF, and VIIRS nightlights all get matched against each other. If an ancient settlement shows up in three sources but the area is now empty, that’s a red flag.

  • Temporal Trends: Pulled temperature trends from Open-Meteo (2020–2023) to analyze climate shifts.
  • Batch Scanning: Built batch capabilities so you can process 20 sets of coordinates simultaneously.

Fusion Engine — The Actual Brain

Took every data source and wired them into a 7-component weighted scoring system:

  • Satellite Anomaly Score (35%)
    Signal strength × data quality × inverse correlation bonus when NDVI/NDWI/thermal agree.

  • Soil Preservation (20%)
    Clay > 350g/kg = +35%, Sand > 600g/kg = -25%, pH 6.5–8.0 sweet spot.

  • Seismic Filter (10%)
    20+ quakes = -25%, Moderate = -10%, Quiet = neutral.

  • Water Table Depth (10%)
    <5m = -20%, >30m = +20%, No data = +30%.

  • OSM Historic Context (10%)
    Historic features nearby = +30%, Dense = neutral, Sparse = survey opportunity.

  • Temporal Consistency (10%)
    Significant NDVI trend + $R^2 > 0.3$ = +30%, Change events = +5%/event.

  • Web Archive Evidence (5%)
    Archaeological content in history = +55%, Multiple hits = +25%.

1
0
43
Open comments for this post

10h 25m 16s logged

Chronovisor — Devlog 1 🍓😺

So I had an idea that probably sounds a bit out there at first glance: What if you could point at any spot on Earth and get a read on whether something is buried underneath? And what if you could do it without ground-penetrating radar, drones, or anything physical—just satellite data and a bunch of free APIs?

I decided to see if I could actually build it. I’m calling it Chronovisor.


What I actually did

The core of the project is a satellite data engine that pulls imagery directly from Google Earth Engine. Right now, I’m tapping into Sentinel-2 data (10m resolution, available from 2017 onward) and calculating spectral indices directly from the raw band data. I’m tracking:

  • NDVI (Vegetation health)
  • NDWI (Moisture levels)
  • NDBI (Built-up/urban areas)
  • Plus: BSI, SAVI, and NDMI.

The underlying theory is straightforward: buried structures mess with the surface. A stone foundation stops roots from growing properly. Ancient walls alter water drainage. Different materials retain heat differently. If you can read those subtle patterns from orbit over time, you can potentially spot an archaeological site or a forgotten structure without ever setting foot on the ground.

For the heavy lifting, I built an anomaly detection pipeline that flags anything sitting two standard deviations away from the mean across the time series. The math isn’t overly complex, but it’s highly effective. When a specific coordinate consistently shows up as “weird” across multiple independent satellite passes, you know you’ve got a real signal.

The piece I’m most proud of is the structural probability scoring. I detrend the NDVI and thermal data to strip out seasonal spikes, then check if they’re inversely correlated. If you have uncharacteristically low vegetation right where the thermal signature is unusually high (or vice versa), that’s the classic signature of subsurface interference. The code evaluates this and outputs a score from 0 to 100. It doesn’t declare a definitive “find”—it just screams, “Hey, look closer at this exact spot.”

On the infrastructure side, I set up:

  • A FastAPI backend utilizing a two-tier cache (in-memory + disk) with SHA-256 hashing to keep things snappy.
  • A clean CLI entry point for quick scripting.
  • A Leaflet-based frontend styled in a dark theme (obviously).

Managing Expectations: What it actually does

I want to be completely transparent about what this tool is—and what it isn’t.

This system does not tell you what is underground. It analyzes surface patterns and scores how likely it is that something is disrupting them. When the system flags a “possible buried structure,” it is strictly saying that the vegetation and thermal patterns match the footprint of subsurface interference. Nothing more.

The signal processor uses real analytical tools—Fast Fourier Transforms (FFT), harmonic detection, and autocorrelation. However, it requires legitimate sensor data to function. It doesn’t conjure findings out of thin air, and the EM field mapping elements are tools for processing input data, not magic discovery engines.


What’s next

Right now, the satellite engine is great at spotting anomalies, but it has zero context about the ground it’s looking at.

Next up, I’m building connectors for:

  • Local soil composition data
  • Seismic activity logs
  • Water table estimates
  • An archaeological database queried via Wikidata SPARQL.

The goal is to evolve the output from a basic “this spot has weird NDVI” into something incredibly actionable: “This spot has a strange NDVI anomaly, sits on a clay soil type known to preserve structures, is located within 2km of a known ancient settlement, and suffers from low seismic noise.”

That’s the kind of signal that gets interesting. Stay tuned.

2
0
72

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…