Using Claude Code to Build a Satellite Image Analysis Pipeline for Retail Predictions

✍️ OpenClawRadar📅 Published: March 19, 2026🔗 Source
Using Claude Code to Build a Satellite Image Analysis Pipeline for Retail Predictions
Ad

Project Overview

A developer experimented with using Claude Code to replicate hedge fund satellite imagery analysis techniques that reportedly yield 4-5% returns around earnings announcements. The goal was to see if free satellite data could approximate the $100K+/year high-resolution data used by professional funds.

Technical Implementation

The pipeline analyzes parking lot occupancy for three retailers with known Summer 2025 earnings outcomes: Walmart (missed), Target (missed), and Costco (beat). The developer selected 10 stores from each retailer (30 total) in the US Sunbelt to maximize cloud-free imagery.

The project structure includes:

  • orchestrator - Main controller that runs the full pipeline per retailer set
  • skills/ directory with specialized modules:
    • fetch-satellite-imagery - Pulls Sentinel-2 optical + Sentinel-1 radar via Google Earth Engine
    • query-parking-boundaries - Fetches parking lot polygons from OpenStreetMap
    • subtract-building-footprints - Removes building roofs from parking lot masks
    • mask-vegetation - Applies NDVI filtering to exclude grass/trees
    • calculate-occupancy - Computes brightness + NIR ratio → occupancy score per pixel
    • normalize-per-store - 95th-percentile baseline so each store compared to its own "empty"
    • compute-yoy-change - Year-over-year % change in occupancy per store
    • alpha-adjustment - Subtracts group mean to isolate each retailer's relative signal
    • run-statistical-tests - Permutation tests (10K iterations), binomial tests, bootstrap resampling
  • sub-agents/ for iterative refinement based on results:
    • optical-analysis - Sentinel-2 visible + NIR bands
    • radar-analysis - Sentinel-1 SAR (metal reflects microwaves, asphalt doesn't)
    • vision-scoring - Feed satellite thumbnails to Claude for direct occupancy prediction
Ad

How Claude Code Was Used

Claude wrote 35+ Python scripts for the entire pipeline, including statistical analysis, polygon refinement logic, and video production tooling. The development involved multiple iteration cycles where Claude would analyze results, identify issues, and propose fixes.

Key development stages:

Stage 1 (Data Acquisition): Claude wrote Google Earth Engine API calls to pull Sentinel-2 imagery, handled cloud masking, extracted spectral bands, and exported to CSV. When initial bounding box approach was noisy, Claude suggested querying OpenStreetMap for actual parking lot polygons and subtracting building footprints.

Stage 2 (Occupancy Calculation): Claude designed the occupancy formula combining visible brightness and near-infrared reflectance, recognizing that cars and asphalt reflect light differently across wavelengths. It implemented per-store normalization so each store is compared against its own baseline.

Stage 3 (Radar Pivot): When optical results came back as noise (1/3 correct), Claude built the SAR pipeline from scratch by pulling Sentinel-1 radar data and implementing alpha-adjusted normalization to isolate each retailer's relative signal.

Stage 4 (Claude Vision Experiment): The developer generated 5,955 thumbnails and fed them to Claude for direct occupancy prediction scoring.

Technical Constraints

The experiment used 10m resolution Sentinel data, compared to the 30cm/pixel imagery used by Berkeley researchers. At 10m resolution, one car is just 1/12th of a pixel, whereas at 30cm resolution, one car is about 80 pixels. The hypothesis was that even at 10m resolution, full lots should look spectrally different from empty ones.

📖 Read the full source: r/ClaudeAI

Ad

👀 See Also