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

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 setskills/directory with specialized modules:fetch-satellite-imagery- Pulls Sentinel-2 optical + Sentinel-1 radar via Google Earth Enginequery-parking-boundaries- Fetches parking lot polygons from OpenStreetMapsubtract-building-footprints- Removes building roofs from parking lot masksmask-vegetation- Applies NDVI filtering to exclude grass/treescalculate-occupancy- Computes brightness + NIR ratio → occupancy score per pixelnormalize-per-store- 95th-percentile baseline so each store compared to its own "empty"compute-yoy-change- Year-over-year % change in occupancy per storealpha-adjustment- Subtracts group mean to isolate each retailer's relative signalrun-statistical-tests- Permutation tests (10K iterations), binomial tests, bootstrap resampling
sub-agents/for iterative refinement based on results:optical-analysis- Sentinel-2 visible + NIR bandsradar-analysis- Sentinel-1 SAR (metal reflects microwaves, asphalt doesn't)vision-scoring- Feed satellite thumbnails to Claude for direct occupancy prediction
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
👀 See Also

Claude as sole art teacher: Week 1 results and critique surprises
A developer used Claude as their only teacher for colored pencil portraits. Claude's critique ignored skin tone mixing and instead flagged the initial five-minute sketch as the root problem.

Using Markdown Files as a Memory System for AI Coding Agents
A developer shares a method using {topic}_LOG.md and {topic}_SUMMARY.md files to persist conversations with Claude Code, solving compaction and agent restart issues by creating a dual memory system with detailed logs and indexed summaries.

Developer builds macOS banking app with Claude Code in 6 weeks
A developer created simplebanking, a free open-source macOS menu bar app for German banks using Claude Code. The app shows live balances across multiple accounts, provides transaction search, subscription detection, and keeps all data locally.

Multi-agent security review running daily in production: architecture and findings
ultrathink.art runs 6+ AI agents in production including a dedicated security agent that performs daily vulnerability checks against a structured checklist, files findings as prioritized tasks, and has a coding agent fix them automatically.